網(wǎng)絡(luò)安全論文_第1頁
網(wǎng)絡(luò)安全論文_第2頁
網(wǎng)絡(luò)安全論文_第3頁
網(wǎng)絡(luò)安全論文_第4頁
網(wǎng)絡(luò)安全論文_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、消息認(rèn)證算法綜述1.論文摘要在虛擬的網(wǎng)絡(luò)世界中消息的安全認(rèn)證顯得尤為重要。本文主要講述消息鑒別、數(shù)字簽名、雜湊函數(shù)等消息認(rèn)證算法,來讓大家對消息認(rèn)證算法有更深的了解。In the world of virtual network , messages security certification are particularly important.This article focuses on the message authentication algorithm such as message authentication, digital signatures, hash functi

2、ons and so on. 關(guān)鍵字:消息認(rèn)證、消息鑒別、數(shù)字簽名、雜湊函數(shù)Keywords: message authentication, Message Authentication Code, digital signatures, Hash Functions2.引言許多人認(rèn)為只要將消息加密,不被第三方看到就能保證消息的安全性。其實(shí)事實(shí)并非如此,通信雙方傳送消息的信道也是不安全的。在網(wǎng)絡(luò)上傳送的消息不僅可能被入侵者截取并進(jìn)行分析,而且可能被偽造和篡改。消息認(rèn)證則可以保證消息不被偽造和篡改。消息認(rèn)證是一個過程,用以驗(yàn)證接收消息的真實(shí)性(的確是由它所聲稱的實(shí)體發(fā)來的)和完整性(未被篡改、

3、插入、刪除),同時還用于驗(yàn)證消息的順序性和時間性(未重排、重放、延遲)。通過消息認(rèn)證能夠?yàn)樾畔⑼暾院筒豢煞裾J(rèn)性以及網(wǎng)絡(luò)實(shí)體的身份真實(shí)性提供技術(shù)保障。從而使我們的網(wǎng)絡(luò)世界更加的安全。3.正文論述消息認(rèn)證是一個過程,用以驗(yàn)證接收消息的真實(shí)性(的確是由它所聲稱的實(shí)體發(fā)來的)和完整性(未被篡改、插入、刪除),同時還用于驗(yàn)證消息的順序性和時間性(未重排、重放、延遲)。真實(shí)性:消息確實(shí)來自于其真正的發(fā)送者,而非假冒;完整性:消息的內(nèi)容沒有被篡改。信息的序號和時間在考慮信息安全時還需考慮業(yè)務(wù)的不可否認(rèn)性,即防止通信雙方中的某一方對所傳輸消息的否認(rèn)。實(shí)現(xiàn)消息的不可否認(rèn)性可通過數(shù)字簽名,數(shù)字簽名也是一種認(rèn)證技

4、術(shù),它也可用于抗擊主動攻擊 (一) 認(rèn)證函數(shù)(1) 信息加密函數(shù)(Message encryption):用完整信息的密文作為對信息的認(rèn)證。 信息加密函數(shù)分二種,一種是常規(guī)的對稱密鑰加密函數(shù),另一種是公開密鑰的雙密鑰加密函數(shù)。通常有:Hash函數(shù) 、消息認(rèn)證碼 、MD5算法 、 SHA-1算法 。(2) 信息認(rèn)證碼MAC(Message Authentication Code):是對信源消息的一個編碼函數(shù)。消息認(rèn)證機(jī)制和數(shù)字簽名機(jī)制都需有產(chǎn)生認(rèn)證符的基本功能,這一基本功能又作為認(rèn)證協(xié)議的一個組成部分。認(rèn)證符是用于認(rèn)證消息的數(shù)值,它的產(chǎn)生方法又分為消息認(rèn)證碼MAC(message authent

5、ication code)和雜湊函數(shù)(hash function)兩大類。(3) 散列函數(shù)(Hash Function):是一個公開的函數(shù),它將任意長的信息映射成一個固定長度的信息。(二)認(rèn)證算法(1)兩種實(shí)用的MAC算法消息鑒別碼實(shí)現(xiàn)鑒別的原理是,用公開函數(shù)和密鑰產(chǎn)生一個固定長度的值作為認(rèn)證標(biāo)識,用這個標(biāo)識鑒別消息的完整性.使用一個密鑰生成一個固定大小的小數(shù)據(jù)塊,即MAC,并將其加入到消息中,然后傳輸.接收方利用與發(fā)送方共享的密鑰進(jìn)行鑒別認(rèn)證等. (一)十進(jìn)制移位加MAC算法 Sievi于1980年向ISO提出一項(xiàng)消息認(rèn)證法的建議Davies等1984,這種認(rèn)證法稱為十進(jìn)制移位加算法(Dec

6、imal Shift and Add Algorithm),簡記為DSA。它特別適用于金融支付中的數(shù)值消息交換業(yè)務(wù)。 消息按十位十進(jìn)制數(shù)字分段處理,不足十位時在右邊以0補(bǔ)齊,下面舉例說明。令x1=1583492637是要認(rèn)證的第一組消息,令b1=5236179902和b2=4893524771為認(rèn)證用的密鑰。DSA算法是以b1和b2并行對x1進(jìn)行運(yùn)算。先算x1+b1, x1+b2(mod 1010), 而后根據(jù)b2的第一位數(shù)值4對x1+b2循環(huán)左移4位,記作R(4)(x1+b1)再與(x1+b1)相加得 R(4)(x1+b1)+(x1+b1)ºP1(mod 1010)類似地,右路在b

