版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第八講 思考題 1 P141 (7)安全的散列函數(shù)有哪些特征? 第八講教學(xué)要求: (1)掌握單向散列函數(shù)概念; (2)了解MD5算法程; (3)了解SHA 安全散列算法;,3.2單向散列函數(shù) 單向散列函數(shù),也稱(chēng)hash函數(shù),它可以提供判斷電子信息完整性的依據(jù),是防止信息被篡改的一種有效方法。單向散列函數(shù)在數(shù)據(jù)加密、數(shù)據(jù)簽名和軟件保護(hù)等領(lǐng)域中有著廣泛的應(yīng)用。3.2.
2、1 單向散列函數(shù)特點(diǎn) hash函數(shù)的作用是當(dāng)向hash函數(shù)輸入一任意長(zhǎng)度的的信息M時(shí),hash函數(shù)將輸出一固定長(zhǎng)度為m的散列值h。即: h = h(M),思考題1:安全的hash函數(shù)的特點(diǎn)是: 1.hash函數(shù)能從任意長(zhǎng)度的M中產(chǎn)生固定長(zhǎng)度的散列值h。 2.已知M時(shí),利用h(M)很容易計(jì)算出h。 3.已知h
3、時(shí),要想從h(M)中計(jì)算出M是很困難的。 4.已知M時(shí),要找出另一信息M‘,使h(M)=h(M’)是很困難的。 最常用的hash算法有MD5、SHA算法等。,MD5,MD5(Message-Digest Algorithm 5)是由Ronald L. Rivest(RSA算法中的“R”)這90年代初開(kāi)發(fā)出來(lái)的,經(jīng)MD2、MD3和MD4發(fā)展而來(lái)。它比MD4復(fù)雜,但設(shè)計(jì)
4、思想類(lèi)似,同樣生成一個(gè)128位的信息散列值。其中,MD2是為8位機(jī)器做過(guò)設(shè)計(jì)優(yōu)化的,而MD4和MD5卻是面向32位的計(jì)算機(jī)。2004年8月,在美國(guó)召開(kāi)的國(guó)際密碼學(xué)會(huì)議(Crypto’2004)上,王小云教授給出破解MD5、HAVAL-128、 MD4和RIPEMD算法的報(bào)告。給出了一個(gè)非常高效的尋找碰撞的方法,可以在數(shù)個(gè)小時(shí)內(nèi)找到MD5的碰撞。,MD5算法步驟,1)填充消息:任意長(zhǎng)度的消息首先需要進(jìn)行填充處理,使得填充后的消息總長(zhǎng)度與
5、448模512同余(即填充后的消息長(zhǎng)度?448 mod 512)。填充的方法是在消息后面添加一位“1”,后續(xù)都是“0”。2)添加原始消息長(zhǎng)度:在填充后的消息后面再添加一個(gè)64位的二進(jìn)制整數(shù)表示填充前原始消息的長(zhǎng)度。這時(shí)經(jīng)過(guò)處理后的消息長(zhǎng)度正好是512位的倍數(shù)。3)初始值(IV)的初始化:MD5中有四個(gè)32位緩沖區(qū),用(A, B, C, D)表示,用來(lái)存儲(chǔ)散列計(jì)算的中間結(jié)果和最終結(jié)果,緩沖區(qū)中的值被稱(chēng)為鏈接變量。首先將其分別初始化為為
6、:A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543210。,3.2.2 MD5算法4)以512位的分組為單位對(duì)消息進(jìn)行循環(huán)散列計(jì)算:經(jīng)過(guò)處理的消息,以512位為單位,分成N個(gè)分組,用M0,M1,...,MN-1。MD5對(duì)每個(gè)分組進(jìn)行散列處理。每一輪的處理會(huì)對(duì)(A,B,C,D)進(jìn)行更新。5)輸出散列值:所有的N個(gè)分組消息都處理完后,最后一輪得到的四個(gè)緩沖區(qū)的值即為整個(gè)消息的散列值。,,
7、MD5算法步驟-續(xù),最后的輸出就是A、B、C、D的級(jí)聯(lián),即A作為低位,D作為高位,共128位輸出。 MD5被廣泛用于加密和解密技術(shù)中,可以用來(lái)保護(hù)密碼、生成軟件注冊(cè)碼等。MD5典型應(yīng)用:在很多操作系統(tǒng)中,用戶的密碼是以MD5值的方式保存的.,3.2.3 SHA算法,SHA-1散列算法過(guò)程如下: 1.SHA-1對(duì)輸入明文的預(yù)處理過(guò)程和MD5相同,但SHA輸出為160位,并分別存儲(chǔ)于五個(gè)32位變量中,這五個(gè)變量初
8、始值為: A=0x67452301 B=0xefedab89 C=0x98badefe D=0x10325476 E=0xc3d2elf0 和MD5算法一樣,SHA-1一次處理512位信息,主循環(huán)的次數(shù)就是信息中512
9、位分組的數(shù)目。,3.2.4 SHA-1與MD5比較,1 安全性 SHA-1摘要比MD5摘要長(zhǎng)32比特,強(qiáng)行攻擊及偽造簽名更難2 速度 SHA-1比MD5的運(yùn)行步驟多16個(gè),占用的緩存多了32位,所以速度慢25%3簡(jiǎn)單性 總體上SHA-1對(duì)每一步的操作描述比MD5簡(jiǎn)單,數(shù)字簽名,數(shù)字簽名也是一種認(rèn)證機(jī)制,它是公鑰密碼學(xué)發(fā)展過(guò)程中的一個(gè)重要組成部分,是公鑰密碼算法的典型應(yīng)用。數(shù)字簽名的應(yīng)用過(guò)程是,數(shù)據(jù)源發(fā)送方使
10、用自己的私鑰對(duì)數(shù)據(jù)校驗(yàn)和或其他與數(shù)據(jù)內(nèi)容有關(guān)的信息進(jìn)行處理,完成對(duì)數(shù)據(jù)的合法“簽名”,數(shù)據(jù)接收方則利用發(fā)送方的公鑰來(lái)驗(yàn)證收到的消息上的“數(shù)字簽名”,以確認(rèn)簽名的合法性。,數(shù)字簽名,數(shù)字簽名需要滿足以下條件:簽名的結(jié)果必須是與被簽名的消息相關(guān)的二進(jìn)制位串;簽名必須使用發(fā)送方某些獨(dú)有的信息(發(fā)送者的私鑰),以防偽造和否認(rèn);產(chǎn)生數(shù)字簽名比較容易;識(shí)別和驗(yàn)證簽名比較容易;給定數(shù)字簽名和被簽名的消息,偽造數(shù)字簽名在計(jì)算上是不可行的。保
11、存數(shù)字簽名的拷貝,并由第三方進(jìn)行仲裁是可行的。,數(shù)字簽名,(1) 消息發(fā)送方式與散列函數(shù)對(duì)消息進(jìn)行計(jì)算,得到消息的散列值。(2) 發(fā)送方使用自己的私鑰對(duì)消息散列值進(jìn)行計(jì)算,得到一個(gè)較短的數(shù)字簽名串。(3) 這個(gè)數(shù)字簽名將和消息一起發(fā)送給接收方。(4) 接收方首先從接收到的消息中用同樣的散列函數(shù)計(jì)算出一個(gè)消息摘要,然后使用這個(gè)消息摘要、發(fā)送者的公鑰以及收到的數(shù)字簽名,進(jìn)行數(shù)字簽名合法性的驗(yàn)證。,盲簽名,盲簽名是Chaum在1982年
12、首次提出的,并利用盲簽名技術(shù)提出了第一個(gè)電子現(xiàn)金方案。盲簽名因?yàn)榫哂忻ば赃@一特點(diǎn),可以有效的保護(hù)所簽名的消息的具體內(nèi)容,所以在電子商務(wù)等領(lǐng)域有著廣泛的應(yīng)用。盲簽名允許消息發(fā)送者先將消息盲化,而后讓簽名者對(duì)盲化的消息進(jìn)行簽名,最后消息擁有者對(duì)簽名除去盲因子,得到簽名者關(guān)于原消息的簽名。,盲簽名的性質(zhì),它除了滿足一般的數(shù)字簽名條件外,還必須滿足下面的兩條性質(zhì):1. 簽名者不知道其所簽名的消息的具體內(nèi)容。2. 簽名消息不可追蹤,即當(dāng)簽名
13、消息被公布后,簽名者無(wú)法知道這是他哪次的簽署的。,盲簽名的步驟,A期望獲得對(duì)消息m的簽名,B對(duì)消息m的盲簽名的實(shí)現(xiàn)描述如下:盲化:A對(duì)于消息進(jìn)行處理,使用盲因子合成新的消息M并發(fā)生給B;簽名:B對(duì)消息M簽名后,將簽名 ( M, sign(M) ) 返回給給A;去盲:A去掉盲因子,從對(duì)M的簽名中得到B對(duì)m的簽名。,好的盲簽名的性質(zhì),不可偽造性:除了簽名者本人外,任何人都不能以他的名義生成有效的盲簽名。不可抵賴(lài)性:簽名者一旦簽署了某
14、個(gè)消息,他無(wú)法否認(rèn)自己對(duì)消息的簽名。盲性:簽名者雖然對(duì)某個(gè)消息進(jìn)行了簽名,但他不可能得到消息的具體內(nèi)容。不可跟蹤性:一旦消息的簽名公開(kāi)后,簽名者不能確定自己何時(shí)簽署的這條消息。,盲簽名機(jī)制,當(dāng)用戶從銀行提款時(shí),他先為硬幣隨機(jī)生成一個(gè)很大的編碼,然后利用盲簽名機(jī)制,銀行可用代表不同面值的密鑰對(duì)這枚硬幣簽名,從而標(biāo)定硬幣的幣值。由于編碼很大(大于200位數(shù)字),重復(fù)的概率可以忽略不計(jì),再加上盲簽名讓銀行無(wú)法知道硬幣編號(hào),從而不能將其記錄
15、下來(lái)。 為了防止電子現(xiàn)金的復(fù)制,Chaum引入一種盲記錄機(jī)制,第一次使用電子硬幣時(shí)無(wú)法進(jìn)行跟蹤,而如果重復(fù)使用,就有足夠多的信息能查出使用者的帳戶信息,從而采取相應(yīng)的處罰措施。 對(duì)電子硬幣的檢驗(yàn)同普通的簽名檢驗(yàn)一樣,商家收到用戶支付的電子硬幣時(shí),可以檢驗(yàn)該硬幣的真實(shí)性,之后再將其發(fā)給銀行去核實(shí)其唯一性。當(dāng)一個(gè)消費(fèi)者想從金融機(jī)構(gòu)提取一筆電子現(xiàn)金時(shí),金融機(jī)構(gòu)產(chǎn)生電子貨幣的數(shù)據(jù),包含隨機(jī)的貨幣序號(hào),同時(shí)任取一個(gè)隨機(jī)
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 消息認(rèn)證與數(shù)字簽名
- 結(jié)合數(shù)字水印與數(shù)字簽名的認(rèn)證算法的研究.pdf
- 結(jié)合雙混沌系統(tǒng)與數(shù)字簽名的認(rèn)證算法研究.pdf
- 數(shù)字簽名算法的研究與設(shè)計(jì).pdf
- 數(shù)字簽名理論與算法研究.pdf
- 第13章 數(shù)字簽名和認(rèn)證協(xié)議
- 代理數(shù)字簽名和群數(shù)字簽名的分析與設(shè)計(jì).pdf
- 數(shù)字簽名理論與相關(guān)算法研究.pdf
- 數(shù)字簽名與網(wǎng)絡(luò)認(rèn)證應(yīng)用關(guān)鍵問(wèn)題研究.pdf
- 普通數(shù)字簽名算法的研究與改進(jìn).pdf
- 數(shù)字簽名認(rèn)證理論與應(yīng)用技術(shù)研究.pdf
- rsa算法和rsa數(shù)字簽名算法的實(shí)現(xiàn)
- 數(shù)字簽名方案及其順序多簽名體制算法研究.pdf
- 用于認(rèn)證的圖像數(shù)字簽名技術(shù)研究.pdf
- 基于數(shù)字簽名和水印的圖像認(rèn)證研究.pdf
- 基于ELGamal數(shù)字簽名的雙向認(rèn)證方案研究.pdf
- 基于格的數(shù)字簽名和認(rèn)證協(xié)議研究.pdf
- 數(shù)字簽名和認(rèn)證加密若干問(wèn)題研究.pdf
- 基于屬性的數(shù)字簽名算法研究.pdf
- 復(fù)雜數(shù)字簽名方案及其安全認(rèn)證研究.pdf
評(píng)論
0/150
提交評(píng)論