網(wǎng)絡信息安全數(shù)字簽名(MACHASH)_第1頁
網(wǎng)絡信息安全數(shù)字簽名(MACHASH)_第2頁
網(wǎng)絡信息安全數(shù)字簽名(MACHASH)_第3頁
網(wǎng)絡信息安全數(shù)字簽名(MACHASH)_第4頁
網(wǎng)絡信息安全數(shù)字簽名(MACHASH)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、MAC HASHMAC HASH數(shù)字簽名數(shù)字簽名報文鑒別碼報文鑒別碼MAC 報文鑒別,也稱為報文認證,是證實收到的報文來自可信的源點且未被篡改的過程。報文鑒別也可證實序列編號和實時性。報文鑒別最常用的一種方法是使用報文鑒別碼MAC(Message Authentication Code)。 報文鑒別碼MAC是用一個密鑰生成的一個小的數(shù)據(jù)塊追加在報文的后面。 MAC對數(shù)據(jù)本身并不加密,數(shù)據(jù)經(jīng)過特定的驗證函數(shù)處理后,截取結果一定長度作為MAC。 它的作用是對特定信息的發(fā)送者的身份進行鑒別,對傳送的報文的完整性進行合法性審查。 由于MAC是報文和密鑰的函數(shù),因此,如果報文被篡改,那么接收端對收到的報

2、文重新計算MAC時,驗證函數(shù)可保證得不到與發(fā)送時一致的MAC,從而達到鑒別的目的。 電子銀行專用網(wǎng)絡中主要是用DES算法對電文進行加密,最后產(chǎn)生32位密文作為電文識別碼。 電子商務和網(wǎng)上銀行中則采用單向雜湊函數(shù)(Hash函數(shù))作為電文的封裝函數(shù),將電文經(jīng)過Hash函數(shù)運算后產(chǎn)生的定長的電文摘要作為MAC。 中國金融認證中心CFCA也利用MAC技術(只對有用的信息做標記)來提高速度。 MAC是報文M和密鑰K的函數(shù):MAC=F(K,M)。這里假定通信雙方用戶A和用戶B共享一個密鑰K,F(xiàn)就是加密算法的某一函數(shù)。當用戶A向用戶B發(fā)送報文M時,就根據(jù)此密鑰和報文計算出報文鑒別碼MAC,報文和鑒別碼一起傳

3、送到用戶B。用戶B用收到的報文(不包括報文鑒別碼),使用同樣的密鑰K,再計算一次報文鑒別碼,并與收到的報文鑒別碼相比較。如一致,則鑒別此報文時真的,否則為假。 由于不同的報文M有不同的MAC?;诨贒ESDES的的MACMAC產(chǎn)生原理產(chǎn)生原理單向單向HASHHASH(散列)函數(shù)(散列)函數(shù) RSA的安全性基于大數(shù)分解質(zhì)因子的困難性。 正是由于RSA進行的都是大數(shù)計算 無論是軟件還是硬件實現(xiàn),RSA最快的情況也比DES慢上100倍。 一般來說它只用于少量數(shù)據(jù)加密。 DES算法從原理上不可能實現(xiàn)數(shù)字簽名和身份認證。 但RSA算法能夠容易地進行數(shù)字簽名和身份認證。單向單向HASHHASH(散列)函

4、數(shù)(散列)函數(shù) 在網(wǎng)上銀行服務和電子商務中,在保證通信安全的基礎上為提高報文的發(fā)送效率,一般采用RSA算法對原始消息的摘要作數(shù)字簽名,而用DES算法加密消息。 RSA算法的計算量比較大。為了提高效率,應避免數(shù)字簽名信息過長,所以一般不直接對消息M作簽名,而是報文發(fā)送方事先利用散列函數(shù)(hash函數(shù)),生成欲發(fā)送消息M(任意長)的消息摘要M(固定長度,M可看作消息M的“指紋”),并以M作為M的MAC,然后發(fā)送方用其私鑰對這消息摘要M進行加密,形成發(fā)送方的數(shù)字簽名。單向單向HASHHASH(散列)函數(shù)(散列)函數(shù) 單向Hash函數(shù)有很多名稱:壓縮函數(shù)、消息摘要、指紋、密碼校驗和等等。 Hash函數(shù)

