5个版本 (3个破坏性更新)

0.4.0 2024年5月6日
0.3.0 2023年5月19日
0.2.0 2023年2月15日
0.1.1 2023年2月6日
0.1.0 2023年1月16日

#426 in 加密学

Download history 73/week @ 2024-04-15 35/week @ 2024-04-22 108/week @ 2024-04-29 244/week @ 2024-05-06 38/week @ 2024-05-13 117/week @ 2024-05-20 25/week @ 2024-05-27 49/week @ 2024-06-03 54/week @ 2024-06-10 51/week @ 2024-06-17 16/week @ 2024-06-24 31/week @ 2024-07-01 13/week @ 2024-07-08 91/week @ 2024-07-15 49/week @ 2024-07-22 22/week @ 2024-07-29

每月186次下载
3 个crate中使用 (通过 cyphernet)

Apache-2.0

89KB
1.5K SLoC

Rust的Noise协议框架

Build Tests Lints codecov

crates.io Docs Apache-2 licensed

概述

该库提供Noise协议框架的纯Rust实现,以函数式风格构建,其中特定的Noise方案被构造为具体类型(如Noise_XK<Secp256,ChaChaPoly,Sha256>)。

该库是rust cyphernet套件的一部分。

清单

Name: noise-framework
Type: Library
Kind: Free software
License: Apache-2.0
Language: Rust
Compiler: 1.65
Author: Maxim Orlovsky
Maintained: Cyphernet DAO, Switzerland
Maintainers:
  Maxim Orlovsky:
    GitHub: @dr-orlovsky
    GPG: EAE730CEC0C663763F028A5860094BAF18A26EC9
    SSH: BoSGFzbyOKC7Jm28MJElFboGepihCpHop60nS8OoG/A
    EMail: [email protected]
  Alexis Sellier:
    GitHub: @cloudhead
    SSH: iTDjRHSIaoL8dpHbQ0mv+y0IQqPufGl2hQwk4TbXFlw

功能

目前,该库支持以下握手模式和构造原语

  • 所有交互式握手基本模式:NN, NK, NX, XN, XK, XX, KN, KK, KX, IN, IK, IX
  • 流密码 ChaCha20Poly1305
  • 椭圆曲线 Secp256k1Edward25519
  • 摘要函数 SHA2-256SHA2-512SHA3-256SHA3-512BLAKE3

该库目前不提供

  • 除了ChaCha20Poly1305之外的其他AEAD加密算法;
  • 支持预共享密钥(PSK);
  • 交互式握手延迟模式。

文档

该库的API参考文档可在https://docs.rs/noise-framework/访问。

许可

库根据Apache 2.0开源许可证分发。有关许可证详情,请参阅许可文件

依赖

~1.2–2.7MB
~44K SLoC