将openssl der文件导入Java密钥库

问题描述 投票:0回答:2

我用openssl创建了一个密钥对,希望它们导入到java-keystore中:

1) openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out my_privatekey.pem
2) openssl rsa -pubout -outform DER -in my_privatekey.pem -out mypublic_key.der
3) openssl pkcs8 -topk8 -nocrypt -outform DER -in my_privatekey.pem -out my_privatekey.der

首先,我创建一个私钥(.pem格式),然后创建一个公钥,最后将私钥转换成可以在Java(pkcs8)中使用的格式。

现在,我想在我的Java应用程序中以安全的方式使用这些密钥,所以我做了一些研究,而解决方案似乎是通过使用java-keystore。

但是,如果我没错,您将不能直接将公钥存储到密钥库中,因为必须首先创建证书:

以DER格式转换证书:

openssl x509 -outform der -in certificate.pem -out certificate.der

导入密钥库

keytool -import -alias your-alias -keystore cacerts -file certificate.der

这现在使我想到了我的问题。是否可以在没有证书的情况下将私钥和公钥导入密钥库?我不需要证书,因为我只想安全地存储我的密钥,因此它们受到密码保护。

如果不可能,那么您可以创建并签署自己的证书。但是,证书可以过期,因此一段时间后,我必须始终更新它,或者我错了吗?

我与第三方共享此公共密钥(他们需要此密钥来验证用我的私有密钥签名的数据),并且我还从他们那里获得了公共密钥,以对某些数据进行加密。因此,我需要在末尾存储2个公用密钥(我的密钥和收到的公用密钥)。

我该怎么做?为了能够将其存储到java-keystore中,我是否需要创建2个证书作为黑客?

java openssl public-key-encryption
2个回答
0
投票

另外:对于密钥对,您不需要genpkey,然后不需要pkcs8 -topk8 -nocrypt -outform dergenpkey ... -outform derwithout


0
投票

“ keytool -importcert”命令可以轻松读取PEM和DER格式的证书。

© www.soinside.com 2019 - 2024. All rights reserved.