1、簡介
MD5算法常常被用來驗證網絡文件傳輸的完整性,防止文件被人篡改。MD5 全稱是報文摘要算法(Message-Digest Algorithm 5),此算法對任意長度的信息逐位進行計算,產生一個二進制長度為128位(十六進制長度就是32位)的“指紋”(或稱“報文摘要”),不同的文件產生相同的報文摘要的可能性是非常非常之小的。
在linux或Unix上,md5sum是用來計算和校驗文件報文摘要的工具程序。一般來說,安裝了Linux後,就會有md5sum這個工具,直接在命令行終端直接運行。
2、命令格式
md5sum [OPTION]... [FILE]...
3、命令選項
-b 或 --binary :把輸入文件作為二進制文件看待。
-t 或 --text :把輸入的文件作為文本文件看待(默認)。
-c 或 --check :用來從文件中讀取md5信息檢查文件的一致性。(不細說了參見info)
--status :這個選項和check一起使用,在check的時候,不輸出,而是根據返回值表示檢查結果。
-w 或 --warn :在check的時候,檢查輸入的md5信息又沒有非法的行,如果有則輸出相應信息。
4、例子
(1)生產一個文件的md5值,如下所示:
[root@linuxidc www.linuxidc.com]# md5sum p182 > cc.txt
這樣,就生產了文件p182的md5校驗文件cc.txt,打開cc.txt可以看到如下內容:
[root@linuxidc www.linuxidc.com]# cat cc.txt
dd05e55e3aca2d39e49a1a7d1b3fd404 p182
(2)檢查兩個文件是否一樣,可以通過比較兩個文件的md5值
[root@linuxidc www.linuxidc.com]# md5sum p182 > ee.txt
[root@linuxidc www.linuxidc.com]# cat ee.txt
0f0b000b096ac947d6067466cc60ffd0 p182
[root@linuxidc www.linuxidc.com]# md5sum p183 > ff.txt
[root@linuxidc www.linuxidc.com]# cat ff.txt
dd05e55e3aca2d39e49a1a7d1b3fd404 p183
(3)判斷一個文件是否修改,通過md5來判斷
[root@linuxidc www.linuxidc.com]# md5sum p182 > cc.txt
[root@linuxidc www.linuxidc.com]# cat cc.txt
0f0b000b096ac947d6067466cc60ffd0 p182
修改下p182文件:
[root@linuxidc www.linuxidc.com]# vi p182
跟原來的md5結果進行對比:
[root@linuxidc www.linuxidc.com]# md5sum p182 -c cc.txt
md5sum: p182: no properly formatted MD5 checksum lines found
p182: FAILED
md5sum: WARNING: 1 of 1 computed checksum did NOT match
修改後md5結果如下:
[root@linuxidc www.linuxidc.com]# md5sum p182 > dd.txt
[root@linuxidc www.linuxidc.com]# cat dd.txt
521e87e3331e94a483aec6bf19039845 p182