1个不稳定版本
使用旧的Rust 2015
0.6.2 | 2016年10月11日 |
---|
#22 in #txt-file
在3个crate中使用(通过mozilla-ca-certs)
38KB
839 行
NSS certdata.txt
解析器
该crate解析来自NSS的certdata.txt
文件,该文件代表Mozilla CA证书存储。
数据
certdata.txt
文件描述了一个PKCS#11对象的集合,这些对象是属性集合,更多或更少是键/类型/值元组的集合。这包括证书和信任声明。
此文件中的证书可能是受信任的CA,但它也可能是已知已泄露或欺诈的证书;请谨慎使用。
信任声明可以应用于文件中的证书,或者可以应用于尝试证明其身份的实体可能提供的证书(例如,TLS服务器);它们可以表示信任或不信任,可能为不同的用途具有不同的信任级别。
关于信任级别最重要的一个方面是,明确不信任的证书(CKT_NSS_NOT_TRUSTED
)即使有来自受信任委派方(直接或间接)的有效的签名也不受信任。相比之下,CKT_NSS_MUST_VERIFY_TRUST
在某种程度上相当于没有任何信任条目。(这些信任级别最初是Netscape的一个扩展,从未回到上游标准中,而且不清楚除了前Netscape员工偶然记住的之外是否有任何文档,但这似乎是它们的使用方式。)
错误
-
需要文档。
-
低级
nom
解析器实际上不需要是公开的;隐藏它允许在不破坏API的情况下更改实现。 -
需要为库的高层添加测试,而不仅仅是语法。
-
回顾过去,
nom
并不是最佳选择。一个手写的解析器可能整体上更简单,不需要对它进行微妙的修改以适应流式处理使用,并且从其中获取有用的错误信息(例如,带有行号)会更简单。然而,当前的解析器可以工作,并且文件格式不太可能发生重大变化。
依赖关系
~705KB
~14K SLoC