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