Hash 散列函数(如SHA)是否独立于平台?

Hash 散列函数(如SHA)是否独立于平台?,hash,cryptography,md5,sha-3,keccak,Hash,Cryptography,Md5,Sha 3,Keccak,我需要比较来自不同平台的散列数据。使用的哈希函数是Keccak的SHA3 我首先假设散列生成的值与平台无关;但后来这两个在线工具证明了我的相反观点: 下面是我对单词数据进行散列时的相应输出(sha3 256bits): 8f54f1c2d0eb5771cd5bf67a6689fcd6eed9444d91a39e5ef32a9b4ae5ca14ff EFDA893AA850B0C0E61F1F33325615B9D93BCF6B42D60D8F5D37EBC720FD4E3DAF 我在

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

我首先假设散列生成的值与平台无关;但后来这两个在线工具证明了我的相反观点:

下面是我对单词数据进行散列时的相应输出(sha3 256bits):

  • 8f54f1c2d0eb5771cd5bf67a6689fcd6eed9444d91a39e5ef32a9b4ae5ca14ff
  • EFDA893AA850B0C0E61F1F33325615B9D93BCF6B42D60D8F5D37EBC720FD4E3DAF
我在这方面的知识非常有限,但我总是想当然地认为哈希函数是独立于平台的(这就是为什么我们使用MD5校验和,对吗?)

对此问题的任何解释都将不胜感激


最好。

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

如果选择算法
Keccak-256
,则会得到相同的哈希值,我不确定它们用于
SHA3-256

自2015年8月起,SHA-3(特别是与Keccak不同)在中有明确规定

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


官方测试向量可在页面上找到。

是的,哈希函数应独立于平台。可能存在一些编码问题、不同的参数或一些实现错误。最终的SHA-3规范尚未发布,因此我建议暂时使用SHA-2。Keccak和SHA3在填充方案上存在差异,因此结果应该不同。