diff options
| author | pablof7z <pfer@me.com> | 2024-10-20 01:04:11 +0100 |
|---|---|---|
| committer | pablof7z <pfer@me.com> | 2024-10-20 01:04:11 +0100 |
| commit | 5e2ad4b3bbd68b36960e38203b5ab26a854fcf97 (patch) | |
| tree | 1d99a2fcaa668aae2f719d767b80c582aba731bc | |
| parent | b5774a1338dbe1e2d133105e22f79986518b8acd (diff) | |
add note about timing analysis
| -rw-r--r-- | 22.md | 3 |
1 files changed, 2 insertions, 1 deletions
| @@ -45,7 +45,7 @@ A sender publishes a series of `kind:2444` or `kind:20444` where the `payload` i | |||
| 45 | 45 | ||
| 46 | Event `kind:2444` has the exact same format as the `kind:20444`, the only difference being that it's not ephemeral, so it can be used to route events that are expected to take longer to route. `kind:2444` events SHOULD include an [[NIP-40]] `expiration` tag. | 46 | Event `kind:2444` has the exact same format as the `kind:20444`, the only difference being that it's not ephemeral, so it can be used to route events that are expected to take longer to route. `kind:2444` events SHOULD include an [[NIP-40]] `expiration` tag. |
| 47 | 47 | ||
| 48 | Routing pubkeys MUST look at the `created_at` of the event they need to publish and wait until at least that time before publishing. | 48 | Routing pubkeys MUST look at the `created_at` of the event they need to publish and wait until at least that time before publishing. Using future `created_at`s allows the sender to increase their privacy by preventing timing analysis by mixing different time delays at each hop. |
| 49 | 49 | ||
| 50 | When a routing pubkey receives a routing request event it should decrypt the content, redeem the cashu and publish the event in the `event` field. If the cashu cannot be redeemed the routing pubkey MUST NOT publish the event. This is useful as a way to **cancel** a routing event where the sender uses a future `created_at` timestamps and chooses to cancel the publication. | 50 | When a routing pubkey receives a routing request event it should decrypt the content, redeem the cashu and publish the event in the `event` field. If the cashu cannot be redeemed the routing pubkey MUST NOT publish the event. This is useful as a way to **cancel** a routing event where the sender uses a future `created_at` timestamps and chooses to cancel the publication. |
| 51 | 51 | ||
| @@ -139,3 +139,4 @@ function assemble_onion_route(final_event, path) { | |||
| 139 | } | 139 | } |
| 140 | } | 140 | } |
| 141 | ``` | 141 | ``` |
| 142 | |||