1个不稳定版本
0.2.0 | 2024年6月15日 |
---|
#891 in 密码学
51KB
1K SLoC
Noise-Rust
Rust中Noise协议框架的实现。
状态
修订版34已实现。
已成功验证来自 cacophony 和 snow 的测试向量。
理念
- 简单:直接实现,代码量小,依赖很少,支持
no_std
。功能alloc
可选作为 std 的替代。 - 快速:静态调度,不需要堆分配。
- 中立:灵活,原始API,不规定如何使用。
文档
Crates
此存储库包含几个crates。 noise-protocol
crate 包含协议框架的抽象实现。 noise-rust-crypto
提供所需的加密原语的具体实现。它是 x25519-dalek
和 RustCrypto crates 的包装。
下表显示了每个crates支持的原始功能
X25519 | AES-256-GCM | Chacha20-Poly1305 | SHA-256 | SHA-512 | BLAKE2s | BLAKE2b | |
---|---|---|---|---|---|---|---|
rust-ring | ✔ | ✔ | ✔ | ✔ | |||
rust-crypto | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
您还可以通过实现 DH
,Cipher
和 Hash
特性来插入其他原始实现。
no_std
使用
如果禁用了默认功能,则 noise-protocol
crate 支持 no_std
。
许可
无许可。
依赖关系
~66KB