網(wǎng)絡(luò)信息安全技術(shù)課件 第3章 信息認(rèn)證_第1頁
網(wǎng)絡(luò)信息安全技術(shù)課件 第3章 信息認(rèn)證_第2頁
網(wǎng)絡(luò)信息安全技術(shù)課件 第3章 信息認(rèn)證_第3頁
網(wǎng)絡(luò)信息安全技術(shù)課件 第3章 信息認(rèn)證_第4頁
網(wǎng)絡(luò)信息安全技術(shù)課件 第3章 信息認(rèn)證_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第3章信息認(rèn)證信息認(rèn)證概述信息加密函數(shù)信息認(rèn)證碼MAC散列函數(shù)HashFunction經(jīng)典Hash算法3.1信息認(rèn)證概述3.1信息認(rèn)證概述信息認(rèn)證也稱為信息鑒別(messageauthentication),就是驗證信息的完整性,當(dāng)接收方收到發(fā)送方的報文時,接收方能夠驗證收到的報文是真實的和未被篡改的。

它包含兩層含義:一是驗證信息的發(fā)送者是真正的而不是冒充的,即數(shù)據(jù)起源認(rèn)證;二是驗證信息在傳送過程中未被篡改、重放或延遲等。3.1信息認(rèn)證概述3.1信息認(rèn)證概述認(rèn)證的函數(shù)分為三類:信息加密函數(shù)(Messageencryption)信息認(rèn)證碼MAC(MessageAuthenticationCode):是對信源信息的一個編碼函數(shù)。散列函數(shù)(HashFunction):是一個公開的函數(shù),它將任意長的信息映射成一個固定長度的信息。3.2信息加密函數(shù)1.使用對稱加密

實現(xiàn)信息認(rèn)證

在認(rèn)證的過程中,如何自動確定是否收到的明文可解密為可懂的明文?一種解決辦法是強制明文有某種結(jié)構(gòu),即要求明文具有某些易于識別的結(jié)構(gòu),并且不通過加密函數(shù)是不能重復(fù)這種結(jié)構(gòu)的。例如可以在加密以前對信息附加檢錯碼。1.使用對稱加密

實現(xiàn)信息認(rèn)證

采用內(nèi)部錯誤控制來實現(xiàn)信息確認(rèn)認(rèn)證,根據(jù)明文M和公開的函數(shù)F產(chǎn)生FCS(即錯誤檢測碼或幀校驗序列)。把M和FCS合在一起加密,并傳輸。接收端把密文解密,得到M。根據(jù)得到的M,按照F計算FCS,并與接收到的FCS比較是否相等。相等則信息正確,不相等則信息在傳送過程中被篡改。1.使用對稱加密

實現(xiàn)信息認(rèn)證

采用外部錯誤控制來實現(xiàn)信息確認(rèn)認(rèn)證,先將明文做加密處理,然后根據(jù)加密后的密文和公開的函數(shù)F產(chǎn)生FCS。把密文和FCS合在一起傳輸。接收端把密文計算FCS,并與接收到的FCS比較是否相等。如果相等,則信息沒有被篡改,將密文解密得到M。2.公鑰密碼體制

加密認(rèn)證

該加密機制使用信息接收者的公鑰加密信息,接收者使用自己的私鑰解密信息。信息在傳輸?shù)倪^程中,保證了信息的機密性。但是沒有實現(xiàn)信息的認(rèn)證。2.公鑰密碼體制

加密認(rèn)證

該加密機制使用發(fā)送者的私鑰實現(xiàn)對信息的加密,接收者使用發(fā)送者的公鑰對信息進(jìn)行解密,可以認(rèn)證信息在傳輸過程中沒有被更改,但信息需要有某種特定的結(jié)構(gòu)和加入冗余的驗證碼。但是該機制中,任何一方都可以使用發(fā)送者的公鑰進(jìn)行解密和驗證,沒有實現(xiàn)信息的保密性。2.公鑰密碼體制

加密認(rèn)證

