淺談MD5及簡單使用

來源:互聯網
上載者:User

淺談MD5及簡單使用

原理簡介:
 
MD5即Message-Digest Algorithm 5(資訊-摘要演算法 第5版),用於確保資訊傳輸完整一致。是電腦廣泛使用的雜湊演算法之一(又名:摘要演算法、雜湊演算法),主流程式設計語言普遍已由MD5實現。將資料運算為另一固定長度值(十六進位的話:32位),是雜湊演算法的基礎原理,MD5的前身有MD2、MD3和MD4。

MD5的作用是讓大容量資訊在用數位簽章軟體簽署私人密鑰前被"壓縮"成一種保密的格式(就是把一個任意長度的位元組串變換成一定長的十六進位數字串)。除了MD5以外,其中比較有名的還有sha-1、RIPEMD以及Haval等。

對MD5演算法簡要的敘述可以為:MD5以512位分組來處理輸入的資訊,且每一分組又被劃分為16個32位子分組,經過了一系列的處理後,演算法的輸出由四個32位分組組成,將這四個32位分組級聯後將產生一個128位散列值。

演算法:

使用簡介
 
# touch test1.txt test2.txt    //-->建測試用空檔案
 # ls -lart
 total 8
 drwxr-xr-x 5 root root 4096 Aug  5 14:46 ..
 -rw-r--r-- 1 root root    0 Aug  5 14:48 test2.txt
 -rw-r--r-- 1 root root    0 Aug  5 14:48 test1.txt
 drwxr-xr-x 2 root root 4096 Aug  5 14:48 .
 # md5sum test*.txt > test.md5  //-->將檔案系列產生的md5檔案,放到test.md5
 # cat test.md5
 d41d8cd98f00b204e9800998ecf8427e  test1.txt
 d41d8cd98f00b204e9800998ecf8427e  test2.txt
 

# echo 'hello' >> test1.txt    //-->修改其中一個檔案
 # md5sum -c test.md5          //-->用md5sum命令加-c參數校正
 test1.txt: FAILED
 test2.txt: OK
 md5sum: WARNING: 1 of 2 computed checksums did NOT match

NOTE:

  • 儘管sha1sum演算法及原理跟md5sum不一樣,命令使用幾乎一樣。man sha1sum; man md5sum
  • 由其原理可知,產生的校正碼相同的機率,微乎其微。

Java實現MD5加密解密類

Java項目中用到的MD5加密

Linux下MD5sum 校正檔案完整性

使用OpenSSL的MD5計算功能

Linux下計算檔案的MD5值

本文永久更新連結地址:

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.