22个版本
0.4.2-pre.1 | 2024年7月19日 |
---|---|
0.4.1 | 2024年1月26日 |
0.4.0 | 2023年11月21日 |
0.3.0 | 2023年6月22日 |
0.1.4 | 2021年7月8日 |
#1894 in 加密学
89,487 每月下载量
用于 18 个crate (8 直接)
86KB
2K SLoC
RustCrypto: TLS编解码器
crates.io | docs.rs | |
---|---|---|
tls_codec |
||
tls_codec_derive |
该crate实现了在RFC 8446中定义的TLS编解码器,以及一些由MLS协议要求的扩展。
使用derive
特性,可以派生出TlsSerialize
和TlsDeserialize
。
该crate还提供了以下实现TLS序列化和反序列化的数据结构:
u8
,u16
,u32
TlsVecU8
,TlsVecU16
,TlsVecU32
SecretTlsVecU8
,SecretTlsVecU16
,SecretTlsVecU32
与TlsVec*
版本相同,但它实现了零化,要求元素也实现零化。TlsSliceU8
,TlsSliceU16
,TlsSliceU32
是轻量级的切片包装器,允许在不创建TlsVec*
的情况下序列化它们。TlsByteSliceU8
,TlsByteSliceU16
,TlsByteSliceU32
和TlsByteVecU8
,TlsByteVecU16
,TlsByteVecU32
提供了针对字节数组的优化实现。[u8; l]
,其中l ∈ [1..128]
- 为
Option<T>
序列化,其中T: Serialize
- 为
Option<T>
反序列化,其中T: Deserialize
- 为
(T, U)
和(T, U, V)
序列化,其中T, U, V
实现 Serialize` - 为
(T, U)
和(T, U, V)
反序列化,其中T, U, V
实现 Deserialize`
最低支持的 Rust 版本
本软件包至少需要 Rust 1.60.0。
我们可能会在未来更改最低支持版本,但将伴随着小版本号的增加。
许可协议
在您的选择下,受以下任一许可协议的约束
。
贡献
除非您明确声明,否则您提交给本作品的任何有意贡献,根据 Apache-2.0 许可证的定义,应按照上述方式双重许可,不附加任何额外条款或条件。
依赖项
~0.3–0.8MB
~19K SLoC