IEEE Computing Covers Freenet
Rayban writes: "From the Freenet Project homepage: IEEE Internet Computing has an article (pdf) entitled 'Protecting Free Expression Online with Freenet.' It provides an excellent technical introduction to the core ideas behind Freenet."
A year or two ago there was a presentation at my college about Freenet. One of the CS guys here was "on the development team" (whatever that means). I never did hear a real reason, other than ideals, for doing it. (In fact the kid that was talking about it was mentioning an effort to try moving it onto packet radio, thus freeing it from even the censorship of ISPs. This threw a huge red flag for me that he didn't know what he was talking about: this is blatantly illegal by FCC regulations, and anyone who tries it will lose their ham license! No encryption is allowed, in any form whatsoever. You can't even legally come up with a substitution cypher, like "beans" means "meet me in the parking lot" and "chicken" means "9:30pm". NOTHING. And the encryption issue is just the tip of it. Read up on it, get your ham radio license, it'll be immediately clear that doing anything even remotely resembling this is just not feasible on the ham bands in the US.)
So yeah, I'm veering off-topic. Anyway. Let me reiterate: I'm not telling anyone NOT to do work on something they're devoted to. I do appreciate the ideals that Freenet stands for. But seriously, what's going to make it succeed? What makes it worth the horrible inefficiencies designed into the protocol? Is it actually useful to anyone? Alright, enough from me. I hope someone can answer these, I'm very curious. Somebody give me a reason to help the development effort!
The streets shall flow with the blood of the Guberminky.
I put 8 months of hard work into Freenet - in particular, developing the W--dows FreeWeb client program and the multi-platform FCPtools library. It's very possible that I will return to the project at some time in the near future.
In my mind, Freenet is still very much in its infancy. At present, it's mostly a prototype, suffering severely from being written in J---, but if gcj gets into a fit state (or some hard-assed hackers re-code it in C), the major problems will be overcome.
But to me, one of Freenet's greatest strengths is almost totally unknown - the bottom layer is designed so that almost anything can be easily slotted in and used as a transport - not just plain TCP/stream sessions, but UDP, or tunnels, or anything.
Because of this design foresight, it's very straightforward to write and plug in a few steganographic transport drivers which traffic keys in devious ways, eg usenet groups with graphics file carriers, or whitespace/grammatical stego in plaintext mailing lists or IRC, hidden packets within webcam feeds, even pirate radio (note that Freenet is high on redundancy and very fault-tolerant).
The way I see it, any determined effort at stamping Freenet out will bring the project alive like never before, and cause it to attract legions of talented and inspired developers to keep n steps ahead in the arms race.
"Repress a religion, and it will flourish"
-- James Herbert
-- In the beginning was the WORD, and the WORD was UNSIGNED, and the main(){} was without form and void...
Spammers pollute. Freenet appears to be designed to allow for maximum pollution per unit of legitimate content.
I'd prefer to be proven wrong about this, but it looks to me like the bad apples are going to spoil this barrel even more so than we saw with usenet.
Build stuff. Stuff that walks, stuff that rolls, whatever.