cryptoDecrypt
Version 25.1.9222
cryptoDecrypt
使用 AES
算法解密加密数据。
必需参数
- keyVaultEntry: 用于密钥的加密保管库项的名称。存储在此保管库项中的值必须与 keyVaultEntryFormat 中设置的编码相匹配,并满足所选算法的长度要求。
- ivVaultEntry: 用于初始化向量 (IV) 的加密保管库项的名称。存储在此保管库项中的值必须与 ivVaultEntryFormat 中设置的编码相匹配,并满足所选算法的长度要求。
可选参数
- algorithm: 用于加密的算法的名称。AES 是目前唯一支持的值。它需要 128 位密钥长度。
- cipherMode: 用于处理和解密加密数据的方法。可接受的值包括:
CBC
、ECB
、OFB
、CFB
、CTS
、8OFB
、8CFB
、GCM
、CTR
和XTS
。默认值为CBC
。 - paddingMode: 用于在解密消息时处理多余或缺失数据的方法,确保正确重建明文。可接受的值包括:
PKCS7
、Zeros
、None
、ANSIX923
和ISO10126
。默认值为PKCS7
。 - keyVaultEntryFormat: 存储在 keyVaultEntry 项中的值的编码。可接受的值包括:
HEX
、BASE64
、8BIT
和RAW
。默认值为HEX
。 - ivVaultEntryFormat: 存储在 ivVaultEntry 项中的值的编码。可接受的值包括:
HEX
、BASE64
、8BIT
和RAW
。默认值为HEX
。 - data: 要解密的数据。
- file: 要解密的文件。
- outFile: 存储解密数据的文件。
- inFormat: 用于加密输入数据的格式。可接受的值包括:
HEX
、BASE64
、8BIT
和RAW
。默认值为HEX
。 - outFormat: 用于加密输出数据的格式。可接受的值为:
HEX
、BASE64
、8BIT
和RAW
。默认值为HEX
。
输出属性
- data: 如果未指定 outFile,则解密数据。
- outFile: 如果指定了 outFile,则包含解密数据的文件。
示例
在以下示例中,cryptoDecrypt 操作用于解密加密值。该值使用 AES 和 HEX 编码进行加密,因此示例对 keyVaultEntryFormat 和 keyVaultEntryFormat 参数使用默认 AES 算法和默认 HEX 编码。这意味着存储在 keyVaultEntry 和 ivVaultEntry 的“key”和“iv”保管库项目中的值必须与用于加密该值的 128 位 HEX 编码值匹配。
未使用正确的值会导致解密过程中出现错误。
<!-- 在先前步骤中检索到的加密值。-->
<arc:set attr="encrypted.value" value="D13B1E9F660B797347D1AAB00046BE70" />
<!-- 设置 Key 和 IV 值。这些是用于加密原始数据的保管库项目的名称。” -->
<arc:set attr="input.keyVaultEntry" value="key"/>
<arc:set attr="input.ivVaultEntry" value="iv"/>
<!-- 默认算法为 AES -->
<arc:set attr="input.algorithm" value="AES" />
<!-- 传入输入项并调用 cryptoDecrypt -->
<arc:set attr="input.data" value="[encrypted.value]"/>
<arc:call op="cryptoDecrypt" in="input" out="result" >
<!-- 可以在此处使用新解密的值/数据。这里使用了一个新文件。 -->
<arc:set attr="output.data" value="[result.data]" />
<arc:set attr="output.filename" value="MyDecryptedData.txt" />
</arc:call>
<!-- 将解密数据作为文件推送为输出。-->
<arc:push item="output" />