这是软件注册的源代码,帮忙看看怎么破

这是软件注册的源代码,帮忙看看怎么破,第1张

运行基本思路:将输入的文本替换-为空后,转换为long(记为B),再和 801183672215322752异或(结果记为C),最后的结果整除0xaff3L,如果结果为0,则判断正确。在这里,让C等于0xaff3L是最简单的方法(一倍,为0或任意倍数皆可)。换句话说,我们需要找个数字 num, 满足 801183672215322752^num=0xaff3L。

考虑到异或运算的特征,直接将其它俩数字异或即可得到这个数:

num=801183672215322752^0xaff3L=801183672215302003

====

PS:忘记考虑了长度限制,待我再想想。

====

默认一倍率算法算出来的数字18位,超出了最大值16位,因此需要处理下。

基于异或的特征,我们可以从倍率下手:通过倍率调整运算得到的数字,这样异或后的C在800000000000000000到809999999999999999之间即可。换句话说,我们可以把基础倍率设置为800000000000000000/0xaff3L,然后逐渐往上加,直到最后的结果依侍升然符合这个要求即可。

算法程序如下,仅供测试:

public static void Main()

{

    var code1=801183672215322752

    var code2=0xaff3L

    var rate=800000000000000000/code2

    long result=0L

    

    do{

        result=code1^(rate*code2)

       游谈氏 Console.WriteLine(result)

        rate++

   神散 }while(result.ToString().Length>16)

    

    Console.WriteLine("注册码是:"+result)

    

    Console.ReadKey(true)

}

提供一个参考注册码:1208968776231053

PS:让数字保持那个范围是为了把最高位的80消掉。

源代码是只编写软件时写的代码,这个你如果学过VB,那么你的VB工程就是贺腊源代码,而你生成的exe程序才是软件,注册码是一些软件用来赚钱的方式,一般来说每个软件在每台电脑上启动后都会生成一串字符串——,一般称此字符串为机器码或其他,而每个字符串对应一个注册码,当你在软件上输入正确的注册码后软件的某些功能就不会受到限制,一般如果不注册,那么软件可能会有使用次数的限制,或者某些功能不可用,注册机是用来计算注册码的!

举例:

你要用一个软件,但是软件提示必须注册,否则只能用30次,那么软件会给你一个问题(机器码),比如1+1=? 而你必咐拍伏须输入正确答案,当然,答案不衡携一定是2,这个答案是有写软件的作者制订的,而注册机就是一个计算器,计算答案的,比如在此软件的注册机上输入1+1=?,计算的结果是100,那么你在软件上输入100进行注册,软件就不会有任何限制了……

好啰嗦

程序名 返回值类型 公开 备 注

__启动窗口_创建完毕 精易论坛

参数名 类 型 参考 可空 数组 备 注

变量名 类 型 静态 数组 备 注

注册码 文本型

注册表 文本型

XP风格 (1)

注册码 = 到文本 (取硬盘特征字 () + 2234240 × 0)

注册表 = 到文本 (取文本注册项 (4, “SOFTWARE\ceshi\zhucema”, ))

如果 (注册码 = 注册表)

载入 (窗口1, , 假)

销毁 ()

编辑框1.内容 = 到文本 (取硬盘特征字 ())

子程序名 返回值类型 公开 备 注

_按钮1_被单击 精易论坛

参数名 类 型 参考 可空 数组 备 注

如果 (编辑框2.内容 = 到文本 (取硬盘特征字 () + 2234240 × 0))

信息框 (“注册成功”, 0, )

写注册项 (4, “SOFTWARE\ceshi\zhucema”, 到文本 (取硬盘特征字 () + 2234240 × 0))

载入 (窗口1, , 假)

销毁 ()

信息框 (“注册失败”, 0, )

子程序名 返回值类型 公开 备 注

_按钮2_被单击 精易论坛

参数名 类 型友乎山 参考 可空 数组 备 注

结束 ()

-------------------------------------------------------------------------------

【注册机源码】

窗口程序集名 基 类 公 开 备 注

窗口程序集1 精易论坛

变量名 类 型 数组 备 注

子程序名 返回值类型 公开 备 注

__启动窗口_创建完顷哗毕 精易论坛

参数名 类 型 参考 可空 数组 备 注

XP风格 (1)

子好中程序名 返回值类型 公开 备 注

_按钮1_被单击 精易论坛

参数名 类 型 参考 可空 数组 备 注

变量名 类 型 静态 数组 备 注

注册码 文本型

机器码 整数型

机器码 = 到整数 (编辑框1.内容)

注册码 = 到文本 (机器码 + 2234240 × 0)

编辑框2.内容 = 注册码

子程序名 返回值类型 公开 备 注

_按钮2_被单击 精易论坛

参数名 类 型 参考 可空 数组 备 注

销毁 ()


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12427473.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存