Hash 我怎样才能知道使用了哪个散列函数?

Hash 我怎样才能知道使用了哪个散列函数?,hash,Hash,我正在开发一个网络API来与遗留服务器交互,我需要一些帮助来确定他们使用的是哪个哈希函数。最初的开发人员对我的查询没有特别的响应,所以我认为这样可能会帮助我 这是一个低安全性的内部公司网络,因此哈希并不复杂。到目前为止,我已经确定明文“ashafer”被散列为0xfd1873ca 所以,我试图识别一个简单的哈希函数,它将字符串转换成32位十六进制数。有什么想法吗?您知道旧版服务器是用什么语言编写的吗?例如,它可以是“默认的.NET哈希代码实现”(对于Java,同上)。希望不会,因为您真的不打算这

我正在开发一个网络API来与遗留服务器交互,我需要一些帮助来确定他们使用的是哪个哈希函数。最初的开发人员对我的查询没有特别的响应,所以我认为这样可能会帮助我

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


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

您知道旧版服务器是用什么语言编写的吗?例如,它可以是“默认的.NET哈希代码实现”(对于Java,同上)。希望不会,因为您真的不打算这样使用它们,但这是一种可能性…

您知道旧版服务器是用什么语言编写的吗?例如,它可以是“默认的.NET哈希代码实现”(对于Java,同上)。我们希望不会,因为你真的不打算这样使用它们,但这是一种可能性…

Crc32这样做。 显然不是md5或shaX(它们都是128个)

哎呀,刚刚检查过。。crc32“ashafer”=0x6074acb4。 显然不是md5或shaX(它们都是128个)

哎呀,刚刚检查过。。crc32“ashafer”=0x6074acb4

如果我把“ashafer”放进去,它会返回4246238154给crc-32,十六进制是0xfd1873ca,所以他们使用的是普通的旧crc-32。

如果我把“ashafer”放进去,它会返回4246238154给crc-32,十六进制是0xfd1873ca,所以他们使用的是普通的旧crc-32