我们可以在 keystore 中加载多个证书和 key 吗?
是否总是只需要加载 Pairs(即证书和 key 一起)?
如果一个 keystore 有多个证书和 key ,当 Java SSL 尝试作为服务器建立连接时会选择哪一个?
最佳答案
虽然这取决于 KeyStore 类型,但通常您可以在一个存储中存储多个私钥和证书。
基于 Java 的服务器使用哪种 key 和证书组合取决于应用程序的实现方式。许多应用程序允许您使用 别名 名称选择给定的证书。 KeyStore 中的 key 和证书 getter 采用 alias
参数来做出此选择。通常,当配置中没有指定时,应用程序或框架将使用它根据 KeyStore.aliases()
枚举找到的第一个合适的。
例如,Tomcat 在其 Connector configuration 中使用 keyAlias
属性。 :
keyAlias: The alias used to for the server certificate in the keystore. If not specified the first key read in the keystore will be used.
关于 key 对,一些 KeyStores(同样取决于类型)可用于存储 SecretKey
s(例如 DES),即共享 key ,以及公私 key 对。
关于java - 我们可以在 keystore 中加载多个证书和 key 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6370745/