我正在尝试使用Apache Camel(XML DSL)实现PGP加密/解密。
我用Kleoptra创建了一个OpenPGP密钥集(并经过测试以验证密钥可用于加密和解密)
现在,在我的骆驼语境中,我有以下内容:
<dataFormats>
<pgp id="encrypt" keyFileName="party2public.pgp" keyUserid="party2"/>
<pgp id="decrypt" keyFileName="party2private.pgp"/>
</dataFormats>
<route id="encrypter">
<from uri="file:ToEncrypt"/>
<marshal ref="encrypt"/>
<to uri="file:Encrypted"/>
</route>
<route id="decrypter">
<from uri="file:ToDecrypt"/>
<unmarshal ref="decrypt"/>
<to uri="file:Decrypted"/>
</route>
加密文件时,它可以按预期工作,文件最终在“加密”文件夹中加密。但是当尝试解密它时,出现以下错误:
org.bouncycastle.openpgp.PGPException:PGP消息已使用秘密密钥环中找不到的密钥加密。
知道为什么会这样吗?
答案 0 :(得分:1)
我认为您只需要在pgp解密bean上添加password =“”。
我正在通过以下方式修复上游问题:https://issues.apache.org/jira/browse/CAMEL-12897