該加密機制實現(xiàn)了對信息的認(rèn)證和信息傳輸?shù)谋C苄浴5窃谝淮瓮ㄐ胚^程中執(zhí)行了四次復(fù)雜的公鑰算法,大大降低了處理信息的效率,一般不建議采用。3.加密和認(rèn)證的分離對稱密碼體制的加密能夠提供認(rèn)證,為什么還要使用獨立的信息認(rèn)證碼呢?保密性與真實性是兩個不同的概念。根本上,信息加密提供的是保密性而非真實性。加密代價大(公鑰算法代價更大)。認(rèn)證函數(shù)與保密函數(shù)的分離能提供功能上的靈活性某些信息只需要真實性,不需要保密性,如:廣播的信息難以使用加密(信息量大);網(wǎng)絡(luò)管理信息等只需要真實性;政府/權(quán)威部門的公告,只需要保證真實性,而不需要機密性。3.3信息認(rèn)證碼MAC3.3信息認(rèn)證碼MAC信息認(rèn)證碼(MAC)或稱密碼檢驗和,是在一個密鑰的控制下,將任意長的信息映射到一個簡短的定長數(shù)據(jù)分組,并將它附加在信息后。MAC函數(shù)與加密函數(shù)類似,都需要明文、密鑰和算法的參與。但MAC算法不要求可逆性,而加密算法必須是可逆的。1.信息認(rèn)證碼

的基本用法

用戶A和用戶B共享密鑰K,A計算MAC=Ck(M),將M和MAC一起發(fā)送到B,B對收到的M,計算MAC,比較兩個MAC是否相同。如果兩個MAC相等,則:接收方可以相信信息未被修改,因為如果攻擊者改變了信息,由于不知道k,無法生成正確的MAC;接收方可以相信信息的確來自確定的發(fā)送方。因為其他人不能生成和原始信息相應(yīng)的MAC。1.信息認(rèn)證碼

的基本用法(a)與明文有關(guān)的認(rèn)證(b)與密文有關(guān)的認(rèn)證2.基于DES的MAC數(shù)據(jù)認(rèn)證碼(DAC)的生成過程如圖所示,其中認(rèn)證碼的長度M可由通信雙方約定。美國聯(lián)邦電信建議采用24bit[見FTSC-1026],而美國金融系統(tǒng)采用32bit[ABA,1986]。3.4散列函數(shù)

HashFunction3.4散列函數(shù)

