Java密钥库私钥导入

时间:2013-07-27 12:28:09

标签: java cryptography x509certificate keystore private-key

我正在开发一个Java项目。我需要生成RSA密钥对,然后使用它们与其他人进行通信。

我看到KeyStore可以存储KeyStore.PrivateKeyEntry但它需要一个Certificate []链。我使用我的函数创建了证书,但现在我只有一个带私钥而不是证书链的证书?如何以编程方式将此私钥和证书存储在密钥库中?

或者,如果有办法只添加私钥和公钥而不是证书。我可以稍后使用该私钥来创建我的证书。

是否有人可以粘贴一些用于存储私钥和公​​钥的示例代码。

1 个答案:

答案 0 :(得分:0)

实际上,这根本不是很难。只需创建一个证书[],其中包含一个条目......您的证书。

这假设您的证书是自签名证书。如果您的证书实际上是由另一个实体签署的,那么最好将整个证书链放入证书数组中。

离。

X509Certificate myCert = ...

KeyStore ks = ...

Certificate [] certArray = { myCert };

ks.setKeyEntry(alias, key, certArray);