7、1的第一位數(shù)值5控制下運(yùn)算結(jié)果為 R(5)(x1+b2)+(x1+b2)=Q1(mod 1010)表: 左路 右路第 b1=5236179902 b2=4893224771一 + x1=1583492637 + x1=1583492637輪 b1+x1=6819672539 b2+x1=6477017408 +R(4)(b1+x1)=2539681976 +R(5)(b2+x1)=1740864770 P1=9359354506 Q1=8217882178第 + x2=5283586900 + x2=5283586900二 P1+x2=4642941406 Q1+x2=3501469078輪

8、+R(8)(P1+x2)=4294140646 +R(9)(Q1+x2)=7835014690 P2=8937082052 Q2=1336483768 . .第 P10=7869031447 Q10=3408472104十 P10+Q10=1277403551 (mod 1010)輪 403551 + 1277 認(rèn)證符 404828 (mod 1010)將第二組消息x2=528358586900分別與P1和 Q1相加,其結(jié)果又分別以P1和Q1的第一位控制循環(huán)移位后進(jìn)行相加得到P2和Q2,依此類推。直至進(jìn)行十輪后得P10和Q10。計(jì)算P10+Q10 (mod 1010),并將結(jié)果的后6位數(shù)與前4

9、位數(shù)在(mod 1010)下相加,得6位認(rèn)證符!(mod 1010)下相加,得6位認(rèn)證符!(二)采用DES的認(rèn)證算法: 有二種基于DES的認(rèn)證算法,一種按CFB模式,一種按CBC模式運(yùn)行。在CBC模式下,消息按64bit分組,不足時以0補(bǔ)齊,送入DES系統(tǒng)加密,但不輸出密文,只取加密結(jié)果最左邊的r位作為認(rèn)證符。 r取大小可由通信雙方約定。美國聯(lián)邦電信建議采用24bit見FTSC-1026,而美國金融系統(tǒng)采用32bit ABA,1986若對相當(dāng)長的文件通過簽名認(rèn)證怎么辦?如一個合法文件有數(shù)兆字節(jié)長。自然按160比特分劃成一塊一塊,用相同的密鑰獨(dú)立地簽每一個塊。然而,這樣太慢。 解決的辦法:引入可

