#rustls #tls #rust-crypto #provider #pure #algorithm #organization

no-std rustls-rustcrypto

使用 RustCrypto 组织的算法实现为 Rustls TLS 库提供的纯 Rust 加密提供商

1 个不稳定版本

0.0.2-alpha2024年4月24日
0.0.1-alpha 2024年4月24日
0.0.0 2023年9月13日

#2573 in 加密学

Download history 239/week @ 2024-04-23 13/week @ 2024-04-30 3/week @ 2024-05-28 4/week @ 2024-06-11 2/week @ 2024-07-02

116 每月下载量

MIT/Apache

78KB
1.5K SLoC

rustls-rustcrypto

crate Docs Build Status Apache2/MIT licensed Rust Version Project Chat

RustCrypto 基于的提供商实现,用于 rustls 的 0.23 版本,由 RustCrypto 组织维护。

⚠️自行承担使用风险!请勿在生产环境中使用⚠️

这不仅是不完整的,仅实现了少数选定的 TLS 套件(应该足以覆盖 70% 的使用),而且 rustls 和 RustCrypto 包都没有经过正式验证和 FIPS 兼容性认证。

请注意,RustCrypto 的性能通常低于 ring,但作为交换,您得到了一个理论上可以在任何 Rust 已移植到的位置编译的纯 Rust 实现。在我们的情况下,我们需要有 std,但已提供了对未来 no_std 扩展的基础支持。

支持的加密套件

  • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
  • TLS13_AES_128_GCM_SHA256
  • TLS13_AES_256_GCM_SHA384
  • TLS13_CHACHA20_POLY1305_SHA256

许可证

根据您的选择,许可为以下之一

一些由 @ctz 编写的代码已从上游 rustls 中改编。在许可的情况下使用。

贡献

除非您明确声明,否则任何旨在包含在作品中的贡献,根据 Apache-2.0 许可证定义,应按上述方式双重许可,而无需任何额外的条款或条件。

依赖项

~15–25MB
~458K SLoC