信息認證技術
這個章節會介紹一些比較有意思的東西,例如哈希函數,數字簽名,身份認證等!
1.一個安全的認證 系統應滿足什麽樣的條件?
合法的接受者能夠檢驗所接受消息的合法性和真實性
合法的發送方對所發送的消息無法進行否認
除了合法的發送方之外,任何人都無法偽造和篡改消息
2.消息驗證:驗證消息的完整性和不可抵賴性
身份認證:鑒別用戶身份
哈希函數
1.哈希函數必須具有哪些性質?
給定M ,很容易計算h
給定h,根據H(M) = h 推導出M很難,這個性質稱為單向性
給定M,通過同一個H(`),計算出不同的h是很苦難的
弱抗碰撞性
強抗碰撞性
2.MD5:可將任意長度的消息經過變換得到一個 128位的散列值
MD5算法的簡要概述:MD5以512個分組來處理輸入的 信息,且每一個分組又被劃分成16個32個子分組,經過了一系列的處理後,算法的輸出由4個32個分組組成,將這4個32個分組級聯後將生成一個128位散列值
MD5的算法步驟:
數據填充與分組
初始化散列值
計算散列值
3.SHA-1:輸入是長度小於2^64位的消息,輸出是160位的散列值,輸入消息以512位的分組為單位進行處理
補位:先添加一個1,再添加若幹個0
4.消息認證技術
對通信雙方的驗證可采用數字簽名和身份認證技術 +認證 碼
主要內容:
對敏感信息加密
保證數據的完整性
對數據和信息的來源進行驗證
5.消息認證方法
在對稱加密方式中,解決消息M無法被判斷是合法的,方式為發送方在對消息M進行加密前,首先對消息通過校驗函數F(;)產生一個校驗碼,將校驗碼附加在消息M之上,再進行加密
一般的加密方式為:A先使用自己的私鑰進行加密,再使用接受方B的公鑰Kbp進行加密,則同時即保證了機密性,又提供了消息認證的能力
6.基於哈希函數的消息認證:
在解密消息後,只需再次使用哈希函數,進行加密,比較兩者的信息是否一致,即可完成對消息的認證
7.基於消息認證嗎(AC)的消息認證
接受方與 發送方均具有相同的MAC值,則只需要在接受到信息時對mac值進行比對,就可以了
8.數字簽名:
簽名特征:
可信
無法偽造
無法重復使用
無法被篡改
不可否認性
9.數字簽名的實現:直接數字簽名,仲裁數字簽名
信息認證技術