#txt-file #certificate #ca #mozilla #store #trust #parser

nss-certdata-parser

用于解析存储Mozilla CA证书存储的NSS中的certdata.txt文件的解析器

1个不稳定版本

使用旧的Rust 2015

0.6.2 2016年10月11日

#22 in #txt-file


3个crate中使用(通过mozilla-ca-certs

MPL-2.0许可证

38KB
839

NSS certdata.txt 解析器

该crate解析来自NSScertdata.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