10、公開的密碼散列函數(shù)(Hash function)。它將取任意長度的消息做自變量,結(jié)果產(chǎn)生規(guī)定長度的消息摘要。如,使用數(shù)字簽名標(biāo)準(zhǔn)DSS,消息摘要為160比特,然后簽名消息摘要。對數(shù)字簽名來說,散列函數(shù)h是這樣使用的: 消息: x 任意長 消息摘要: Z=h(x) 160bits 簽名: y=sigk(Z) 320 bits (簽名一個消息摘要) 驗(yàn)證簽名:(x,y),其中y= sigk(h(x),使用公開的散列函數(shù)h,重構(gòu)作Z'=h(x)。然后檢驗(yàn)Verk(Z,y),來看Z?=Z'。(2)散列函數(shù)Hash FunctionH(M): 輸入為任意長度的消息M; 輸出為一個固定長度

11、的散列值,稱為消息摘要Message Digest)。這個散列值是消息M的所有位的函數(shù)并提供錯誤檢測能力:消息中的任何一位或多位的變化都將導(dǎo)致該散列值的變化。又稱為:哈希函數(shù)、數(shù)字指紋(Digital finger print)、壓縮(Compression)函數(shù)、緊縮(Contraction )函數(shù)、數(shù)據(jù)鑒別碼DAC(Data authentication code)、篡改檢驗(yàn)碼MDC(Manipulation detection code)MD5算法MD5簡介Merkle于1989年提出hash function模型Ron Rivest于1990年提出MD41992年, MD5 (RFC

12、1321) developed by Ron Rivest at MITMD5把數(shù)據(jù)分成512-bit塊MD5的hash值是128-bit在最近數(shù)年之前,MD5是最主要的hash算法現(xiàn)行美國標(biāo)準(zhǔn)SHA-1以MD5的前身MD4為基礎(chǔ)MD5: paddingStep 1: Padding M è M1|M1| º 448 mod 512|M1| > |M| Æ如果|M| º 448 mod 512,則|M1| = |M|+512Padding內(nèi)容: 1000Step 2: Append 64-bit length M1 è M2若|M| &g

13、t; 264,則僅取低64位低字節(jié)在前 (little-endian)|M2|為512的倍數(shù): Y0,Y1,YL-1MD5: 示意圖MD5: compressionStep 3: Initialize MD buffer (little-endian)A = 01 23 45 67 (0x67452301)B = 89 AB CD EF (0xEFCDAB89)C = FE DC BA 98 (0x98BADCFE)D = 76 54 32 10 (0x10325476)Step 4: CompressionCV0=IVCVi+1=HMD5(CVi,Yi)Step 5: OutputMD =

14、CVLMD5 Step 4: 示意圖MD5 Step 4: overviewStep 4: CV0=IV, CVi=HMD5(CVi-1,Yi)(A0,B0,C0,D0)¬(A,B,C,D)RoundOne(A,B,C,D,T116,X015)RoundTwo(A,B,C,D,T1732,X015)RoundThree(A,B,C,D,T3348,X015)RoundFour(A,B,C,D,T4964,X015)(A,B,C,D)¬(A+A0,B+B0,C+C0,D+D0)512-bit塊(X為32-bit表示)在四個Round使用每個Round包含16次循環(huán),每次處理一

15、個32-bitTj= sin(j)*232的整數(shù)部分, 1 £ j £ 64MD5 Compression Function每一輪包含對緩沖區(qū)ABCD的16步操作所組成的一個序列。a¬b + ( a + g(b,c,d) + Xk +Ti)<<<s)其中,a,b,c,d = 緩沖區(qū)的四個字,以一個給定的次序排列;g = 基本邏輯函數(shù)F,G,H,I之一;<<<s = 對32位字循環(huán)左移s位Xk = Mq´16 + k = 在第q個512位數(shù)據(jù)塊中的第k個32位字Ti = 表T中的第i個32位字;+ = 模 232的加;M

16、D5 Step 4: RoundOneFor(k = 0; k < 16; +k) A¬B + (A+g1(B,C,D)+Xr1(k)+T16´0+k+1) <<< s1k mod 4)(A,B,C,D) ¬ (A,B,C,D) >>>32g1(B,C,D) = (B & C) | (B & D)r1(k) = k, 0 £ k < 16s103 = 7,12,17,22MD5 Step 4: RoundTwoFor(k = 0; k < 16; +k) A¬B + (A+g

17、2(B,C,D)+Xr2(k)+T16´1+k+1) <<< s2k mod 4)(A,B,C,D) ¬(A,B,C,D) >>>32g2(B,C,D) = (B & D) | (C & D)r2(k) = (1+5k) mod 16,0 £ k < 16s203 = 5,9,14,20MD5 Step 4: RoundThreeFor(k = 0; k < 16; +k) A¬B + (A+g3(B,C,D)+Xr3(k)+T16´2+k+1) <<< s3k

