0.16.19 |
|
---|---|
0.16.19-1 |
|
#35 in #der
15KB
276 代码行
ring-der
这个crate提供了ring::io::der中的DER解析器的扩展版本。
扩展内容
- 所有在X.680第8.4节中定义的标签类型;
- 高标签号,对于标签号为31及以上的情况;
- 使用anyhow进行错误处理
此crate提供了解析ASN.1数据的原语。用户可以完全控制如何解释字节。
示例
use ring_der::der::parse_boolean;
use ring_der::Error;
let input = untrusted::Input::from(&[0x01, 0x01, 0xff]);
let result = input.read_all(Error::IncompleteRead, |r| parse_boolean(r));
assert_eq!(result, Ok(true));
许可证
请参阅LICENSE。
lib.rs
:
ring-der
这个库提供了ring::io::der中DER解析器的扩展版本。
新增内容
- 高标签号,对于标签号为31及以上的情况;
- SET和SET OF;
- 枚举类型;
- GeneralizedTime;
- 与anyhow兼容
示例
use ring_der::der::parse_boolean;
use ring_der::Error;
let input = untrusted::Input::from(&[0x01, 0x01, 0xff]);
let result = input.read_all(Error::IncompleteRead, |r| parse_boolean(r));
assert_eq!(result, Ok(true));
依赖关系
~0.3–0.8MB
~19K SLoC