gpt4 book ai didi

java - 在 Java 中将 PKCS#8 私钥转换为 PEM

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:06:35 26 4
gpt4 key购买 nike

大家好,我正在尝试将我在 java 程序中生成的 PKCS#8 私钥转换为 PEM 编码文件。

Security.addProvider(new BouncyCastleProvider());
SecureRandom rand = new SecureRandom();
JDKKeyPairGenerator.RSA keyPairGen = new JDKKeyPairGenerator.RSA();
keyPairGen.initialize(2048, rand);
KeyPair keyPair = keyPairGen.generateKeyPair();

PEMWriter privatepemWriter = new PEMWriter(new FileWriter(new File(dir + "private.key")));
privatepemWriter.writeObject(keyPair.getPrivate());

运行程序后,我得到了两种格式的私钥和一个公钥(代码未按实际情况显示)。然后我使用这个 openssl 命令将 private.key 转换回 pem 格式的文件。

openssl pkcs8 -nocrypt -inform DER -in private.key -out private2.pem

当我比较 private.pem 和 private2.pem 时,它们是不同的,显然当我尝试使用 private.pem 时,它说它不是有效文件。

为了将此私钥正确转换为我需要的 PEM 格式,我缺少什么步骤?我不能在我的程序中使用 OpenSSL,否则我会简单地添加该函数调用。我可以访问此程序中的 BouncyCaSTLe 库,所以它可能有一个我忽略的解决方案。

最佳答案

您可以使用 PEMWriter在 BouncycaSTLe 上课。

关于java - 在 Java 中将 PKCS#8 私钥转换为 PEM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3561771/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com