为什么说 MD5 是不可逆的?

为什么说 MD5 是不可逆的?

· json · rss
Subscribe:

About

我对这些回答都很不满意,很显然大多数答主并没有深入了解MD5结构,只是了解的性质。他们并没有解释到底为什么MD5是不可逆的。

我们来构造一个很简单的hash算法。

f(x_{i})=f(x_{i-1})\oplus x_i,f(x_0)=0

如上式子所表达的迭代异或器,它也可以实现所谓的水浒传不可逆,但是一个关键问题来了

f(x_1) 是可逆的。

它们都没有解释为什么f(x_1)是不可逆的,而从信息论角度解释是完全不全面且无意义的,不能解释MD5背后的密码学含义。

事实上,所有关于hash函数的处理的细节都在 f(x_1) 上,如果f(x_1)不可逆,那么只需要将构造一个迭代异或器就可以处理水浒传了,处理后续的分组只需要将它们进行简单的拼接就完成了

这个问题正确答案应该是:求解一个有512个未知变量的布尔方程组是困难的,因此是不可逆的。