#noise #protocols #framework #noise-protocol-framework

no-std cl-noise-protocol

Noise协议框架实现

1个不稳定版本

0.2.0 2024年6月15日

#891 in 密码学

无许可

51KB
1K SLoC

Noise-Rust

Crates.io Docs.rs

Rust中Noise协议框架的实现。

状态

修订版34已实现。

已成功验证来自 cacophonysnow 的测试向量。

理念

  • 简单:直接实现,代码量小,依赖很少,支持 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

您还可以通过实现 DHCipherHash 特性来插入其他原始实现。

no_std 使用

如果禁用了默认功能,则 noise-protocol crate 支持 no_std

许可

无许可。

依赖关系

~66KB