MD5中文名為消息摘要算法第五版,英文全稱Message-Digest Algorithm 5。
MD5為計算機安全領域廣泛使用的壹種散列函數,用以提供消息的完整性保護。該算法的文件號為RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc. April 1992)。
MD5算法具有以下特點:
1、壓縮性:任意長度的數據,算出的MD5值長度都是固定的。
2、容易計算:從原數據計算出MD5值很容易。
3、抗修改性:對原數據進行任何改動,哪怕只修改1個字節,所得到的MD5值都有很大區別。
4、弱抗碰撞:已知原數據和其MD5值,想找到壹個具有相同MD5值的數據(即偽造數據)是非常困難的。
5、強抗碰撞:想找到兩個不同的數據,使它們具有相同的MD5值,是非常困難的。
擴展資料:
對MD5算法簡要的敘述可以為:MD5以512位分組來處理輸入的信息,且每壹分組又被劃分為16個32位子分組,經過了壹系列的處理後,算法的輸出由四個32位分組組成,將這四個32位分組級聯後將生成壹個128位散列值。
MD5
1991年,Rivest開發出技術上更為趨近成熟的md5算法。它在MD4的基礎上增加了"安全-帶子"(safety-belts)的概念。雖然MD5比MD4復雜度大壹些,但卻更為安全。
這個算法很明顯的由四個和MD4設計有少許不同的步驟組成。在MD5算法中,信息-摘要的大小和填充的必要條件與MD4完全相同。Den boer和Bosselaers曾發現MD5算法中的假沖突(pseudo-collisions),但除此之外就沒有其他被發現的加密後結果了。
參考資料:百度百科-MD5