Rustls —— 内存安全的 TLS 实现

933次阅读
没有评论

Rustls 是一个用 Rust 编写的现代 TLS 库;它使用 ring 进行加密,使用 webpki 进行证书验证。Rustls 成熟且使用广泛。虽然大多数 API surface 是稳定的,但开发团队预计接下来的几个版本将根据需要进行进一步更改,以适应新功能或性能改进。

Rustls 旨在提供良好的加密安全级别,无需配置即可实现该安全性,并且不提供不安全的功能或过时的加密技术

当前功能

  • TLS1.2 和 TLS1.3。
  • 客户端的 ECDSA、Ed25519 或 RSA 服务器身份验证。
  • 通过服务器进行 ECDSA、Ed25519 或 RSA 服务器身份验证。
  • 使用 ECDHE 的前向保密;使用 curve25519、nistp256 或 nistp384 曲线。
  • AES128-GCM 和 AES256-GCM 批量加密,具有安全随机数。
  • ChaCha20-Poly1305 批量加密 ( RFC7905 )。
  • ALPN 支持。
  • SNI 支持。
  • 可调片段大小,使 TLS 消息匹配底层传输的大小。
  • 可选地使用矢量 IO 来最小化系统调用。
  • TLS1.2 会话恢复。
  • 通过 tickets 恢复 TLS1.2 (RFC5077 )。
  • TLS1.3 通过票据或会话存储恢复。
  • 客户端的 TLS1.3 0-RTT 数据。
  • 服务器的 TLS1.3 0-RTT 数据。
  • 由客户端进行客户端身份验证。
  • 服务器进行客户端身份验证。
  • 扩展的主密钥支持 ( RFC7627 )。
  • Exporters (RFC5705)
  • OCSP 由服务器装订。
  • 通过服务器进行 SCT 装订。
  • 客户的 SCT 验证。

未来可能的功能

  • 支持PSK。
  • 客户端的 OCSP 验证。
  • Certificate pinning

Read More 

正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 
评论(没有评论)
Generated by Feedzy