从BcPGPSecretKeyRingCollection中提取私钥时的校验和不匹配错误

时间:2019-12-22 05:17:52

标签: bouncycastle pgp

我正在尝试实现PGP的BouncyCastle API。

提取私钥时出现校验和不匹配错误。这可能是造成此问题的原因和解决方法。我在发布此查询之前搜索了网络,但是尚未找到任何解决方案。

如何解决该问题?

安装程序在Java 8中使用了以下库。

  • 安装程序JAR:Bouncy Castle Provider»1.64
  • bcprov-jdk15on-1.64
  • bcpg-jdk15on-164
PBESecretKeyDecryptor pgpSecKeyDecryptor = new BcPBESecretKeyDecryptorBuilder( new BcPGPDigestCalculatorProvider()).build(pass); return pgpSecKey.extractPrivateKey(pgpSecKeyDecryptor);

错误:

org.bouncycastle.openpgp.PGPException: checksum mismatch at 0 of 20
at org.bouncycastle.openpgp.PGPSecretKey.extractKeyData(Unknown Source)
at org.bouncycastle.openpgp.PGPSecretKey.extractPrivateKey(Unknown Source)
at com.trial.PGPUtility.findPrivateKey(PGPUtility.java:64)
at com.trial.BCDecryptor.decryptFile(BCDecryptor.java:128)
at com.trial.BCDecryptor.decryptFile(BCDecryptor.java:85)
at com.trial.BCDecryptor.decryptFile(BCDecryptor.java:80)
at com.trial.BCDecryptor.decryptFile(BCDecryptor.java:75)
at com.trial.SimpleTest.decryptFile(SimpleTest.java:31)
at com.trial.SimpleTest.main(SimpleTest.java:91)
---

0 个答案:

没有答案