A cryptographic network design and implementation for private and anonymous communications between computers.My name is Robert Denier. As part of my requirements for completing a PhD I developed a wireless networking driver/system that does the following.
- Keys negotiated for every possible path including separate keys for forward and reverse.
- Automatic cycling of keys.
- Works as a simple filter on network packets.
- 163 bit elliptic curve cryptography(equivalent to 1024 bit RSA) for key negotiation.
- Elliptic Curve Digital Signature Algorithm (ECDSA) style signatures for authentication of control packets.
- 128 bit AES encryption for links once established.
- Pure C implementation
- GPL version freely downloadable.
- It is extremely difficult for even insiders to determine who is communicating with whom. (This feature is somewhat limited in the current test system since it must operate on existing hardware.
As required by United states law the U.S. Bureau of Industry and Security has been informed of the creation of a software product that uses encryption. A relevant link to this law is here. U.S. Bureau of Industry and Security - Notification Requirements for "Publicly Available"
This development project code available works by using placing a filter on the transmit and receive calls in the orinoco series of wireless drivers and as such should be easily portable. The software provided is without warranty of any kind. The author takes no responsibility for any consequences as a result of using the software stored on this web site.
Current System Requirements.
- 2.6 Linux kernel. I'm using 2.6.10 now. I probably will not put in much effort to make this work with older kernels or systems unless there is considerable demand to do so. Of course it may work now without much work and if someone wants to submit patches.
- Cards that work correctly with the orinoco drivers. See the links on the right. If you can't get your system working correctly with those drivers in ad-hoc mode then there is absolutely no hope of this working.
- Some basic ability at editing files, and getting software with CVS.
- An x86 platform is likely required since I didn't spend much effort watching the endianness of things. I may fix this later if their is demand for it. Of course I have no non x86 equipment to test anything on, so that may have to wait for a volunteer to patch it for that.
Files AvailableThis is a project under development. Use at your own risk. Please see the README inside the archives for more information.
Mailing ListWireless Links:
|