如何生成哈希值的MD5哈希值?

时间:2012-07-17 06:29:14

标签: hash md5sum

是否可以生成一个文本文件,其内容是文件的hash / md5值。

如何编写程序?

3 个答案:

答案 0 :(得分:1)

如果存在这样的文件,则可以通过尝试每个可能的MD5哈希并检查其MD5哈希是否等于它来生成它。但由于所有可能的MD5哈希值都是有限集,因此根本不存在这样一个特殊的MD5值。

注意:您只询问是否可能,而不是需要多长时间。

答案 1 :(得分:0)

我也很感兴趣,所以我写了下面的pascal程序:

program hash;

uses md5;

var a, b: string;

begin

b:='d41d8cd98f00b204e9800998ecf8427e'; //md5sum of /dev/null

repeat

a:=md5Print(md5String(b));
b:=md5Print(md5String(a));

until a=b;

writeln(a);
writeln(b);

end.

它已经运行了大约五天,但仍然没有结果)))

答案 2 :(得分:0)

请注意,如果您想对其进行暴力破解,三甲氧基的方法从根本上是有缺陷的。每个散列有效地指向另一个随机散列,并且随着散列序列的增加,任何新访问的散列更有可能直接将您指向先前访问过的散列,从而形成数百万或数十亿个散列长的循环。

如果我们假设 MD5 的整个散列空间不是单个循环循环(这种情况极不可能),那么几乎所有值都在一个具有竞争力的短循环循环中,从而使绝大多数 MD5 散列未被访问。

基本上,即使存在自映射哈希,这种方法仍然更有可能只是将自己置于无限循环中,而不是实际找到一个。