好友
阅读权限10
听众
最后登录1970-1-1
|
千雨呀
发表于 2023-3-8 20:22
.版本 2
.子程序 取sign, 文本型
.参数 提交的信息, 文本型
.局部变量 a, 字节集
.局部变量 b, 字节集
.局部变量 i, 整数型
.局部变量 MD5, 文本型
.局部变量 sign, 文本型
.局部变量 zd, 文本型
.局部变量 Ls, 整数型, , "0"
MD5 = 校验_取md5_文本 (提交的信息, 真, 真, 假)
sign = “zzb”
a = { 21, 4, 9, 26, 16, 20, 27, 30 }
.计次循环首 (取字节集长度 (a), i)
sign = sign + 取文本中间 (MD5, 取字节集数据 (取字节集中间 (a, i, 1), 3, 1) + 1, 1)
.计次循环尾 ()
a = 字节集_十六进制到字节集 (“D42D5044C3A3A3CB9DDCFE5BCC4F6806”)
b = 字节集_十六进制到字节集 (MD5)
.计次循环首 (取字节集长度 (a), i)
加入成员 (Ls, 位异或 (取字节集数据 (取字节集中间 (a, i, 1), 3, 1), 取字节集数据 (取字节集中间 (b, i, 1), 3, 1)))
.计次循环尾 ()
zd = “ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789”
i = 0
.计次循环首 (5, )
sign = sign + 取文本中间 (zd, 右移 (Ls [i + 1], 2) + 1, 1)
sign = sign + 取文本中间 (zd, 位或 (左移 (位与 (Ls [i + 1], 3), 4), 右移 (Ls [i + 2], 4)) + 1, 1)
sign = sign + 取文本中间 (zd, 位或 (左移 (位与 (Ls [i + 2], 15), 2), 右移 (Ls [i + 3], 6)) + 1, 1)
sign = sign + 取文本中间 (zd, 位与 (Ls [i + 3], 63) + 1, 1)
i = i + 3
.计次循环尾 ()
sign = sign + 取文本中间 (zd, 右移 (Ls [i + 1], 2) + 1, 1)
sign = sign + 取文本中间 (zd, 左移 (位与 (Ls [i + 1], 3), 4) + 1, 1)
a = { 18, 11, 3, 2, 1, 7, 6, 25 }
.计次循环首 (取字节集长度 (a), i)
sign = sign + 取文本中间 (MD5, 取字节集数据 (取字节集中间 (a, i, 1), 3, 1) + 1, 1)
.计次循环尾 ()
返回 (到小写 (sign))
不就是这个吗 |
|