The library provides pure rust implementation of
Noise protocol framework with minimal dependencies
made in functional style, where a specific Noise scheme is constructed as a
concrete type (like Noise_XK<Secp256,ChaChaPoly,Sha256>
).
The library is a part of rust cyphernet suite.
yaml
Name: noise-framework
Type: Library
Kind: Free software
License: Apache-2.0
Language: Rust
Compiler: 1.65
Author: Maxim Orlovsky
Maintained: Cyphernet Initiative, Switzerland
Maintainers:
Maxim Orlovsky:
GitHub: @dr-orlovsky
GPG: EAE730CEC0C663763F028A5860094BAF18A26EC9
SSH: BoSGFzbyOKC7Jm28MJElFboGepihCpHop60nS8OoG/A
EMail: dr@orlovsky.ch
Alexis Sellier:
GitHub: @cloudhead
SSH: iTDjRHSIaoL8dpHbQ0mv+y0IQqPufGl2hQwk4TbXFlw
Currently, the library supports following handshake patterns and construction
primitives:
- All interactive handshake fundamental patterns:
NN, NK, NX, XN, XK, XX, KN, KK, KX, IN, IK, IX
- Streaming cipher ChaCha20Poly1305
- Elliptic curves Secp256k1
and Edward25519
- Digest functions SHA2-256
, SHA2-512
, SHA3-256
, SHA3-512
, BLAKE3
The library currently DOES NOT provide: - Other AEAD ciphers than ChaCha20Poly1305; - Support for pre-shared secret keys (PSK); - Interactive handshake deferred patterns.
API reference documentation for the library can be accessed at https://docs.rs/noise-framework/.
The libraries are distributed on the terms of Apache 2.0 opensource license. See LICENCE file for the license details.