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

下載本文檔

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

文檔簡(jiǎn)介

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

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

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

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

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

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

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

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

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

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

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

12、法性能的降低。(4)使用和處理密鑰的方式簡(jiǎn)單。(5)對(duì)鑒別機(jī)制的安全強(qiáng)度容易分析,與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)絡(luò)環(huán)境中,網(wǎng)絡(luò)安全最基本的要求就是通信信息的真實(shí)和不可否認(rèn)性,它要求通信雙方能互相證實(shí),以防止第三者假冒通信的一方竊取、偽造信息。在網(wǎng)絡(luò)中實(shí)現(xiàn)通信真實(shí)性的方法是數(shù)字簽名。數(shù)字簽名數(shù)字簽名 簽名體現(xiàn)了以下幾個(gè)方面的功能:(1)簽名是可信的。

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

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

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論