密钥库,信任库和证书之间的关系

时间:2014-12-09 20:51:07

标签: ssl certificate keystore truststore

密钥库,信任库和证书之间有什么关系?这些工具是否属于某些软件的专有权?我可以获得哪些文献来获取有关这些工具的更多信息以及它们如何在更广泛的背景下使用?

谢谢!

2 个答案:

答案 0 :(得分:3)

据我所知,密钥库和信任库非常相似,它们都存储证书/公钥。唯一的区别是,truststores存储CA(证书颁发机构)的密钥和密钥库存储由CA认证的网站的密钥。因此,密钥库的使用/更新频率比信任库更频繁(CA的数量和网站数量不同)。

PS:这些不是工具,它们(信任库,密钥库)只是加密文件。

答案 1 :(得分:1)

  • private IEnumerator WaitUntilEvent(UnityEvent unityEvent) { var trigger = false; Action action = () => trigger = true; unityEvent.AddListener(action.Invoke); yield return new WaitUntil(()=>trigger); unityEvent.RemoveListener(action.Invoke); } 用于存储您的凭据(服务器或客户端),而keyStore用于存储其他凭据(来自CA的证书)。

  • 存储TrustStore通常会保存私有/公共密钥,而keyStore仅存储公共密钥并代表受信任方(即CA)列表

  • 目的:在SSL握手中,TrustStore的目的是验证凭据,而TrustStore的目的是提供凭据。

  • keyStoreTrustStore在构造和结构上非常相似,因为它们都是由keyStore命令管理的(二进制文件随keytool一起安装在JDK中) )。

  • JAVA_HOME/binJAVA_HOME/JRE/Security/cacerts,其中java存储用于认证的根CA的公共证书,即,它用于认证对等方(即服务器)。在Java中,一个文件既可以表示TrustStore,也可以表示KeyStore,但是出于安全和维护的原因,最好将私有和公共证书分开。

  • TrustStore是用于管理密钥和证书的工具。

  • 在SSL上设置服务器端时需要
  • JAVA_HOME/bin/keytool,它用于存储服务器的身份证书,该服务器将在连接上向客户端显示该服务器的身份证书,而客户端的信任库设置必须包含连接工作。如果您浏览器通过SSL连接到任何网站,它将根据服务器的KeyStore验证服务器提供的证书。

source