Java SSL KeyManagerFactory密码

m4pnthwp  于 5个月前  发布在  Java
关注(0)|答案(1)|浏览(75)

我有一个简单的问题给Java SSLMaven。

KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
keyManagerFactory.init(KeyStore.getInstance(mykeyfile, password), password);

字符串
在上面的代码片段中,为什么需要提供2个密码?
KeyStore.getInstance(mykeyfile, password)这是我得到的密钥库。keyManagerFactory在init方法中使用密码的必要性是什么?
我在Javadoc中发现了这个,它很令人困惑,因此有了这个问题!

  • Keystore class是这样说的。
  • 文件-密钥库
  • 文件密码-密钥库密码
  • KeyManagerFactory
  • KS-Key Store
  • password -在KeyStore中恢复密钥的密码
piztneat

piztneat1#

一些Java密钥库格式,特别是JKS和JCEKS,可以为 store(文件)提供一个密码,并为该存储中的(或每个)私钥 * 提供单独的不同密码。自2017年以来,Oracle一直在推动Java开发人员和用户使用或切换到PKCS 12,并且(在Java中)PKCS 12不支持不同的密码,但是人们仍然可以使用其他格式,并且这种能力仍然存在于(大多是以前定义的)API中。(PS:这实际上是加密,而不仅仅是SSL/TLS; Java加密可以并且也用于许多其他事情。)

相关问题