信任存储与密钥存储-使用keytools创建
据我所知,密钥存储库通常只保存私钥/公钥,而信任存储库只保存公钥(并且表示要与您通信的受信任方的列表)。好吧,这是我的第一个假设,如果这不对,我可能开始的不是很好.
不过,我对如何/何时在使用keyTool时区分商店感兴趣。
到目前为止,我已经创建了一个keystore
keytool -import -alias bob -file bob.crt -keystore keystore.ks
创建我的keystore.ks文件。我回答yes
对于这个问题,我是否信任鲍勃,但我不清楚这是创建了密钥库文件还是信任库文件?我可以将我的应用程序设置为使用该文件。
-Djavax.net.ssl.keyStore=keystore.ks -Djavax.net.ssl.keyStorePassword=x-Djavax.net.ssl.trustStore=keystore.ks -Djavax.net.ssl.trustStorePassword=x
与System.setProperty( "javax.net.debug", "ssl")
设置后,我可以看到可信证书下的证书(但不能在keystore部分中看到)。我正在导入的特定证书只有一个公钥,我打算使用它通过SSL连接发送到Bob的东西(但最好还是留给另一个问题吧!)
如有任何指示或澄清,将不胜感激。KeyTool的输出是否与您导入的一样,以及它的公正约定,即一个是密钥存储库,另一个是信任存储库?使用SSL等是什么关系?