我了解密钥库如何处理私钥。基本上,您创建一个密钥库,生成/签名/存储密钥,并且基于别名的容器(JBoss,tomcat,WebLogic或WebSphere)将在初始化期间加载适当的密钥。
我的问题与信任库有关。如果容器向外部网站发出请求,该网站具有由Thawte签名的密钥,那么容器如何知道要从其信任库提供哪个公共密钥来完成ssl握手?信任库肯定有一个别名,但是当容器调用到远程站点的连接时,我真的怀疑它是否使用别名来找到匹配的公钥。
最佳答案
它不必提供甚至找到匹配的公钥。在对等方提供的证书中,公共密钥已经存在。它必须在信任库中找到与对等方提供的证书链中的证书匹配的证书:即,它必须找到其SubjectDN与传入的IssuerDN匹配的证书。当然,别名不会加入其中,因为它们不会传输,也不属于SSL协议。
关于java - Java信任库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12023441/