如何确定使用了哪个哈希函数?

时间:2009-08-13 15:10:57

标签: hash

我正在开发一个网络API来与传统服务器进行交互,我需要一些帮助来确定他们正在使用哪种散列函数。原始开发人员对我的查询并不是特别敏感,因此我认为SO可能会帮助我。

这是一个低安全性的内部企业网络,因此散列并不复杂。到目前为止,我已经确定明文“ashafer”被哈希转换为0xfd1873ca

所以,我正在尝试识别一个简单的哈希函数,它将字符串转换为32位十六进制数。有什么想法吗?

3 个答案:

答案 0 :(得分:3)

如果我将“ashafer”放入http://boldizsar.palotas.eu/crypto.php,它会返回crc-32的4246238154,这是十六进制的0xfd1873ca,所以他们使用普通的旧crc-32。

答案 1 :(得分:1)

Crc32做到了。 显然它不是md5或shaX(所有都是128)

糟糕,刚检查过.. crc32“ashafer”= 0x6074acb4

答案 2 :(得分:0)

您知道遗留服务器的语言是什么吗?例如,它可能是“默认的.NET哈希代码实现”(或Java的ditto)。我们希望不要,因为你真的并不打算像那样使用它们,但这是可能的......