调试输出 (EncryptStr (“user=abc” + #换行符 + “pass=去你是aa”, 100))
输出:
“75434D1EB5868B90318587D48A1BBF67D6104E7B988E97A2024C”
|
EncryptStr | 文本型 | | |
data | 文本型 | | | | key | 整数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | i | | | | RStr | 字节集 | | | RStrB | 字节集 | | | k | 整数型 | | | CKEY1 | 整数型 | | | CKEY2 | 整数型 | | | Result | 文本型 | | |
RStr = 文本到UTF8 (data )RStrB = RStr k = key CKEY1 = 1239 CKEY2 = 5648 计次循环首 (取字节集长度 (RStr ), i )RStrB [i ] = 位异或 (RStrB [i ], 右移 (k, 8 )) k = (RStrB [i ] + k ) × CKEY1 + CKEY2 计次循环尾 ()Result = 字节集到十六进制文本 (RStrB )返回 (Result )变量名 | 类 型 | 静态 | 数组 | 备 注 | 地址 | 整数型 | | | 字节集长度 | 整数型 | | | i | 整数型 | | | 返回十六 | 文本型 | | |
字节集长度 = 取字节集长度 (字节集 )计次循环首 (字节集长度, i )返回十六 = 返回十六 + 到十六进制_单 (取字节集数据 (字节集, 1, 地址 + i )) 计次循环尾 ()返回 (返回十六 ) 返回 (多项选择 (右移 (字节, 4 ) + 1, “0”, “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “A”, “B”, “C”, “D”, “E”, “F”) + 多项选择 (位与 (字节, 15 ) + 1, “0”, “1”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “A”, “B”, “C”, “D”, “E”, “F”))
看有人需要的话 随后开源 解密的
|