能力值:
( LV8,RANK:130 )
在线值:
|
-
-
2 楼
怎么没人回答啊?我一直就没想清楚这个问题...
|
能力值:
(RANK:410 )
|
-
-
3 楼
MD5是不能逆运算的,你上面所说的如果要做注册机的话,只需弄清F函数并写出F函数的逆运算就可以做注册机了。
F(注册名,注册码,)=MD5(Keycode) == UF(MD5(Keycode)) =MD5(Keycode)
UF函数是F函数的逆运算函数。将用MD5加密的Keycode用UF函数逆运算就可以得到注册名和注册码了。
|
能力值:
( LV8,RANK:130 )
在线值:
|
-
-
4 楼
不是这个意思得.举个简单的例子.
比如要满足条件:
MD5(用户名+注册码)=C
C=MD5(Keycode)加密后的字符串.Keycode只有作者知道.
换过来说就是要:用户名+注册码=Keycode,但是能知道的只有Keycode的MD5加密后的字符串啊.
|
能力值:
(RANK:410 )
|
-
-
5 楼
MD5是不可逆的(除了找像王小云(好像是这个名子,记不清了)那样找碰撞之外),这样的加密算法就算是作者也没办法作出注册机的,一般这样的加密都是一码走天下的.
|
能力值:
( LV8,RANK:130 )
在线值:
|
-
-
6 楼
还是迷惑,我知道MD5是不可逆的啊.
但是,上面那例子中,只要满足"注册名+注册码=Keycode"不就可以了吗?难道两边一样的字符串的MD5值不一样吗?对作者来说Keycode是已知的呀.
|
能力值:
( LV9,RANK:410 )
|
-
-
7 楼
只要流出正确的注册码就能搞定了.
|
能力值:
(RANK:410 )
|
-
-
8 楼
刚看了你所描述的算法,我才发现你所说的算法跟本没法实现:
因为MD5是属于不过逆运算的算法,并且经由MD5运算出来的Key用不同的字符Key算出的MD5值是不一样(除了少数碰撞之外)。所以下面你所说的算法本身就不成立。
1、Md5(Name+Sn)≠Md5(KeyCode)
如果Name+Sn和KeyCode是不同的字串,再用MD5加密得出的结果跟本就不可能相等。
|
能力值:
(RANK:410 )
|
-
-
9 楼
MD5算法再怎么加密,最后都只能是用明码比较,不可能出现MD5(Name+Sn)=MD5(KeyCode)这样的注册算法。
最多是作者先用MD5(Name+Sn)得出一个KeyCode,再将这个KeyCode写入软件里面,在软件里就可以用如下算法:
MD5(Name+Sn) = KeyCode的比较方式。以这样的方式是没办法作出注册机的,而且软件也就固定在一个注册码上,只要这个注册码流传出来,那就谁都可以注册使用了。
|
|
|