md5 vs md4识别

时间:2015-11-19 05:12:23

标签: security hash md5

有没有办法真正找出散列是MD5还是MD4?

例如:

10c7ccc7a4f0aff03c915c485565b9da是一个MD5哈希

be08c2de91787c51e7aee5dd16ca4f76是一个MD4哈希

我知道“明智的安全”存在差异,但有人如何确定哪种哈希是“编程明智的”或仅仅是眼睛。或者真的没有办法确定吗?

我正考虑给哈希并将其与其中的2个进行比较。但是,我注意到它们都是相同的,没有办法真正检查差异!第一个“字母数字”不一定是MD5中的数字,并且MD4中不需要字符。那么有人如何确定正在使用哪个哈希呢?

1 个答案:

答案 0 :(得分:1)

MD5和MD4都输出128位摘要(16B或32B十六进制字符串)。两种算法的摘要(散列)的表示彼此无法区分,除非它们使用额外的元数据注释(需要由应用程序提供)。

如果没有重新计算原始文件或原始数据上的哈希值,您将无法分辨。

如果您有数据,并且有两个摘要可以区分,则必须使用两种算法中的一种重新计算,并希望您派生的哈希是测试二中的一种。如果输入数据已损坏,那么您甚至不会重新获得这两者中的任何一个。

如果您无法访问原始数据,并且您今天必须猜测只有一个(不是两个)32-hexchar-long摘要的性质来处理该数据,那么很可能MD5。 MD4在2008年严重破坏,并在2011年被认为是历史性的(RFC 6150)。

如果您获得了一个哈希值,并且该哈希值是通过文件计算的,则其哈希算法实际上由校验和文件的文件扩展名指示(.md5sum.md4sum,{ {1}}等)。

相关问题