18次发布
0.4.1 | 2024年1月26日 |
---|---|
0.4.0 | 2023年11月21日 |
0.3.0 | 2023年6月22日 |
0.3.0-pre.1 | 2023年3月3日 |
0.1.2 | 2021年7月7日 |
125 在 #rfc
57,216 每月下载量
在 16 个crates中使用 (通过 tls_codec)
64KB
1K 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
,u64
TlsVecU8
,TlsVecU16
,TlsVecU32
SecretTlsVecU8
,SecretTlsVecU16
,SecretTlsVecU32
与TlsVec*
版本相同,但它实现了zeroize,需要元素也实现zeroize。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。
我们可能会在未来更改最低支持的 Rust 版本,但将伴随着小版本号的增加。
许可证
在您选择的情况下,许可协议为以下之一
。
贡献
除非您明确声明,否则任何有意提交给工作以包含在内的贡献,根据 Apache-2.0 许可证定义,均应双许可如上所述,不附加任何额外的条款或条件。
依赖项
~265–720KB
~17K SLoC