gpt4 book ai didi

java - 从PFX文件中读取私钥,用该私钥解密密文

转载 作者:行者123 更新时间:2023-12-02 11:49:34 26 4
gpt4 key购买 nike

我尝试从受密码保护的 PFX 文件中获取私钥,并借助提取的私钥进行解密。尝试了以下代码,但得到了 NullPointerException

    Security.addProvider(new BouncyCastleProvider());
PEMParser pemParser = new PEMParser(new InputStreamReader(new FileInputStream("..//pfx//pfx//BC_6.pfx")));
PEMEncryptedKeyPair encryptedKeyPair = (PEMEncryptedKeyPair) pemParser.readObject();
PEMDecryptorProvider decryptorProvider = new JcePEMDecryptorProviderBuilder().build("test123".toCharArray());
PEMKeyPair pemKeyPair = encryptedKeyPair.decryptKeyPair(decryptorProvider);

JcaPEMKeyConverter converter = new JcaPEMKeyConverter().setProvider("BC");
System.out.println(" Private Key ---> "+converter.getPrivateKey(pemKeyPair.getPrivateKeyInfo()));

输出是,

Exception in thread "main" java.lang.NullPointerException
at com.test.obfuscate.EncryptionUtil.main(EncryptionUtil.java:40)

请对此提出建议,过去一周一直坚持这一点。尝试了来自 StackOverflow 的不同帖子。

最佳答案

PEMPParser pemParser = new PEMParser(new InputStreamReader(new FileInputStream("..//pfx//pfx//BC_6.pfx")));

您是否尝试将 PFX 文件作为 PEM 文件读取? PFX 文件实际上是 PKCS12 keystore 。

所以(从我的脑子里打字,请不要介意小打字错误/语法错误)

InputStream in = ...
KeyStore ks = KeyStore.getInstance("PKCS12");
ks.load(in);

关于java - 从PFX文件中读取私钥,用该私钥解密密文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47977826/

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