Signal Protocol / libsignal

Protocolo P2P

The cryptographic protocol suite behind the Signal messenger, published as the libsignal library. It contains the Signal protocol, including the Double Ratchet algorithm, with Rust implementations exposed as Java, Swift and TypeScript libraries, plus the cryptographic primitives and supporting components Signal uses: device-to-device transfer, remote attestation of server enclaves, zero-knowledge group credentials (zkgroup and zkcredential), usernames, and PIN-based secure value recovery keys. The repository is used by the official Signal clients and servers; the project says use outside Signal is unsupported and that APIs and implementations may change without notice. The messenger itself is a service run by the Signal Technology Foundation .

Fundación

Detalles

Licencia Copyleft (AGPL-3.0). https://github.com/signalapp/libsignal; the Android client is at https://github.com/signalapp/Signal-Android (AGPL-3.0)
Estado de Desarrollo 🟢 Activo
Propietario Signal Technology Foundation (a nonprofit under section 501(c)(3) of the US Internal Revenue Code), which runs Signal
Órgano de Gobierno Signal Technology Foundation, a US nonprofit
País United States (the Signal Technology Foundation is a US 501(c)(3) nonprofit)
Año de Inicio 2013
Stack Rust implementations with Java (JNI), Swift and TypeScript (Node) wrappers; Double Ratchet; zero-knowledge credentials; SGX and HSM attestation
Financiamiento Donations to the Signal Technology Foundation, per its donation page; no other funding is stated in the cited sources
Última Investigación 29 oct 2026

Capacidades

Cifrado de extremo a extremo Divulgación contextual

Protocolo P2P Atributos

Orígenes Private communication that works for everyone: end-to-end encryption designed for ordinary users, then spun out into a nonprofit foundation in 2018
Base de Datos N/A
Lenguaje de Consulta N/A
Formatos de Datos Defined by the libsignal code and Signal's published specifications
Edición Colaborativa en Vivo N/A
Edición de Texto Enriquecido N/A
Soporte Móvil Yes: the libraries are used in the Android and iOS apps
Soporte Web TypeScript (Node) bindings are used by Signal Desktop; no web client
Aplicaciones Nativas Yes: Signal Android, iOS and Desktop apps use the library
Términos Free to use; AGPL-3.0 code; nonprofit service funded by donations
Fondos Not stated by the project.
Basado En The Double Ratchet algorithm and zero-knowledge credential research (the Signal Private Group System by Chase, Perrin and Zaverucha)
Arquitectura P2P Not peer-to-peer: end-to-end encrypted clients talk through Signal's central servers; the protocol itself is transport-independent
Red de Superposición None: it relies on Signal's servers rather than an overlay
Direccionamiento por Contenido No.
Local-First No: messages are held on devices but delivery depends on Signal's servers
Cifrado de Extremo a Extremo (E2EE) Yes: end-to-end encryption with the Double Ratchet algorithm
Biblioteca de CRDTs No: not a CRDT library.
Tolerancia a Fallos Bizantinos Not stated by the project.
Firma Yes: identity keys sign pre-keys and messages are authenticated within the protocol
Permisos Account-level and group-level controls in the Signal service; zero-knowledge group credentials protect group membership from the server
Compatibilidad con la Web Semántica N/A: no RDF, JSON-LD or SPARQL layer.
Contrato Inteligente N/A: no ledger or smart-contract component.
Posición en la Pila del Protocolo Application-layer cryptographic protocol, independent of transport
Incorporación de Activos/Valor None: no token or value-transfer mechanism.
Madurez del Protocolo / Estandarización Widely deployed and externally analysed; not an IETF or W3C standard; the maintainers say outside use is unsupported