-
-
问高手一个关于重启软件验证的问题!
-
发表于:
2005-10-6 15:54
4299
-
我今天碰到一个软件,是采用机器码,序列号的方式注册,一共需要有24位注册码。现在有两个问题要请教高手:
1:这个注册方式是逆向算法,我看了所有的程序,都没发现有比较的地方(无论是明码还是暗码都没有)他是把输入的十六进制序列号x1,首先根据一系列运算,得出第二组号码x2;得到第二组号码后,有根据另外一种复杂算法,这种算法中包括了浮点运算,最后得到第三组号码x3。得到第三组号码后,又根据第三种算法,最后的值必须为0,后面的程序才能通过。同时又用第三组号码的前面4个号码与内存中地址中电脑码最前面一组数比较,一致后后面就能OK。否则失败。
现在我的问题是,象这种复杂算法,即使找到了第三组号码,有可能计算出第二组吗?即使找到了第二组,有可能算出第一组吗?24位数据,每次取两位一计算,如果都按照FF来计算,每两个数的可能性就是256,穷举法基本不可能了。当然能通过的号码可能不止一组。
算法我基本搞懂了,但是,知道了又能怎么样呢:(,算不出来啊
难道有另外一种更好的办法可走?
2:我曾经从别人那里得到过一组序列号,第一组计算能为0,但在和电脑码比较时不能过,我修改了内存电脑码,可以过了。但是,在重新启动程序验证时,又是错误的。
象这种重启软件验证的注册码,到底该怎么解决呢?必须要在启动软件时找到验证部分并修改吗??因为要想自己完全计算出来满足上面的序列号,几乎不可能,即使注册这部分能过了,但在重启软件验证时又回出问题。
小弟请问高手,象这种重启软件再次验证注册码的软件,到底该如何解决?我被这个问题捆扰很久了,都没找到更好的解决办法。必须要在软件启动时解决吗?
感谢!
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!