2个不稳定版本
使用旧的Rust 2015
0.2.0 | 2016年10月10日 |
---|---|
0.1.0 | 2016年9月17日 |
#1669 在 编码
76KB
1.5K SLoC
asn1-cereal
一个用于BER、DER和ASN.1的编码器和解码器的集合。
该库的“谷物”是一组特性和宏,允许将Rust类型序列化和反序列化到ASN.1。
大多数用户将希望使用Asn1Info
、BerSerialize
和BerDeserialize
特性。
ASN.1元素
这些页面将提供关于特定ASN.1结构的更多详细信息。
- SEQUENCE/SET
ber::serial::seq
- SEQUENCE/SET OF
ber::serial::seq_of
- CHOICE/ANY
ber::serial::choice
- A ::= B
ber::serial::alias
- OCTET STRING
ber::serial::prim
示例
#[macro_use] extern crate asn1_cereal; fn main() {
struct ShortSequence {
z: u64,
y: u32,
}
ber_sequence!(
ShortSequence,
"SHORT_SEQUENCE",
z;
y;
);
use asn1_cereal::BerSerialize;
let data = ShortSequence{ z: 1, y: 2 };
let mut bytes: Vec<u8> = Vec::new();
BerSerialize::serialize(&data, &mut bytes).unwrap();
}
依赖项
~130KB