電腦網路時代的興盛,任何一個使用電腦的人,不可能不上網瀏覽或下載檔案程式等,但如何確保所下載的檔案,確定沒有被動過手腳,是安全無虞的,除了下載後的程式軟體,以防毒程式先行掃描一番外,另外就是以MD5來Check了。

何謂MD5?簡單地說, MD5 是一種單向字串雜湊演算 (hashing) ,其可將你所給予的任何長度字串, 使用 MD5 雜湊演算法,得出一個長度為 128 位元 ( 16 個字元) 的計算結果。

所以用MD5驗算出來的字串,可用來驗證您所下載的檔案,是否完整及是否被加料的一個驗證碼。

MD5 的特色如下:

  1. 固定的字串內容必定會得出一個固定的鍵值,而非每次都算出不同的。
  2. 這是一個單向的雜湊演算,意味著,它雖可每次都將同樣的字串內容,算 出同樣的鍵值,但它無法從鍵值反推算出原本的字串內容。
  3. 不同字串內容所演算出來的鍵值,有可能相同,但根據統計,重覆的機率小於百萬分之一,以重覆率來說,是相當好的演算法。
  4. 演算速度快,對硬體的要求很低。
  5. 它可以演算任意長度的字串內容,而且能得出固定長度的鍵值。
  6. 就算字串內容只相差一個字,它也能算出完全不同的鍵值。
  7. 鍵值長達 128 位元,而且可接受任何長度的字串,就密碼的安全性來講,比過去常用的 DES 編碼法還好。 DES 編碼法,只能接受 8 個字元長度的字串,產生的鍵值只有 56 位元。

所以當我們在一些網站下載檔案時,常常會看到下載點旁邊會附上一長串編碼(英文字及數字的混合),如MD5、SHA1或CRC32等驗證碼,這些看起來似乎沒什麼意義的英文與數字的組合,都是一種特有的檔案識別編號。每個檔案依其屬性的訊息摘要根據不同的演算法計算出MD5、SHA1或CRC32等不同類型的識別碼,同一個檔案不管算幾次,它的MD5或SHA1等驗證碼算出來都會一模一樣(重覆的機率小於百萬分之一)。而不同檔案或檔案內容只要稍有變化,則會算出完全不同的MD5、SHA1或CRC32驗證碼。

因此在我們使用的電腦與網路應用中,可以把這些驗證碼拿來當作檔案的唯一識別編號,方便我們確認下載到的檔案是否跟原始供檔者的檔案一模一樣,以避免下載到假檔或被動過手腳的檔案。

 

一些常見的MD5檢驗工具

1.HashTab 3.0  http://beeblebrox.org/hashtab/

   下載點:  http://beeblebrox.org/hashtab/HashTab%20Setup.exe

2.Hashmyfiles   http://www.nirsoft.net/utils/hashmyfiles.zip

   中文化:http://www.nirsoft.net/utils/trans/hashmyfiles_tchinese.zip

3.MD5Check  http://angusj.com/delphi/

4.MD5 Checker  http://www.midwavi.com

5.FSUM  http://www.slavasoft.com/fsum/

6.FastSum  http://www.fastsum.com/

 

無論是使用哪一套MD5檢驗工具,只要比對所下載的主程式與官方的MD5驗證碼有無相符即可。

若檢測的結果與驗證碼不同,那麼建議您不要安裝,因為程式有可能被修改過,或是下載不完整(下載網路檔案普遍現象)

我個人建議作法–>

下載後請自行掃毒…並經此驗證MD5碼和原軟體網站公布的是否相同,若不同或心存懷疑,那麼就最好請勿下載,否則應自行擔負使用上的風險.

(唉!實際上也沒那麼嚴重,電腦掛了,使用電腦還原點設定時光回溯到未使用該軟體之前,或重灌就好,只是很麻煩就是,所以沒有把握,別亂安裝網路上有的沒的軟體,尤其大陸那邊的軟體,八九成都有問題,不得不慎)