Freenet is designed to be a meritocracy for content. If somebody inserts
several gigabytes of pictures of mating chickens, for instance, this
will only persist if it is popular, or so the theory goes. This
meritocracy is one of the main principles underlying the moral,
philosophical and practical aspects of Freenet.

The only problem is this: If an attacker can continue to insert a file,
he can keep it in the network forever. Inserts don't stop when they find
the data (for good reasons IMHO), so this is more effective than
requesting the data. And he doesn't have to push the same data, he can
just keep inserting random data chunks. He doesn't need to find lots of
nodes to connect to. These will then be promoted to the top of the LRU
list, and therefore will push out moderately popular content - or even
popular content, if he has many links to many nodes and lots of upstream
bandwidth.

Solution?
All we have to do is not promote inserted content to the TOP of the LRU
list. Set it say 3 days ahead of the MRU. This can be done efficiently
with the new database-backed datastore. Then when it is requested,
promote it to the top. If it isn't requested, for example if it is
random junk inserted by Mallory, it will expire in 3 days. We could make
it 7 days, or some fraction of the overall most-recent to least-recent
period (check your Environment page, Data Store box; most nodes have at
least a month between most recent and least recent access time).

This should make flooding attacks considerably harder, and move freenet
somewhat closer to the meritocratic ideal we claim.
-- 
Matthew J Toseland - toad at amphibian.dyndns.org
Freenet Project Official Codemonkey - http://freenetproject.org/
ICTHUS - Nothing is impossible. Our Boss says so.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: 
<https://emu.freenetproject.org/pipermail/tech/attachments/20060103/524a871c/attachment.pgp>

Reply via email to