Hashsum

如果文件名更改,文件的雜湊是否會更改?

  • January 23, 2019

如果文件名或路徑或時間戳或權限更改,文件的雜湊是否會更改?

$ echo some contents > testfile
$ shasum testfile 
3a2be7b07a1a19072bf54c95a8c4a3fe0cdb35d4  testfile

據我所知,經過簡單的測試。

$ echo some contents > testfile
$ shasum testfile 
3a2be7b07a1a19072bf54c95a8c4a3fe0cdb35d4  testfile
$ mv testfile newfile
$ shasum newfile 
3a2be7b07a1a19072bf54c95a8c4a3fe0cdb35d4  newfile

文件的雜湊是其內容的雜湊。文件名、時間戳、權限等元數據對雜湊沒有影響。

假設一個完整的加密散列,兩個文件具有相同的散列當且僅當它們具有相同的內容。最常見的此類雜湊是 SHA-2 系列(SHA-256、SHA-384、SHA-512)和 SHA3 系列。這不包括被破壞的 MD5 或 SHA-1,也不包括cksum不是加密散列的 CRC。

引用自:https://unix.stackexchange.com/questions/220017