lvcaolhx 发表于 2007-11-17 07:49:39

易课堂之算法注册机编写1

程序算法小结:
1.约定:用户名:name;  用户名长度:name_len; 固定码table:ABCDEFGHIJKLMNOPQRSTUVWXYZ;用户名

每位的ASCII值相加结果,记为sum1;
2.计算中间码1:以用户名长度值作为循环次数
(((name xor table+sum1*(i-1) XOR FFFFFFFF+14d+name_len*(i+3)*name)/10+30) xor

ADAC)*(i+2)/10+30

3.计算中间码2: sum1*name_len/64+30

4.最终中间码:T+计算中间码1+"-"+计算中间码2
5.中间码还原为注册码:去掉最终中间码前的“T”,以剩下的位数作为循环值
(name xor 2)/A +30

.版本 2

.程序集 窗口程序集1

.子程序 _按钮1_被单击
.局部变量 name, 文本型
.局部变量 name_len, 整数型
.局部变量 sum, 长整数型
.局部变量 sum1, 文本型
.局部变量 sum2, 文本型
.局部变量 total, 整数型
.局部变量 i2, 整数型
.局部变量 i3, 整数型
.局部变量 i, 整数型
.局部变量 c1, 字节型
.局部变量 c2, 字节型
.局部变量 c, 字节型
.局部变量 c3, 字节型
.局部变量 table, 文本型
.局部变量 sn, 文本型
.局部变量 sn1, 文本型
.局部变量 yushu1, 长整数型
.局部变量 yushu2, 整数型
.局部变量 zjianma2, 整数型
.局部变量 zjianma, 文本型
.局部变量 zjianma1, 文本型
.局部变量 yushuH, 文本型
.局部变量 ma1, 文本型
.局部变量 a, 长整数型
.局部变量 b, 长整数型
.局部变量 zjianma_len, 整数型

' (((name xor table+sum1*(i-1) XOR FFFFFFFF+14d+name_len*(i+3)*name)/10+30) xor

ADAC)*(i+2)/10+30
table = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”
name = 编辑框1.内容
name_len = 取文本长度 (name)
.如果 (name_len ≥ 1)
    .判断循环首 (i ≤ name_len)' 用户名各ASCII值之和
      c = 取代码 (name, i)
      total = total + c
      i = i + 1
    .判断循环尾 ()
    .判断循环首 (i2 ≤ name_len - 1)' 计算中间注册码1
      c1 = 取代码 (name, i2 + 1)' name
      c2 = 取代码 (table, 3 × i2)' table注意数组与E的区别
      a = 位异或 (c1, c2)' name xor table
      b = 位异或 (total × (i2 - 1), 4294967295)' sum1*(i-1) XOR FFFFFFFF
      c3 = (a + b + 333 + name_len × (i2 + 3) × c1) % 10 + 48
      yushu2 = 位异或 (c3, 44460) × (i2 + 2) % 10 + 48
      yushuH = 取十六进制文本 (yushu2)
      ma1 = 取文本右边 (yushuH, 1)
      zjianma1 = 到文本 (zjianma1) + 到文本 (ma1)' 65006967
      i2 = i2 + 1
    .判断循环尾 ()
    zjianma2 = total × name_len % 100 + 48' 68
    zjianma = 到文本 (zjianma1) + “-” + 到文本 (zjianma2)' 中间码
    zjianma_len = 取文本长度 (zjianma)' 中间码长度
.否则
    信息框 (“请输入用户名”, 0, “友好提示”)

.如果结束
.判断循环首 (i3 < zjianma_len)
    i3 = i3 + 1
    c3 = 取代码 (zjianma, i3)
    sum = 位异或 (c3, 32) % 10 + 48
    sum1 = 取十六进制文本 (sum)
    sum2 = 取文本右边 (sum1, 1)
    sn = 到文本 (sn) + 到文本 (sum2)

.判断循环尾 ()
sn1 = “T” + sn' T21662523324
编辑框2.内容 = sn1

[ 本帖最后由 tianxj 于 2007-12-5 15:31 编辑 ]

lty888 发表于 2007-11-18 11:46:27

学习下```努力中.....

杨家将 发表于 2007-11-18 11:49:26

来学习一下易语言,不错。

一帆风 发表于 2007-11-18 21:40:10

我把源码发上来吧!
.否则
    信息框 (“请输入用户名”, 0, “友好提示”)
    返回 ()' *******这里加上一句
.如果结束

[ 本帖最后由 一帆风 于 2007-11-18 21:41 编辑 ]

pw2000 发表于 2007-11-19 15:31:36

谢谢你的分享,我破解不了你这个CrackMe,谢谢你分享源码。

期待你这个CrackMe的破文。

daoshi 发表于 2007-11-20 13:01:17

不错---学习中,多看多练才有进步

sdprtf 发表于 2007-11-20 18:40:08

一定要多看多练

春意浓浓 发表于 2007-11-20 20:42:35

偶来学习下啊 ,谢谢

hwyouxia 发表于 2007-11-20 21:49:20

看来要努力学习了...没办法,先保存研究吧

cha23 发表于 2007-11-20 22:33:40

/:good /:014
页: [1] 2 3
查看完整版本: 易课堂之算法注册机编写1