FreeNet is an open-source, peer-to-peer encrypted data publication system. Originally theorised by Ian Clarke in 1999, FreeNet offers total anonymity and decentralisation, backed up by military-grade encryption. FreeNet consists of two major components - the interface and the filestore. The interface is the program layer that allows you to communicate with the rest of the FreeNet. The filestore is a fully encrypted data store containing any files you have ever downloaded, as well as others. This will be explained later.

At its core, FreeNet is designed to be untraceable and uncontrollable. FreeNet was conceived as a system to permanently defeat internet censorship, at the price of speed and reliability. FreeNet applications operate on the FreeNet Protocol, which in turn operates over standard TCP/IP. Contrary to popular belief, the FreeNet protocol is very different to previous distributed protocols such as the Gnutella protocol. FreeNet differs from Gnutella in that a request for a file is propagated outwards through neighbouring nodes, and if the file is found it is returned along that same node path, like a daisychain. Under Gnutella, the two nodes are immediately put in contact with one another once the file is found and the transfer is direct point-to-point. Also, crucially, under the FN Protocol every node along the way makes a copy of the file being transferred and re-encrypts it in its own datastore. This construct allows FreeNet to behave in an interesting way, very much like Everything2 does, in fact. Popular information will spread rapidly through many nodes as more and more people request it. This will increase its network presence, thus leading more people to read it etc. Unpopular information will not disseminate, and hence will eventually fade from the network. The network as a whole then begins to mirror the thoughts and interests of society as a whole, representing the collective thought processes of all FreeNet users. This may seem like a strange and inefficient way of doing something, but there are very strong arguments for this architecture.

Imagine you are using Gnutella or a similar file-sharing program to request and download copyrighted or illegal materials, be it DeCSS, David Shayler's book on MI5 or just plain old pirate mp3s. Under Gnutella, a request for file transfer can be very easily traced through the system, as the request data contains the IP address of the originating node. Now say the FBI/Special Branch have taken an interest in your activities and have decided to make an example of you. They monitor your activity, and decide to record your network traffic for future court action. They kick down your door, seize all your equipment, and arrest you. When going through your files, one of two things may occur, depending on how smart you thought you were. If you have left your ill-gotten wares in plain text on your drive, they will have you. If you have encrypted them somehow before storing them, they will still have you because they have the network traffic proving you downloaded them. They can PROVE that you ASKED for the files, that you actually put the request into the Gnutella network for DeCSS.zip. This point is vital.

Under the FreeNet architecture, the entire network is end-to-end encrypted, and re-encrypted with every node passed through. This is the first line of defense, as they can no longer prove anything with network logs without an extreme effort in cryptographic analysis and codebreaking. So say you were smart, and used FreeNet instead to download DeCSS. You never take DeCSS out of your FreeNet filestore, because you know you can still access it simply by using your FreeNet software to decrypt it (the program stores the decryption keys for each transfer in its keyfile). Note this final point - FreeNet is NOT designed to stop people KNOWING what you have downloaded if they seize your computer, because they can access your FreeNet node just as well as you. It is designed to remove their ability to prove you asked for it.

The way in which this occurs is a very clever legal dodge, backed up by relatively simple technology. As previously stated, a request coming through your node, with your computer acting only as an intermediary, will result in that file remaining encrypted on your drive. Sure you didnt ask for it, but what if that file is something illegal like child pornography? Could you not then be prosecuted for possession of said material? The answer is, thankfully, no. Crucially, under FreeNet a request originating from YOUR node is completely indistinguishable from a request that your node has made on behalf of another. They are identical in every respect. In this manner, it is impossible to prove one way or the other that you did or did not request any file in your datastore. And since the files are encrypted with keys you are never told, if you delete the file with the keys in it they can never force you to give up your keys. You simply cannot, as a human, possess that information without decrypting the keyfile yourself, and few humans are professional cryptographers. So when you are arrested, and they ask you why you have ten megabytes of child porn, four hundred bootleg Aerosmith mp3s and secret NSA training manuals stored on your machine, you can simply look stunned and claim you had no idea they were there. There is built-in reasonable doubt.

However, despite this massive advantage, the real point of FreeNet has not been reached. The FreeNet was designed to evade censorship for good, and to allow stories to be told from beneath any tyranny that does not totally prohibit computer systems and the internet. FreeNet is truly decentralised, offering total anonymity and relative untraceability. Properly developed, FreeNet could become the bane of most governments on the planet - a system that truly cannot be controlled or subverted. Television has already been subverted, as has the internet to a lesser extent. FreeNet on the other hand, would be a far more difficult fastness to assail. The mottos of the FreeNet team are "liberty through technology" and "this rabbit killed censorship" (the logo of FN is a small white rabbit). With luck, they will achieve both in time.

FreeNet software available from: http://www.thefreenetproject.org