雜湊演算法 介紹

2021-04-13 12:36:02 字數 1004 閱讀 8616

1 概念

在資訊保安技術中,經常需要驗證訊息的完整性,雜湊(hash)函式提供了這一服務,它對不同長度的輸入訊息,產生固定長度的輸出。這個固定長度的輸出稱為原輸入訊息的「雜湊」或「訊息摘要」(message digest)。乙個安全的雜湊函式h必須具有以下屬性:

l)h能夠應用到大小不一的資料上。

2)h能夠生成大小固定的輸出。

3)對幹任意給定的x,h(x)的計算相對簡單。

4)對於任意給定的**h,要發現滿足h(x)=h的x在計算上是不可廳的。

5) 對於任意給定的塊x,要發現滿足h(y)=h(x)而y=x在計算上是不可行的。

6)要發現滿足h(x)=h(y)的(x,y)對在計算上是不可行的。

2 md2演算法

md2演算法是rivest在2023年開發出來的,在處理過程中首先對資訊進行補位,使資訊的長度是16的倍數,然後以乙個16位的校驗和追加到資訊的末尾,並根據這個新產生的資訊生成128位的雜湊值。它針對8位的計算機進行過優化,但速度比後來的雜湊演算法要慢。

3 md4演算法

rivest在2023年又開發出md4演算法。md4演算法也需要資訊的填充,它要求資訊在填充後加上448能夠被512整除。用64位元表示訊息的長度,放在填充位元之後生成128位的雜湊值。

4 md5演算法

md5(messagc digest algorithm--5)演算法是由 rivest在2023年設計的,在rfc 1321中描述[16]。md5按512位資料塊為單位來處理輸入,產生128位的訊息摘要。

5 sha/sha-1演算法

sha( secure hash algorithm)演算法由nist開發,並在2023年作為聯邦資訊處理標準公布。在2023年公布了其改進版本sha-1。sha與md5的設計原理類似,同樣也按劉二位資料塊為單位來處理輸入,但它產生160位的訊息摘要,具有比md5更強的安全性[17、18] 

雜湊演算法基本介紹 可以推廣

雜湊演算法是一種便於查詢字串的演算法 模板傳送 雜湊演算法 hash 其實就是把字串轉化為自己想要的雜湊值,這個值由自己的來定義。列如 給你一堆字串,判斷裡面有多少個回文字串,聽起來很簡單是不是?但是要是這個字串的資料很大,而且你不能用c 函式的輔助呢?這裡是舉個列子哈,畢竟雜湊的用處很廣 這裡就很...

雜湊演算法(Hash函式)簡單介紹

雜湊演算法的定義和原理 將任意長度的二進位制值串對映為固定長度的二進位制值串,這個對映的規則,就是雜湊演算法。而通過原始資料對映之後得到的二進位制值串就是雜湊值。設計乙個優秀的雜湊演算法,需要滿足下面幾點要求 a.從雜湊值不能反向推導出原始資料 所以雜湊演算法也叫單向雜湊演算法 b.對輸入的資料比較...

Hash 雜湊介紹

1 雜湊概念 在順序結構以及平衡樹中,元素關鍵碼與其儲存位置之間沒有對映關係,想要查詢乙個元素必須要關鍵碼之間進行多次比較,順序查詢的時間複雜度為o n 在平衡二叉搜尋樹中查詢為o logn 搜尋的效率取決於關鍵碼的比較次數 但是有沒有一種理想的搜尋方法可以實現不用關鍵碼之間的對比從而找到乙個元素呢...