如果知道部分消息,如何获取MD5原始消息?

dru*_*rum 1 hash cryptography

假设我有m1md5(m1+m2).我该如何恢复m2

Nic*_*son 7

你不能.根据设计,安全哈希是无法逆转的.除此之外,MD5哈希值(2 ^ 128)比m2(有效无限)的可能值少,因此无论如何都不可能有一个唯一的正确答案.


use*_*430 6

尼克的回答是正确的.

我只是想指出,如果你知道m2的长度,如果不是太长,你原则上可以尝试m2的所有可能值,直到找到与md5(m1 + m2)的匹配.例如,如果m1是密码的盐,而m2是实际的密码,我刚刚概述的确实是可能的.在大多数情况下,m2的长度为8-12个字符.如果您将自己局限于可以从标准键盘输入的字符,则上述内容非常有用,并且确实用于破解密码.