認證篇 單向雜湊函式

2021-09-09 02:07:24 字數 2244 閱讀 2310

目錄

一、單向雜湊函式簡介

單向雜湊函式的性質:

二、單向雜湊函式的應用:

三、單向雜湊函式種類:

1)md4、md5

2)sha(安全雜湊演算法)

3)ripemd-160

單向雜湊函式sha-1介紹(可忽略):

四、對單向雜湊函式的攻擊:

五、單向雜湊函式無法解決的問題:

單向雜湊函:又稱為訊息摘要函式、雜湊(hash)函式或雜湊函式。有乙個輸入和乙個輸出,輸入稱為訊息(原像),輸出稱為雜湊值(訊息摘要、指紋);單向雜湊函式可通過訊息計算出雜湊值,而雜湊值可用於檢測訊息的完整性

雜湊值與訊息的長度無關,其長度永遠為160bit(20位元組);單向雜湊函式不需要知道訊息代表的含義,只將其單純

作為位元序列來處理

用於確認完整性,不需要比對訊息本身,只需要比對計算出的雜湊值即可

1)根據任意長度訊息計算出固定長度的雜湊值

2)能快速計算出雜湊值(訊息越長計算時間越長)

3)訊息不同雜湊值也不同(只有1位元的改變,也會很高概率的產生雜湊值)

4)具備單向性(可根據訊息計算雜湊值,但不能通過雜湊值反算訊息)

碰撞:兩個不同訊息產生同乙個雜湊值稱為碰撞

抗碰撞性:指難以發現碰撞的性質

1)檢測軟體是否被篡改(用於驗證雜湊值必須通過和軟體包獲取不同的、可信任的渠道去獲取)

2)基於口令的加密(pbe,將口令和偽隨機數生成器產生的隨機值混合後計算器雜湊值,然後將這個雜湊值作為加密的金鑰;使用該方法可抵禦針對口令的字典攻擊)

3)訊息認證碼(將傳送者和接受者之間的共享金鑰和訊息進行混合或計算出的雜湊值;使用該方法可用於防止通訊過程中的錯誤、篡改及偽裝)

4)數字簽名(計算訊息的雜湊值,在對這個雜湊值進行數字簽名;非常耗時)

5)偽隨機數生成器(構造偽隨機數生成器,並需要具備「不肯能根據過去的隨機數列**未來的隨機數列」)

6)一次性口令(用於服務端對客戶端的合法認證,並保證口令只在通訊鏈路上傳一次)

message digest:訊息-摘要演算法

md4:於2023年設計,可產生128位的雜湊值。現已不安全

md5:於2023年設計,可產生128位的雜湊值。現已不安全

sha-1:於2023年設計,訊息長度存在上限接近264位元,可產生160位元的雜湊值

sha-2:包含sha-256,sha-384,sha-512;其雜湊值長度分別為256、384、512,這些訊息長度也存在上限分別為sha-256接近2^64,sha-384接近2^128

注:sha-1的強抗碰撞性已於2023年被攻破

於1996設計產生的能產生160位元的單向雜湊函式。ripemd-160是ripemd的修訂版

注:ripemd的強碰撞性已於2023年被攻破

sha-1是一種能根據上限為2^64位元的訊息計算出160位元的雜湊值的單向雜湊函式

1)填充

對訊息進行填充處理,以512位元為一輸入分組,使其長度為512位元的整數倍。輸入sha-1的訊息應大於0小於2^64位元,在末尾新增多餘的資料,是訊息成為512位元的整數倍

2)計算w0~w79

根據輸入分組的512位元計算出80個32位元的值(w0~w79)

3)分組處理

對輸入分組依次進行80步驟的處理,計算5個32位元的值(a~e)作為sha-1內部狀態。對所有分組都進行的這一操作

4)單步處理

1)暴力破解:尋找與原訊息產生同一雜湊值的不同訊息(一種試圖破解單向雜湊函式的弱抗碰撞性的攻擊)

2)生日攻擊:並非尋找生成特定雜湊值的訊息,而是找到雜湊值相同的兩條訊息,而雜湊值可為任意(一種試圖破解單向雜湊函式的強抗碰撞性的攻擊)

單向雜湊函式只能識別出訊息是否被篡改,無法識別傳送訊息的人是否偽裝

單向雜湊函式

在介紹單向雜湊函式之前,我們先了解一下什麼情況下需要使用到單向雜湊函式。單向雜湊函式有乙個輸入和輸出。輸入稱為訊息,輸出稱為雜湊值。雜湊值的長度跟訊息的長度無關,不論多少大小的長度的訊息,都會計算出固定長度的雜湊值。單向雜湊函式具有下面幾個特性 能夠根據任意長度的訊息計算出固定長度的雜湊值。計算速度...

單向雜湊函式

在介紹單向雜湊函式之前,我們先了解一下什麼情況下需要使用到單向雜湊函式。單向雜湊函式有乙個輸入和輸出。輸入稱為訊息,輸出稱為雜湊值。雜湊值的長度跟訊息的長度無關,不論多少大小的長度的訊息,都會計算出固定長度的雜湊值。單向雜湊函式具有下面幾個特性 能夠根據任意長度的訊息計算出固定長度的雜湊值。計算速度...

單向雜湊函式

之前討論的問題是 資訊保密。通過加密的方式 有時候,我們可能不需要對資訊保密,而是希望接收者能夠驗證在傳遞過程中的訊息有沒被修改,即入侵者不能用假訊息代替合法訊息。資料完整性 乙個生活中的問題 如何識別某個人的身份?身份證 指紋。對應的,我們有資料指紋。那麼乙個指紋函式需要滿足什麼條件?指紋能處理不...