liveBook · Manning

Symmetric ratchet

As explained in Real-World Cryptography

A symmetric ratchet is a key-evolution mechanism that derives successive chain keys and message-encryption keys from a one-way key update.

A symmetric ratchet protects long-lived conversations from the theft of a current key. Instead of encrypting messages with one permanent session key, it repeatedly turns a chain key into the next chain key and a one-time message-encryption key. section 10.4.3

For each direction of a conversation:

  • Start with a sending or receiving chain key derived from the session setup. section 10.4.3
  • Pass the chain key through a one-way function to obtain the next chain key and the message key. section 10.4.3
  • Maintain separate sending and receiving chains so each message direction evolves independently. section 10.4.3

A stolen current key

Suppose an attacker obtains Alice’s current sending chain key. The one-way update prevents that key from revealing earlier chain keys or earlier message keys. Previously received messages gain the same protection from Bob’s receiving chain. section 10.4.3

The mechanism limits cryptographic exposure, but a compromised phone may already contain old messages in plaintext. Deleting old messages is therefore relevant to realizing the intended protection. section 10.4.3

How Real-World Cryptography covers it

How deep it goes
Explains directional chain keys, one-way updates, message keys, compromise limits, and the plaintext-device caveat.
Examples
Uses separate sending and receiving chains plus a stolen-current-key scenario to illustrate message-level protection.
What it assumes
Assumes an established session secret and basic KDF use, while distinguishing sending, receiving, chain, and message keys.
What you can do after
Evaluate how one-way key evolution limits recovery of earlier message keys after current-key compromise.
How it connects
Connects X3DH, KDFs, forward secrecy, the Double Ratchet, and the DH ratchet.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Real-World Cryptography. The section links point to the parts of the book it draws on.