zm.DecodeDES DES解密

文章目录
  1. 1. 功能
  2. 2. 语法
  3. 3. 参数
  4. 4. 返回值
  5. 5. 示例
  6. 6. 备注

功能

对数据进行标准DES解密, 支持DES和DES3, 可以对zm.EncodeDES DES加密结果解密。

语法

结果 = zm.DecodeDES(密文, 密钥[, 高级属性])

参数

参数 数据类型 解释
密文 字符串 待解密的密文内容。
密钥 字符串 用于解密的密钥。
高级属性 可选参数,用于设置加解密模式等选项,格式为{“属性名”:”属性值”,…},详见下方表。
属性名 可选值列表 默认值 作用
mode ecb,cbc,ctr,ofb,cfb,ige,pcbc ecb 密文加密模式
padding zero,pkcs7,isoiec7816,ansix923 zero 填充方式
block des,des3 des 加密算法
iv 任意字符串 0 iv偏移量,ecb模式不用填写
cipherout 0,2,16,64 16 密文类型,0为原二进制字符串,2为字节数组, 16为十六进制字符串, 64为原二进制字符串Base64编码

返回值

字符串 ,返回解密后的结果,失败为null

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Import "zm.luae" //导入插件,只需执行一次
zm.Init //初始化插件,只需执行一次

Dim text = "紫猫", pwd = "12345678"
Dim s, v
s = zm.EncodeDES(text, pwd)
TracePrint "对明文", text, "使用密钥", pwd, "进行DES-ECB加密结果", s
v = zm.DecodeDES(s, pwd)
TracePrint "对密文", s, "使用密钥", pwd, "进行DES-ECB解密结果", v

s = zm.EncodeDES(text, pwd, {"cipherout":64})
TracePrint "对明文", text, "使用密钥", pwd, "进行DES加密输出Base64结果", s
v = zm.DecodeDES(s, pwd, {"cipherout":64})
TracePrint "对十六进制密文", s, "使用密钥", pwd, "进行DES解密输出Base64结果", v

s = zm.EncodeDES(text, pwd, {"mode":"cbc","block":"des3","iv":"abcdefgh"})
TracePrint "对明文", text, "使用密钥", pwd, "进行DES3-CBC加密结果", s
v = zm.DecodeDES(s, pwd, {"mode":"cbc","block":"des3","iv":"abcdefgh"})
TracePrint "对十六进制密文", s, "使用密钥", pwd, "进行DES3-CBC解密结果", v

备注