網(wǎng)絡攻防原理與技術 第3版 教案 -第2講 密碼學基礎知識_第1頁
網(wǎng)絡攻防原理與技術 第3版 教案 -第2講 密碼學基礎知識_第2頁
網(wǎng)絡攻防原理與技術 第3版 教案 -第2講 密碼學基礎知識_第3頁
網(wǎng)絡攻防原理與技術 第3版 教案 -第2講 密碼學基礎知識_第4頁
網(wǎng)絡攻防原理與技術 第3版 教案 -第2講 密碼學基礎知識_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

內容備注《網(wǎng)絡攻防原理與技術》課程教案講課題目:第二講密碼學基礎知識目的要求:了解密碼學的基本概念;掌握典型對稱密碼算法的工作原理;掌握典型公開密碼算法的工作原理;掌握安全散列函數(shù)以及密鑰管理的基本原理。重點難點:典型對稱密碼算法的工作原理;典型公開密碼算法的工作原理。方法步驟:理論講授。器材保障:電腦、投影儀。主要教學內容:一、密碼學概述(一)密碼技術的相關概念密碼技術通過對信息的變換或編碼,將機密的敏感信息變換成攻擊者難以讀懂的亂碼型信息,以此達到兩個目的:使攻擊者無法從截獲的信息中得到任何有意義信息;使攻擊者無法偽造任何信息。密碼技術不僅可以解決網(wǎng)絡信息的保密性,而且可用于解決信息的完整性、可用性及不可否認性,是網(wǎng)絡安全技術的核心和基石,是攻防都需了解的技術。密碼系統(tǒng)(Cryptosystem),也稱為密碼體制,用數(shù)學符號描述為:S={M,C,K,E,D}。M是明文空間,表示全體明文集合。明文是指加密前的原始信息,即需要隱藏的信息;C是密文空間,表示全體密文的集合。密文是指明文被加密后的信息,一般是毫無識別意義的字符序列;K是密鑰或密鑰空間。密鑰是指控制加密算法和解密算法得以實現(xiàn)的關鍵信息,可分為加密密鑰和解密密鑰,兩者可相同也可不同。密碼算法是指明文和密文之間的變換法則,其形式一般是計算某些量值或某個反復出現(xiàn)的數(shù)學問題的求解公式,或者相應的程序。E是加密算法,D是解密算法。解密算法是加密算法的逆運算,且其對應關系是唯一的。(二)密碼系統(tǒng)的設計要求密碼系統(tǒng)的設計要求主要包括:1.系統(tǒng)即使達不到理論上不可破譯,也應該是實際上不可破譯的(也就是說,從截獲的密文或某些已知的明文和密文對,要決定密鑰或任意明文在計算上是不可行的);2.加密算法和解密算法適用于所有密鑰空間的元素;3.系統(tǒng)便于實現(xiàn)和使用方便;4.系統(tǒng)的保密性不依賴于對加密體制或算法的保密,而依賴于密鑰(著名的Kerckhoff原則,現(xiàn)代密碼學的一個基本原則)。(三)密碼學發(fā)展簡史一般來說,密碼學的發(fā)展劃分為三個階段:第一階段為從古代到1949年。這一時期可以看作是科學密碼學的前夜時期,這階段的密碼技術可以說是一種藝術,而不是一種科學,密碼學專家常常是憑知覺和信念來進行密碼設計和分析,而不是推理和證明。第二階段為從1949年到1975年。1949年Shannon發(fā)表的“保密系統(tǒng)的信息理論”為私鑰密碼系統(tǒng)建立了理論基礎,從此密碼學成為一門科學,但密碼學直到今天仍具有藝術性,是具有藝術性的一門科學。這段時期密碼學理論的研究工作進展不大,公開的密碼學文獻很少。第三階段為從1976年至今。1976年diffie和hellman發(fā)表的文章“密碼學的新動向”一文導致了密碼學上的一場革命。他們首先證明了在發(fā)送端和接受端無密鑰傳輸?shù)谋C芡ㄓ嵤强赡艿模瑥亩_創(chuàng)了公鑰密碼學的新紀元。二、對稱密碼體制(一)基本概念對稱密碼體制(symmetriccryptosystem)的加密密鑰和解密密鑰相同,也叫單鑰密碼體制或者秘密密碼體制。對稱密碼體制對明文加密有兩種方式:序列密碼(或流密碼,StreamCipher)和分組密碼(BlockCipher)。凱撒密碼、維吉尼亞密碼等古典密碼算法具有相同的加密密鑰和解密密鑰,屬于典型的對稱密碼系統(tǒng)。各類現(xiàn)代的對稱密碼系統(tǒng)都是以古典密碼系統(tǒng)為基礎發(fā)展而來,大多以代替(Substitution)和置換(Permutation)這兩種基本運算為基礎?!按妗敝傅氖潜忍亍⒆帜?、比特組合或者字母組合等明文中的元素,被映射成完全不同的另外一個元素,“置換”指的是將明文中的元素重新排列,或者說,打亂明文中各個元素的排列順序。對稱密碼系統(tǒng)也存在一些難以解決的缺陷。最為突出的一個問題是雙方如何約定密鑰。通信中進行加密是為了確保信息的保密,采用對稱密碼系統(tǒng),此目標的達成取決于密鑰的保密。信息的發(fā)送方必須安全、穩(wěn)妥地把密鑰傳遞到信息的接收方,不能泄露其內容。通信雙方為了約定密鑰往往需要付出高昂代價。對稱密碼系統(tǒng)的另外一個問題是在加解密涉及多人時需要的密鑰量大,管理困難。如果N個用戶需要相互通信,則這些用戶兩兩之間必須共享一個密鑰,一共需要N(N-1)/2個密鑰。當用戶數(shù)量很多時,密鑰數(shù)量會出現(xiàn)爆炸性的膨脹,給密鑰的分發(fā)和保存帶來巨大困難。主要類型1.序列密碼序列密碼常常被稱為流密碼,其工作原理是將明文消息以比特為單位逐位加密。與明文對應,密鑰也是以比特為單位參與加密運算。為了保證安全,序列密碼需要使用長密鑰,密鑰還必須具有較強的靈活性,保證其能夠加密任意長度的明文。但是長密鑰的保存和管理非常困難。研究人員針對此問題,提出了密鑰序列產(chǎn)生算法,只需要輸入一個非常短的種子密鑰,通過設定的算法即可以產(chǎn)生長的密鑰序列,在加密和解密過程中使用。2.分組密碼分組密碼是將明文以固定長度劃分為多組,加密時每個明文分組在相同密鑰的控制下,通過加密運算產(chǎn)生與明文分組等長的密文分組。解密操作也是以分組為單位,每個密文分組在相同密鑰的控制下,通過解密運算恢復明文。典型算法數(shù)據(jù)加密標準(DataEncrytionStandard,DES)是美國國家標準局于1977年公布的由IBM公司研制的一種密碼系統(tǒng),它被批準作為非機要部門的數(shù)據(jù)加密標準,在民用領域應用廣泛。DES是一種公認的安全性較強的對稱密碼系統(tǒng)。自問世以來,一直是密碼研究領域的熱點,許多科學家對其進行了研究和破譯,但至今沒有公開文獻表明DES已經(jīng)被破解。DES是一種分組密碼,對二進制數(shù)據(jù)加密,明文分組的長度為64位,相應產(chǎn)生的密文分組也是64位。DES密碼系統(tǒng)使用64位密鑰,但64位中由用戶決定的只有56位。DES密鑰的產(chǎn)生通常是由用戶提供由7個英文字母組成的字符串,英文字母被逐個按ASCII碼轉化為二進制數(shù),形成總長56位的二進制字符串,字符串的每7位補充1位作為奇偶校驗,從而生成總長64位的密鑰。總體上看,加密流程可以劃分為初始置換IP、子密鑰的生成、乘積變換、逆初始置換IP-1等四個子步驟。按照DES加密算法的工作流程,輸入的64位明文分組經(jīng)過初始置換IP以后,在16個48位子密鑰的控制下進行16輪迭代,最終通過逆初始置換IP-1得到64位的密文分組。DES加密算法的核心功能是擾亂輸入,從安全性的角度看,恢復加密算法所做的擾亂操作越困難越好。此外,DES加密算法能夠表現(xiàn)出良好的雪崩效應,當輸入中的某一位發(fā)生變化時,輸出中的很多位都會出現(xiàn)變化,這使得針對DES進行密碼分析非常困難。DES的解密與加密使用的是相同算法,僅僅在子密鑰的使用次序上存在差別。如果加密的乘積變換過程中依次使用K1、K2、K3、…K16作為子密鑰,那么在解密時將64位的密文輸入初始置換IP后,乘積變換的各輪迭代中將依次使用K16、K15、K14、…K1作為子密鑰,完成迭代并將結果輸入逆初始置換IP-1后可以恢復64位的明文。DES作為一種對稱密碼系統(tǒng),系統(tǒng)的安全性主要取決于密鑰的安全性。一旦密鑰泄露,則系統(tǒng)毫無安全可言。由于S盒是DES系統(tǒng)的核心部件,而且其核心思想一直沒有公布,一些人懷疑DES的設計者可能在S盒中留有陷門,通過特定的方法可以輕易破解他人的密文,但是這種想法一直沒有被證實。DES系統(tǒng)目前最明顯的一個安全問題是采用的密鑰為56位,即密鑰空間中只有256個密鑰。以當前計算機的處理能力來看,這種短密鑰很難抵御窮舉攻擊,直接影響到算法的安全強度。目前,對于DES算法都是通過窮舉密鑰的方式破解,還沒有發(fā)現(xiàn)這種算法在設計上的破綻。在一些安全性要求不是特別高的場合,DES的應用還是比較多的。在DES的基礎上,研究人員在1985年提出了3DES算法,增加了密鑰長度。3DES算法在1999年被加入到DES系統(tǒng)中。3DES算法使用3個密鑰,并執(zhí)行3次DES運算。3DES遵循“加密—解密—加密”的工作流程。3DES的解密運算與加密運算的主體相同,只是密鑰的使用順序存在差異。在加密時如果依次使用k1、k2和k3作為密鑰,則解密時將依次使用k3、k2和k1進行解密。DES的加密算法和解密算法相同,3DES算法在加密的第二步采用DES解密算法的主要目的是確保3DES能夠支持DES,以往使用DES加密的信息也可以通過3DES解密。3DES算法的缺點是執(zhí)行速度較慢,因為無論采用3DES算法進行加密還是解密,都需要執(zhí)行3遍DES算法,因此,一個明文分組通過3DES加密需要的時間是使用DES算法加密所需時間的3倍。因為DES安全性不足,3DES效率低、小分組導致的安全性不足等問題,l997年4月美國國家標準與技術研究院公開征集高級加密標準(AdvancedEncryptionStandard,AES)算法,并成立了AES工作組。NIST指定AES必須是分組大小為128比特的分組密碼,支持密鑰長度為128、192和256比特。經(jīng)過多輪評估、測試,NIST于2000年10月2日正式宣布選中密碼算法Rijndael作為AES算法,并在2002年5月26日成為正式標準。因此,AES算法又稱為Rijndael算法。公開密碼體制(一)基本概念1976年,Diffie、Hellmann在論文“Newdirectionsincryptography”提出了雙鑰密碼體制(奠定了公鑰密碼系統(tǒng)的基礎),每個用戶都有一對密鑰:一個是公鑰(PK),可以像電話號碼一樣進行注冊公布;另一個是私鑰(SK),由用戶自己秘密保存。兩個密鑰之間存在某種算法聯(lián)系,但由一個密鑰無法或很難推導出另一個密鑰。又稱為公鑰密碼體制或非對稱密碼體制(asymmetriccryptosystem)。整個系統(tǒng)的安全性在于:從對方的公鑰PK和密文中要推出明文或私鑰SK在計算上是不可行的。公開密碼體制的主要特點是將加密和解密能力分開,可以實現(xiàn):多個用戶加密的消息只能由一個用戶解讀:保密通信;只由一個用戶加密消息而使多個用戶可以解讀:數(shù)字簽名認證。根據(jù)公鑰密碼系統(tǒng)所依據(jù)的數(shù)學難題可分為3類:大整數(shù)分解問題類,橢圓曲線類,離散對數(shù)問題類。(二)典型算法1977年美國麻省理工學院的3位教授Rivest,Shamir和Adleman研制出了一種公開密碼系統(tǒng),該密碼系統(tǒng)以三位教授姓氏的首字母命名,被稱為RSA公開密碼系統(tǒng),簡稱為RSA。1978年介紹RSA的論文《獲得數(shù)字簽名和公開鑰密碼系統(tǒng)的方法》發(fā)表。RSA是目前應用最廣泛的公開密碼系統(tǒng)。RSA基于“大數(shù)分解”這一著名數(shù)論難題。將兩個大素數(shù)相乘十分容易,但要將乘積結果分解為兩個大素數(shù)因子卻極端困難。舉例來看,將兩個素數(shù)11927和20903相乘,可以很容易地得出其結果249310081,但是要想將249310081分解因子得到相應的兩個素數(shù)卻極為困難。RSA的加密過程以指數(shù)計算為核心。需要加密的明文消息,一般首先劃分為多個消息塊,每個消息塊由二進制形式轉化為十進制數(shù)。在劃分的過程需要保證每個消息塊轉化得到的十進制數(shù)都小于公鑰中的數(shù)字n,同時,劃分得到的每個十進制數(shù)的位數(shù)通常相同,位數(shù)不足的可以采用添加0的形式補足。在加密時每個消息塊獨立加密。RSA除了用于加密外,另一個重要應用是數(shù)字簽名。考慮到效率,實際應用時,利用RSA進行數(shù)字簽名往往針對消息的散列值進行。發(fā)送方在發(fā)送消息前,首先計算消息的散列值。而后,發(fā)送方使用自己的私鑰對消息的散列值進行數(shù)字簽名。對n進行因子分解是最直接有效的一種攻擊RSA系統(tǒng)的方法。如果隨著數(shù)學研究的發(fā)展,發(fā)現(xiàn)“大數(shù)分解”問題能夠輕松解決,則RSA系統(tǒng)將不再安全。此外,RSA的破解是否與“大數(shù)分解”問題等價一直沒有能夠在理論上得到證明,因此并不能肯定破解RSA需要進行大數(shù)分解。如果能夠繞過“大數(shù)分解”這一難題對RSA系統(tǒng)進行攻擊,則RSA系統(tǒng)也非常危險。RSA的主要缺陷是:加密操作和解密操作都涉及復雜的指數(shù)運算,處理速度很慢。與典型的對稱密碼系統(tǒng)DES相比,即使在最理想的情況下,RSA也要比DES慢上100倍。因此,一般來說RSA只適用于少量數(shù)據(jù)的加密和解密。在很多實際應用中,RSA被用來交換DES等對稱密碼系統(tǒng)的密鑰,而用對稱密碼系統(tǒng)加密和解密主體信息。這些應用系統(tǒng)通過混合使用RSA系統(tǒng)和DES系統(tǒng),將兩類密碼系統(tǒng)的優(yōu)點結合在一起。Diffie-Hellman密鑰交換算法(簡稱為“DH算法”或“DH交換”)由WhitfieldDiffie和MartinHellman于1976提出,是最早的密鑰交換算法之一,它使得通信的雙方能在非安全的信道中安全的交換密鑰,用于加密后續(xù)的通信消息。該算法被廣泛應用于安全領域,如TSL和IPsec協(xié)議。Diffie-Hellman密鑰交換算法的優(yōu)點:僅當需要時才生成密鑰,減小了將密鑰存儲很長一段時間而致使遭受攻擊的機會。除對全局參數(shù)的約定外,密鑰交換不需要事先存在的基礎設施。缺點:沒有提供雙方身份的任何信息,因此易受中間人攻擊。這一缺陷可以通過數(shù)字簽名和公鑰證書來解決。容易遭受阻塞性攻擊。由于算法是計算密集性的,如果攻擊者請求大量的密鑰,被攻擊者將花費大量計算資源來求解無用的冪系數(shù)而不是在做真正的工作。散列函數(shù)(一)基本概念散列函數(shù)(hashfunction),也稱為“哈希函數(shù)”或“雜湊函數(shù)”,在應用于長度任意的數(shù)據(jù)塊時將產(chǎn)生固定長度的輸出。散列函數(shù)可以表示為:h=H(M)其中,H代表散列函數(shù),M代表任意長度的數(shù)據(jù)(可以是文件、通信消息或其他數(shù)據(jù)塊),h為散列函數(shù)的結果,稱為“散列值”或“散列碼”。當M為通信消息時,通常將h稱為“報文摘要(MessageDigest)”或“消息摘要”。對于特定的一種散列函數(shù),散列值的長度是固定的。對M的任意修改都將使M的散列值出現(xiàn)變化,通過檢查散列值即可判定M的完整性。因此散列值可以作為文件、消息或其他數(shù)據(jù)塊的具有標識性的“指紋”。采用散列函數(shù)來保證文件(或消息)的完整性,首先需要通過散列函數(shù)獲得文件(或消息)的散列值,并將該值妥善保存。在需要對文件(或消息)進行檢查的時候,重新計算文件(或消息)的散列值,如果發(fā)現(xiàn)計算得到的散列值與保存的結果不同,則可以推斷文件(或消息)被修改過。具有單向性的散列函數(shù)可以應用于用戶口令(或密碼)存儲。信息系統(tǒng)中如果口令以明文形式存儲,存在很大的安全風險。一旦攻擊者進入系統(tǒng),或者系統(tǒng)由惡意的管理員管理,用戶口令很容易泄露。而采用散列值來存儲口令,散列函數(shù)的單向性可以確保即使散列值被攻擊者獲取,攻擊者也無法簡單地通過散列值推斷出用戶口令。同時,這種方法也不會影響對用戶進行身份認證,用戶在登陸時輸入的口令通過散列函數(shù)計算,如果所得的散列值與系統(tǒng)中相應賬號的散列值相同,則允許用戶進入系統(tǒng)。(二)典型算法報文摘要(MessageDigest,MD)算法是由Rivest從20世紀80年代末所開發(fā)的系列散列算法的總稱,歷經(jīng)的版本有MD2、MD3、MD4和最新的MD5。1991年DenBoer和Bosselaers發(fā)表文章指出MD4算法的第1步和第3步存在可被攻擊的漏洞,將導致對不同內容進行散列計算卻可能得到相同的散列值。針對這一情況,Rivest于1991年對MD4進行了改進,推出了新的版本MD5(RFC1321)。MD5的輸入為512位分組,輸出是4個32位字的級聯(lián)(128位散列值)。主要過程如下:消息首先被拆成若干個512位的分組,其中最后512位分組是“消息尾+填充字節(jié)(100…0)+64位消息長度”,以確保對于不同長度的消息,該分組不相同。而4個32位寄存器字(大端模式)初始化為A=0x01234567,B=0x89abcdef,C=0xfedcba98,D=0x76543210,它們將始終參與運算并形成最終的散列結果。接著各個512位消息分組以16個32位字的形式進入算法的主循環(huán),512位消息分組的個數(shù)決定了循環(huán)的次數(shù)。主循環(huán)有4輪,當所有512位分組都運算完畢后,ABCD的級聯(lián)將被輸出為MD5散列的結果。盡管MD5比MD4要復雜,導致其計算速度較MD4要慢一些,但更安全,在抗分析和抗差分方面表現(xiàn)更好。有關MD5算法的詳細描述可參見RFC1321。MD5在推出后很長一段時間內,人們都認為它是安全的。但在2004年國際密碼學會議(Crypto’2004)上,來自中國山東大學的王小云教授做了破譯MD5、HAVAL-128、MD4和RIPEMD算法的報告,提出了密碼哈希函數(shù)的碰撞攻擊理論,即模差分比特分析法。王教授的相關研究成果提高了破解包括MD5、SHA-1在內的5個國際通用哈希函數(shù)算法的概率,給出了系列消息認證碼MD5-MAC等的子密鑰恢復攻擊和HMAC-MD5的區(qū)分攻擊。SHA(SecureHashAlgorithm)算法是使用最廣泛的Hash函數(shù),由美國國家標準與技術研究院(NIST)和美國國家安全局(NSA)設計,包括5個算法,分別是SHA-1、SHA-224、SHA-256、SHA-384和SHA-512,后四個算法有時并稱為SHA-2。SHA在許多安全協(xié)議中廣為使用,如SSL/TLS、PGP、SSH、S/MIME和IPsec等。SHA算法建立在MD4算法之上,其基本框架與MD4類似。SHA-1算法產(chǎn)生160bit的散列值,因此它有5個參與運算的32位寄存器字,消息分組和填充方式與MD5相同,主循環(huán)也同樣是4輪,但每輪進行20次操作,非線性運算、移位和加法運算也與MD5類似,但非線性函數(shù)、加法常數(shù)和循環(huán)左移操作的設計有一些區(qū)別。SHA-2與SHA-1類似,都使用了同樣的迭代結構和同樣的模算法運算與二元邏輯操作。SM3是我國政府采用的一種密碼散列函數(shù)標準,由國家密碼管理局于2010年12月17日發(fā)布,相關標準為“GM/T0004-2012《SM3密碼雜湊算法》”,其安全性及效率與SHA-256相當。密鑰管理(一)密鑰管理問題從技術上講,密鑰管理包括密鑰的產(chǎn)生、存儲、分發(fā)、組織、使用、停用、更換、銷毀等一系列問題,涉及每個密鑰的從產(chǎn)生到銷毀的整個生命周期。對稱密碼體制和公開密碼體制因采用的加密方式的不同,其密鑰管理方式也有所不同。對稱密碼體制中,由于加密密鑰等于解密密鑰,因此密鑰分發(fā)過程中,其機密性、真實性和完整性必須同時被保護。對于通信雙方A和B而言,可以選擇以下幾種方式來得到密鑰:1)A選擇一個密鑰后以物理的方式傳送給B。2)第三方選擇密鑰后以物理的方式傳送給A和B。3)如果A和B先前或者最近使用過一個密鑰,則一方可以將新密鑰用舊密鑰加密后發(fā)送給另一方。4)如果A和B到第三方C有加密連接,C可以通過該加密連接將密鑰傳送給A和B。上述方式中,第1)和第2)種方式需要人工交付一個密鑰,這在現(xiàn)代計算機網(wǎng)絡及分布式應用中是不現(xiàn)實的,因為每個設備都需要動態(tài)地提供大量的密鑰,單靠人工方式根本無法完成。種方式可用于連接加密或端到端加密,但是如果攻擊者成功地獲得一個密鑰,將會導致隨后的密鑰泄露。目前端到端加密中,被廣泛使用的是第4)種方式及其各種變種。在這種方式中,需要一個負責為用戶(主機、進程或應用)分發(fā)密鑰的密鑰分發(fā)中心(KeyDistributionCenter,KDC),并且每個用戶都需要和密鑰分發(fā)中心共享唯一的密鑰。公開密碼體制同樣存在密鑰管理問題。但是,由于它們使用的密鑰種類和性質不同,密鑰管理的要求和方法也有所不同。在公開密碼體制中,由于公鑰是可以公開的,并且由公鑰求解出私鑰在計算上不可行,因此,公鑰的機密性不需要保護,但完整性和真實性還是必須得到保護;私鑰與對稱密碼體制中的密鑰一樣,其機密性、完整性和真實性都必須得到保護。(二)數(shù)字證書數(shù)字證書常常被類比為用戶在網(wǎng)絡上的身份證?,F(xiàn)實生活中的身份證由公安局統(tǒng)一頒發(fā)。因為公安局在頒發(fā)身份證時會進行全面檢查,人們可以根據(jù)身份證上的姓名、出生日期、住址等信息來辯識身份證所有者的身份。公鑰證書主要用于確保公鑰及其與用戶綁定關系的安全,一般包含持證主體身份信息、主體的公鑰信息、CA信息以及附加信息,再加上用CA私鑰對上述信息的數(shù)字簽名。目前應用最廣泛的證書格式是國際電信聯(lián)盟(InternationalTelecommunicationUnion,ITU)制定的X.509標準中定義的格式。目前,證書文件主要有三種:X.509證書、PKCS#12證書和PKCS#7證書。其中,X.509證書是最經(jīng)常使用的證書,它僅包含公鑰信息而沒有私鑰信息,是可以公開進行發(fā)布的,所以X.509證書對象一般都不需要加密。在Windows系統(tǒng)中,X.509證書文件的后綴名經(jīng)常是DER、CER,都可以被文件系統(tǒng)自動識別。對于OpenSSL來說,證書文件的后綴通常為PEM。PKCS#12證書不同于X.509證書,它可以包含一個或多個證書,并且還可以包含證書對應的私鑰。PKCS#12的私鑰是經(jīng)過加密的,密鑰由用戶提供的口令產(chǎn)生。因此,在使用PKCS#12證書的時候一般會要求用戶輸入密鑰口令。PKCS#12證書文件在Windows系統(tǒng)中的后綴名是PFX。很多系統(tǒng),如Web瀏覽器,為了便于證書的管理,使用了“證書指紋(thumbprint)”這一概念。所謂“證書指紋”是指對證書全部編碼內容(也就是證書文件)進行散列運算得到的散列值,也就是證書的數(shù)字指紋。所使用的散列函數(shù)因系統(tǒng)而異,如IE瀏覽器、360瀏覽器默認用SHA-1計算指紋,而Google的Chrome瀏覽器默認情況下分別計算了SHA-1和SHA256指紋。利用證書指紋,系統(tǒng)方便地從證書庫中檢索到一個證書,此外指紋還可以用于檢測一個證書是否被篡改。需要注意的是,證書指紋并不是證書的一部分,它的作用也與證書中的證書簽名有所不同。(三)PKI美國早在1996年就成立了聯(lián)邦PKI指導委員會,目前聯(lián)邦政府、州政府和大型企業(yè)都建立了相應的PKI。作為一種標準的為利用公鑰加密技術實現(xiàn)保密通信而提供的一套安全基礎平臺,PKI主要由公鑰證書、證書管理機構、證書管理系統(tǒng)、保障證書服務的各種軟硬件設備以及相應的法律基礎共同組成。其中,公鑰證書是PKI中最基礎的組成部分。在PKI中,CA是所有注冊用戶所依賴的權威機構,它嚴格遵循證書策略機制所制定的PKI策略來進行證書的全生命周期的管理,包括簽發(fā)證書,管理和撤銷證書。CA是信任的起點,只有信任某個CA,才信任該CA給用戶簽發(fā)的數(shù)字證書。為確保證書的真實性和完整性,CA需要在給用戶簽發(fā)證書時加上自己的簽名。為方便用戶對證書的驗證,CA也給自己簽發(fā)證書。這樣,整個公鑰的分配都通過證書形式進行。RA(RegistrationAuthority,RA)是專門負責受理用戶申請證書的機構,它是用戶和CA之間的接口。RA負責對用戶進行資格審查,收集用戶信息并核實用戶身份的合法性,然后決定是批準還是拒絕用戶的證書申請。如果批準用戶的證書申請,則進一步向CA提出證書請求。這里的用戶指的是指將要向CA申請數(shù)字證書的客戶,可以是個人、集團公司或社會團體、某政府機構等。除了證書申請以外,RA還負責受理用戶的恢復密鑰的申請以及撤銷證書的申請等工作。證書產(chǎn)生之后,由證書發(fā)布系統(tǒng)以一定的方式存儲和發(fā)布,以便于使用。為方便證書的查詢和使用,CA采用“證書目錄”的方式集中存儲和管理證書,通過建立目錄服務器證書庫的方式為用戶提供證書服務。此外,證書目錄中還存儲了用戶的相關信息(如電話號碼、電子郵箱地址等)。由于證書本身是公開的,因此證書目錄也是非保密的。但是,如果目錄中還存儲了用戶證書之外的相關信息,則這些信息一般需要保密。PKI策略是指一個組織建立和定義的公鑰管理方面的指導方針、處理方法和原則。PKI中有兩種類型的策略:一是證書策略,用于管理證書的使用;另一個是證書實踐指南(CertificatePracticeStatement,CPS)。X.509有關證書策略的定義是:證書策略指的是一套用于說明證書的適用范圍和/或應用的安全限制條件的規(guī)則。比如,某一特定的證書策略可以聲明用于電子商務的證書的適用范圍是某一規(guī)定的價格范圍。制定證書策略的機構稱為“策略管理機構”。密碼分析(一)傳統(tǒng)密碼分析方法密碼分析學,俗稱“密碼破譯”,截收者在不知道解密密鑰和通信者所采用的加密算法的細節(jié)條件下,對密文進行分析,試圖獲取機密信息、研究分析解密規(guī)律的科學。密碼分析除了依靠數(shù)學、工程背景、語言學等知識外,還要依靠經(jīng)驗、統(tǒng)計、測試、眼力、直覺判斷能力等因素,有時還要靠運氣。根據(jù)攻擊者對明文、密文等信息的掌握情況,密碼分析可以劃分為四種類型。1)唯密文攻擊(Ciphertext-onlyattack)。攻擊者手中除了截獲的密文外,沒有其他任何輔助信息。唯密文攻擊是最常見的一種密碼分析類型,也是難度最高的一種。2)已知明文攻擊(Known-plaintextattack)。攻擊者除了掌握密文,還掌握了部分明文和密文的對應關系。3)選擇明文攻擊(Chosen-plaintextattack)。攻擊者知道加密算法,同時能夠選擇明文并得到相應明文所對應的密文,是比較常見的一種密碼分析類型。4)選擇密文攻擊(Chosen-ciphertextattack)。攻擊者知道加密算法,同時可以選擇密文并得到對應的明文。采用選擇密文攻擊這種攻擊方式,攻擊者的攻擊目標通常是加密所使用的密鑰。從密碼的分析途徑看,在密碼分析過程中可以采用窮舉攻擊法、統(tǒng)計分析法和數(shù)學分析法等三種方法。窮舉攻擊的思路是嘗試所有的可能以找出明文或者

溫馨提示

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

評論

0/150

提交評論