散列(hash)函數(shù)又稱為哈希函數(shù)或者雜湊函數(shù),是對輸入為任意長度的信息M產(chǎn)生一個固定長度的散列值,可以表達(dá)為C=H(M)。其中,M的長度不定,C的長度一般為固定長度的值(128或者160),稱為信息摘要(MessageDigest)、散列值、哈希值或者散列碼。Hash算法通常是公開的。接收方通過重新計算散列值來保證信息未被竄改。由于函數(shù)本身公開,傳送過程中對散列值需要另外的加密保護(hù)。3.4散列函數(shù)Hash函數(shù)的基本使用用法(1)對稱密碼體制下的認(rèn)證和加密3.4散列函數(shù)(2)對稱密碼體制下的認(rèn)證(3)公鑰體制下對信息的認(rèn)證3.4散列函數(shù)(4)混合密鑰體制下的認(rèn)證和加密3.4散列函數(shù)(5)帶初始變量的hash函數(shù)基本認(rèn)證3.4散列函數(shù)(6)結(jié)合對稱加密和初始變量的hash值認(rèn)證3.4散列函數(shù)3.5經(jīng)典Hash算法1.MD5信息摘要算法MD5信息摘要算法(英語:MD5Message-DigestAlgorithm),一種被廣泛使用的密碼散列函數(shù),可以產(chǎn)生出一個128位(16字節(jié))的散列值(hashvalue),用于確保信息傳輸完整一致。MD5由美國密碼學(xué)家羅納德·李維斯特(RonaldLinnRivest)設(shè)計,于1992年公開,用以取代MD4算法。1.MD5信息摘要算法1.MD5信息摘要算法Step1:信息填充擴(kuò)展數(shù)據(jù)至LEN=K*64+56個字節(jié),K為整數(shù),即信息的長度比512的整數(shù)倍少64位。若:信息長度為448位,則需填充512位使其長度為960.填充方法:補一個1,然后補0。相當(dāng)于補一個0x80的字節(jié),再補值為0的字節(jié)。這一步里總共補充的字節(jié)數(shù)為0~63個。1.MD5信息摘要算法Step2:附加數(shù)據(jù)長度用一個64位的整數(shù)表示數(shù)據(jù)的原始長度(以bit為單位),將這個數(shù)字的8個字節(jié)按低位在前,高位在后的順序附加在補位后的數(shù)據(jù)后面。這時,數(shù)據(jù)被填補后的總長度為:LEN=K*64+56+8=(K+1)*64Bytes。注意:這個64位整數(shù)是輸入數(shù)據(jù)的原始長度而不是填充字節(jié)后的長度。1.MD5信息摘要算法Step3:緩沖區(qū)初始化hash函數(shù)的中間結(jié)果和最終結(jié)果保存于128位的緩沖區(qū)中,緩沖區(qū)用32位的寄存器表示。可用4個32bits字表示:A,B,C,D。初始存數(shù)以十六進(jìn)制表示為A=01234567B=89ABCDEFC=FEDCBA98D=76543210注意:低位的字節(jié)在前面指的是平臺上內(nèi)存中字節(jié)的排列方式。1.MD5信息摘要算法Step4:HMD5運算以分組為單位對信息進(jìn)行處理每一分組Yq(q=0,…,L-1)都經(jīng)一壓縮函數(shù)HMD5處理。HMD5是算法的核心,其中又有4輪處理過程。HMD5的4輪處理過程結(jié)構(gòu)一樣,但所用的邏輯函數(shù)不同,分別表示為F、G、H、I。每輪的輸入為當(dāng)前處理的信息分組Yq和緩沖區(qū)的當(dāng)前值A(chǔ)、B、C、D,輸出仍放在緩沖區(qū)中以產(chǎn)生新的A、B、C、D。1.MD5信息摘要算法MD5的4輪迭代運算1.MD5信息摘要算法每輪又要進(jìn)行16步迭代運算,4輪共需64步完成。第四輪的輸出與第一輪的輸入相加得到最后的輸出。1.MD5信息摘要算法Step5:輸出結(jié)果A,B,C,D連續(xù)存放,共16個字節(jié),128位。按十六進(jìn)制依次輸出這個16個字節(jié)。1.MD5信息摘要算法MD-5的安全性MD-5的輸出為128-bit,若采用純強力攻擊尋找一個信息具有給定Hash值的計算困難性為2128,用每秒可試驗1000000000個信息的計算機需時1.07×1022年。采用生日攻擊法,找出具有相同hash值的兩個信息需執(zhí)行264次運算。如果兩個輸入串的hash函數(shù)的值一樣,則稱這兩個串是一個碰撞(Collision)。既然是把任意長度的字符串變成固定長度的字符串,所以,必有一個輸出串對應(yīng)無窮多個輸入串,碰撞是必然存在的。2004年8月17日,美國加州圣巴巴拉正在召開國際密碼學(xué)會議,山東大學(xué)王小云教授公布了快速尋求MD5算法碰撞的算法。2.SHA-1算法SHA(SecurityHashAlgorithm)是美國的NIST和NSA設(shè)計的一種標(biāo)準(zhǔn)的Hash算法,最初的版本于1993年發(fā)表,稱為SHA-0,因為很快就被發(fā)現(xiàn)存在安全隱患,于是在1995年就發(fā)布第二個版本SHA-1。2002年,NIST分別發(fā)布了SHA-256、SHA-384、SHA-512,這些算法統(tǒng)稱SHA-2。2008年又新增了SHA-224。目前SHA-2各版本已成為主流。這里以SHA1為例來進(jìn)行SHA算法的講解,其他系列原理類似。2.SHA-1算法SHA-1(英語:SecureHashAlgorithm1,中文名:安全散列算法1)是一種密碼散列函數(shù),美國國家安全局設(shè)計,并由美國國家標(biāo)準(zhǔn)技術(shù)研究所(NIST)發(fā)布為聯(lián)邦數(shù)據(jù)處理標(biāo)準(zhǔn)(FIPS)。SHA-1可以生成一個被稱為信息摘要的160位(20字節(jié))散列值,散列值通常的呈現(xiàn)形式為40個十六進(jìn)制數(shù)。2.SHA-1算法2.SHA-1算法(1)信息填充:與MD5完全相同(2)緩沖區(qū)初始化A=67452301B=EFCDAB89C=98BADCFBD=10325476E=C3D2E1F02.SHA-1算法(3)分組處理2.SHA-1算法(4)SHA-1壓縮函數(shù)(單步)A,B,C,D,E←(E+ft(B,C,D)+CLS5(A)+Wt+Kt),A,CLS30(B),C,D其中,A,B,C,D,E=緩沖區(qū)的5個字;t=步數(shù),0<=t<=79;ft(B,C,D)=步t的基本邏輯函數(shù);CLSK=循環(huán)左移k位給定的32位字;Wt=一個從當(dāng)前512數(shù)據(jù)塊導(dǎo)出的32位字;Kt=一個用于加法的常量,四個不同的值,如后所述;+=加模232。2.SHA-1算法SHA-1壓縮函數(shù)思考和啟示MD5和SHA-1算法由我國王小云教授帶領(lǐng)的研究小組在2004年和2005年相繼破解,為什么現(xiàn)在還在使用M

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論