18、mod 4)(A,B,C,D) ¬ (A,B,C,D) >>>32g3(B,C,D) = B Å C Å Dr3(k) = (5+3k) mod 16,0 £ k < 16s303 = 4,11,16,23MD5 Step 4: RoundFourFor(k = 0; k < 16; +k) A¬B + (A+g4(B,C,D)+Xr4(k)+T16´3+k+1) <<< s4k mod 4)(A,B,C,D) ¬ (A,B,C,D) >>>32g4(B,C,

19、D) = C Å (B | D)r4(k) = 7k mod 16, 0 £ k < 16s403 = 6,10,15,21 CV0 = IV CVq+1 = SUM32(CVq,RFIYq,RFHYq,RFGYq,RFFYq,CVq) MD = CVL 其中:IV = ABCD的初始值(見步驟3) Yq = 消息的第q個512位數(shù)據(jù)塊 L = 消息中數(shù)據(jù)塊數(shù); CVq = 鏈接變量,用于第q個數(shù)據(jù)塊的處理 RFx = 使用基本邏輯函數(shù)x的一輪功能函數(shù)。 MD = 最終消息摘要結(jié)果 SUM32=分別按32位字計(jì)算的模232加法結(jié)果。MD5: 總結(jié)MD5使用小數(shù)在前生日

20、攻擊+64位可計(jì)算 Æ 128位hash值太短Dobbertin在1996年找到了兩個不同的512-bit塊,它們在MD5計(jì)算下產(chǎn)生相同的hash至今還沒有真正找到兩個不同的消息,它們的MD5的hash相等MD5不是足夠安全的SHA-1: padding與MD5相同Step 1: Padding M è M1|M1| º 448 mod 512|M1| > |M| Æ如果|M| º 448 mod 512,則|M1| = |M|+512Padding內(nèi)容: 1000Step 2: Append 64-bit length M1 è

21、; M2|M| < 264高字節(jié)在前 (big-endian)|M2|為512的倍數(shù): Y0,Y1,YL-1SHA-1: compressStep 3: Initialize MD buffer (big-endian)A = 67 45 23 01 (0x67452301)B = EF CD AB 89 (0xEFCDAB89)C = 98 BA DC FE (0x98BADCFE)D = 10 32 54 76 (0x10325476)E = C3 D2 E1 F0 (0xC3D2E1F0)Step 4: CompressionCV0=IVCVi=HSHA-1(CVi-1,Yi)St

22、ep 5: OutputMD = CVLSHA-1 step 4: overviewStep 4: CV0=IV, CVi=HSHA-1(CVi-1,Yi) (A0,B0,C0,D0,E0)¬(A,B,C,D,E), t ¬ 0 Round(A,B,C,D,E,Kt,Wt) 0 £ t < 80 (A,B,C,D,E)¬(A+A0,B+B0,C+C0,D+D0,E+E0)整個Round包含80次循環(huán),每次處理一個32-bitWt = Yit0 £ t < 16 Wt =(Wt-16ÅWt-14ÅWt-8Å

23、;Wt-3)<<<116 £ t < 80每組(16個)Wt可由前一組Wt直接計(jì)算SHA-1: compression functionFour rounds:0 £ t < 80E ¬ E+f(t,B,C,D)+(A<<<5)+Wt+KtB ¬ B<<<30(A,B,C,D,E)¬(A,B,C,D,E)>>>32f(t,B,C,D) = (B&C)|(B&D) 0 £ t < 20 Kt = 230 ´ sqrt(2)

24、f(t,B,C,D) = B Å C Å D20 £ t < 40 Kt = 230 ´ sqrt(3)f(t,B,C,D) = (B&C)|(B&D)|(C&D)30 £ t < 60 Kt = 230 ´ sqrt(5)f(t,B,C,D) = B Å C Å D 60 £ t < 80 Kt = 230 ´ sqrt(10)SHA-1總結(jié)SHA-1使用big-endian抵抗生日攻擊: 160位hash值沒有發(fā)現(xiàn)兩個不同的512-bit塊,它們在S

