MD5是什么?作用是什么?
MD5對于技術(shù)人員們非常的常見,再工作中也經(jīng)常需要用到,MD5全稱是Message Digest Algorithm 5,也就是一種常見的哈希算法,再安全性和保密性的領(lǐng)域中扮演著至關(guān)重要的作用。接下來sojson來給大家簡單的講解。
MD5是什么?
MD5是我們常用的哈希算法,屬于Hash算法的其中一種,它可以把任意長度的數(shù)據(jù)轉(zhuǎn)換為一個固定長度的哈希值,通常為128位(16個字節(jié)),表示為32個十六進制數(shù)。被廣泛的用于數(shù)據(jù)完整性的校驗、密碼儲存和數(shù)字簽名等各種領(lǐng)域。
MD5的作用
1、保證數(shù)據(jù)的完整性和驗證文件的一致性
MD5有著保護數(shù)據(jù)的完整性和驗證文件的一致性的作用,通過計算數(shù)據(jù)MD5哈希值,把哈希值和其它計算出的哈希值進行對比,如果兩個哈希值是一樣的,說明數(shù)據(jù)沒有被篡改,如果不一樣,說明有被篡改的風(fēng)險。
2、文件校驗
MD5也經(jīng)常被用于驗證文件的完整性。我們再下載一個文件的時候,會提供一個MD5哈希值,我們可以計算這個哈希值,將它和原來的哈希值進行對比,如果哈希值是一樣的,說明可以確保文件的完整性。
3、密碼驗證
再密碼驗證方面,MD5也被廣泛應(yīng)用。我們再注冊賬戶的時候都要設(shè)置一個密碼。然后密碼的MD5哈希值就會儲存再數(shù)據(jù)庫當(dāng)中,然后我們再登陸的時候,系統(tǒng)會計算輸入密碼的MD5哈希值,然后和儲存在數(shù)據(jù)庫中的哈希值對比。如果兩個哈希值一致,就說明密碼是正確的,并且登錄賬號成功。
4、防破解
①、多重加密
MD5加密可以是多重的,我們把需要加密的原文加密成MD5的密文,然后把這個密文在一起加密成MD5密文,重復(fù)這個操作3次以上,上線破解的網(wǎng)站就匹配不上了。
注:匹配不上不代表一定安全。只是大大提高了破解難度。
②、加鹽加密
比如在Java語言中的Md5Crypt.apr1Crypt(“輸入要加密的密文”, “自定義鹽值”), 可以多重使用,自行定義哈。
總結(jié)
總的來說,MD5現(xiàn)在雖然沒有那么多的人用,但是再特定的領(lǐng)域,還是有著很大的作用的,例如密碼驗證。MD5再未來的發(fā)展可能會面臨一些挑戰(zhàn),被更加強大的算法取代。
版權(quán)所屬:SO JSON在線解析
原文地址:http://zijieyoumin.cn/blog/447.html
轉(zhuǎn)載時必須以鏈接形式注明原始出處及本聲明。
如果本文對你有幫助,那么請你贊助我,讓我更有激情的寫下去,幫助更多的人。