文件校驗

文件校驗

文件校驗是指文件的 MD5SHA1、CRC32 的值的檢驗。

目錄

正文


每個文件都可以用 MD5 驗證程序算出一個固定的 MD5 碼來。軟體作者往往會事先計算出他的程序的 MD5 碼並帖在網上。因此,在網上看到某個程序下載旁註明了 MD5 碼時,可以把它記下來,下載了這個程序後用 MD5 驗證程序計算你所下載的文件的 MD5 碼,和你之前記下 MD5 碼比較,就知道你下的是不是原版了,如果兩者相同,那麼你所下載的是原版。如果計算出來的和網上註明的不匹配,那麼你下載的這個文件不完整,或是被別人動過手腳。
不過這種方式依舊有漏洞,第三方截獲到文件之後,將修改後的文件同md5碼一起放出來,接收方拿到文件后,依舊無法鑒別。正式基於此,MAC(消息校驗碼)誕生了,MAC是發送方和接收放約定的一個特定的數值串,當發送方發送文件時,將文件內容加上MAC一起進行HASH計算(MAC不隨文件一同發送),此時第三方儘管截獲到此文件,由於沒有MAC,因此無法再計算出正確的HASH值。當接受拿到文件時,將文件同自身擁有的MAC一起進行校驗對比HASH值,即可判定文件是否是發送方發過來的原文件。