25、HA-1計(jì)算下產(chǎn)生相同的“hash”速度慢于MD5安全性優(yōu)于MD5(2)數(shù)字簽名:一般的消息認(rèn)證只能保護(hù)信息交換雙方不受第三方的攻擊,但是它不能處理通信雙方的相互抵賴。接收方可以偽造消息并稱消息來自發(fā)送方,接收方產(chǎn)生一條消息,并用和發(fā)送方共享的密鑰產(chǎn)生認(rèn)證碼,并將認(rèn)證碼附于消息之后發(fā)送方可以否認(rèn)曾發(fā)送過某消息,因?yàn)榻邮辗娇梢詡卧煜?,所以發(fā)送方可以誣賴消息是接收方偽造的 只有數(shù)字簽名才可實(shí)現(xiàn)認(rèn)證中的不可否認(rèn)性公鑰加密和散列函數(shù)相結(jié)合的數(shù)字簽名方式。(3)身份認(rèn)證技術(shù):身份認(rèn)證又叫身份識別,它是正確識別通信用戶或終端身份的重要途徑。從身份認(rèn)證過程中與系統(tǒng)的通信次數(shù)分:一次認(rèn)證、兩次認(rèn)證或多次認(rèn)證

26、。從身份認(rèn)證所應(yīng)用的系統(tǒng)來分:單機(jī)系統(tǒng)身份認(rèn)證和網(wǎng)絡(luò)系統(tǒng)身份認(rèn)證。從身份認(rèn)證的基本原理上來說:靜態(tài)身份認(rèn)證和動態(tài)身份認(rèn)證。口令認(rèn)證(1)口令加密技術(shù):用單向散列函數(shù)對口令進(jìn)行處理;再采用加密技術(shù)對該散列碼進(jìn)行加密。認(rèn)證中心數(shù)據(jù)庫中存儲口令的的散列碼口令以散列碼的密文傳輸?shù)秸J(rèn)證中心后解密生成散列碼 ,以此來核對身份 。困難在于加密密鑰的交換,涉及密鑰分發(fā)管理問題。攻擊者仍可以采用離線方式對口令密文實(shí)施字典攻擊。(2)時間戳技術(shù):在書面合同中,文件簽署的日期和簽名一樣均是十分重要的防止文件被偽造和竄改的關(guān)鍵性內(nèi)容。電子交易文件中,時間是十分重要的信息,在經(jīng)過數(shù)字簽名的交易上打上一個可信賴的時間戳,

27、從而解決一系列的實(shí)際和法律問題。 (3)生物識別認(rèn)證依據(jù)人類自身所固有的生理或行為特征進(jìn)行識別。生理特征(characteristics):人的指紋、聲音、筆跡、手型、臉型、血型、視網(wǎng)膜、虹膜、DNA,以及個人動作方面的特征;目前人們研究的個人特征主要包括:容貌、膚色、發(fā)質(zhì)、身材、姿勢、手印、指紋、腳印、唇印等。 1. 論證結(jié)果:目前網(wǎng)絡(luò)通過上述的消息認(rèn)證的算法,能夠?qū)崿F(xiàn)了密碼保護(hù)傳送的信息使其不被破譯;同時防止了對手對系統(tǒng)進(jìn)行主動攻擊,如偽造,篡改信息等。使我們認(rèn)識到認(rèn)證(authentication)則是防止主動攻擊的重要技術(shù),它對于開放的網(wǎng)絡(luò)中的各種信息系統(tǒng)的安全性有重要作用。 2. 結(jié)

28、論:雖然目前大家所用的消息認(rèn)證的算法,如:MD5、sh-1、密鑰交換等算法可以實(shí)現(xiàn)信息的加密,但是這些算法并不是絕對安全的。所以在未來,還需要我們不斷學(xué)習(xí),不斷更新這些算法,同時也要用創(chuàng)新的思維發(fā)明更加安全的新的算法,這樣才能保證我們網(wǎng)絡(luò)世界的安全。3. 參考文獻(xiàn):1 李飛 等 信息安全理論與技術(shù)出 西安電子科技大學(xué)出版社 20082 R.Rivest. The MD5 Message-Digest Algorithm,RFC1321 1992。3 Jarvinen K, Tommiska M,Skytta J.Hardware implementation analysis of the MD5 hash algorithm.System Sciences,2005.HICSS05.Proceedings of the 38th Annual Hawaii International conference on 03-06 Jan.2005:2984 Bruce Schneier. 應(yīng)用密碼學(xué).北京:機(jī)械工業(yè)出版社,2000:1881945 William S

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論