【计算机网络】网络安全 : 报文鉴别 ( 密码散列函数 | 报文摘要算法 MD5 | 安全散列算法 SHA-1 | MAC 报文鉴别码 )
文章目錄
- 一、報文鑒別
- 二、鑒別分類
- 三、報文鑒別
- 四、密碼散列函數(shù)
- 五、MD5 算法
- 六、SHA-1 安全散列算法
- 七、MAC 報文鑒別碼
一、報文鑒別
計算機網(wǎng)絡(luò)安全措施 :
① 針對被動攻擊 ( 截獲 ) : 加密 ;
② 針對主動攻擊 ( 篡改 , 偽造 ) : 需要使用 鑒別 ;
報文鑒別 : 接收方 可以 驗證其接收到的 報文的真?zhèn)?/font> ; 包括 發(fā)送者身份 , 內(nèi)容 , 發(fā)送時間 , 報文序列等 ;
報文鑒別方法 : 加密 可以 實現(xiàn) 報文鑒別 , 但是網(wǎng)絡(luò)中對于保密性不高的數(shù)據(jù)來說 , 可以不進行加密 , 接收者 需要使用 簡單方法確認報文的真?zhèn)?;
鑒別與授權(quán) 區(qū)別 : 這是兩個不同的概念 ; 授權(quán)是指 所執(zhí)行的操作是否被系統(tǒng)允許 ; 如 訪問權(quán)限 , 讀寫權(quán)限 等 ;
二、鑒別分類
鑒別分類 :
① 報文鑒別 : 端點鑒別 + 報文完整性鑒別 ; 確認 報文 是由 發(fā)送者 發(fā)出 , 不是偽造的 ;
② 實體鑒別 : 端點鑒別 ; 確認 報文 發(fā)送者 實體 ( 應(yīng)用進程 / 主機設(shè)備 / 人員 ) ;
三、報文鑒別
報文鑒別 : 報文 接收者 需要鑒別報文真?zhèn)?, 需要使用 數(shù)字簽名 ;
① 弊端 : 增加計算負擔(dān) , 對數(shù)據(jù)很長的報文 進行 數(shù)字簽名 , 需要 很大的計算量 ;
② 需求 : 在不需要對數(shù)據(jù)進行加密時 , 使用 簡單方法 進行報文的真?zhèn)舞b別 ;
不需加密時 , 使用密碼散列函數(shù)進行 真?zhèn)舞b別 ;
四、密碼散列函數(shù)
散列函數(shù) : 是非常簡單的 報文 鑒別方法 , 計算量小 ;
① 散列值 : 散列函數(shù) 輸入 很長的 值 , 輸出 較短的 固定的值 ; 輸出值 稱為 散列值 / 散列 ;
② 對應(yīng)關(guān)系 : 輸入 和 輸出 是 多對一 的 , 不同的輸入 可能對應(yīng) 相同的輸出 ;
密碼散列函數(shù) :
① 概念 : 密碼學(xué) 中使用的 散列函數(shù) , 稱為 密碼散列函數(shù) ;
② 單向性 ( 輸入值 -> 散列值 ) : 給定 一個散列值 , 無法通過計算得出 輸入值 ; 只能從 輸入值 計算出 散列值 , 不能根據(jù) 散列值 計算 輸入值 ;
③ 不可偽造 : 即使 固定長度的 散列值 被截獲 , 截獲者無法偽造出一個 對應(yīng)的輸入值 ( 明文 / 發(fā)送數(shù)據(jù) ) ;
密碼散列函數(shù) 示例 :
- 報文摘要算法 MD5
- 安全散列算法 SHA-1
- 性能比較 : SHA-1 的計算量 高于 MD5 , SHA-1 安全性高與 MD5 ;
五、MD5 算法
MD5 算法 :
① 名稱來源 : 報文摘要 ( Message Digest ) 算法 第五版 , 簡稱為 MD5 ;
② 無法計算反推報文 : 根據(jù) MD5 算法 , 反推出報文 , 計算上幾乎不可能 ; ( 撞庫可以 , 但不是計算出來的 )
③ 原理 : 使用復(fù)雜的算法 , 將報文數(shù)據(jù)位打亂 , MD5 碼每一位 都與 原報文中的每一位有關(guān) , 原報文只要有一位改變 , 對應(yīng)的 MD5 完全不同 ;
MD5 算法步驟 :
① 長度項 : 將 報文數(shù)據(jù) 模 2642^{64}264 計算余數(shù) , 該余數(shù) 646464 位 , 追加在報文數(shù)據(jù)末尾 , 組成新的報文 ; 追加的余數(shù) 稱為 長度項 ;
② 填充項 : 在 報文 和 長度項 之間填充 1 ~ 512 位數(shù)據(jù) , 使填充后的 整體報文長度是 512512512 的整數(shù)倍 , 填充項 第一位是 111 , 后面都是 000 ;
③ 數(shù)據(jù)分組 : 將 填充后的 報文 分割成 512 位數(shù)據(jù)塊 , 再將每個 512 位的數(shù)據(jù)塊 分割成 四個 128 位小數(shù)據(jù)塊 ;
④ 計算 : 將 四個 128 位數(shù)據(jù)塊 , 按照順序 使用不同的 散列函數(shù) 進行 四輪計算 ; 每輪計算中 , 128 位數(shù)據(jù)塊拆分成 四個 32 位 小數(shù)據(jù)塊進行計算 ;
直到計算出最后的 128 位的 MD5 值 ;
六、SHA-1 安全散列算法
SHA-1 安全散列算法 :
① 性能 : 比 MD5 算法更安全 , 但是計算復(fù)雜性高于 MD5 ;
② 版本 : SHA-1 , SHA-2 , SHA-3 ;
SHA-1 安全散列算法 原理 :
① 算法輸入輸出 : 輸入碼長 低于 2642^{64}264 位 , 輸出碼長 160160160 位 ;
② 計算過程 : 將明文 分割成 512 位數(shù)據(jù)塊 , 每塊都與當(dāng)前的 報文摘要 集合 , 產(chǎn)生下一個報文摘要中間值 , 直到所有的數(shù)據(jù)庫計算完畢 ;
③ 執(zhí)行次數(shù) : 上述工作共執(zhí)行 五次 ;
④ 性能 : SHA-1 效率低于 MD5 , 抗窮舉性高與 MD5 ;
七、MAC 報文鑒別碼
MD5 缺陷 : MD5 報文鑒別 可以防止 篡改 , 但 不能防止 偽造 ; 不能實現(xiàn)報文鑒別 ;
偽造 示例 :
① 偽造報文 : 黑客 偽造了一個報文 , 并計算出其散列值 , 然后冒充 發(fā)送者 A 將其發(fā)給 接收者 B ;
② 驗證偽造報文成功 : 接收者 B 收到 報文 和 散列值 , 通過計算后 , 發(fā)現(xiàn)該 報文 與 散列值 對應(yīng) , 就認為 該報文是 A 發(fā)送的 ;
MAC 報文鑒別碼 :
① 散列值加密 : 上述 黑客 偽造了 報文 和 散列值 , 導(dǎo)致接收者接收了偽造報文 ; 這里為了防止上述情況 , 對 散列值 進行私鑰加密 , 黑客沒有對應(yīng)的私鑰 , 因此 無法偽造出對應(yīng)加密的 散列值 , 接收者使用公鑰解密 , 肯定無法與偽造的報文對應(yīng) , 這里就實現(xiàn)了身份鑒別 ;
② 報文鑒別碼 MAC : 對散列值加密后的密文 , 稱為 報文鑒別碼 ( Message Authentication Code ) ;
報文鑒別碼 可以 防偽造 , 防否認 ;
總結(jié)
以上是生活随笔為你收集整理的【计算机网络】网络安全 : 报文鉴别 ( 密码散列函数 | 报文摘要算法 MD5 | 安全散列算法 SHA-1 | MAC 报文鉴别码 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【计算机网络】网络安全 : 公钥密码体质
- 下一篇: 【计算机网络】网络安全 : 实体鉴别 (