From e58c53dd1a85baa381af7a2c9de6d92d89797ebe Mon Sep 17 00:00:00 2001 From: mfahampshire Date: Wed, 25 Sep 2024 18:57:37 +0200 Subject: [PATCH] traffic 2nd pass --- .../docs/pages/network/traffic/_meta.json | 2 +- .../pages/network/traffic/anonymous-replies.md | 18 +++++++++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/documentation/docs/pages/network/traffic/_meta.json b/documentation/docs/pages/network/traffic/_meta.json index 697900a53f..79163eeeab 100644 --- a/documentation/docs/pages/network/traffic/_meta.json +++ b/documentation/docs/pages/network/traffic/_meta.json @@ -1,6 +1,6 @@ { - "acks": "Acks", "hops": "Hops", + "acks": "Acks", "addressing-system": "Addressing", "anonymous-replies": "Anonymous Replies", "follow-packet": "(Coming Soon) Follow A Packet" diff --git a/documentation/docs/pages/network/traffic/anonymous-replies.md b/documentation/docs/pages/network/traffic/anonymous-replies.md index 33535206d1..7d23b30ba0 100644 --- a/documentation/docs/pages/network/traffic/anonymous-replies.md +++ b/documentation/docs/pages/network/traffic/anonymous-replies.md @@ -1 +1,17 @@ -TODO overview of sphinx packets in technical sense, not overview as in concepts +# Anonymous Replies with SURBs + +> SURBs are the Sphinx equivalent of "onion addresses" in Tor, with the caveat that a SURB can only +be used once (to prevent replay attacks) and within its epoch of validity (the mix node public keys used to +prepare the SURB are only valid for a limited period). +> ... +> A SURB effectively contains: (1) the encrypted headers of a Sphinx message that, if sent to the mixnet, will be routed back to the original sender; (2) the address of the first-layer mix node where the message should be sent; and (3) a cryptographic key to encrypt the reply payload. +> +> [Nym Whitepaper](https://nymtech.net/nym-whitepaper.pdf) ยง4.6 + +As outlined in the [concepts](../concepts/anonymous-replies) section, SURBs are layer encrypted sets of Sphinx headers detailing a reply path ending in the sending client's [Nym address](../traffic/addressing-system). Clients receiving messages with SURBs attached are able to write a payload to the provided headers without ever learning about anything other than the first hop back into the Mixnet - the Gateway they are currently connected to. + +There is a balance to be struck between the amount of SURBs to compute to send along with messages (which takes computation resources) and not sending enough SURBs initially, thus having to wait for a SURB to be sent from the receiver to the sender, requesting more SURBs be sent. + +TODO DIAGRAM BOTH POSSIBILITIES + +TODO DIAGRAM PACKET / SURB