1

我需要比较来自不同平台的散列数据。使用的哈希函数是 Keccak 的 SHA3。

我首先假设哈希生成的值是平台无关的;但后来这两个在线工具证明了我的相反:

这是我对单词数据(sha3 256bits)进行哈希处理时的相应输出:

  • 8f54f1c2d0eb5771cd5bf67a6689fcd6eed9444d91a39e5ef32a9b4ae5ca14ff
  • efda893aa850b0c0e61f33325615b9d93bcf6b42d60d8f5d37ebc720fd4e3daf

我对这个主题的了解非常有限,但我一直认为哈希函数是平台无关的(这就是我们使用 MD5 校验和的原因,对吧?)。

任何关于这个主题的光都将受到高度赞赏。

最好的。

4

2 回答 2

2

是的,除了编码问题之外,哈希算法应该在任何地方返回相同的值。

如果您选择算法,您将获得相同的哈希值Keccak-256,我不确定它们的用途SHA3-256

http://emn178.github.io/online-tools/keccak_256.html

于 2015-07-03T11:07:01.013 回答
0

自 2015 年 8 月起, FIPS 202明确规定了 SHA-3(与 Keccak 不同)。

所有实现都应该使用相同的输入产生相同的结果。

官方测试向量可在NIST CAVP 测试:安全散列页面上找到。

于 2016-02-09T05:18:50.813 回答