【发布时间】:2019-06-06 07:28:46
【问题描述】:
我使用在线 SHA256 转换器来计算给定文件的哈希值。在那里,我看到了一个我不明白的效果。
出于测试目的,我想计算一个非常简单的文件的哈希值。我将它命名为“test.txt”,它的唯一内容是字符串“abc”,后跟一个新行(我只是按了回车键)。
现在,当我将“abc”和换行符放入 SHA256 生成器时,我得到了哈希
edeaaff3f1774ad2888673770c6d64097e391bc362d7d6fb34982ddf0efd18cb
但是当我将完整的文件放入同一个生成器时,我得到了哈希
552bab6864c7a7b69a502ed1854b9245c0e1a30f008aaa0b281da62585fdb025
差异从何而来?我使用了这个生成器(实际上,我尝试了几个,它们总是产生相同的结果):
https://emn178.github.io/online-tools/sha256_checksum.html
请注意,如果没有换行符,这种差异不会出现。如果文件只包含字符串“abc”,则哈希为
ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad
对于文件以及内容。
【问题讨论】:
-
可能由不同的换行表示引起。见here。
标签: sha256