Ian and I have reached the following principle conclusions: 1. We will use the backtracking mechanism outlined in a previous email. This will not result in a reduction of anonymity, as if we recieve a request with location equal to that of the sender, we know that a) the node was closer to the target than the previous node, or b) the node was the originator. This is an acceptable level of plausible deniability although it is not enough against correlation attacks (but not much is).
2. A subscribe request will succeed when it reaches any node, even if that node is further away from the target location than the start node, if the node has the stream we are searching for. 3. A resubscribe request carries the location of the node which is resubscribing, and an ID. We will ONLY subscribe through a node if that chain gets us, directly or indirectly, closer to the target key than the originator was. 4. When we lose our parent link, when a node is added, when a swap completes successfully etc, we reroute. First we send out a SwapRestarted message to all our dependants, who forward it to all their dependants etc. This message contains an ID. 5. If we are on a given stream, and we get a resubscribe request with ID equal to the ID on a SwapRestarted recently forwarded to us, we forward the request. This can of course happen out of order. If we can't forward it any further, we become the root. Notes: Resubscribe request != Subscribe request. Because a subscribe request will stop when it reaches ANY node with the stream, whereas a resubscribe request only stops when it reaches one closer to the stream key than the sender. -- 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/20050905/cd8059e1/attachment.pgp>
