W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
計(jì)算和校驗(yàn)文件報(bào)文摘要的工具程序
md5sum命令 采用MD5報(bào)文摘要算法(128位)計(jì)算和檢查文件的校驗(yàn)和。一般來說,安裝了Linux后,就會(huì)有md5sum這個(gè)工具,直接在命令行終端直接運(yùn)行。
MD5算法常常被用來驗(yàn)證網(wǎng)絡(luò)文件傳輸?shù)耐暾?,防止文件被人篡改。MD5 全稱是報(bào)文摘要算法(Message-Digest Algorithm 5),此算法對(duì)任意長度的信息逐位進(jìn)行計(jì)算,產(chǎn)生一個(gè)二進(jìn)制長度為128位(十六進(jìn)制長度就是32位)的“指紋”(或稱“報(bào)文摘要”),不同的文件產(chǎn)生相同的報(bào)文摘要的可能性是非常非常之小的。
md5sum(選項(xiàng))(參數(shù))
-b:二進(jìn)制模式讀取文件;
-t或--text:把輸入的文件作為文本文件看待;
-c:從指定文件中讀取MD5校驗(yàn)和,并進(jìn)行校驗(yàn);
--status:驗(yàn)證成功時(shí)不輸出任何信息;
-w:當(dāng)校驗(yàn)不正確時(shí)給出警告信息。
文件:指定保存著文件名和校驗(yàn)和的文本文件。
使用 md5sum 生成密碼
另一種獲取可用作密碼的隨機(jī)字符串的方法是計(jì)算 MD5 校驗(yàn)值!校驗(yàn)值看起來確實(shí)像是隨機(jī)字符串組合在一起,我們可以用作密碼。確保你的計(jì)算源是個(gè)變量,這樣的話每次運(yùn)行命令時(shí)生成的校驗(yàn)值都不一樣。比如 date !date 命令 總會(huì)生成不同的輸出。
[root@localhost ~]# date | md5sum
6a43f2c246cdc3e6a3592652f831d186 -
生成一個(gè)文件insert.sql的md5值:
[root@localhost ~]# md5sum insert.sql
bcda6cb5c704664f989703ac5a88f112 insert.sql
檢查文件testfile是否被修改過:
首先生成md5文件:
md5sum testfile > testfile.md5
檢查:
md5sum testfile -c testfile.md5
如果文件沒有變化,輸出應(yīng)該如下:
forsort: OK
此時(shí),md5sum命令返回0。
如果文件發(fā)生了變化,輸出應(yīng)該如下:
forsort: FAILED
md5sum: WARNING: 1 of 1 computed checksum did NOT match
此時(shí),md5sum命令返回非0。
這里,檢查用的文件名隨意。如果不想有任何輸出,則md5sum testfile --status -c testfile.md5,這時(shí)候通過返回值來檢測結(jié)果。
檢測的時(shí)候如果檢測文件非法則輸出信息的選項(xiàng):
md5sum -w -c testfile.md5
輸出之后,文件異常輸出類似如下:
md5sum: testfile.md5: 1: improperly formatted MD5 checksum line
md5sum: testfile.md5: no properly formatted MD5 checksum lines found
這里,testfile.md5只有一行信息,但是我認(rèn)為地給它多加了一個(gè)字符,導(dǎo)致非法。如果md5文件正常那么-w有沒有都一樣。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: