Skip to main content

Module ratchets

Module ratchets 

Source

Modules§

core

Structs§

FixedSelfRatchetTable
HeapSelfRatchetTable
RatchetEntropy
A minted ratchet is 32 CSPRNG bytes used as an X25519 secret (RNS 1.4.2 Identity._generate_ratchet); move-only, deliberately without Debug.
RatchetId
RNS 1.4.2 Identity._get_ratchet_id: full_hash(ratchet_public_bytes)[:NAME_HASH_LENGTH//8]
SelfRatchets

Enums§

LastRotated
RatchetPolicy
RNS 1.4.2 Destination.enable_ratchets / Destination.enforce_ratchets. One enum where the reference has two bool flags, so enforcing without ratchets (which would refuse every single packet) is unrepresentable.
RatchetRotation
Whether a due check minted a fresh ratchet — Minted is the host’s cue to persist the destination’s record NOW, the reference’s rotate_ratchets_persist_ratchets law: a secret peers may already encrypt toward must never exist only in memory.
SeedSelfRatchetsOutcome
TrackRatchetsError

Constants§

DEFAULT_RETAINED_RATCHETS
RNS 1.4.2 Destination.RATCHET_COUNT: how many generated ratchets a destination retains for decryption, newest first.
MIN_RATCHET_ROTATION_INTERVAL_MS
RNS 1.4.2 Destination.RATCHET_INTERVAL: the minimum time between minting new ratchet keys. Rotation rides the announce. An announce inside the floor re-carries the newest ratchet instead of minting another.
RATCHET_ID_LEN

Traits§

SelfRatchetTable