cryptoDecrypt

Version 25.1.9222


cryptoDecrypt


使用 AES 算法解密加密数据。

必需参数

  • keyVaultEntry: 用于密钥的加密保管库项的名称。存储在此保管库项中的值必须与 keyVaultEntryFormat 中设置的编码相匹配,并满足所选算法的长度要求。
  • ivVaultEntry: 用于初始化向量 (IV) 的加密保管库项的名称。存储在此保管库项中的值必须与 ivVaultEntryFormat 中设置的编码相匹配,并满足所选算法的长度要求。

可选参数

  • algorithm: 用于加密的算法的名称。AES 是目前唯一支持的值。它需要 128 位密钥长度。
  • cipherMode: 用于处理和解密加密数据的方法。可接受的值包括:CBCECBOFBCFBCTS8OFB8CFBGCMCTRXTS。默认值为 CBC
  • paddingMode: 用于在解密消息时处理多余或缺失数据的方法,确保正确重建明文。可接受的值包括:PKCS7ZerosNoneANSIX923ISO10126。默认值为 PKCS7
  • keyVaultEntryFormat: 存储在 keyVaultEntry 项中的值的编码。可接受的值包括:HEXBASE648BITRAW。默认值为 HEX
  • ivVaultEntryFormat: 存储在 ivVaultEntry 项中的值的编码。可接受的值包括:HEXBASE648BITRAW。默认值为 HEX
  • data: 要解密的数据。
  • file: 要解密的文件。
  • outFile: 存储解密数据的文件。
  • inFormat: 用于加密输入数据的格式。可接受的值包括:HEXBASE648BITRAW。默认值为 HEX
  • outFormat: 用于加密输出数据的格式。可接受的值为:HEXBASE648BITRAW。默认值为 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" />