




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1密碼學(xué)基礎(chǔ)(密碼學(xué)基礎(chǔ)(3)E-mail: 2目目 錄錄消息鑒別與散列函數(shù)消息鑒別與散列函數(shù)散列算法散列算法1.數(shù)字簽名數(shù)字簽名3 4網(wǎng)絡(luò)通信的攻擊威脅網(wǎng)絡(luò)通信的攻擊威脅泄露:把消息內(nèi)容發(fā)布給任何人或沒(méi)有合法密鑰的進(jìn)程泄露:把消息內(nèi)容發(fā)布給任何人或沒(méi)有合法密鑰的進(jìn)程流量分析:發(fā)現(xiàn)通信雙方之間信息流的結(jié)構(gòu)模式,可以用來(lái)確流量分析:發(fā)現(xiàn)通信雙方之間信息流的結(jié)構(gòu)模式,可以用來(lái)確定連接的頻率、持續(xù)時(shí)間長(zhǎng)度;還可以發(fā)現(xiàn)報(bào)文數(shù)量和長(zhǎng)度等定連接的頻率、持續(xù)時(shí)間長(zhǎng)度;還可以發(fā)現(xiàn)報(bào)文數(shù)量和長(zhǎng)度等偽裝:從一個(gè)假冒信息源向網(wǎng)絡(luò)中插入消息偽裝:從一個(gè)假冒信息源向網(wǎng)絡(luò)中插入消息內(nèi)容篡改:消息內(nèi)容被插入、刪除、變換、修
2、改內(nèi)容篡改:消息內(nèi)容被插入、刪除、變換、修改順序修改:插入、刪除或重組消息序列順序修改:插入、刪除或重組消息序列時(shí)間修改:消息延遲或重放時(shí)間修改:消息延遲或重放否認(rèn):接受者否認(rèn)收到消息;發(fā)送者否認(rèn)發(fā)送過(guò)消息否認(rèn):接受者否認(rèn)收到消息;發(fā)送者否認(rèn)發(fā)送過(guò)消息5鑒別和認(rèn)證鑒別和認(rèn)證鑒別鑒別:authentication 真?zhèn)涡哉鎮(zhèn)涡?(1) A process used to verify the integrity of transmitted data, especially a message 用來(lái)驗(yàn)證發(fā)送的數(shù)據(jù),特別是一個(gè)信息的完整性的過(guò)程 (2) The act of establishin
3、g the identity of users when they start to use the system 在用戶開(kāi)始使用系統(tǒng)時(shí)對(duì)其身份進(jìn)行的確認(rèn)認(rèn)證:認(rèn)證:Certification 資格審查資格審查 In computer security, the technical evaluation made as part of and in support of the accreditation process, that established the extent to which a particular computer system or network design an
4、d implementation meet prespecified security requirements 計(jì)算安全學(xué)用語(yǔ),指為了鑒定一個(gè)計(jì)算機(jī)系統(tǒng)或網(wǎng)絡(luò)的設(shè)計(jì)和它提供的手段在多大程度上能滿足預(yù)定的安全要求而進(jìn)行的技術(shù)評(píng)估6鑒別的結(jié)構(gòu)鑒別的結(jié)構(gòu)任何消息認(rèn)證或數(shù)字簽名機(jī)制可以看到兩個(gè)層次:任何消息認(rèn)證或數(shù)字簽名機(jī)制可以看到兩個(gè)層次:底層底層必須有某種函數(shù)產(chǎn)生一個(gè)認(rèn)證標(biāo)識(shí):一個(gè)必須有某種函數(shù)產(chǎn)生一個(gè)認(rèn)證標(biāo)識(shí):一個(gè)用于認(rèn)證一個(gè)報(bào)文的值用于認(rèn)證一個(gè)報(bào)文的值高層高層認(rèn)證協(xié)議以底層函數(shù)為原語(yǔ),使接收者完認(rèn)證協(xié)議以底層函數(shù)為原語(yǔ),使接收者完成報(bào)文的鑒別成報(bào)文的鑒別7鑒別的目的鑒別的目的信源識(shí)別:驗(yàn)證信
5、息的發(fā)送者是真正的,而不信源識(shí)別:驗(yàn)證信息的發(fā)送者是真正的,而不是冒充的是冒充的驗(yàn)證信息的完整性,在傳送或存儲(chǔ)過(guò)程中未被驗(yàn)證信息的完整性,在傳送或存儲(chǔ)過(guò)程中未被篡改,重放或延遲等篡改,重放或延遲等8鑒別模型鑒別模型9鑒別系統(tǒng)的組成鑒別系統(tǒng)的組成鑒別編碼器和鑒別譯碼器可抽象為鑒別函數(shù)鑒別編碼器和鑒別譯碼器可抽象為鑒別函數(shù)一個(gè)安全的鑒別系統(tǒng),需滿足一個(gè)安全的鑒別系統(tǒng),需滿足(1)指定的接收者能夠檢驗(yàn)和證實(shí)消息的合法性、真實(shí)性和完)指定的接收者能夠檢驗(yàn)和證實(shí)消息的合法性、真實(shí)性和完整性整性(2)消息的發(fā)送者和接收者不能抵賴(lài))消息的發(fā)送者和接收者不能抵賴(lài)(3)除了合法的消息發(fā)送者,其它人不能偽造合法的
6、消息)除了合法的消息發(fā)送者,其它人不能偽造合法的消息10鑒別函數(shù)分類(lèi)鑒別函數(shù)分類(lèi)消息加密:整個(gè)消息的密文作為認(rèn)證標(biāo)識(shí)消息加密:整個(gè)消息的密文作為認(rèn)證標(biāo)識(shí)消息鑒別碼消息鑒別碼(MAC):公開(kāi)函數(shù):公開(kāi)函數(shù)+密鑰產(chǎn)生一個(gè)密鑰產(chǎn)生一個(gè)固定長(zhǎng)度的值作為認(rèn)證標(biāo)識(shí)固定長(zhǎng)度的值作為認(rèn)證標(biāo)識(shí)散列函數(shù):一個(gè)公開(kāi)函數(shù)將任意長(zhǎng)度的消息映散列函數(shù):一個(gè)公開(kāi)函數(shù)將任意長(zhǎng)度的消息映射到一個(gè)固定長(zhǎng)度的哈希值,作為認(rèn)證標(biāo)識(shí)射到一個(gè)固定長(zhǎng)度的哈希值,作為認(rèn)證標(biāo)識(shí)11鑒別函數(shù)分類(lèi)鑒別函數(shù)分類(lèi)消息加密:整個(gè)消息的密文作為認(rèn)證標(biāo)識(shí)消息加密:整個(gè)消息的密文作為認(rèn)證標(biāo)識(shí)消息鑒別碼消息鑒別碼(MAC):公開(kāi)函數(shù):公開(kāi)函數(shù)+密鑰產(chǎn)生一個(gè)密鑰
7、產(chǎn)生一個(gè)固定長(zhǎng)度的值作為認(rèn)證標(biāo)識(shí)固定長(zhǎng)度的值作為認(rèn)證標(biāo)識(shí)散列函數(shù):一個(gè)公開(kāi)函數(shù)將任意長(zhǎng)度的消息映散列函數(shù):一個(gè)公開(kāi)函數(shù)將任意長(zhǎng)度的消息映射到一個(gè)固定長(zhǎng)度的哈希值,作為認(rèn)證標(biāo)識(shí)射到一個(gè)固定長(zhǎng)度的哈希值,作為認(rèn)證標(biāo)識(shí)12消息加密消息加密13對(duì)稱(chēng)加密保密和鑒別對(duì)稱(chēng)加密保密和鑒別AB:():()kkABkA E MBB D MM與 共享密鑰,查看是否為有意義的明文14對(duì)稱(chēng)加密保密和鑒別對(duì)稱(chēng)加密保密和鑒別A 提 供 保 密 僅 A 和 B 共 享 k 提 供 一 定 程 度 的 鑒 別 僅 來(lái) 自 傳 輸 中 不 會(huì) 被 更 改 需 要 某 種 結(jié) 構(gòu) 和 冗 余 不 提 供 簽 名 接 收 人 可 以
8、 偽 造 報(bào) 文 發(fā) 送 人 可 以 偽 造 報(bào) 文15明文明文M的自動(dòng)確定的自動(dòng)確定M定義為有意義的明文序列,便于自動(dòng)識(shí)別定義為有意義的明文序列,便于自動(dòng)識(shí)別強(qiáng)制定義明文的某種結(jié)構(gòu),這種結(jié)構(gòu)是易于識(shí)別但又強(qiáng)制定義明文的某種結(jié)構(gòu),這種結(jié)構(gòu)是易于識(shí)別但又不能復(fù)制且無(wú)需借助加密的不能復(fù)制且無(wú)需借助加密的可以在加密前對(duì)每個(gè)報(bào)文附加檢錯(cuò)碼,即所謂的可以在加密前對(duì)每個(gè)報(bào)文附加檢錯(cuò)碼,即所謂的幀檢幀檢驗(yàn)序列號(hào)驗(yàn)序列號(hào)或或檢驗(yàn)和檢驗(yàn)和FCS內(nèi)部差錯(cuò)控制和外部差錯(cuò)控制內(nèi)部差錯(cuò)控制和外部差錯(cuò)控制16差錯(cuò)控制差錯(cuò)控制更難于構(gòu)造更難于構(gòu)造17公鑰加密保密性公鑰加密保密性ABbKUb 提供保密 僅B有KR 能解密 不
9、提供鑒別 任何一方均可以使用加密報(bào)文而假稱(chēng)它是發(fā)自A的18公鑰加密鑒別和簽名公鑰加密鑒別和簽名ABaAa 提 供 鑒 別 和 簽 名 僅有 KR 可 進(jìn) 行 加 密 傳 輸 中 不 會(huì) 被 更 改 需 要 某 種 結(jié) 構(gòu) 或 冗 余 任 何 一 方 均 能 使 用 KU 驗(yàn) 證 簽 名19公鑰加密保密、鑒別和簽名公鑰加密保密、鑒別和簽名ABab KR 提供鑒別和簽名 KU 可提供保密性20消息鑒別碼消息鑒別碼MAC21消息鑒別碼消息鑒別碼使用一個(gè)密鑰生成一個(gè)固定大小的小數(shù)據(jù)塊,并加入到消息中,使用一個(gè)密鑰生成一個(gè)固定大小的小數(shù)據(jù)塊,并加入到消息中,稱(chēng)稱(chēng)MAC, 或密碼校驗(yàn)和(或密碼校驗(yàn)和(cr
10、yptographic checksum) 1、接收者可以確信消息接收者可以確信消息M未被改變未被改變 2、接收者可以確信消息來(lái)自所聲稱(chēng)的發(fā)送者、接收者可以確信消息來(lái)自所聲稱(chēng)的發(fā)送者 3、如果消息中包含順序碼(如、如果消息中包含順序碼(如HDLC,X.25,TCP),則接收者),則接收者可以保證消息的正常順序可以保證消息的正常順序MACMAC函數(shù)類(lèi)似于加密函數(shù),但不需要可逆性。因此在數(shù)學(xué)上比函數(shù)類(lèi)似于加密函數(shù),但不需要可逆性。因此在數(shù)學(xué)上比加密算法被攻擊的弱點(diǎn)要少加密算法被攻擊的弱點(diǎn)要少22消息鑒別消息鑒別ABkkMACC (M) kABMAB:MC (M);為和 共享的密鑰,為明文 提供鑒別
11、 僅A和B共享密鑰k 23消息鑒別與保密,鑒別與明文連接消息鑒別與保密,鑒別與明文連接ABk 2k 1AB : E MC( M ) 12 提 供 鑒 別 僅 A 和 B 共 享 密 鑰 k 提 供 保 密 僅 A 和 B 共 享 密 鑰 k 24消息鑒別與保密,鑒別與密文連接消息鑒別與保密,鑒別與密文連接ABk 2k 1k 2AB :EMC(E(M )12 提 供 鑒 別 僅 A 和 B 共 享 密 鑰 k 提 供 保 密 僅 A 和 B 共 享 密 鑰 k 25消息鑒別消息鑒別 VS 常規(guī)加密常規(guī)加密保密性與真實(shí)性是兩個(gè)不同的概念保密性與真實(shí)性是兩個(gè)不同的概念根本上根本上,信息加密提供的是保
12、密性而非真實(shí)性信息加密提供的是保密性而非真實(shí)性加密代價(jià)大加密代價(jià)大(公鑰算法代價(jià)更大公鑰算法代價(jià)更大)鑒別函數(shù)與保密函數(shù)的分離能提供功能上的靈活性鑒別函數(shù)與保密函數(shù)的分離能提供功能上的靈活性某些信息只需要真實(shí)性某些信息只需要真實(shí)性,不需要保密性不需要保密性 廣播的信息難以使用加密廣播的信息難以使用加密(信息量大信息量大) 網(wǎng)絡(luò)管理信息等只需要真實(shí)性網(wǎng)絡(luò)管理信息等只需要真實(shí)性 政府政府/權(quán)威部門(mén)的公告權(quán)威部門(mén)的公告26散列函數(shù)散列函數(shù)Hash Function27散列函數(shù)散列函數(shù)H(M): 輸入為任意長(zhǎng)度的消息輸入為任意長(zhǎng)度的消息M; 輸出為一個(gè)固定長(zhǎng)輸出為一個(gè)固定長(zhǎng)度的散列值,稱(chēng)為消息摘要度的
13、散列值,稱(chēng)為消息摘要( (MessageDigest)H(M)是消息是消息M的所有位的函數(shù)并提供錯(cuò)誤檢測(cè)能力:的所有位的函數(shù)并提供錯(cuò)誤檢測(cè)能力:消息中的任何一位或多位的變化都將導(dǎo)致該散列值的消息中的任何一位或多位的變化都將導(dǎo)致該散列值的變化變化H(M)又稱(chēng)為:哈希函數(shù)、數(shù)字指紋(又稱(chēng)為:哈希函數(shù)、數(shù)字指紋(Digital finger print)、壓縮(、壓縮(Compression)函數(shù)、數(shù)據(jù)鑒別碼函數(shù)、數(shù)據(jù)鑒別碼(Dataauthentication code)等)等28散列函數(shù)基本用法散列函數(shù)基本用法(1)kAB :EMH (M ) 提 供 鑒 別 加 密 保 護(hù) H ( M ) 提
14、供 保 密 僅 A 和 B 共 享 密 鑰 k 29散列函數(shù)基本用法散列函數(shù)基本用法(2)kAB:ME H(M) 提供鑒別 加密保護(hù)H(M)30散列函數(shù)基本用法散列函數(shù)基本用法(3)aKR 提供鑒別和數(shù)字簽名 加密保護(hù)H(M) 僅A能生成E H(M)31散列函數(shù)基本用法散列函數(shù)基本用法(4)akKRAB:E MEH(M ) 提 供 鑒 別 和 數(shù) 字 簽 名 提 供 保 密 僅 A和 B共 享 密 鑰 k 32散列函數(shù)基本用法散列函數(shù)基本用法(5)AB: MH(MS) 提供鑒別 僅A和B共享消息S 33散列函數(shù)基本用法散列函數(shù)基本用法(6)kAB : EMH (MS ) 提 供 鑒 別 僅 A
15、 和 B 共 享 S 提 供 保 密 僅 A 和 B 共 享 密 鑰 k 34消息鑒別碼消息鑒別碼MAC35MKMAC函數(shù)域:任意長(zhǎng)度的報(bào)文函數(shù)域:任意長(zhǎng)度的報(bào)文值域:所有可能的值域:所有可能的MAC和所有可能的密鑰和所有可能的密鑰MAC一般為多對(duì)一函數(shù)一般為多對(duì)一函數(shù)36函數(shù)域:任意長(zhǎng)度的報(bào)文函數(shù)域:任意長(zhǎng)度的報(bào)文值域:所有可能的值域:所有可能的MAC和所有可能的密鑰和所有可能的密鑰假設(shè)假設(shè)假設(shè)攻擊者使用強(qiáng)行攻擊,且已經(jīng)獲得報(bào)文的明文和相應(yīng)的假設(shè)攻擊者使用強(qiáng)行攻擊,且已經(jīng)獲得報(bào)文的明文和相應(yīng)的MAC,MAC,即即 222nnkMACnMACNNk長(zhǎng)度為 比特個(gè)可能的個(gè)報(bào)文,其中密鑰的長(zhǎng)度為個(gè)
16、可能的密鑰對(duì)對(duì)MAC的強(qiáng)行攻擊的強(qiáng)行攻擊11(,)M MAC37假設(shè)假設(shè)假設(shè)攻擊者已經(jīng)獲得報(bào)文的明文和相應(yīng)的假設(shè)攻擊者已經(jīng)獲得報(bào)文的明文和相應(yīng)的MAC,MAC,即即 假設(shè)假設(shè) 222nnkMACnMACNNk長(zhǎng)度為 比特個(gè)可能的個(gè)報(bào)文,其中密鑰的長(zhǎng)度為個(gè)可能的密鑰對(duì)對(duì)MAC的強(qiáng)行攻擊的強(qiáng)行攻擊11(,)M MACkn38對(duì)對(duì)MAC的強(qiáng)行攻擊的強(qiáng)行攻擊11111,()(),ikkMMACCMMACCMk(k-n)第1輪 給定: for i=1 to 2 : 試探 匹配數(shù)2無(wú)法確定真正的密鑰k22222,()(),ikkMMACCMMACCM(k-n)(k-2 n)第2輪 給定: for i=1
17、to 2: 試探 匹配數(shù)2無(wú)法確定真正的密鑰kka na 若,則需要進(jìn)行 輪,比尋找等長(zhǎng)度的解密密鑰強(qiáng)度還高39對(duì)對(duì)MAC的強(qiáng)行攻擊的強(qiáng)行攻擊如果如果 knkn,則第一輪就可以產(chǎn)生一個(gè)唯一對(duì)應(yīng)。仍然可,則第一輪就可以產(chǎn)生一個(gè)唯一對(duì)應(yīng)。仍然可以有多于一個(gè)以有多于一個(gè)keykey產(chǎn)生這一配對(duì),這時(shí)攻擊者只需對(duì)一個(gè)新產(chǎn)生這一配對(duì),這時(shí)攻擊者只需對(duì)一個(gè)新的的(message, MAC)(message, MAC)進(jìn)行相同的測(cè)試進(jìn)行相同的測(cè)試由此可見(jiàn),強(qiáng)力攻擊企圖發(fā)現(xiàn)由此可見(jiàn),強(qiáng)力攻擊企圖發(fā)現(xiàn)authentication keyauthentication key不小于不小于甚至大于對(duì)同樣長(zhǎng)度的解密甚至
18、大于對(duì)同樣長(zhǎng)度的解密keykey的攻擊的攻擊40對(duì)對(duì)MAC的其它攻擊的其它攻擊設(shè)設(shè)M = (X1 | X2 | | Xm) 是一個(gè)由是一個(gè)由64位位Xi數(shù)據(jù)塊連接而成數(shù)據(jù)塊連接而成 定義定義 (M) = X1 X2 . Xm CK(M) = EK (M) 其中其中 為異或操作;為異或操作;E為為 ECB工作模式的工作模式的DES算法算法則則Key length = 56 bitMAC length = 64 bit強(qiáng)力攻擊需要至少?gòu)?qiáng)力攻擊需要至少256次加密來(lái)決定次加密來(lái)決定K41對(duì)對(duì)MAC的其它攻擊的其它攻擊設(shè)設(shè)M = ( Y1 | Y2 | | Ym-1 | Ym) 其中其中 Y1, Y2
19、, , Ym-1是替換是替換 X1, X2,Xm-1的任意值,而的任意值,而 Ym = Y1 Y2 , , Ym-1 (M) 則則 CK(M) = EK (M) = EKY1 Y2 , , Ym-1 Ym = EKY1 Y2 , , Ym-1 (Y1 Y2 , , Ym-1 (M) = EK (M)這時(shí)消息這時(shí)消息M 和和 MAC= CK(M) = EK (M)是一對(duì)可被接收者認(rèn)證的消息是一對(duì)可被接收者認(rèn)證的消息用此方法,任何長(zhǎng)度為用此方法,任何長(zhǎng)度為64 (m-1)位的消息可以被插入任意的欺騙性位的消息可以被插入任意的欺騙性信息信息42MAC應(yīng)具備的性質(zhì)應(yīng)具備的性質(zhì)n如果一個(gè)攻擊者得到如果一
20、個(gè)攻擊者得到M和和CK(M),則攻擊者構(gòu)造一個(gè)消息,則攻擊者構(gòu)造一個(gè)消息M使使得得CK(M)=CK(M)應(yīng)具有計(jì)算復(fù)雜性意義下的不可行性應(yīng)具有計(jì)算復(fù)雜性意義下的不可行性nCK(M)應(yīng)均勻分布,即:隨機(jī)選擇消息應(yīng)均勻分布,即:隨機(jī)選擇消息M和和M, CK(M)= CK(M)的概率是的概率是2-n,其中,其中n是是MAC的位數(shù)的位數(shù)n令令M為為M的某些變換,即:的某些變換,即:M=f(M),(例如:,(例如:f可以涉及可以涉及M中中一個(gè)或多個(gè)給定位的反轉(zhuǎn)),在這種情況下,一個(gè)或多個(gè)給定位的反轉(zhuǎn)),在這種情況下,PrCK(M)= CK(M) = 2-n43基于基于DES的報(bào)文鑒別碼的報(bào)文鑒別碼44基
21、于基于DES的報(bào)文鑒別碼的報(bào)文鑒別碼n算法來(lái)源算法來(lái)源nFIPS publication (FIPS PUB 113)nANSI standard (X9.17)n使用使用CBC(Cipher Block Chaining)方式,初方式,初始向量為始向量為IV=045基于基于DES的報(bào)文鑒別碼的報(bào)文鑒別碼n算法來(lái)源算法來(lái)源nFIPS publication (FIPS PUB 113)nANSI standard (X9.17)n使用使用CBC(Cipher Block Chaining)方式,初方式,初始向量為始向量為IV=046基于基于DES的報(bào)文鑒別碼的報(bào)文鑒別碼將數(shù)據(jù)按將數(shù)據(jù)按64位分
22、組,位分組,D1, D2, , DN,必要時(shí)最后一個(gè)數(shù)據(jù)塊用,必要時(shí)最后一個(gè)數(shù)據(jù)塊用0向右填向右填充充運(yùn)用運(yùn)用DES算法算法E,密鑰,密鑰K數(shù)據(jù)認(rèn)證碼數(shù)據(jù)認(rèn)證碼(DAC)的計(jì)算如下:的計(jì)算如下:O1 = EK(D1)O2 = EK(D2O1)O3 = EK(D3O2)ON = EK(DNON-1)47FIPS PUB 11348目目 錄錄消息鑒別與散列函數(shù)消息鑒別與散列函數(shù)散列算法散列算法1.數(shù)字簽名數(shù)字簽名49散列函數(shù)散列函數(shù)50散列函數(shù)的定義散列函數(shù)的定義散列函數(shù):散列函數(shù):M:變長(zhǎng)報(bào)文變長(zhǎng)報(bào)文H(M):定長(zhǎng)的散列值定長(zhǎng)的散列值主要用于為文件、報(bào)文或其它分組數(shù)據(jù)產(chǎn)生指紋主要用于為文件、報(bào)文
23、或其它分組數(shù)據(jù)產(chǎn)生指紋()hH M51散列函數(shù)的要求散列函數(shù)的要求H能用于任意大小的分組能用于任意大小的分組H能產(chǎn)生定長(zhǎng)的輸出能產(chǎn)生定長(zhǎng)的輸出對(duì)任何給定的對(duì)任何給定的x,H(x)要相對(duì)易于計(jì)算,使得硬件和軟件實(shí)現(xiàn)成為實(shí)要相對(duì)易于計(jì)算,使得硬件和軟件實(shí)現(xiàn)成為實(shí)際可能際可能對(duì)任何給定的碼對(duì)任何給定的碼h,尋找,尋找x使得使得H(x)=h在計(jì)算上是不可行的,即單向在計(jì)算上是不可行的,即單向性性對(duì)任何給定的分組對(duì)任何給定的分組x,尋找不等于,尋找不等于x的的y,使得,使得H(x)=H(y)在計(jì)算上是在計(jì)算上是不可行的,即弱抗沖突性不可行的,即弱抗沖突性尋找對(duì)任何的尋找對(duì)任何的(x,y)對(duì)使得對(duì)使得H(
24、x)=H(y)在計(jì)算上是不可行的,即強(qiáng)抗沖在計(jì)算上是不可行的,即強(qiáng)抗沖突性突性52Hash vs MACMAC需要對(duì)全部數(shù)據(jù)進(jìn)行加需要對(duì)全部數(shù)據(jù)進(jìn)行加MAC速度慢速度慢Hash是一種直接產(chǎn)生鑒別碼的方法是一種直接產(chǎn)生鑒別碼的方法53Hash函數(shù)通用結(jié)構(gòu)函數(shù)通用結(jié)構(gòu)由由Ron Rivest于于1990年提出年提出MD4幾乎被所有幾乎被所有hash函數(shù)使用函數(shù)使用具體做法具體做法: 把原始消息把原始消息M分成一些固定長(zhǎng)度的塊分成一些固定長(zhǎng)度的塊Yi 最后一塊最后一塊padding并使其包含消息并使其包含消息M長(zhǎng)度長(zhǎng)度 設(shè)定初始值設(shè)定初始值CV0 壓縮函數(shù)壓縮函數(shù)f, CVi=f(CVi-1,Yi-
25、1) 最后一個(gè)最后一個(gè)CVi為為hash值值55MD556MD5描述描述Merkle于于1989年提出年提出hash function模型模型Ron Rivest于于1990年提出年提出MD41992年年, Ron Rivest 完成完成MD5 (RFC 1321) 在最近數(shù)年之前在最近數(shù)年之前,MD5是最主要的是最主要的hash算法算法現(xiàn)行美國(guó)標(biāo)準(zhǔn)現(xiàn)行美國(guó)標(biāo)準(zhǔn)SHA-1以以MD5的前身的前身MD4為基礎(chǔ)為基礎(chǔ)57MD5描述描述 輸入:任意長(zhǎng)度的報(bào)文輸入:任意長(zhǎng)度的報(bào)文輸入分組長(zhǎng)度:輸入分組長(zhǎng)度:512 bit 輸出:輸出:128 bit 報(bào)文報(bào)文59MD5描述描述step 1 附加長(zhǎng)度值附加
26、長(zhǎng)度值對(duì)報(bào)文進(jìn)行填充,使其比特?cái)?shù)與對(duì)報(bào)文進(jìn)行填充,使其比特?cái)?shù)與448模模512同余,即填同余,即填充長(zhǎng)度為充長(zhǎng)度為512的整數(shù)倍減去的整數(shù)倍減去64填充方法:填充比特串的最高位為填充方法:填充比特串的最高位為1,其余各位均為,其余各位均為011| 448mod512| 448mod512,| | 512MifMthen MM60MD5描述描述step 2 附加長(zhǎng)度值附加長(zhǎng)度值|M2|為為512的倍數(shù)的倍數(shù): Y0,Y1,YL-1216464|mod2 ,2MMLengthMMPadding LengthLengthM低位字節(jié)優(yōu)先,表示為64bit長(zhǎng)若初始長(zhǎng)度大于,僅使用該長(zhǎng)度的低64bit61
27、MD5描述描述step 3初始化初始化MD緩存緩存MD為為128bit,用于存放散列函數(shù)的中間及最終結(jié)果,用于存放散列函數(shù)的中間及最終結(jié)果MD可表示為可表示為4個(gè)個(gè)32bit的寄存器的寄存器(A,B,C,D),初始化如下:,初始化如下:62MD5描述描述step 4壓縮:壓縮:4個(gè)循環(huán)的壓縮算法個(gè)循環(huán)的壓縮算法63MD5描述描述step 5輸出輸出64HMD5單個(gè)單個(gè)512bit分組的分組的MD5處理過(guò)程處理過(guò)程(MD5壓縮函數(shù))壓縮函數(shù))當(dāng)前正在處當(dāng)前正在處理的理的512比特分組比特分組128bit的緩存值的緩存值更新緩存更新緩存T0,16432(2(sin( ),0(sin( )13232
28、iiTINTabsiiabsiTbitbit的單位為弧度能用表示,提供了隨機(jī)化的模式,消除了規(guī)律性每步操作形式每步操作形式單個(gè)單個(gè)512bit分組的分組的MD5處理過(guò)程處理過(guò)程(MD5壓縮函數(shù))壓縮函數(shù))116( )(15 ) mod16( )(53 ) mod16( )5 mod16iiiiiii234X0.15:保存當(dāng)前保存當(dāng)前512bit待處理輸入分組的值待處理輸入分組的值Xk = Mq16 + k = 在第在第q個(gè)個(gè)512位數(shù)據(jù)塊中的第位數(shù)據(jù)塊中的第k個(gè)個(gè)32位字位字每次循環(huán)每次循環(huán)(4)的每步的每步(16)內(nèi),內(nèi),Xi的使用循序各不相同的使用循序各不相同69MD5的安全性的安全性Be
29、rson表明,對(duì)單循環(huán)表明,對(duì)單循環(huán)MD5,使用不用的密碼分析可能在合理的,使用不用的密碼分析可能在合理的時(shí)間內(nèi)找出能夠產(chǎn)生相同摘要的兩個(gè)報(bào)文,這個(gè)結(jié)果被證明對(duì)四時(shí)間內(nèi)找出能夠產(chǎn)生相同摘要的兩個(gè)報(bào)文,這個(gè)結(jié)果被證明對(duì)四個(gè)循環(huán)中的任意一個(gè)循環(huán)也成立,但作者沒(méi)有能夠提出如何攻擊個(gè)循環(huán)中的任意一個(gè)循環(huán)也成立,但作者沒(méi)有能夠提出如何攻擊包含全部包含全部4個(gè)循環(huán)個(gè)循環(huán)MD5的攻擊的攻擊Boer和和Bosselaers顯示了即使緩存顯示了即使緩存ABCD不同,不同,MD5對(duì)單個(gè)對(duì)單個(gè)512bit分組的執(zhí)行將得到相同的輸出分組的執(zhí)行將得到相同的輸出(偽沖突)偽沖突)Dobbertin的攻擊技術(shù):使的攻擊技術(shù)
30、:使MD5的壓縮函數(shù)產(chǎn)生沖突,即尋找的壓縮函數(shù)產(chǎn)生沖突,即尋找MD5被認(rèn)為是易受攻擊的,逐漸被被認(rèn)為是易受攻擊的,逐漸被SHA-1和和RIPEMD-160替代替代,( )( )xy xyH xH y、但70其它常用其它常用Hash算法算法SHA-1 RIPEMD-160 HMAC72Hash小結(jié)小結(jié)Hash函數(shù)把變長(zhǎng)信息映射到定長(zhǎng)信息函數(shù)把變長(zhǎng)信息映射到定長(zhǎng)信息Hash函數(shù)不具備可逆性函數(shù)不具備可逆性Hash函數(shù)速度較快函數(shù)速度較快Hash函數(shù)與對(duì)稱(chēng)密鑰加密算法有某種相似性函數(shù)與對(duì)稱(chēng)密鑰加密算法有某種相似性對(duì)對(duì)Hash函數(shù)的密碼分析比對(duì)稱(chēng)密鑰密碼更困難函數(shù)的密碼分析比對(duì)稱(chēng)密鑰密碼更困難Hash
31、函數(shù)可用于消息摘要函數(shù)可用于消息摘要Hash函數(shù)可用于數(shù)字簽名函數(shù)可用于數(shù)字簽名73目目 錄錄消息鑒別與散列函數(shù)消息鑒別與散列函數(shù)散列算法散列算法1.數(shù)字簽名數(shù)字簽名74報(bào)文鑒別的局限性報(bào)文鑒別的局限性用于保護(hù)通信雙方免受第三方攻擊用于保護(hù)通信雙方免受第三方攻擊無(wú)法防止通信雙方的相互攻擊無(wú)法防止通信雙方的相互攻擊n信宿方偽造報(bào)文信宿方偽造報(bào)文n信源方否認(rèn)已發(fā)送的報(bào)文信源方否認(rèn)已發(fā)送的報(bào)文引入數(shù)字簽名,是筆跡簽名的模擬引入數(shù)字簽名,是筆跡簽名的模擬75數(shù)字簽名的性質(zhì)數(shù)字簽名的性質(zhì)傳統(tǒng)簽名的基本特點(diǎn)傳統(tǒng)簽名的基本特點(diǎn)n能與被簽的文件在物理上不可分割能與被簽的文件在物理上不可分割n簽名者不能否認(rèn)自己
32、的簽名簽名者不能否認(rèn)自己的簽名n簽名不能被偽造簽名不能被偽造n容易被驗(yàn)證容易被驗(yàn)證數(shù)字簽名是傳統(tǒng)簽名的數(shù)字化數(shù)字簽名是傳統(tǒng)簽名的數(shù)字化n能與所簽文件能與所簽文件“綁定綁定”n簽名者不能否認(rèn)自己的簽名簽名者不能否認(rèn)自己的簽名n容易被自動(dòng)驗(yàn)證容易被自動(dòng)驗(yàn)證n簽名不能被偽造簽名不能被偽造76數(shù)字簽名的性質(zhì)數(shù)字簽名的性質(zhì)必須能夠驗(yàn)證作者及其簽名的日期時(shí)間必須能夠驗(yàn)證作者及其簽名的日期時(shí)間必須能夠認(rèn)證簽名時(shí)刻的內(nèi)容必須能夠認(rèn)證簽名時(shí)刻的內(nèi)容簽名必須能夠由第三方驗(yàn)證,以解決爭(zhēng)議簽名必須能夠由第三方驗(yàn)證,以解決爭(zhēng)議77數(shù)字簽名的設(shè)計(jì)要求數(shù)字簽名的設(shè)計(jì)要求 簽名必須是依賴(lài)于被簽名信息的一個(gè)位串模板簽名必須是依
33、賴(lài)于被簽名信息的一個(gè)位串模板 簽名必須使用某些對(duì)發(fā)送者是唯一的信息,以防止雙方的偽造與簽名必須使用某些對(duì)發(fā)送者是唯一的信息,以防止雙方的偽造與否認(rèn)否認(rèn) 必須相對(duì)容易生成該數(shù)字簽名必須相對(duì)容易生成該數(shù)字簽名 必須相對(duì)容易識(shí)別和驗(yàn)證該數(shù)字簽名必須相對(duì)容易識(shí)別和驗(yàn)證該數(shù)字簽名 偽造該數(shù)字簽名在計(jì)算復(fù)雜性意義上具有不可行性,既包括對(duì)一偽造該數(shù)字簽名在計(jì)算復(fù)雜性意義上具有不可行性,既包括對(duì)一個(gè)已有的數(shù)字簽名構(gòu)造新的消息,也包括對(duì)一個(gè)給定消息偽造一個(gè)已有的數(shù)字簽名構(gòu)造新的消息,也包括對(duì)一個(gè)給定消息偽造一個(gè)數(shù)字簽名個(gè)數(shù)字簽名 在存儲(chǔ)器中保存一個(gè)數(shù)字簽名副本是現(xiàn)實(shí)可行的在存儲(chǔ)器中保存一個(gè)數(shù)字簽名副本是現(xiàn)實(shí)可行
34、的78數(shù)字簽名分類(lèi)數(shù)字簽名分類(lèi)簽名方式簽名方式n直接數(shù)字簽名直接數(shù)字簽名direct digital signaturen仲裁數(shù)字簽名仲裁數(shù)字簽名arbitrated digital signature安全性安全性 無(wú)條件安全的數(shù)字簽名無(wú)條件安全的數(shù)字簽名 計(jì)算上安全的數(shù)字簽名計(jì)算上安全的數(shù)字簽名可簽名次數(shù)可簽名次數(shù)一次性的數(shù)字簽名一次性的數(shù)字簽名 多次性的數(shù)字簽名多次性的數(shù)字簽名79直接數(shù)字簽名直接數(shù)字簽名80直接數(shù)字簽名直接數(shù)字簽名81直接數(shù)字簽名直接數(shù)字簽名82直接數(shù)字簽名的缺點(diǎn)直接數(shù)字簽名的缺點(diǎn)驗(yàn)證模式依賴(lài)于發(fā)送方的保密密鑰驗(yàn)證模式依賴(lài)于發(fā)送方的保密密鑰 發(fā)送方要抵賴(lài)發(fā)送某一消息時(shí),可
35、能會(huì)聲稱(chēng)其私有密鑰丟失或被發(fā)送方要抵賴(lài)發(fā)送某一消息時(shí),可能會(huì)聲稱(chēng)其私有密鑰丟失或被竊,從而他人偽造了他的簽名竊,從而他人偽造了他的簽名 通常需要采用與私有密鑰安全性相關(guān)的行政管理控制手段來(lái)制止通常需要采用與私有密鑰安全性相關(guān)的行政管理控制手段來(lái)制止或至少是削弱這種情況,但威脅在某種程度上依然存在或至少是削弱這種情況,但威脅在某種程度上依然存在 改進(jìn)的方式例如可以要求被簽名的信息包含一個(gè)時(shí)間戳(日期與時(shí)改進(jìn)的方式例如可以要求被簽名的信息包含一個(gè)時(shí)間戳(日期與時(shí)間),并要求將已暴露的密鑰報(bào)告給一個(gè)授權(quán)中心間),并要求將已暴露的密鑰報(bào)告給一個(gè)授權(quán)中心X的某些私有密鑰確實(shí)在時(shí)間的某些私有密鑰確實(shí)在時(shí)間T被竊取,敵方可以偽
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 家庭電源租用協(xié)議書(shū)
- 工地用水移交協(xié)議書(shū)
- 屋頂外墻維修協(xié)議書(shū)
- 私人合并協(xié)議書(shū)
- 祛斑退款協(xié)議書(shū)
- 工地完工結(jié)賬協(xié)議書(shū)
- 直播售后協(xié)議書(shū)
- 定制班車(chē)服務(wù)協(xié)議書(shū)
- 理療簽約協(xié)議書(shū)
- 建筑生活垃圾協(xié)議書(shū)
- 2025高考語(yǔ)文背誦篇目
- 繼子女?dāng)嘟^關(guān)系協(xié)議書(shū)
- 綜合醫(yī)院感染病例報(bào)告卡
- 《玻璃纖維石膏板》行業(yè)標(biāo)準(zhǔn)征求意見(jiàn)稿編制說(shuō)明
- DB32T3748-2020 35kV及以下客戶端變電所建設(shè)標(biāo)準(zhǔn)
- 2024-2030年國(guó)內(nèi)汽車(chē)電動(dòng)尾門(mén)行業(yè)市場(chǎng)深度分析及發(fā)展現(xiàn)狀與趨勢(shì)研究報(bào)告
- MOOC 青草藥識(shí)別-福建農(nóng)林大學(xué) 中國(guó)大學(xué)慕課答案
- 青春期的煩惱新專(zhuān)家講座
- PFMEA(中英文標(biāo)準(zhǔn)模板)
- JGJ79-2012 建筑地基處理技術(shù)規(guī)范
- 2024年市政工程市場(chǎng)洞察報(bào)告
評(píng)論
0/150
提交評(píng)論