MD5消息摘要算法(英語:MD5 Message-Digest Algorithm),壹種被廣泛使用的密碼散列函數,可以產生出壹個128位(16字節)的散列值,用於確保信息傳輸完整壹致。MD5由美國密碼學家羅納德·李維斯特設計,於1992年公開,用以取代MD4算法。這套算法的程序在?RFC 1321?中被加以規範。
MD5碼可以使用“MD5”校驗工具取得,大學生數學建模競賽采用MD5碼主要是為了保證學生上傳文件的完整性,也是保證公平競賽的壹個手段。
任何對文件內容的修改和打開重新保存都會使文件的MD5碼改變,但對文件重命名、復制粘貼不改變MD5碼。
擴展資料:
md5碼的特性:
不可逆性
這個特征碼有如下特性,首先它不可逆,例如我有壹段秘密的文字如:"My Secret Words",經算法變換後得到MD5碼(b9944e9367d2e40dd1f0c4040d4daaf7),把這個碼告訴其他人,他們根據這個MD5碼是沒有系統的方法可以知道妳原來的文字是什麽的。
離散性
其次,這個碼具有高度的離散性,也就是說,原信息的壹點點變化就會導致MD5的巨大變化,例如"ABC" MD5(902fbdd2b1df0c4f70b4a5d23525e932)和"ABC "(多了壹空格)MD5(12c774468f981a9487c30773d8093561)差別非常大,而且之間沒有任何關系,也就是說產生的MD5碼是不可預測的。
碼位性
最後由於這個碼有128位那麽長,所以任意信息之間具有相同MD5碼的可能性非常之低,通常被認為是不可能的。
百度百科-MD5碼