概述
? 密碼學是研究如何保護信息安全性的一門科學,涉及數(shù)學散劫、物理稚机、計算機、信息論获搏、編碼學赖条、通訊技術(shù)等學科,已經(jīng)在生活中得到廣泛應用。
? 密碼學組成分支分為編碼學和密碼分析學纬乍。密碼編碼學主要研究對信息進行編碼碱茁,實現(xiàn)信息的隱蔽。密碼分析學主要研究加密消息的破譯或消息的偽造仿贬。二者相互獨立早芭,又相互依存,在矛盾與斗爭中發(fā)展诅蝶,對立統(tǒng)一。
發(fā)展史
? 密碼學的發(fā)展歷史大致可劃分為三個階段:
? 階段一(古代到19世紀末):密碼技術(shù)還不是一門科學,密碼學家靠手工和機械來設(shè)計密碼。
?階段二(20世紀初到1975年):建立了私鑰密碼理論基礎(chǔ)攻冷,從此密碼學成為了一門科學虫蝶,計算機的出現(xiàn)使得基于復雜計算的密碼成為可能。
階段三(1976年到現(xiàn)在):出現(xiàn)公鑰密碼跌帐,同時私鑰密碼技術(shù)也在飛速發(fā)展,密碼學被廣泛應用到與人們息息相關(guān)的問題上。
功能與目標
機密性
僅有發(fā)送方和指定的接收方能夠理解傳輸?shù)膱笪膬?nèi)容棘钞。竊聽者可以截取到加密了的報文,但不能還原出原來的信息干毅,即不能得到報文內(nèi)容宜猜。
鑒別
發(fā)送方和接收方都應該能證實通信過程所涉及的另一方, 通信的另一方確實具有他們所聲稱的身份硝逢。即第三者不能冒充跟你通信的對方姨拥,能對對方的身份進行鑒別。
報文完整性
即使發(fā)送方和接收方可以互相鑒別對方渠鸽,但他們還需要確保其通信的內(nèi)容在傳輸過程中未被改變叫乌。
不可否認性
如果人們收到通信對方的報文后,還要證實報文確實來自所宣稱的發(fā)送方徽缚,發(fā)送方也不能在發(fā)送報文以后否認自己發(fā)送過報文憨奸。
密碼體制
? 在理解密碼體制之前,需要先了解以下專業(yè)術(shù)語:
? 明文:能直接代表原文含義的信息
? 密文:經(jīng)過加密處理之后凿试,隱藏原文含義的信息
? 加密:將明文轉(zhuǎn)換成密文的實施過程
? 解密:將密文轉(zhuǎn)換成明文的實施過程
? 密鑰:控制加密或解密過程的可變參數(shù)排宰,分為加密密鑰和解密密鑰
? 密碼體制是一個使通信雙方能進行秘密通信的協(xié)議。密碼體制由五要素組成红省,P(Plaintext明文集合)额各,C(Ciphertext密文集合),K(Key密鑰集合)吧恃,E(Encryption加密算法)虾啦,D(Decryption解密算法),且滿足如下特性:?
<script type="math/tex; mode=display" id="MathJax-Element-1"> p ∈ P </script>
<script type="math/tex; mode=display" id="MathJax-Element-2"> c ∈ C </script>
<script type="math/tex; mode=display" id="MathJax-Element-3"> k1 ∈ K, k2 ∈ K </script>
<script type="math/tex; mode=display" id="MathJax-Element-6"> E_{k1}(p) = c傲醉,D_{k2}(c) = p </script>
加密基本原理
? 無論是用手工或機械完成的古典密碼體制蝇闭,還是采用計算機軟件方式或電子電路的硬件方式完成的現(xiàn)代密碼體制,其加解密基本原理都是一致的硬毕。都是基于對明文信息的替代或置換呻引,或者是通過兩者的結(jié)合運用完成的。
? 替代(substitution cipher):有系統(tǒng)地將一組字母換成其他字母或符號;
? 例如‘help me’變成‘ifmq nf’(每個字母用下一個字母取代)吐咳。
? 置換(Transposition cipher):不改變字母逻悠,將字母順序重新排列;
? 例如‘help me’變成‘ehpl em’(兩兩調(diào)換位置)韭脊。
?密碼分析與攻擊:
? 密碼分析者通常利用以下幾種方法對密碼體制進行攻擊:
? 已知明文分析法:?
知道一部分明文和其對應的密文童谒,分析發(fā)現(xiàn)秘鑰。
? 選定明文分析法:?
設(shè)法讓對手加密自己選定的一段明文沪羔,并獲得對應的密文饥伊,在此基礎(chǔ)上分析發(fā)現(xiàn)密鑰。
? 差別比較分析法:?
設(shè)法讓對方加密一組差別細微的明文蔫饰,通過比較他們加密后的結(jié)果來分析秘鑰琅豆。
密碼安全性
? 無條件安全:?
無論破譯者的計算能力有多強,無論截獲多少密文篓吁,都無法破譯明文茫因。
? 計算上安全:
? 破譯的代價超出信息本身的價值,破譯所需的時間超出信息的有效期越除。
? 任何密碼系統(tǒng)的應用都需要在安全性和運行效率之間做出平衡节腐,密碼算法只要達到計算安全要求就具備了實用條件,并不需要實現(xiàn)理論上的絕對安全摘盆。1945年美國數(shù)學家克勞德·E·香農(nóng)在其發(fā)布的《密碼學的數(shù)學原理》中翼雀,嚴謹?shù)刈C明了一次性密碼本或者稱為“弗納姆密碼”(Vernam)具有無條件安全性。但這種絕對安全的加密方式在實際操作中需要消耗大量資源孩擂,不具備大規(guī)模使用的可行性狼渊。事實上,當前得到廣泛應用的密碼系統(tǒng)都只具有計算安全性类垦。
密碼設(shè)計原則:
? 一個好的密碼體制應該滿足以下兩個條件:
在已知明文和密鑰的情況下狈邑,根據(jù)加密算法計算密文是容易的;在已知密文和解密密鑰的情況下蚤认,計算明文是容易的米苹。
在不知道解密密鑰的情況下,無法從密文計算出明文砰琢,或者從密文計算出明文的代價超出了信息本身的價值蘸嘶。
二良瞧、 密碼體制分類
商用密碼算法概述
常見的密碼算法包括:
對稱密碼算法使用一把秘鑰
常見的對稱算法包括:ZUC,SM1,SM4,SM7,DES,TDES,AES,其中ZUC,SM4算法已經(jīng)公開,SM1和SM7仍然未公開,使用SM1和SM7只能借助于具備商密資質(zhì)的安全芯片训唱。
DES: 數(shù)據(jù)加密標準 64位秘鑰(8位奇偶校驗+56位有效秘鑰) 16輪位替換褥蚯、替代函數(shù)運算
?3DES: 48輪位替換,是DES的三倍
DES-EEE3: 三把不同的秘鑰加密
况增,迭代加密3次
DES-EDE3: 三把不同的秘鑰加密赞庶,迭代加密3次
? AES: 高級加密標準 128、192澳骤、256位數(shù)據(jù)分組歧强,分別對應10、12为肮、14輪運算 SM4: 分組大小與秘鑰長度均為128位?
非對稱算法 兩把秘鑰誊锭,公鑰加密,私鑰解密
常見的非對稱算法包括:SM2,SM9,RSA,ECC,其中SM2,SM9算法已經(jīng)公開.
?RSA: ?1024位弥锄,2048位,算法基于大素數(shù)因式分解蟆沫,速度慢(768位以下的RSA算法已被認為不安全) 當RSA被當做秘鑰交換協(xié)議時籽暇,密碼系統(tǒng)使用AES或DES生成對稱秘鑰
SM2: 256位,基于橢圓的曲線域參數(shù)饭庞,速度快
SM9: 強度相當于3072位的RSA戒悠,主要用于身份驗證?
雜湊算法 hash散列,將不定長的數(shù)據(jù)處理成定長的字符串舟山,用來檢測文件是否為原文件绸狐,處理結(jié)果不可逆
常見的密碼雜湊算法包括:SM3,SHA1,SHA256,SHA512,MD5
上述所有算法中其中的ZUC、SM1累盗、SM2寒矿、SM3、SM4若债、SM7符相、SM9是國內(nèi)認可的商密算法,其余為國際算法蠢琳。
md5: 4輪散列函數(shù)的運算啊终,生成128位哈希值
sha1: 160位,一般以40個hex值表示
sha256: 256位傲须,一般以64個hex值表示
sha512: 512位蓝牲,一般以128個hex值表示??
對稱密碼(私鑰密碼)
? 對稱密碼體制也稱單鑰或私鑰密碼體制,其加密密鑰和解密密鑰相同泰讽,或?qū)嵸|(zhì)上等同例衍, 即從一個易于推出另一個昔期。
? 優(yōu)點:保密性高,加密速度快肄渗,適合加密大量數(shù)據(jù)镇眷,易于通過硬件實現(xiàn);?
缺點:秘鑰必須通過安全可靠的途徑傳輸翎嫡,秘鑰的分發(fā)是保證安全的關(guān)鍵因素欠动;
? 常見對稱密碼算法:DES (密鑰長度=56位)、3DES( 三個不同的密鑰惑申,每個長度56位)具伍、AES(密鑰長度128/192/256可選)、IDEA(密鑰長度128位)圈驼、RC5(密鑰長度可變)人芽。
? 根據(jù)加密方式的不同,對稱密碼又可以分為分組密碼和序列密碼绩脆。
分組密碼
? 將明文分為固定長度的組萤厅,用同一秘鑰和算法對每一塊加密,輸出也是固定長度的密文靴迫,解密過程也一樣惕味。
ECB 電子密碼本模式
如果最后一組長度不夠,使用特定的數(shù)據(jù)填充玉锌,每組的加密可以并行操作
CBC 分組鏈接模式
第一組使用初始化向量IV進行異或操作名挥,后面的都使用前面的密文進行異或操作
CFB 密文反饋模式
第一組使用初始化向量IV進行異或操作,然后反饋到加密算法輸入端主守,與后面的進行異或操作
OFB 輸出反饋模式
將明文分組和加密算法的輸出進行異或操作產(chǎn)生密文分組禀倔,第一組也需要使用初始化向量IV
CTR 計數(shù)器模式
每次加密生成初始值作為計數(shù)器的值,每個分組對應一個逐次遞增的計數(shù)器参淫,對計數(shù)器進行加密生成秘鑰流救湖,然后明文分組對秘鑰流進行異或操作來產(chǎn)生密文分組
序列密碼
? 又稱為流密碼,每次加密一位或一字節(jié)的明文涎才,通過偽隨機數(shù)發(fā)生器產(chǎn)生性能優(yōu)良的偽隨機序列(密鑰流)捎谨,用該序列加密明文消息序列,得到密文序列憔维,解密過程也一樣涛救。
非對稱密碼(公鑰密碼)
? 非對稱密碼體制又稱雙鑰或公鑰密碼體制,其加密密鑰和解密密鑰不同业扒,從一個很難推出另一個检吆。其中的加密密鑰可以公開,稱為公開密鑰程储,簡稱公鑰蹭沛;解密密鑰必須保密臂寝,稱為私有密鑰,簡稱私鑰摊灭。
? 優(yōu)點:密鑰交換可通過公開信道進行咆贬,無需保密。既可用于加密也可用于簽名帚呼。?
缺點:加密速度不如對稱密碼掏缎,不適合大量數(shù)據(jù)加密,加密操作難以通過硬件實現(xiàn)煤杀。
? 非對稱密碼體制不但賦予了通信的保密性眷蜈,還提供了消息的認證性,無需實現(xiàn)交換秘鑰就可通過不安全信道安全地傳遞信息沈自,簡化了密鑰管理的工作量酌儒,適應了通信網(wǎng)的需要,為保密學技術(shù)應用于商業(yè)領(lǐng)域開辟了廣闊的前景枯途。
? 常見的非對稱密碼算法:RSA(基于大整數(shù)質(zhì)因子分解難題)忌怎、ECC(基于橢圓曲線離散對數(shù)難題)。
對非對稱密碼的誤解?
非對稱密碼比對稱密碼更安全酪夷??
任何一種算法的安全都依賴于秘鑰的長度呆躲、破譯密碼的工作量,從抗分析的角度看捶索,沒有哪一方更優(yōu)越;
? 非對稱密碼使對稱密碼成為過時技術(shù)灰瞻??
公鑰算法很慢腥例,一般用于密鑰管理和數(shù)字簽名,對稱密碼將長期存在酝润,實際工程中采用對稱密碼與非對稱密碼相結(jié)合燎竖。
算法本質(zhì)?
1、算法的本質(zhì)給數(shù)據(jù)加一個固定長度的指紋要销,這個固定長度就是256比特构回。
2、處理過程第一步:填充疏咐,使填充后的數(shù)據(jù)的長度是512的整數(shù)倍先在數(shù)據(jù)的最尾巴上加一個1纤掸;然后把原始數(shù)據(jù)的長度用64比特表示,放在最后面浑塞;再看看現(xiàn)在的數(shù)據(jù)的長度值離512的整數(shù)還差多少個借跪,差多少個就填多少個0在加的這個1和64比特的長度之間。第二步:分組把填充后的信息按照512比特一個分組進行分組酌壕,如果分成了N組掏愁,就是b(0),b(1),,,b(N-1)第三步:迭代壓縮得到最后的雜湊值(哈希值)IV(n)=CF(IV(n-1),b(n-1))如果信息分為N組歇由,那么IV(N)就是最后得到的雜湊值。宏觀上算法就是這樣一個過程果港,在這個基礎(chǔ)上再去看具體的算法就比較容易了沦泌。
三、哈希函數(shù)與數(shù)字簽名
3.1 哈希函數(shù)
? 哈希函數(shù)將任意長的消息映射為一個固定長度的散列值辛掠,也稱消息摘要谢谦。消息摘要可以作為認證符,完成消息認證公浪。?
哈希是單向函數(shù)他宛,從消息摘要來推理原消息是極為困難的。哈希函數(shù)的安全性是由發(fā)生碰撞的概率決定的欠气。如果攻擊者能輕易構(gòu)造出兩個不同的消息具有相同的消息摘要厅各,那么這樣的哈希函數(shù)是不可靠的。
? 常見的哈希函數(shù)有:MD5预柒,SHA1队塘,HMAC。
?HMAC介紹:
Hash-based message authentication code宜鸯,利用哈希算法憔古,以一個密鑰和一個消息為輸入,生成一個消息摘要作為輸出淋袖。
a specific construction for calculating a message authentication code (MAC) involving a cryptographic hash function in combination with a secret cryptographic key. As with any MAC, it may be used to simultaneously verify both the data integrity and the authenticity of a message.【主要是為了能讓人對對方身份正確性和消息有效性進行驗證鸿市,與消息摘要的最大不同,就是有簽名密鑰即碗!】
方法:
HMAC(K,m) = H((K ⊕ opad) ∥ H((K ⊕ ipad) ∥ m))
【opad重復0x36焰情,ipad重復0x5C】
通過兩次hash兩個不同的key來生成。 還沒有發(fā)現(xiàn)有任何的方法來產(chǎn)生碰撞剥懒。
步驟:
First-Hash: H(Ko XOR Ipad || (data to auth))
Second-Hash: H(Ko XOR Opad || First-Hash)
1. 字符含義
H 代表所采用的HASH算法(如SHA-256)
K 代表認證密碼
B 代表H中所處理的塊大小内舟,這個大小是處理塊大小,而不是輸出hash的大小 【SHA-1和SHA-256 B = 64初橘,SHA-384和SHA-512 B = 128 】
Ko 代表HASH算法的密文 【在密鑰K后面添加0來創(chuàng)建一個字長為B的字符串验游。(例如,如果K的字長是20字節(jié)保檐,B=64字節(jié)耕蝉,則K后會加入44個零字節(jié)0x00)
Opad 用0x5a重復B次
Ipad 用0x36重復B次
2. Ko與ipad做異或運算。
3. 將數(shù)據(jù)流text填充至第2步的結(jié)果字符串中
4. 用H作用于第3步生成的數(shù)據(jù)流夜只。
5. Ko與opad做異或運算赔硫。
6. 再將第4步的結(jié)果填充進第5步的結(jié)果中。
7. 用H作用于第6步生成的數(shù)據(jù)流盐肃,輸出最終結(jié)果
應用:
HMAC的一個典型應用是用在“挑戰(zhàn)/響應”(Challenge/Response)身份認證中
1. 客戶端向服務器發(fā)出一個驗證請求
2. 服務器接到此請求后生成一個隨機數(shù)并通過網(wǎng)絡(luò)傳輸給客戶端(此為挑戰(zhàn))
3. 客戶端將收到的隨機數(shù)提供給ePass爪膊,由ePass使用該隨機數(shù)與存儲在ePass中的密鑰進行HMAC-MD5運算并得到一個結(jié)果作為認證證據(jù)傳給服務器(此為響應)权悟。
4. 與此同時,服務器也使用**該隨機數(shù)**與存儲在服務器數(shù)據(jù)庫中的該客戶密鑰進行HMAC-MD5運算推盛,如果服務器的運算結(jié)果與客戶端傳回的響應結(jié)果相同峦阁,則認為客戶端是一個合法用戶
安全性:
HMAC算法更象是一種加密算法,它引入了密鑰耘成,其安全性已經(jīng)不完全依賴于所使用的HASH算法
1. 使用的密鑰是雙方事先約定的榔昔,第三方不可能知道。能夠得到的信息只有作為“挑戰(zhàn)”的隨機數(shù)和作為“響應”的HMAC結(jié)果瘪菌,無法根據(jù)這兩個數(shù)據(jù)推算出密鑰撒会。由于不知道密鑰,所以無法仿造出一致的響應师妙。
2. HMAC與一般的加密重要的區(qū)別在于它具有“瞬時”性诵肛,即認證只在當時有效
3.2 數(shù)字簽名
? 數(shù)字簽名是公鑰密碼的典型應用,可以提供和現(xiàn)實中親筆簽名相似的效果默穴,在技術(shù)上和法律上都有保證怔檩。是網(wǎng)絡(luò)環(huán)境中提供消息完整性,確認身份蓄诽,保證消息來源(抗抵賴性)的重要技術(shù)薛训。
? 數(shù)字簽名與驗證過程:
? 發(fā)送方用哈希函數(shù)從報文文本中生成一個128位的散列值(或報文摘要),發(fā)送方用自己的私鑰對這個散列值進行加密來形成自己的數(shù)字簽名仑氛。然后乙埃,這個數(shù)字簽名將作為報文的附件和報文一起發(fā)送給接收方。接收方收到報文后锯岖,用同樣的哈希函數(shù)從原始報文中計算出散列值(或報文摘要)介袜,接著再用發(fā)送方的公鑰來對報文附加的數(shù)字簽名進行解密得出另一個散列值,如果兩個散列值相同嚎莉,那么接收方就能確認該數(shù)字簽名是發(fā)送方的。通過數(shù)字簽名能夠?qū)崿F(xiàn)消息的完整性和不可抵賴性沛豌。?
四趋箩、密鑰管理與PKI
? 在網(wǎng)絡(luò)安全中,密鑰的地位舉足輕重
加派。如何安全可靠叫确、迅速高效地分配密鑰、管理密鑰一直是密碼學領(lǐng)域中的重要問題芍锦。
4.1 密鑰管理
4.1.1 密鑰生成
? 密鑰生成可以通過在線或離線的交互協(xié)商方式實現(xiàn)竹勉,如密碼協(xié)議等 。密鑰長度應該足夠長娄琉。一般來說次乓,密鑰長度越大吓歇,對應的密鑰空間就越大,攻擊者使用窮舉猜測密碼的難度就越大票腰。選擇密鑰時城看,應該避免選擇弱密鑰,大部分密鑰生成算法采用隨機過程或偽隨機過程生成密鑰杏慰。
4.1.2 密碼分發(fā)
? 采用對稱加密算法進行保密通信测柠,需要共享同一密鑰。通常是系統(tǒng)中的一個成員先選擇一個秘密密鑰缘滥,然后將它傳送另一個成員或別的成員轰胁。X9.17標準描述了兩種密鑰:密鑰加密密鑰和數(shù)據(jù)密鑰。密鑰加密密鑰加密其它需要分發(fā)的密鑰朝扼;而數(shù)據(jù)密鑰只對信息流進行加密赃阀。密鑰加密密鑰一般通過手工分發(fā)。為增強保密性吟税,也可以將密鑰分成許多不同的部分然后用不同的信道發(fā)送出去凹耙。
4.1.3 密鑰驗證
? 密鑰附著一些檢錯和糾錯位來傳輸,當密鑰在傳輸中發(fā)生錯誤時肠仪,能很容易地被檢查出來肖抱,并且如果需要,密鑰可被重傳异旧。接收端也可以驗證接收的密鑰是否正確意述。發(fā)送方用密鑰加密一個常量,然后把密文的前2-4字節(jié)與密鑰一起發(fā)送吮蛹。在接收端荤崇,做同樣的工作,如果接收端解密后的常數(shù)能與發(fā)端常數(shù)匹配潮针,則傳輸無錯术荤。
4.1.4 密鑰更新
? 當密鑰需要頻繁的改變時,頻繁進行新的密鑰分發(fā)的確是困難的事每篷,一種更容易的解決辦法是從舊的密鑰中產(chǎn)生新的密鑰瓣戚,有時稱為密鑰更新〗苟粒可以使用單向函數(shù)進行更新密鑰子库。如果雙方共享同一密鑰,并用同一個單向函數(shù)進行操作矗晃,就會得到相同的結(jié)果仑嗅。
4.1.5 密鑰存儲
? 密鑰可以存儲在腦子、磁條卡、智能卡中仓技。也可以把密鑰平分成兩部分鸵贬,一半存入終端一半存入ROM密鑰。還可采用類似于密鑰加密密鑰的方法對難以記憶的密鑰進行加密保存浑彰。
4.1.6 密鑰備份
? 密鑰的備份可以采用密鑰托管恭理、秘密分割、秘密共享等方式郭变。
? 密鑰托管:
? 密鑰托管要求所有用戶將自己的密鑰交給密鑰托管中心颜价,由密鑰托管中心備份保管密鑰(如鎖在某個地方的保險柜里或用主密鑰對它們進行加密保存),一旦用戶的密鑰丟失(如用戶遺忘了密鑰或用戶意外死亡)诉濒,按照一定的規(guī)章制度周伦,可從密鑰托管中心索取該用戶的密鑰。另一個備份方案是用智能卡作為臨時密鑰托管未荒。如Alice把密鑰存入智能卡专挪,當Alice不在時就把它交給Bob,Bob可以利用該卡進行Alice的工作片排,當Alice回來后寨腔,Bob交還該卡,由于密鑰存放在卡中率寡,所以Bob不知道密鑰是什么迫卢。
? 秘密分割:
? 秘密分割把秘密分割成許多碎片,每一片本身并不代表什么冶共,但把這些碎片放到一塊乾蛤,秘密就會重現(xiàn)出來。
? 秘密共享:
? 將密鑰K分成n塊捅僵,每部分叫做它的“影子”家卖,知道任意m個或更多的塊就能夠計算出密鑰K,知道任意m-1個或更少的塊都不能夠計算出密鑰K庙楚。秘密共享解決了兩個問題:一是若密鑰偶然或有意地被暴露上荡,整個系統(tǒng)就易受攻擊;二是若密鑰丟失或損壞馒闷,系統(tǒng)中的所有信息就不能用了酪捡。
4.1.7 密鑰有效期
? 加密密鑰不能無限期使用,有以下有幾個原因:密鑰使用時間越長窜司,它泄露的機會就越大沛善;如果密鑰已泄露航揉,那么密鑰使用越久塞祈,損失就越大;密鑰使用越久帅涂,人們花費精力破譯它的誘惑力就越大——甚至采用窮舉攻擊法议薪。
? 不同密鑰應有不同有效期尤蛮。數(shù)據(jù)密鑰的有效期主要依賴數(shù)據(jù)的價值和給定時間里加密數(shù)據(jù)的數(shù)量。價值與數(shù)據(jù)傳送率越大所用的密鑰更換越頻繁斯议。如密鑰加密密鑰無需頻繁更換产捞,因為它們只是偶爾地用作密鑰交換,密鑰加密密鑰要么被記憶下來哼御,要么保存在一個安全地點坯临,丟失該密鑰意味著丟失所有的文件加密密鑰。
? 公開密鑰密碼應用中的私鑰的有效期是根據(jù)應用的不同而變化的恋昼。用作數(shù)字簽名和身份識別的私鑰必須持續(xù)數(shù)年(甚至終身)看靠,用作拋擲硬幣協(xié)議的私鑰在協(xié)議完成之后就應該立即銷毀。即使期望密鑰的安全性持續(xù)終身液肌,兩年更換一次密鑰也是要考慮的挟炬。舊密鑰仍需保密,以防用戶需要驗證從前的簽名嗦哆。但是新密鑰將用作新文件簽名谤祖,以減少密碼分析者所能攻擊的簽名文件數(shù)目。
4.1.8 密鑰銷毀
? 如果密鑰必須替換老速,舊鑰就必須銷毀粥喜,密鑰必須物理地銷毀。
4.2 公鑰基礎(chǔ)設(shè)施PKI
? PKI是一個利用公鑰加密技術(shù)為密鑰和證書的管理烁峭,所設(shè)計的組件容客、功能子系統(tǒng)、操作規(guī)程等的集合约郁,它的主要任務是管理密鑰和證書缩挑,為網(wǎng)絡(luò)用戶建立安全通信信任機制。
4.2.1 數(shù)字證書
? 數(shù)字證書是一個包含用戶身份信息鬓梅、公鑰信息供置、證書認證中心(CA)數(shù)字簽名的文件。
? 作用:數(shù)字證書是各類終端實體和最終用戶在網(wǎng)上進行信息交流及商業(yè)活動的身份證明绽快,在電子交易的各個緩解芥丧,交易的各方都需要驗證對方數(shù)字證書的有效性,從而解決相互間的信任問題坊罢。
4.2.2 CA機構(gòu)
? CA全稱Certificate Authentication续担,是具備權(quán)威性的數(shù)字證書申請及簽發(fā)機構(gòu)。
? CA作為PKI的核心部分活孩,主要由注冊服務器組物遇、證書申請受理和審核機構(gòu)、認證中心服務器三者組成。
? 注冊服務器:通過 Web Server 建立的站點询兴,可為客戶提供24×7 不間斷的服務乃沙。客戶在網(wǎng)上提出證書申請和填寫相應的證書申請表诗舰。
? 證書申請受理和審核機構(gòu):負責證書的申請和審核警儒。
認證中心服務器:是數(shù)字證書生成、發(fā)放的運行實體眶根,同時提供發(fā)放證書的管理蜀铲、證書廢止列表(CRL)的生成和處理等服務。
? 通過CA可以實現(xiàn)以下功能:
? 1. 接收驗證最終用戶數(shù)字證書的申請属百;?
2. 確定是否接受最終用戶數(shù)字證書的申請和審批蝙茶;?
3. 向申請者頒發(fā)、拒絕頒發(fā)數(shù)字證書诸老;?
4. 接收隆夯、處理最終用戶數(shù)字證書的更新;?
5. 接受最終用戶數(shù)字證書的查詢别伏、撤銷蹄衷;?
6. 產(chǎn)生和發(fā)布CRL(證書廢止列表);?
7. 數(shù)字證書的歸檔厘肮;?
8. 密鑰歸檔愧口;?
9. 歷史數(shù)據(jù)歸檔;
? 由于量子計算技術(shù)取得了出人意料的快速發(fā)展耍属,大量僅能抵御經(jīng)典計算機暴力破解的密碼算法面臨被提前淘汰的困境 。
? 非對稱密碼系統(tǒng)有效解決了對稱密碼面臨的安全密鑰交換問題巩检,因而廣泛應用于公鑰基礎(chǔ)設(shè)施厚骗、數(shù)字簽名、聯(lián)合授權(quán)兢哭、公共信道密鑰交換领舰、安全電子郵件、虛擬專用網(wǎng)以及安全套接層等大量網(wǎng)絡(luò)通信活動之中迟螺。不幸的是冲秽,隨著量子計算的發(fā)展,包括RSA密碼矩父、ECC密碼以及DH密鑰交換技術(shù)等非對稱密碼算法已經(jīng)從理論上被證明徹底喪失了安全性锉桑。相對于對稱密碼系統(tǒng)還可以采取升級措施應對量子威脅,非對稱密碼系統(tǒng)必須采取全新方法進行重建 窍株。
? 量子密碼是以量子力學和密碼學為基礎(chǔ)民轴,利用量子物理學中的原理實現(xiàn)密碼體制的一種新型密碼體制郑诺,與當前大多使用的經(jīng)典密碼體制不一樣的是,量子密碼利用信息載體的物理屬性實現(xiàn)杉武。目前量子密碼用于承載信息的載體包括光子、壓縮態(tài)光信號辙售、相干態(tài)光信號等轻抱。
? 由于量子密碼體制的理論基礎(chǔ)是量子物理定理,而物理定理是物理學家經(jīng)過多年的研究與論證得出的結(jié)論旦部,有可靠的理論依據(jù)祈搜,且不論在何時都是不會改變的,因此士八,理論上容燕,依賴于這些物理定理的量子密碼也是不可攻破的,量子密碼體制是一種無條件安全的密碼體制婚度。
?