0

我对我目前的任务是暴力破解 md5 哈希有点困惑。出于学习目的,我还可以将哈希值减少到 24 位,并且我在 C 中使用 OpenSSL 来生成 md5 哈希。我的问题是我不明白暴力破解它的确切方法,我尝试的是:

检查每个 ascii 字符附加它,然后对其进行散列,然后将其与目标散列进行比较。

如果这是暴力破解哈希的正确方法,那么我该如何将其减少到 24 位(因为这样哈希会被更改)?

4

1 回答 1

1

为了练习而“减少到 24 位”意味着您可以解决寻找这样的更简单的问题,而不是寻找这样的X输入。md5(X)=<128 target bits (fixed)>Xmd5(X)=<124 unconstrainted bits><24 target bits>

换句话说,决定你是否达到目标的测试更为宽松。


“蛮力”意味着有条不紊地尝试所有输入,直到找到满足条件的输入。如果您正在测试字母单词,例如意味着测试a, b, ..., z, aa, ab, ac, ... (但没有理由将自己限制在字母单词中,您可以尝试所有长度为 1、2 的二进制消息, …)

于 2013-05-26T22:03:38.037 回答