I have had some lingering doubts about subscription requests and HTL. Here is a solution: - We have already decided that the root node is the node which cannot find a closer node to the target within a certain HTL hops. - We can logically extend this: the root node is the node which cannot find a closer node to the target within maxHTL hops. - It therefore follows: We route the subscribe request as normal, decrementing HTL when we don't get closer to the target. The closest node found will then get a DNF back from the rest of the chain. If it sent the request onwards at full HTL, it immediately knows it is root. If it did not, it resends the request at full HTL. If *that* produces a DNF, the node knows for sure that it is the root. If it produces a SubscribeSuccessfulNewRoot, we have found a new root; if it produces a SubscribeSuccessful, we have found an existing route downstream (which should be a rare event).
/me wonders what sort of routing churn this is going to survive... Obviously there are attack vectors, but there are attack vectors on requests and especially inserts - you can just swallow an insert, for example. This is made much worse by the new routing algorithm, but we will try to find ways to secure it against internal attackers... eventually. -- 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/20050922/3b5c0d16/attachment.pgp>
