diff options
| author | tv <tv@krebsco.de> | 2026-11-08 14:18:33 +0000 |
|---|---|---|
| committer | tv <tv@krebsco.de> | 2026-11-08 15:32:31 +0100 |
| commit | d56b3b069782585a6edcc9c608236361c2644a51 (patch) | |
| tree | 22839d0582b3b5a841465b23bfa13957fc6e84ea /src/transport | |
| parent | fac4b143587188d283578bc51e13ca44bcfc6382 (diff) | |
envelope: a signed value names its swarm
Review 3.1, part of finding 12: a signed value's payload bound path,
user, time and prev, but not the swarm. A user with the same name and
key in two swarms could have an envelope replayed from one into the
other, wherever the path holds no envelope yet (prev "").
The payload now names the swarm (`swarm`), and a node takes an envelope
only for its own. /auth/whoami says the swarm, and continuum-signed and
the example in api.md sign it. Wire version 44: nodes before this
refuse such envelopes, and those after refuse the old ones.
Diffstat (limited to 'src/transport')
| -rw-r--r-- | src/transport/wire.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/transport/wire.rs b/src/transport/wire.rs index e7bec62..2ab39e5 100644 --- a/src/transport/wire.rs +++ b/src/transport/wire.rs @@ -14,7 +14,7 @@ use super::{EncodedMessage, MessageKind, ParsedMessage}; /// The wire format's version, the first byte of every payload. Bump it with every change /// to a message type or a codec (`golden_bytes` fails then). -pub(crate) const VERSION: u8 = 43; +pub(crate) const VERSION: u8 = 44; /// What the second byte of a payload says. fn tag(kind: MessageKind) -> u8 { |
