如何通过命令行针对 Java 证书存储验证 X509(或 DER 格式)证书?
我已经研究过使用该keytool
实用程序,但它看起来只处理导入/导出/显示功能(无验证)。
编辑:看起来好像keytool
可以用于验证,但前提是尝试导入。我想问这个问题的更好方法是是否可以使用更被动的方法(例如:不修改密钥库)。谢谢!
如何通过命令行针对 Java 证书存储验证 X509(或 DER 格式)证书?
我已经研究过使用该keytool
实用程序,但它看起来只处理导入/导出/显示功能(无验证)。
编辑:看起来好像keytool
可以用于验证,但前提是尝试导入。我想问这个问题的更好方法是是否可以使用更被动的方法(例如:不修改密钥库)。谢谢!
您可以使用从 Java 密钥库keytool
到export
X.509 文件的所需证书(那些在您需要验证的链中的证书)。然后,将它们连接到一个文件中。最后,openssl
用来做验证。
openssl verify -CAfile concatenated-certs.crt cert-to-verify.crt
这不是一个完美的解决方案,因为它涉及将证书从信任库中弹出,但考虑到您的开始,它应该可以工作。
此页面可能过于简单:
http://java.sun.com/docs/books/tutorial/security/toolfilex/rstep1.html
但看起来即使使用 keytool 导入也不会真正验证证书。我没有看到任何关于验证传入证书的签名与另一个受信任证书的签名的描述。
jarsigner 将验证签名 jar 上的签名,但不做任何事情来验证用于签署 jar 的证书上的签名。
恐怕您要么必须编写一个工具来进行验证,要么寻找一个商业工具来进行验证。我认为一些 PKI 工具包会有一个证书验证工具可以做到这一点。