5、就是把可變輸入長度串轉換成固定長度輸出串(叫做hash值或散列值)的一種函數(shù)。 單向Hash函數(shù)是在一個方向上工作的Hash函數(shù),即它是不可逆的:從輸入串很容易計算其Hash值,但要產(chǎn)生一個已知的Hash值計算出輸入串是不可能的。好的hash函數(shù)是無沖突的:難于產(chǎn)生兩個不同的輸入串,使他們的hash值相同。Hash函數(shù)是公開的,對處理過程不用保密。輸入串中單個比特的改變,平均而言,將引起hash值中一半的比特改變。 用于報文鑒別的Hash函數(shù)H,它可接收任意長度的輸入消息,產(chǎn)生固定長度的散列值。單向單向HASHHASH(散列)函數(shù)(散列)函數(shù) 具有以下特性:(1)H應能應用到任意大小的數(shù)據(jù)分組

6、上。(2)H能生成大小固定的輸出。(3)對任意給定的輸入消息x,得到該消息的Hash值h=H(x)的計算相對簡單,易于用軟件和硬件實現(xiàn)。(4)反之,給定Hash值h,要想得到產(chǎn)生該Hash值的原始消息,即找出滿足H(x)=h中的x,在計算上是不可行的。(5)對于任意給定的塊x,要發(fā)現(xiàn)一個y,滿足H(y)=H(x)而yx則是不可行的。(6)要發(fā)現(xiàn)滿足H(x)=H(y)的(x,y),在計算上是不可行的。單向單向HASHHASH(散列)函數(shù)(散列)函數(shù) MD5:其全稱是Message-Digest Algorithm 5(消息摘要算法)。 在90年代初由MIT Laboratory for Comp

7、uter Science和RSA Data Security Inc的Ronald L. Rivest開發(fā)出來,經(jīng)MD2、MD3和MD4發(fā)展而來。不管是MD2、MD4還是MD5,它們都需要獲得一個隨機長度的信息并產(chǎn)生一個128位的信息摘要。雖然這些算法的結構或多或少有些相似,但MD2的設計與MD4和MD5完全不同,那是因為MD2是為8位機器做過設計優(yōu)化的,而MD4和MD5卻是面向32位的電腦。 RFC(Request For Comments)文檔(Internet RFC 1321,/rfc/rfc1321.txt)。 在最近數(shù)年之前,MD5是最主要的ha

8、sh算法。 SHA-1是以MD5的前身MD4為基礎的。 Dobbertin在1996年找到了兩個不同的512-bit塊在MD5計算下產(chǎn)生相同的hash,因此,MD5不是足夠安全的。 2004年月,在美國加州圣芭芭拉召開的國際密碼大會上,王小云首次宣布了她及她的研究小組近年來的研究成果對、和等四個著名密碼算法的破譯結果。 2005年,國際密碼學家Lenstra利用王小云提供的碰撞,偽造了符合標準的數(shù)字證書。這就說明了的破譯已經(jīng)不僅僅是理論破譯結果,而是可以導致實際的攻擊,的撤出迫在眉睫。王小云說,目前在理論上已經(jīng)被破譯,離實際應用也為期不遠。MD5單向單向HASHHASH(散列)函數(shù)(散列)函數(shù)

9、 SHA-1:安全散列算法SHA(Secure Hash Algorithm,SHA)是美國國家標準和技術局發(fā)布的國家標準FIPS PUB 180-1,一般稱為SHA-1。它對消息產(chǎn)生160位的消息摘要輸出。 SHA-1能抵抗生日攻擊,至今沒有發(fā)現(xiàn)兩個不同的512bit塊,它們在SHA-1計算下產(chǎn)生相同的hash值。SHA-1的速度慢于MD5,但安全性優(yōu)于MD5。 SHA-1SHA-1處理過程處理過程ABCDEabcde循環(huán)左移5位循環(huán)左移30位ft+32KtWt32323232單向單向HASHHASH(散列)函數(shù)(散列)函數(shù) RIPEMD-160:它歐洲RIPE項目的結果。最初,RIPEMD

10、為128位,更新后成為RIPEMD-160,其基礎是MD5,目前沒有發(fā)現(xiàn)兩個不同的512bit塊,它們在RIPEMD-160計算下產(chǎn)生相同的hash值,它的速度略慢于SHA-1,安全性優(yōu)于MD5,對密碼分析的抵抗力好于SHA-1。 HMAC 在網(wǎng)上銀行和電子商務中,通常是采用Hash函數(shù)(如SHA-1)來產(chǎn)生MAC。這主要是出于下述原因:第一,用軟件實現(xiàn)時,Hash函數(shù)比DES算法速度快;第二,Hash函數(shù)的庫代碼來源廣泛;第三,美國等國家對常規(guī)密碼算法和MAC使用的常規(guī)密碼算法都有管制,但對Hash函數(shù)沒有出口管制。HMAC 直接用Hash函數(shù)來產(chǎn)生MAC是行不通的。Hash函數(shù)不是專為產(chǎn)生

