0% found this document useful (0 votes)
103 views3 pages

Signal - Documentation

The document provides technical specifications and software libraries for secure messaging. It describes encryption, authentication, and key agreement protocols like Double Ratchet, X3DH, and PQXDH. It also documents the Sesame algorithm for managing encrypted messaging sessions across devices.

Uploaded by

tieskegamez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
103 views3 pages

Signal - Documentation

The document provides technical specifications and software libraries for secure messaging. It describes encryption, authentication, and key agreement protocols like Double Ratchet, X3DH, and PQXDH. It also documents the Sesame algorithm for managing encrypted messaging sessions across devices.

Uploaded by

tieskegamez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Signal >> Documentation https://www.signal.

org/docs/

Technical
information
Specifications and software libraries for
developers

Specifications
Encryption in messaging environments
integrates many ideas which often need to
be composed separately in different
applications. We make an effort to break
out ideas into independent specifications
so that they can be integrated as
appropriate for different projects.

XEdDSA and VXEdDSA Double Ratchet

This document describes how to create This document describes the Double
and verify EdDSA-compatible signatures Ratchet algorithm, which is used by two
using public key and private key formats parties to exchange encrypted messages
initially defined for the X25519 and X448 based on a shared secret key. The parties
elliptic curve Diffie-Hellman functions. derive new keys for every Double Ratchet
This document also describes "VXEdDSA" message so that earlier keys cannot be

1 of 3 11/1/23, 02:37
Signal >> Documentation https://www.signal.org/docs/

which extends XEdDSA to make it a calculated from later ones. The parties
verifiable random function, or VRF. also send Diffie-Hellman public values
attached to their messages. The results of
Diffie-Hellman calculations are mixed into
X3DH
the derived keys so that later keys cannot
This document describes the "X3DH" (or be calculated from earlier ones. These
"Extended Triple Diffie-Hellman") key properties give some protection to earlier
agreement protocol. X3DH establishes a or later encrypted messages in case of a
shared secret key between two parties compromise of a party's keys.
who mutually authenticate each other
based on public keys. X3DH provides Sesame
forward secrecy and cryptographic
deniability. This document describes the Sesame
algorithm for managing message
encryption sessions in an asynchronous
PQXDH
and multi-device setting.
This document describes the "PQXDH" (or
"Post-Quantum Extended Diffie-Hellman")
key agreement protocol. PQXDH
establishes a shared secret key between
two parties who mutually authenticate
each other based on public keys. PQXDH
provides post-quantum forward secrecy
and a form of cryptographic deniability but
still relies on the hardness of the discrete
log problem for mutual authentication in
this revision of the protocol.

Software libraries
Signal Protocol library

© 20132023 Signal, a 501c3 Organization Download Social Help


nonprofit.
Donate Android GitHub Support

2 of 3 11/1/23, 02:37
Signal >> Documentation https://www.signal.org/docs/

Signal is a registered trademark Careers iPhone & Twitter Center


in the United States and other Blog iPad Instagram Community
countries. Terms & Windows
Privacy Mac
For media inquiries, contact Policy Linux
[email protected]

3 of 3 11/1/23, 02:37

You might also like