1
1
Fork 0
mirror of https://github.com/oxen-io/lokinet synced 2023-12-14 06:53:00 +01:00

ammendment to logic.

nonce = nonce ^ hash(nonce) is only able to work one way. this is why
we use nonce = nonce ^ hash(path_ephermal_secret) for mutation in the
existing onion routing parts. update this line to use that logic
instead.
This commit is contained in:
Jeff Becker 2023-05-08 11:58:50 -04:00
parent ef1b57abd1
commit c8d8436643
No known key found for this signature in database
GPG key ID: 025C02EE3A092F2D

View file

@ -73,7 +73,7 @@ given we provide N nonces in the build we are opening up N path streams as we ma
onion routed persisting stream connection to the pivot router for sending anonymised requests destined for the pivot router.
streams are created for an existing path by opening a "path stream" stream providing the path's tx/rx id and 24 bytes nonce.
on accepting the stream creation the node will open a "path stream" to their upstream router but with a nonce that is deterministically mutated `new_nonce = nonce ^ hash(nonce)`, this mutation reduces stream corrilation across hops.
on accepting the stream creation the node will open a "path stream" to their upstream router but with a nonce that is deterministically mutated `new_nonce = nonce ^ hash(hop_ephemeral_secret)`, this mutation reduces stream corrilation across hops.
on rejecting the stream creation the node will shutdown the read end of the stream, sending a reply signed by our identity key and then shutting down the write end of the stream (which fully closes the stream).
if the accepting node is the pivot route it will write.