是否存在一串字符串经过MD5哈希后还是这串字符串?
是否存在一串字符串经过MD5哈希后还是这串字符串?
About
不一定存在。
hash构造中就是整体尽可能地造成雪崩效应和随机性,并不会故意把这样的数字给舍弃了。事实上,如果专门有一个这个步骤,反而对整体的扰乱效果降低了。
在二战的时候,德军每天的密码设置人员就为了加大破解难度(大误),就尽可能使得密钥不要出现昨天出现过的字母,但这个秘密被英国观测出来了之后反而加快了破解速度。
但概率学上我们可以计算出来。整体计算出来的概率可以通过生日攻击来计算。一个数字随机碰到自己的概率为1/2^128,那2^128个数中存在碰到自己的概率为
(1-1/2^128)^(2^128)=1/e=0.36787.