Cryptography Apache Camel PGP嵌入文件名或原始文件名

Cryptography Apache Camel PGP嵌入文件名或原始文件名,cryptography,apache-camel,bouncycastle,pgp,Cryptography,Apache Camel,Bouncycastle,Pgp,我有一个文件,比如test.txt,我把它加密到mypgpfile.pgp中。现在,当我使用ApacheCamel对其进行解密时,它会将输出写入mypgpfile.pgp。在Camel中有没有办法知道embeddedfilename?我希望将输出写入test.txt而不是mypfile.pgp 代码示例如下所示 from("direct:unencrypt") .unmarshal().pgp(keyFileNameSec, keyUserid, keyPassword) 是否可以

我有一个文件,比如test.txt,我把它加密到mypgpfile.pgp中。现在,当我使用ApacheCamel对其进行解密时,它会将输出写入mypgpfile.pgp。在Camel中有没有办法知道embeddedfilename?我希望将输出写入test.txt而不是mypfile.pgp

代码示例如下所示

from("direct:unencrypt")
      .unmarshal().pgp(keyFileNameSec, keyUserid, keyPassword)

是否可以通过使用bouncycastle编写自定义代码来获取原始文件名?有人能提供一些建议吗?因为保留原始文件名是我们的一项重要要求。提前谢谢你的帮助

我不熟悉这些工具,但加密一般不关注源代码——有人可能会认为它可能通过已知的文本或侧通道攻击造成安全漏洞。因此,除非您以某种方式跟踪输入文件名,否则加密文件将与之无关。我能想到的一个简单的解决方案是在执行加密之前,在文件内容的开头或结尾加上源文件名(带分隔符)。加密的文件来自不同的客户端,我们无法控制将源文件名添加到文件内容中。除非有一种方法可以通过编程的方式实现。啊,那么你只是收到一个带有模糊文件名的加密文件?你仅有的其他信息是解密文件的密钥?是的,帕特里克。这是正确的。解密文件并保留原始文件名是一项重要要求,因为文件的处理取决于文件的名称和类型。如果客户端在加密后重命名文件,则无法检索原始文件名。要求客户端使用原始名称加密文件。文件不跟踪,即审计其名称。