我有一个我信任的根证书,也有一个由受信任的根CA颁发的中间证书,以及一个由中间CA颁发的最终证书。所有三个证书均为PEM格式
该链是正确的,已通过以下命令进行了测试:
openssl.exe验证-show_chain -CAfile root.pem-不受信任的中间体.pem FinalCertificate.crt
对于Tomcat,我要将其放置在证书密钥库中。
我可以将所有CA证书文件合并为一个文件,并使用openssl创建新的P12密钥库文件:
openssl pkcs12 -export -chain^
-name TomCat^
- CAfile AllCAfiles.PEM^
- in finalCertificate.crt^
- key finalCertificate.Key^
- out Tomcat.Keystore.P12
这似乎可行,尽管如果我要求列出证书,它说我只有一个证书。
%java_home%\bin\keytool -list -storetype PKCS12 -keystore Tomcat.Keystore.P12
回复:your keystore contains 1 entry
。该信息显示最终证书的信息。
如果我还指定选项-v
(详细),则表明整个链都在商店中
问题:如果由于keyStore中已经有CA证书而获得了我可以信任的新证书,该如何添加它?
或者在我的KeyStore中拥有多个证书是一个奇怪的主意吗?
我可以创建一个空的密钥库,还是仅创建一个根证书,然后一个一个地添加其他证书?验证证书会有所不同吗?