511遇见易语言软件本地注册验证-15-软件序列号二元两次算法加密

2、F2(F1)对F1重新加密算法

3、F2(F1)= XXXX- XXXX- XXXX

4、F3反向逆算 F2=F1

注册码_生成A源码

.版本 2
.支持库 spec
 
.子程序 注册码_生成A, 文本型
.参数 注册码, 长整数型, , 机器的硬盘特征字
.局部变量 m, 长整数型
.局部变量 i, 整数型
.局部变量 t, 文本型, , "6"
.局部变量 返回文本, 文本型
 
m = 注册码
.计次循环首 (6, i)
    t [i] = 注册码_生成 (m × i)
 
    调试输出 (m × i)
 
.计次循环尾 ()
返回文本 = t [1] + “-” + t [2] + “-” + t [3] + “-” + t [4] + “-” + t [5] + “-” + t [6]
返回 (返回文本)

注册码_反算A源码:

.版本 2
.支持库 spec
 
.子程序 注册码_反算A, 逻辑型, , 放到客户端用来验证
.参数 序列号, 文本型, , 26FBDC803E-4DF7B9007C-5AF39580BA-81EF7200F8-A8EB4E8136-CFE72B0174
.局部变量 text, 文本型
.局部变量 b, 长整数型
.局部变量 A_T, 文本型, , "0"
.局部变量 i, 整数型
.局部变量 a, 长整数型, , "6"
 
.如果 (序列号 ≠ “”)
    text = 序列号
    b = 系统_取特征码综合 ()
    A_T = 分割文本 (text, “-”, )
    .计次循环首 (6, i)
        a [i] = 注册码_反算 (A_T [i])
 
        调试输出 (a [i])
 
    .计次循环尾 ()
    .判断开始 (a [6] ÷ 6 = b 且 a [5] ÷ 5 = b 且 a [4] ÷ 4 = b 且 a [3] ÷ 3 = b 且 a [2] ÷ 2 = b 且 a [1] ÷ 1 = b)
        返回 ()
    .默认
        返回 ()
    .判断结束
 
.否则
 
.如果结束
 
返回 ()


发布日期:

所属分类: 易语言 标签: