如何检查具有相同通用名称的现有证书 - openssl

问题描述:

我想了解某人编写的openssl库/工具包装器的代码,以便更新它。如何检查具有相同通用名称的现有证书 - openssl

我完全不熟悉openssl和PKI。我找到了以下文档/参考资料来帮助导航,但我无法找到我的问题的答案。

http://users.dcc.uchile.cl/~pcamacho/tutorial/crypto/openssl/openssl_intro.html

http://www.madboa.com/geek/openssl/

但我无法找到答案,我的问题。

目标

我需要做到的是修改一些代码,因此,如果证书仍然有效使用相同的通用名和电子邮件地址重复的证书不能创建。 我打算检查index.txt以查看具有相同公共名称的证书是否存在,如果还没有被撤销,我将阻止用户再次创建它。

问题:

当我使用这个webtool创建证书,我看到在/ etc/SSL的index.txt文件可/与记录开始用“V”更新。 当我撤销证书时,V被更改为R. 但是,当我删除证书时,index.txt文件中没有更新。记录保持不变 - 它不会更新为新状态,也不会从文件中删除。

质询

它是一个错误,当一个证书被删除没有更新OpenSSL的index.txt文件可?
如果是,更新index.txt以删除证书的命令是什么?
也许包装是问题所在......开发人员可能忘记运行一个命令行工具来更新index.txt文件?我想我只是不知道OpenSSL应该如何处理证书删除,因此,我不知道我是否有错误...以及谁是错误。

有没有办法使用openssl工具集检查重复的证书,以便我不必手动检查index.txt?

感谢您的帮助。

删除证书不是CA通常会执行的操作。要在证书有效期结束前使证书失效,它将被吊销。但它们通常不会被删除,因为CA想要跟踪它发出的证书。所以我不确定你为什么要考虑删除证书。

但是,您好像使用openssl ca以及与OpenSSL捆绑在一起的示例CA脚本。根据您的确切需要,您可能正在寻找unique_subjectconfiguration file option,它强制只能为任何主题同时存在一个有效证书。

+0

如果我将其从“否”更改为“是”,是否还需要执行其他任何操作来“重置”它? – dot 2013-03-17 23:51:13

+0

我修改了配置文件,使其对于唯一主题具有“是”,但它仍然允许我创建重复的证书... – dot 2013-03-17 23:56:46