我的 java 应用程序使用一个密钥库文件,其中我有一个证书,该证书用于与活动目录服务器的 ssl 连接。我要做的是检查它的到期日期并提示用户它是否即将到期。我必须在我的应用程序启动时这样做。我的想法是使用外部程序:keytool 来显示有关密钥库中某些证书的信息,然后对 keytool 输出的字符串进行一些解析操作以查找此验证日期。
这是特定 keytool 命令的输出:
Owner:
Issuer: CN=CPD Root CA, DC=cpd, DC=local<br>
Serial number: 39e8d1610002000000cb
<br>Valid from: Wed Feb 22 21:36:31 CET 2012 until: Thu Feb 21 21:36:31 CET 2013
Certificate fingerprints: <br>
MD5: 82:46:8B:DB:BC:5C:64:21:84:BB:68:E3:4B:D4:35:70<br>
SHA1: 35:52:CA:F2:11:66:1E:50:63:BC:53:A5:50:C1:F0:1E:62:81:BC:3F<br>
Signature algorithm name: SHA1withRSA
问题在于解析日期,因为我无法确定它以哪种格式显示。
有没有更简单的方法来检查 java 密钥库文件中包含的证书的到期日期?
原文由 lou_cypher 发布,翻译遵循 CC BY-SA 4.0 许可协议
感谢 EJP 的指导,这是我想出的一个块。