SignatureProcessor
对输入数据流的内容进行SHA1, MD5等算法的签名,并将签名值放入属性或替换数据流内容输出。
参数说明
签名算法
支持SHA、MD5等等大部分签名算法。
- MD
- MD5
- SHA
- SHA-1
- SHA-224
- SHA-256
- SHA-384
- SHA-512
- RSA
- MD5withRSA
- SHA1WithRSA
- SHA256withRSA
- SHA512withRSA
- DSA
- SHA1withDSA
- SHA224withDSA
- SHA256withDSA
- EC
- NONEwithECDSA
- SHA1withECDSA
- SHA224withECDSA
- SHA256withECDSA
- SHA512withECDSA
- MAC
- HmacMD5
- HmacSHA1
- HmacSHA256
- HmacSHA512
目标输出
指定签名输入数据流内容的结果输出到那里:
- 数据流属性 ,签名的结果将作为新属性“signature”的值,跟随原始数据流一起输出。
- 数据流内容,将签名结果作为新数据流内容输出,原数据流内容将被替换掉
读数据缓存大小
指定读取输入数据流数据的缓存大小,尤其是针对大文件处理,可适当加大缓存以帮助提高签名效率。
目前默认值为8KB (即8192B, 8192字节)。
支持设置B(字节), KB(千), MB(兆), GB(吉,千兆), TB(太,兆兆)
私钥/密码
当选择了相应的“签名算法”
后,对于部分签名算法需要指定私钥或密码。
比如私钥部分内容为:
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDAy5fSenxybCd3
PY61qels6oofEAGPTk6RjDJumneTCEH5h2Qfrrgr4v+TrIuwx+wt2OR7yeGaMBtC
ywRrnlwMwq3wyYxyjB0azGcGZty+1PwrYg4tzkhv+C1vAGR5a7PgAGBcLhY3dXGc
......
......
......
-----END PRIVATE KEY-----
- MD5和SHA-***,无需设置该参数,即忽略该参数设置。
- SHA***WithRSA,需要提供PKCS8格式的RSA私钥。
- SHA***withDSA,需要提供PKCS8格式的DSA私钥。
- SHA***withECDSA,需要提供PKCS8格式的EC私钥。
- HmacSHA***和HmacMD5,需要指定一签名密码
签名编码格式
指定计算签名获得的字节结果的编码格式,均采用Apache Codec库来进行编码,可根据需求选择:
- 16进制编码,比如:
86fb269d190d2c85f6e0468ceca42a20
- Base64
hvsmnRkNLIX24EaM7KQqIA==
字符编码(弃用)
指定输入数据流内容的字符编码,为兼容老版本仅能处理文本内容时的编码,故而参数保留。
示例
将测试数据“Hello World!” 通过该组件进行签名。
私钥签名
签名结果作为"数据流属性"
输出:
其中SignatureProcessor组件设置为:
由于签名算法选用了“SHA1WithRSA”
, 所以需要提供“私钥”
设置(这里使用了一个在线工具生成的一个测试私钥)。
目标输出
选`“数据流属性”,则结果为:
目标输出
选`“数据流内容”,则原始的输入数据流内容被替换成了签名结果:
MD5签名
SignatureProcessor组件设置为:
无需设置私钥,并且“目标输出”
为"数据流属性":
流程模板
参见附件(请右键另存保存):sign-flow示例