Double Ratchet Algorithm: Difference between revisions

Content deleted Content added
Citation bot (talk | contribs)
Alter: title, template type. Add: magazine, chapter-url, chapter. Removed or converted URL. Removed parameters. Some additions/deletions were parameter name changes. | Use this bot. Report bugs. | #UCB_CommandLine
Etoombs (talk | contribs)
Functioning: De-awkwarding the prose a little.
Line 26:
| caption2 = Diagram of the working principle
}}
A client renewsattempts to renew session key material in interactioninteractively with the remote peer using a Diffie–Hellman (DH) ratchet. wheneverIf possiblethis is impossible, otherwisethe independentlyclients byrenew the session key independently using a hash ratchet. Therefore, withWith every message, a client using the double ratchet advances one of two hash ratchets (oneratchets—one for sending, and one for receiving). whichThese two hash ratchets get seeded with a common secret from a DH ratchet. At the same time it tries to use every opportunity to provide the remote peer with a new public DH value and advance the DH ratchet whenever a new DH value from the remote peer arrives. As soon as a new common secret is established, a new hash ratchet gets initialized.
 
As cryptographic primitives, the Double Ratchet Algorithm uses