MD5是計算機安全領域中廣泛使用的哈希函數,用於保護消息的完整性。這個算法的文件號是RFC 1321 (R. Riverst,麻省理工學院計算機科學實驗室和RSA數據安全公司4月1992)。
MD5算法具有以下特點:
1.可壓縮性:對於任意長度的數據,計算出的MD5值的長度是固定的。
2.容易計算:很容易從原始數據計算MD5值。
3.反修改:對原始數據的任何修改,哪怕只修改1字節,得到的MD5值都相差很大。
4.弱防碰撞:知道原始數據及其MD5值,很難找到壹個MD5值相同的數據(即偽造數據)。
5.抗沖突性強:很難找到兩個不同的數據,並使它們具有相同的MD5值。
擴展數據:
對MD5算法的簡單描述可以如下:MD5對512位包中的輸入信息進行處理,每個包被分成16個32位包。經過壹系列的處理後,算法的輸出由四個32位的包組成,將這四個32位的包串聯起來將會生成壹個128位的哈希值。
訊息摘要 5
1991年,Rivest開發了壹種更成熟的md5算法。它在MD4的基礎上增加了“安全帶”的概念。雖然MD5比MD4更復雜,但它更安全。
該算法顯然由四個步驟組成,與MD4設計略有不同。在MD5算法中,信息摘要的大小和填充的必要條件與MD4完全相同。Den boer和Bosselaers曾經發現了MD5算法中的偽碰撞,但是沒有其他發現的加密結果。
參考:百度百科-MD5