11、MAC設計的,它也不需要密鑰。MAC是密鑰和消息的函數(shù),要利用Hash函數(shù)來產(chǎn)生MAC,必須設法將保密密鑰合并到Hash函數(shù)中去。 目前,廣泛使用的是HMAC,并已被選做IP安全代理強制實施的MAC,應用到其他Internet協(xié)議上。如傳輸層安全TLS(IETF在1999年末完成了傳輸層安全協(xié)議,在將來它將取代SSL)和安全電子交易SET等協(xié)議,都采用HMAC作MAC。HMAC RFC 2104中列出的HMAC的設計目標:(1)不用修改就可以使用現(xiàn)有的散列函數(shù),散列函數(shù)在軟件方面表現(xiàn)的很好,且源代是公開和通用的。(2)當出現(xiàn)新的散列函數(shù)時,要能輕易地替換。(3)保持散列函數(shù)的原有性能不會導致算

12、法性能的降低。(4)使用和處理密鑰的方式簡單。(5)對鑒別機制的安全強度容易分析,與hash函數(shù)有同等的安全性。HMACSiYL-1b bitsY0b bitsY1b bitsK+ipadHMACK(M)n bitsH(Si|M)S0n bitsIV填充到b bitsb bitsK+opad散列函數(shù)Hn bits散列函數(shù)Hn bitsIV數(shù)字簽名數(shù)字簽名 在網(wǎng)絡環(huán)境中,網(wǎng)絡安全最基本的要求就是通信信息的真實和不可否認性,它要求通信雙方能互相證實,以防止第三者假冒通信的一方竊取、偽造信息。在網(wǎng)絡中實現(xiàn)通信真實性的方法是數(shù)字簽名。數(shù)字簽名數(shù)字簽名 簽名體現(xiàn)了以下幾個方面的功能:(1)簽名是可信的。

13、簽名使文件的接收者相信簽名者是慎重地在文件上簽名的。(2)簽名是不可偽造的。簽名證明是簽字者而不是其他的人在文件上簽字。(3)簽名不可重用。簽名是文件的一部分,不可能將簽名移動到不同的文件上。(4)簽名后的文件是不可變的。在文件簽名以后,文件就不能改變。(5)簽名是不可抵賴的。簽名和文件是不可分離的,簽名者事后不能聲稱他沒有簽過這個文件。數(shù)字簽名數(shù)字簽名 數(shù)字簽名協(xié)議中,單向散列函數(shù)和數(shù)字簽名算法是事先協(xié)商好的,整個過程如下:(1)Alice產(chǎn)生文件的單向散列值。(2)Alice用她的私人密鑰對散列加密,以此表示對文件的簽名。(3)Alice將文件和散列簽名送給Bob。(4)Bob用Alice

14、發(fā)送的文件產(chǎn)生文件的單向散列值,同時用Alice的公鑰對簽名的散列解密。如果簽名的散列值與自己產(chǎn)生的散列值匹配,簽名是有效的。 數(shù)字簽名數(shù)字簽名Alice的私鑰消息散列函數(shù)消息摘要加密算法消息加密后的摘要加密后的摘要Alice的公鑰消息散列函數(shù)消息摘要解密算法加密后的摘要解密后的摘要比較AliceBob數(shù)字簽名與數(shù)字信封數(shù)字簽名與數(shù)字信封為了提高加密的效率,下面使用了數(shù)字信封技術: (1)Alice使用雙方確定的hash函數(shù)對消息M(明文)進行計算,得到一個消息摘要。 (2)Alice用自己的私鑰對消息摘要進行加密得到Alice的數(shù)字簽名,并將其附在消息后面。 (3)Alice隨機產(chǎn)生一個加密密鑰(DES密鑰),并用此密鑰對要發(fā)送的消息進行加密,形成密文。 (4)Alice用Bob的公鑰對剛才產(chǎn)生的DES加密密鑰進行加密(形成數(shù)字信封),將加密后的DES密鑰(數(shù)字信封)連同密文一起傳送給Bob。 (5)Bob收到A

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論