如何使用骆驼为文件添加签名

时间:2018-12-16 09:00:18

标签: apache-camel spring-camel camel-ftp

我需要使用apache骆驼向文件添加签名。当我检查骆驼文档时,发现crypto:sign组件在其中创建签名并将其存储在由org.apache.camel.component.crypto.DigitalSignatureConstants.SIGNATURE常量(即“ CamelDigitalSignature”)所键入的标头中。可以使用crypto:verify组件来验证签名,方法是读取此标头的内容并进行验证计算。

但是对于我来说,我需要将签名写到一个单独的文件中。例如,如果输入文件是样本。添加签名后,应该有两个输出文件(1. sample 2. sample.signed)。 sample是原始文件,sample.signed是签名文件。

签名添加应使用PGP技术完成。有人可以帮我吗

1 个答案:

答案 0 :(得分:0)

一旦在标头中设置了签名并且完成了所有其他处理,请按照以下步骤将其写入文件:

  1. 将标头设置为交换正文
  

<setBody> <simple>${header.CamelDigitalSignature} </simple></setBody>

  1. 在其他键下的标题中设置不带扩展名的原始文件名。
  

<setHeader name="oFileName"><simple>${file:onlyname.noext}</simple></setHeader>

  1. 然后使用以下代码将其写入文件:
  

<toD uri="file://path?filename=${header.oFileName}.desired extension/>

注意:步骤2假设您正在使用文件组件来读取文件。