1,MD5 Message-Digest Algorithm(英文:MD5 Message-Digest Algorithm),壹種廣泛使用的密碼哈希函數,可以生成128位(16字節)的哈希值,保證信息傳輸的完整性和壹致性。
2.SHA1安全哈希算法主要適用於數字簽名標準中定義的數字簽名算法。對於長度小於2 64位的消息,SHA1將生成160位的消息摘要。
3.sha256哈希值用作表示大量數據的固定大小的唯壹值。數據中的壹個小變化將會產生大量不可預測的哈希值變化。SHA256算法的哈希值為256位。
擴展數據:
MD5應用程序:
1,壹致性驗證
MD5的典型應用是為壹條信息生成壹個信息摘要,以防止它被篡改。具體來說,文件的MD5值就像該文件的“數字指紋”。每個文件的MD5值是不同的。如果有人對文件做了任何改動,它的MD5值,也就是對應的“數字指紋”,就會發生變化。
例如,下載服務器預先為文件提供壹個MD5值。用戶下載文件後,用我的算法重新計算下載文件的MD5值。通過比較這兩個值是否相同,可以判斷下載的文件是否有誤,或者下載的文件是否被篡改過。
2.數字簽名
MD5的典型應用是為消息(字節串)生成指紋,以防止其被篡改。
例:在壹個名為readme.txt的文件中寫壹段話,並為這個readme.txt生成壹個MD5值並記錄下來,然後就可以將這個文件傳播到。如果您修改了文件中的任何內容,當您重新計算該文件的MD5時就會發現它(兩個MD5值是不同的)。
如果有第三方認證機構,MD5還可以防止文檔作者的“否認”,也就是所謂的數字簽名應用。
3.安全訪問認證
MD5還廣泛應用於操作系統的登錄認證,如Unix,各種BSD系統的登錄密碼,數字簽名等諸多方面。例如,在Unix系統中,用戶的密碼是用MD5(或其他類似算法)散列的,並存儲在文件系統中。
用戶登錄時,系統對用戶輸入的密碼進行MD5哈希運算,然後與文件系統中存儲的MD5值進行比較,判斷輸入的密碼是否正確。
即使暴露了源程序和算法描述,MD5的值也無法轉換回原始字符串。從數學上講,是因為有無窮多個原字符串,有點像沒有反函數的數學函數。
百度百科-MD5
百度百科-SHA1
百度百科-sha256