Noise Protocol Framework
P2P Protocol
Community
Details
License Public domain specification; open source implementations in C, C#, Go, Haskell, Java, JavaScript, Python, Rust
Dev Status 🏁 Final
Dev Status Detail Stable / Mature — specification at revision 34 (2018); post-quantum extensions in development
Owner Trevor Perrin (independent cryptographer)
Governing Body None (single independent author, Trevor Perrin; specification stable since revision 34, 2018)
Country USA
Start Year 2014
Stack Language-agnostic specification; implementations in C, Rust, Go, JavaScript, Python, Haskell, Java
Funding None (independent research)
Last Investigated Jan 15, 2026
P2P Protocol Attributes
Origins Reaction to complexity and error-proneness of hand-crafted AKE protocols; inspired by Signal Protocol and NaCl Cryptobox philosophy of simple, composable cryptographic primitives
Database N/A
Query Language N/A
Data Formats Binary (handshake message sequences); no defined application data format
Collaborative Live Editing No
Rich Text Editing No
Mobile Support Yes (via adopters: WireGuard mobile, WhatsApp mobile)
Web Support Yes (via adopters: WhatsApp web, Lightning web)
Native Apps Yes (via adopters)
Terms Public domain
Funds N/A
Based On Signal Protocol (design philosophy); NaCl Cryptobox; Diffie-Hellman key exchange
P2P Architecture Two-party session establishment — provides authenticated key establishment for any P2P or client-server architecture; does not define a network topology
Overlay Network N/A — session/handshake layer only
Content Addressing No
Local-First N/A — session-layer primitive
E2EE Yes — mutual authentication, identity hiding, forward secrecy, zero-RTT encryption
CRDTs Lib N/A
Byzantine Fault Tolerance N/A — no network-layer BFT; session security only
Signature Yes — ECDH-based static and ephemeral key exchange; ed25519 / X25519
Permissions Key-based (static public key as capability; PSK extension available for pre-shared key layer)
Semantic Web Compatibility No
Smart Contract No
Protocol Stack Position Session/crypto layer — operates below application protocols and above transport; provides authenticated key establishment for any P2P session
Asset / Value Embedding None — cryptographic session framework only; no value or asset transmission
Protocol Maturity / Standardization Mature / De Facto Standard — specification stable since revision 34 (2018); adopted by WhatsApp, WireGuard, Lightning Network, I2P; academic security proofs published; not submitted to formal standards body
Relationships
How this tool connects to other tools and organizations, from relationships reviewed by the OpenHaven data steward. They describe how projects connect, not how good they are.
- Basis for
- Hosts