This is not a Wikipedia article: It is an individual user's work-in-progress page, and may be incomplete and/or unreliable. For guidance on developing this draft, see Wikipedia:So you made a userspace draft. Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
The Noise Protocol Framework (Noise) is a framework created by Trevor Perrin for building cryptographic communication protocols. Its specification is in the public domain. Implementations are available for many popular programming languages under different open source licenses. Notable users are WhatsApp, WireGuard, Lightning Network, and I2P. The name does not refer to adding literal noise to thwart inferring information from message sizes or communicating parties, as this is not supported by the Noise framework.
The framework allows one to take various cryptographic building blocks and create a communication protocol with the desired properties. Properties may include (stuff like 0-RTT ...)
TODO mention that it can do stuff with proofs and predefined protocols, lots of info on https://noiseexplorer.com / https://eprint.iacr.org/2018/766
An intro that might help building this article: https://duo.com/labs/tech-notes/noise-protocol-framework-intro
References
editTODO
Notable users: https://noiseprotocol.org/ - also for "implementations under different licenses" there are links to the implementations on that page
Created by Trevor Perrin and it being in the public domain: https://noiseprotocol.org/noise.html
0-RTT feature most clearly/authoritatively mentioned on: https://noiseprotocol.org/noise.html#rationale-for-compound-protocols (alternatively also https://grund.me/posts/securing-custom-protocols-with-noise/#the-noise-protocol-framework)