密碼原理與應用概述_第1頁
密碼原理與應用概述_第2頁
密碼原理與應用概述_第3頁
密碼原理與應用概述_第4頁
密碼原理與應用概述_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、密碼學原理與應用概述 2005.3密碼學原理與應用概述 2005.31主要內容 密碼學的基礎性概念與術語 現(xiàn)代密碼體制的構成 密碼算法的安全性 密鑰管理現(xiàn)代密碼應用于信息安全的三個發(fā)展階段 密碼學的世紀巨變 密碼學永不衰竭的發(fā)展動力 2信息安全需要技術、管理、法律等多方面提供保障。對信息安全提供的技術保障中,又分為物理的保障和邏輯的保障。密碼是對信息安全提供邏輯保障的技術。在無線電通信中,在計算機數(shù)據(jù)的傳輸、處理和存儲中,在網(wǎng)絡空間中,信息以數(shù)字形式存在。密碼以數(shù)學方法對數(shù)字化的信息進行變換,以保護信息的秘密性、真實性、完整性、不可否認性。在信息社會中,密碼技術已成為信息安全的核心技術。 前言

2、 31. 密碼學的基礎性概念與術語 1.1 密碼變換中的術語 1.2 密碼學的重要概念 41.1 密碼變換中的術語 長達四千年的歷史中,密碼一直是對信息作加密變換的工具。在密碼學中,作加密變換之前的信息稱為明文,加密之后的信息稱為密文。加密變換是依靠密碼算法和密鑰兩者相結合的密碼體制來實現(xiàn)的。在一個密碼體制中,算法是固定不變的運算規(guī)則和步驟的集合,密鑰是可變的一定長度的數(shù)字、符號序列。在一個密碼體制之下,以相同的明文作為輸入,密鑰不同則輸出的密文不同。收信方收到密文之后,用與發(fā)方約定的密碼算法和共享的密鑰,對密文作逆向的密碼變換得到明文。而對于未授權的不知密鑰或密碼算法與密鑰都不知道的第三者,

3、密文是無意義的亂碼,這正是加密變換要達到的目的。5 61.2 密碼學的重要概念 在上個世紀的兩次世界大戰(zhàn)及其后的信息技術高速發(fā)展的推動下,密碼學進入高速發(fā)展期,密碼學中具有基礎性的概念也急劇地擴展。下面五個方面的概念或區(qū)分,在密碼學中,特別是現(xiàn)代密碼學中,有重要的地位。 7 1)兩種基礎變換 所有的密碼算法皆基于兩種通用的變換:一種是代替; 一種是錯亂 。8代替(substitution):明文中每個元素(比特,字母,字符)映射到其它元素。如:明文中元素集為1,2,3,4,5,作代替變換如下:上面的表就稱為代替表(或置換)。明文12345密文524139錯亂(transposition):對明

4、文中的元素進行重新排列,即換位。如:明文為 c h i n a經(jīng)換位變換 得密文:a h n c i10 在一個密碼體制中,兩種變換可交錯地多次使用。無論代替或是錯亂,所作的變換必須是可逆的。這是對加密變換根本性的要求,違反這一條將使脫密無法進行。 11 2)兩種密鑰數(shù)量 在現(xiàn)代密碼中,按照加、脫密的密鑰是否同一,劃分為單密鑰密碼體制和雙密鑰密碼體制。 12發(fā)方與收方使用同一密鑰的密碼體制稱為單密鑰密碼體制,或對稱密鑰密碼體制,或秘密密鑰體制。發(fā)方與收方使用不同密鑰的密碼體制稱為雙密鑰密碼體制,或非對稱密碼體制,或公開密鑰密碼體制。單密鑰密碼體制是傳統(tǒng)加密變換一直采用的密碼體制,故又稱為傳統(tǒng)密

5、碼體制。雙密鑰密碼體制創(chuàng)設于上個世紀的七十年代。它的推出是密碼學的一場革命。 13 3)兩種處理長度序列密碼與分組密碼 密碼變換中,按明文輸入單位的不同分為序列密碼與分組密碼。 序列密碼對明文序列中的元素逐位進行變換,逐位輸出密文。 分組密碼對明文序列按給定的長度分塊,每個塊稱為一個分組(如64比特,128比特為一個分組),一次對一個分組作密碼變換,并輸出一個等長的密文分組。 14 4)兩種密碼功能加密與認證 加密是傳統(tǒng)密碼的主要功能,是現(xiàn)代密碼的兩大功能之一。 認證是現(xiàn)代密碼另一功能。密碼的認證是運用密碼變換的方法達到保證信息的真實性、完整性、不可否認性的目的。在數(shù)字世界中,無論身份識別、還

6、是文件簽署,皆通過邏輯手段(即密碼變換)來實現(xiàn)。 155)兩種目標密碼編碼與密碼分析 由密碼算法與密鑰管理構成的密碼體制的設計和實現(xiàn)稱為密碼編碼。在密碼戰(zhàn)中,它是防御方。 對密碼體制及經(jīng)其變換的信息實施偵察和分析以達到獲取密碼算法和密鑰,還原明文的活動稱為密碼分析。在密碼戰(zhàn)中,它是攻擊方。 密碼編碼和密碼分析是既相互對立的又是相互依存的。密碼學的發(fā)展過程就是編碼與分析互相斗爭的過程。一個密碼體制的推出,給密碼分析提出新的挑戰(zhàn);一個密碼體制的破譯,導致一個新的密碼體制的誕生。這樣的過程不斷反復,就構成了密碼的歷史。 162. 現(xiàn)代密碼體制的構成 2.1 序列密碼 2.2 分組密碼 2.3 基于離

7、散對數(shù)求解困難性的公開密鑰密碼體制 2.4 基于大整數(shù)分解難題的公開密鑰密碼體制 2.5 雜湊函數(shù)17 182.1 序列密碼 明文序列的元素可以是比特、字母(a,b,.,y,z)、字符(如7單位的ASCII碼)等。在現(xiàn)代密碼中,最具代表性的序列密碼所處理的明文元素是比特,即集合0,1中的元素。由“0”“1”組成的明文序列記為a1,a2,am,與同樣由“0”“1”組成的密鑰序列記為k1,k2,km,km+1,,進行逐位的模2加運算,得到由“0”“1”組成的密文序列c1,c2,cm。明文、密文、密鑰之間的運算如下: (c1,c2,cm)=( a1k1,a2k2,amkm) 19運算符號“”是二元域

8、的加法稱為模2加。模2加的規(guī)則為:00=001=110=111=0序列密碼中,加密中密鑰序列與明文序列的加密運算及脫密中密鑰序列與密文序列的脫密運算都是二元域上模2加運算。 20序列密碼是否能抵抗破譯取決于密鑰序列的強度,即密鑰序列發(fā)生器設計的優(yōu)劣?;诰€性反饋移存器的密鑰發(fā)生器是具有代表性的序列密碼之一。它可以由線性反饋移存器、邏輯函數(shù)和種子密鑰三部分構成。一個n級的線性反饋移存器,如采用二元域上的本原多項式,它生成的二元序列的周期為2n-1。線性反饋移存器以其級數(shù)和多項式的選擇保證密鑰序列的周期長度。邏輯函數(shù)以與、或等布爾函數(shù)運算對反饋移存器生成的序列作非線性變換,使輸出的密鑰序列達到期望

9、的復雜度。種子密鑰設置密鑰發(fā)生器的初始狀態(tài)(包括移存器狀態(tài)及邏輯函數(shù)設置),也可參與密鑰序列生產(chǎn)的全過程。 212.2 分組密碼 分組密碼以一個固定長度的明文分組為加密變換單元。加密變換采用多層迭代方式,即同一結構的變換多次地使用。加密變換在密鑰參與之下進行。一個分組密碼有三個指標:分組長度(如64,128,256)密鑰長度(如56,112,128,256)變換層數(shù)(如8,10,16,32)多層迭代變換中,各層的變換除所加的層密鑰不同之外,其他的運算皆不變。 22層變換是分組密碼的核心,通常包括三種運算: 代替:一般將一個分組等分成若干比特組成的字,作代替變換(相當于查代替表)。 線性變換:可

10、作位置換及線性組合,以求將分組輸入與輸出關系盡可能地打亂。 加層密鑰:每層變換對輸入或輸出進行一次與層密鑰對應位上的模2加,每層所加的層密鑰各不相同,各層密鑰由基本密鑰經(jīng)擴展生成。 23密鑰擴展算法是分組密碼中又一重要構成部分。各層密鑰可由密鑰的線性組合生成,也可經(jīng)一擴展算法使各層密鑰與原密鑰的關系非線性化。 2425263)密文反饋模式(CFB Cipher Feedback)每次加密明文j個比特(j小于分組長度n)。每次加密后生成的j比特密文作為分組加密算法后一拍的輸入。在此種連接方式下,分組加密算法一定意義上可看成密鑰序列發(fā)生器,每次輸出的n比特向量中取出j比特與明文按逐位模2加得到j比

11、特密文。CFB中輸入移位寄存器為n級,初始狀態(tài)由初始向量IV設定,以后每拍左移j位,并將上一拍密文輸入。 2728292.3 基于離散對數(shù)求解困難性的公開密鑰密碼體制 離散對數(shù)難題是多個公開密鑰密碼算法的基礎,如Diffie-Hellman的密鑰交換算法和DSA數(shù)字簽名算法。30設p是一個素數(shù),對于任意一個小于p的正整數(shù),以a為底,可在模p運算下求出底a任意次冪的ai(i=1,2,3,)。如p=11,a=7在模p運算下,已知p和a,對給定的y(y=ax),求x就是離散對數(shù)問題。模數(shù)為p=11,以a=7為底,可得數(shù)值y的離散對數(shù)(記為INDa,p(y))的列表求離散對數(shù)是求冪運算的逆運算。模運算

12、與一般整數(shù)相同,求冪運算與其逆運算相比,前者易于計算,而后者則難計算。在模數(shù)很大(如100位以上的大素數(shù))的運算中,求離散對數(shù)成為數(shù)學的難題。 i123456789107i(mod11)75231046981y12345678910IND7,11(y)1034627198531Diffie-Hellman的密鑰交換算法正是基于這一數(shù)學難題構建的。設p為一個大素數(shù),給定模p的一個本原元a(滿足d=p-1,是ad1(modp)的最小的d),(p,a)是公開的。A,B雙方為建立共享的密鑰,執(zhí)行如下的協(xié)議: AB:ax(modp) B A:ay(modp) A對收到的ay求(ay)x=ayx(modp

13、) B對收到的ax求(a x) y =axy (modp)A,B雙方建立了共享的密鑰 (ay)x(modp)=axy (modp)在該協(xié)議中,x是A的秘密密鑰,y是B的秘密密鑰。第三者獲得ax和ay,無論由ax求x或由ay求y都是離散對數(shù)求解的難題。而無法求得x或y,就不能獲得A,B的共享密鑰axy (modp)。 322.4 基于大整數(shù)分解難題的公開密鑰密碼體制 第一個完全意義上的公開密鑰密碼體制是由Ron Rivest,Adi Shamir和Len Adleman創(chuàng)設的RSA算法。這是一個基于大整數(shù)分解困難性的密碼算法。 33RSA算法中,公開密鑰是(e,n),秘密密鑰是(d,n),其中n

14、是兩個大素數(shù)p,q的乘積(n=pq)e與(p-1) (q-1)互素,即GCD(e,(p-1)(q-1) )=1ed1 (mod(p-1)(q-1)以RSA用于加密變換為例,用戶B選擇p,q構造出:(n,e)公布于眾;(n,d)只供自己使用。用戶A要將信息a發(fā)送給B,用B的公開密鑰(e,n)對a加密:AB:c=ae(modn)B收到ae,用秘密密鑰(d,n)脫密,作運算cd=(ae)d) a (modn)得到明文。任何第三者要想在知道公開的(n,e)基礎上,對ae作逆運算(ae)d(modn),就要分解n為p和q,進而得到d=e-1(mod(p-1)(q-1)。當p,q為大素數(shù)(如1024,20

15、48,4096比特的素數(shù)),n的分解是計算難題。 34下面以兩個小素數(shù)為例,直觀地說明RSA算法: 選p=7,q=17 得n=pq=119 計算(p-1)(q-1)=96 選擇一個與96互素的且小于96的數(shù)e=5 求d,滿足de=1(mod96),得d=77(因為775=385=496+1)該例中,用戶B將公開密鑰(5,119)對外公布,將(77,119)作為秘密密鑰加以保護。 35A要將明文數(shù)據(jù)19加密發(fā)送給B,作運算: 195=2476099對195作模119 運算 2476099=20807119+66得19566(mod119)A將密文66發(fā)送給B。B收到密文66,作脫密運算: 667

16、719(mod119)6677是一個141位的大數(shù)。它被119除得到余數(shù)為19。 36RSA算法用于數(shù)字簽名算法時,秘密密鑰擁有者B用(d,n)對數(shù)據(jù)a作簽名運算: ad=s (modn)任何人要驗證這個簽名則用B公布的公開密鑰(e,n)作驗證運算: se=a以證實B對數(shù)據(jù)a的簽名。 372.5 雜湊函數(shù) 雜湊函數(shù)是英語hash function的譯名,也有的譯為散列函數(shù)。雜湊函數(shù)的輸入可以是任意長度的數(shù)據(jù),而輸出的值其長度是固定不變的。以H表示雜湊函數(shù),M表示輸入數(shù)據(jù),h表示輸出值。 38雜湊函數(shù)H必須具有的性質包括 H可作用于任意長度的數(shù)據(jù)。 H的輸出值長度是固定的。 H(x)對任意x都是

17、易于計算的。 給定h,要找到x使H(x)=h是計算上不可行的。 給定x,要找到y(tǒng)x,滿足H(x)=H(y)是計算上不可行的。 要找到任意的對子x和y,使得H(x)=H(y)在計算上是不可行的。具有上述性質的雜湊函數(shù)得到的輸出值h是數(shù)據(jù)M的“指紋”。改動其中任意比特都可能使輸出值改變。 39雜湊函數(shù)一般采取迭代變換。將明文分成固定長度的分組,如每個分組長度為b,數(shù)據(jù)M的長度Lb,則將M分成L個分組(M1,M2,ML),最后一個分組不足b比特,可按規(guī)定填補不足部分。對于M=(M1,M2,ML)的L個分組,可用一個壓縮函數(shù)f以每層f的輸出為連接變量Ci對L個分組依次作壓縮變換,最后一層f的輸出作為函

18、數(shù)值h。其結構可圖示如下:其中C1為n比特初始向量IV;Ci(i=1,2,t+1)為n比特向量。此種結構的雜湊函數(shù)結構與分組密碼體制的CBF模式有相似之處。 bbnCi+1nbfffMiMtCiCtCt+1403. 密碼算法的安全性 3.1 密碼算法的確定性與隨機性 3.2 密碼算法的保密與公開 41 3.1 密碼算法的確定性與隨機性密碼算法是進行密碼變換的一系列規(guī)則與步驟的集合。一個密碼系統(tǒng)無論用于加密或是用于認證,系統(tǒng)中的密碼算法必是系統(tǒng)的基礎。在特別的個例中,一個密碼系統(tǒng)可以僅有密碼算法構成。一個密碼系統(tǒng)的安全性涉及多方面的因素,但僅就密碼技術因素而言,它首先取決于密碼算法的抗破譯強度。

19、 42密碼算法是確定性與隨機性的對立統(tǒng)一。數(shù)字化、符號化對象的確定性指其服從確定規(guī)則的有規(guī)律的、有秩序、可推導、可推測的特性;數(shù)字化、符號化對象的隨機性則指其不服從任何規(guī)則的無規(guī)律的、無秩序、不可推導、不可預測的特性。密碼算法的設計者以確定性的算法使得經(jīng)變換的數(shù)字化或符號化的信息盡可能地隨機化;密碼算法的破譯者則要在表面上混亂的隨機的數(shù)字或符號中發(fā)現(xiàn)其確定性的本質,并以一種逆向的確定性算法恢復信息的原貌。以確定性構造隨機性是困難的;從隨機性發(fā)現(xiàn)確定性更難。設計者與破譯者的較量,推動密碼算法的理論與技術不斷由低級到高級,由簡單到復雜的發(fā)展。 43用于加密的密碼算法的設計按照兩個方向發(fā)展。一個發(fā)展

20、方向是生產(chǎn)偽隨機數(shù)。序列密碼是這一方向的代表,它的核心就是一個偽隨機數(shù)發(fā)生器,它生產(chǎn)出的序列力求達到事實上的隨機化。以一個隨機序列和一個非隨機序列相加,它們的和序列(加密變換中它就是密文)必是隨機的。另一個發(fā)展方向是生成偽隨機置換。分組密碼是第二發(fā)展方向的代表。分組密碼基本的工作方式是ECB (Electronic Code Book),它以固定的密碼算法和任意密鑰去對應一個置換表。密碼算法相同選用的密鑰不同,它們對應的置換表就不同。分組密碼的一次變換就是以電子方式完成一次“查表”。對于分組密碼所構成的置換表,設計者力求其隨機化,使破譯者難以從密文逆求明文與密鑰,難以從實際可占有的明文分組與密

21、文分組的對應關系推導出其它的明文分組與密文分組的對應關系。 44用于認證兼可用于加密的公開密鑰密碼是高度數(shù)學化的密碼算法,它直接以數(shù)學難題作為構建密碼算法的基礎。經(jīng)過三十年的探索。IFP、DLP和ECDLP(即整數(shù)分解難題,離散對數(shù)難題和橢圓曲線離散對數(shù)難題)已分別成為RSA型算法、DH型算法、ECC型算法的基礎。以數(shù)學難題為基礎的密碼算法,其算法安全性理論上等價于它所基于建立的數(shù)學難題的難解性。公開密鑰密碼算法的一個發(fā)展方向是發(fā)現(xiàn)新的可以用以構建新密碼算法的數(shù)學難題。453.2 密碼算法的保密與公開 密碼算法保密是許多國家對軍事外交領域使用的密碼系統(tǒng)所采取的政策。由于軍事外交領域使用的密碼,

22、所保護的信息涉及國家安全,具有很高秘密性,故采用密碼算法保密的政策,以增大破譯者攻擊的難度。密碼算法的保密在增強密碼系統(tǒng)安全性上有重大的作用。一個嚴格實行密碼算法保密政策的密碼系統(tǒng),即密碼算法是破譯者不知曉的,若其密碼算法設計又是科學嚴密的,也就是說它所生產(chǎn)的亂數(shù)序列或隨機置換達到了事實上的隨機化,那么它將具有理論上的不可破譯性。它是Shannon確認的唯一的具有理論不可破的One Time Pad(一次亂數(shù)本)之外的,另外一大類具有理論不可破性的密碼系統(tǒng)。 46同一個密碼系統(tǒng)采取密碼算法保密政策與采取密碼算法公開政策相比,它們之間的差別一般不能以計算復雜度的不同來表示。一個密碼算法公開的密碼

23、系統(tǒng),至少有一種密鑰窮舉的攻擊方法,在這個意義下,它的攻擊難度可用計算復雜度表示。密碼算法保密的密碼系統(tǒng),由于其采用的密碼算法是自行設計的,不屬于已知的密碼算法的集合,對于破譯者來說也就不存在窮舉密碼算法的攻擊方法。它的破譯能否達成不能以計算是否可行來衡量。47密碼算法保密的密碼系統(tǒng)的缺點在于: 一個密碼算法保密的密碼系統(tǒng),其密碼算法未經(jīng)廣泛的專業(yè)或非專業(yè)的研究人員的分析與攻擊的檢驗,其算法可能存在未被發(fā)現(xiàn)的缺陷與漏洞,或算法的整體抗破譯強度不足而未被認識。密碼戰(zhàn)的歷史中,實行密碼算法保密的眾多軍事外交密碼被攻破的事例證明實行密碼算法保密政策的密碼并不都是安全的。 48 實行密碼算法保密不利于

24、促進密碼科學的發(fā)展?,F(xiàn)代密碼學的高速發(fā)展時期是在DES這個分組密碼作為數(shù)據(jù)加密標準公布及公開密鑰密碼算法推出之后。這些密碼算法的公開發(fā)表吸引了廣大的專業(yè)與非專業(yè)人員研究的興趣,導致密碼設計與分析領域新的發(fā)現(xiàn)與發(fā)明不斷涌現(xiàn)。一個典型的事例就是Diffle Hellman的密鑰交換算法的提出,直接引導MIT的三位研究人員扭轉研究方向從而創(chuàng)設出RSA算法。DES作為數(shù)據(jù)加密標準的公布,在促進密碼學發(fā)展方面的貢獻更是廣為人們所確認。 49 實行密碼算法保密的密碼系統(tǒng)作為商品則難于為用戶信任。一個密碼產(chǎn)品要用戶購置和使用,但其算法卻秘而不宣,難以獲得用戶對使用這個密碼產(chǎn)品確能保證安全的信任。上述采用密碼

25、算法保密政策的不足之處,反過來正是密碼算法公開政策的優(yōu)越性所在。 504. 密鑰管理 4.1 密鑰及密碼函數(shù) 4.2 密鑰的作用方式 4.3 密鑰在密碼體制中的地位4.4 密鑰管理是現(xiàn)代密碼的核心技術4.5 在密碼算法設計嚴密的前提下,密鑰的安全就是密碼體制的安全514.1 密鑰及密碼函數(shù) 密鑰是由一定長度的數(shù)字或符號序列構成的密碼參數(shù)。密碼算法與密鑰共同確定密碼變換。以函數(shù)來表示密碼的變換,一個密碼算法給定一個函數(shù)的集合。這個函數(shù)集合中元素的個數(shù)取決于密鑰的個數(shù)。如果密鑰的長度為n比特,那么這個密碼算法對應的函數(shù)集合中的元素最多可有2n個,不妨以2n表示密鑰空間的大小。以k表示密鑰,以K表示

26、密鑰空間,kK=Z2n,|K|=2n,以fk表示密碼變換的函數(shù),以F表示給定密碼算法的函數(shù)集合,顯然,|F|=2n. 524.2 密鑰及密碼函數(shù) 密鑰的作用方式是多樣的,典型的作用方式有:1)序列密碼的密鑰序列發(fā)生器中,密鑰被稱為種子密鑰決定密鑰序列發(fā)生器的初始狀態(tài)及相關的初始設置,密鑰序列發(fā)生器在給定初態(tài)之下生成密鑰序列,后者與明文序列逐位相加即為密文。在密鑰序列發(fā)生其中,種子密鑰也可逐拍地作用于密鑰序列中每個輸出元素的生成。 532)分組密碼中,每輪函數(shù)由密鑰加、代替和線性變換三種運算構成,三種運算構成的輪函數(shù)稱為XSL結構,X是密鑰加(eXclusive or),S是代替(Substit

27、ution),L是線性變換(Linear transformation)。在多輪迭代運算中輪函數(shù)中代替和線性變換不變,有變化的只有層密鑰,層密鑰是由每次會話或每份消息加密時給定的密鑰(稱為會話密鑰或消息密鑰)派生的。層密鑰的變化,使各輪的函數(shù)構成不同的密碼變換(即不同的層置換表)。3)RSA公開密鑰密碼中,用于加密時取收方的公開密鑰作為指數(shù)直接對數(shù)據(jù)作模冪運算得到密文,收方則取對應于該公開密鑰的秘密密鑰作為指數(shù)直接對密文作模冪運算恢復明文;用于數(shù)字簽名時取自己的秘密密鑰作為指數(shù)直接對數(shù)據(jù)作模冪運算得到密文,驗證方則用簽名人的公開密鑰作為指數(shù)直接對密文作模冪運算,恢復明文。這是密鑰的最直接作用方

28、式。 544.3 密鑰在密碼體制中的地位 密鑰與密碼算法的相互關系在密碼發(fā)展歷史中經(jīng)歷了一個逐步演變的過程。初期的簡單密碼無密鑰和密碼算法之分,例如密本(指以詞、詞組等不等長的元素為單位的秘密編碼)和單表代替(以字符為單位的密碼編碼);隨著周期性多表代替等密碼的出現(xiàn),密碼算法和密鑰開始其分離的過程;十九世紀Kerckhoffs提出“密碼的秘密寓于密鑰之中”的著名論斷,強調了密鑰在密碼系統(tǒng)安全性中的重要地位。由于從手工密碼時期、到機械密碼時期、再到現(xiàn)代密碼的初期,密鑰始終要通過秘密信道人力傳送,密鑰的分發(fā)沒有形成一項獨立的技術。公開密鑰密碼的創(chuàng)設,開辟了用電子方式在不安全信道上構建和傳送秘密密鑰

29、的現(xiàn)實可行的道路。與此同時,采用秘密密鑰體制的由密鑰分發(fā)中心進行密鑰分發(fā)或密鑰建立的技術也得到研發(fā)。這兩方面的進展推動密鑰管理技術成為密碼學中一項獨立的密碼技術。 554.4 密鑰管理是現(xiàn)代密碼的核心技術 在計算機通信中,由于密碼算法的相對固定性,分發(fā)給通信各方以密碼算法是易于做到的;對實施密碼算法公開政策的密碼,密碼算法的配發(fā)更無困難。真正困難的是密鑰的分發(fā)與認證。通信各方采用密碼技術進行加密和認證的前提是建立密鑰關系,使他們獲得必需的密鑰和各種相關的參數(shù)。密鑰管理包括支持密鑰建立、交換、分發(fā)、廢止與更新的各種機制與協(xié)議,其核心技術就是為使用密碼技術的各方建立相互之間的安全可信的密鑰關系。鑒

30、于技術的復雜和環(huán)節(jié)的眾多,密鑰管理技術在現(xiàn)代密碼學中已成為遠較密碼算法設計與應用更為復雜的技術。 564.5 在密碼算法設計嚴密的前提下,密鑰的安全就是密碼體制的安全 由于密碼算法能否抵御破譯攻擊是密碼體制安全的根本和基礎所在,因此對“密碼的秘密寓于密鑰之中”的論斷需作如下的修改:“在密碼算法設計嚴密的前提下,密鑰的安全就是密碼體制的安全”。 575. 現(xiàn)代密碼應用于信息安全的三個發(fā)展階段5.1 密碼技術與功能單一化階段 5.2 密碼技術與功能的多元化階段 5.3 密碼技術與功能的集成化階段 585.1 密碼技術與功能單一化階段 計算機自上個世紀四十年代誕生之后,二十多年中始終是進行大規(guī)模計算

31、的工具,其中包括進行密碼破譯的計算,它與通信技術是相互獨立的。始于上個世紀五六十年代之交的現(xiàn)代密碼時期,其第一個發(fā)展階段服務于通信的保密,稱為通信保密時代。這個階段名稱可用國外的Communication Security(簡寫為COMSEC)表述。這個階段是序列密碼的一統(tǒng)天下。序列密碼作為電子密碼的領軍密碼,它對通信保密所作的最大貢獻是實現(xiàn)在線加/脫密,即密碼與通信的一體化。所謂在線式的加脫密方式,即發(fā)方發(fā)送信息時是明文,收方接收信息看到的還是明文,只有在通信信道中是密文。在此種方式下,明文輸入加密機;加密機與通信設備連接,將加密機輸出的密文直接發(fā)送出去;收方的收信設備接收到密文直接送入脫密

32、機,脫密機輸出的就是明文。在線式的加脫密是密碼電子化、自動化的重要體現(xiàn)。 595.2 密碼技術與功能的多元化階段 上個世紀六、七十年代,計算機由單純的計算工具向兼具數(shù)據(jù)資源存儲與共享功用的方向發(fā)展,數(shù)據(jù)傳送、處理、存儲過程中的保護成為計算機安全的迫切需求。計算機數(shù)據(jù)保護的需求促使密碼向商用民用方向發(fā)展,要求密碼除提供秘密性保障之外,還要能進行數(shù)據(jù)完整性驗證、真實性認證,即著名的CIA(Confidentiality Integrity Authentieity)三性保障。這個階段是原先的通信保密和新增計算機數(shù)據(jù)保護并舉的階段,是密碼由單一的保密功能發(fā)展到兼具保密與認證雙重功能的階段,是密碼技術

33、從單一的序列密碼走向技術多元化的階段。這個階段從1976年到1990年跨度約為15年。這個階段新增加的計算機安全,國外的術語為Computer Security,簡寫為COMPUSEC。從這個階段開始,非軍事非政府部門的密碼科研高速展開。這部分研究力量在密碼技術的變革中發(fā)揮的作用之大不在軍政密碼研究部門之下。 605.3 密碼技術與功能的集成化階段 以計算機與通信融合為內容的信息技術革命在上個世紀九十年代進入高潮,計算機網(wǎng)絡和網(wǎng)絡互聯(lián)的迅速發(fā)展是其集中的表現(xiàn),社會從此步入信息化軌道。因特網(wǎng)用戶的爆炸式增長,計算機網(wǎng)絡廣泛應用于社會的各個領域,在發(fā)揮正面的促進作用同時也暴露出網(wǎng)絡世界和信息社會多

34、方面的脆弱性,促使保障信息安全的要素進一步增加,除CIA外,還擴展到可用性、不可否認性、可控性等,信息安全的深度也不斷加大。在國外提出的信息安全Information Security(簡寫為INFOSEC)的要素中分別有五性、六性的不同提法,而在信息防護Information Assurance(簡寫為IA)框架中將信息保護(Protection)、檢測(Detection)、反應(Reaction)和恢復(Restoration)納入信息安全之中,這是一個縱深的立體的多層次安全概念。 61計算機網(wǎng)絡和網(wǎng)絡互聯(lián)的信息安全需求將現(xiàn)代密碼由技術和功能的多元化階段推向集成化階段。密碼技術與功能的集

35、成化以密碼協(xié)議為紐帶將多種密碼算法和密鑰管理技術聯(lián)系起來,滿足不同的信息網(wǎng)絡的不同需求。不少密碼產(chǎn)品同樣體現(xiàn)密碼技術與功能集成化的特點。如上個世紀九十年代前期推出的一個產(chǎn)品就集成了DH算法、RSA算法、分組密碼算法和序列密碼算法,其DH算法和RSA算法用于密鑰變換及驗證,分組密碼用于密鑰的加密,而序列密碼則用于數(shù)據(jù)加密。 62密碼技術與功能的集成化對密碼設計提出了更高的要求,設計者要真正從系統(tǒng)構成的視角將密碼的多個技術要素組合起來,有效地服務于應用環(huán)境提出的安全需求。而使用密碼的用戶則從集成化中獲得易用性的極大好處。人們無須經(jīng)過專業(yè)性的訓練即可使用設計良好的密碼系統(tǒng),復雜的密鑰關系的建立和密碼

36、技術的使用僅需按鍵或按提示輸入命令即可完成。一項廣為人們使用的技術,只有當它的存在幾乎是透明的、人們幾乎可以忽視它的存在時,這項技術才是成熟的。這是密碼技術集成化的發(fā)展方向。 636. 密碼學的世紀巨變 6.1 從一張紙、一支筆到密碼、計算機、通信一體化 6.2 從經(jīng)驗與技藝到科學 6.3 從黑屋時代到全民時代 646.1 從一張紙、一支筆到密碼、計算機、通信一體化 在短短的一個世紀之中,密碼技術由手工密碼發(fā)展到機械密碼再發(fā)展到電子密碼,實現(xiàn)了由密碼的農業(yè)時代、到工業(yè)時代、再到信息時代的轉變。手工密碼是一張紙和一支筆的系統(tǒng)(Paper and Pencil System),信息時代的電子密碼則

37、是密碼、計算機、通信融合為一體的系統(tǒng)(Cryptography-Computer-Communication System),可以把密碼的技術革命表為P2到C3的革命。 65密碼的技術革命是以實現(xiàn)密碼變換所采用的工具為重要標志的。進入現(xiàn)代密碼時期以來,密碼技術革命的內容是由分立電子元器件發(fā)展到集成電路再到與計算機通信融為一體的C3技術。上個世紀五、六十年代之交誕生的第一代電子密碼,密碼機體積龐大,一部機器中有數(shù)十塊印刷電路板,每塊板由電子管、晶體管和印刷電路組成。它的誕生標志著密碼的電子時代的到來。1976年推出的分組密碼是芯片化的電子密碼,美國的DES推出的一個必要條件是密碼能在一塊芯片上實

38、現(xiàn)。芯片化的密碼為密碼的商業(yè)應用打開了市場。到了上個世紀九十年代,計算機與通信結合的網(wǎng)絡系統(tǒng)急劇發(fā)展,社會向信息化高速推進,密碼以硬件、軟件或軟硬件混合的方式嵌入計算機通信系統(tǒng),構成與計算機通信一體化的技術。 66密碼技術的多元化是現(xiàn)代密碼技術革命的重要內容。手工密碼、機械密碼及初期的電子密碼都是單一的通信加密的工具。上個世紀七十年代中后期以來,密碼技術走向高度繁榮的時期,新的密碼技術大量涌現(xiàn),形成了服務于多種信息安全需求的三大門類五大家族的密碼的百家爭鳴百花齊放的興旺局面。 67密鑰管理技術成為一門獨立的密碼技術,并與密碼算法一起構成密碼學的兩大基礎技術,這是密碼技術一次意義重大的基礎技術的

39、擴展。密鑰管理的核心是建立和維護使用密碼技術各方的安全的密鑰關系,涉及密鑰協(xié)商、交換、密鑰分發(fā)傳送,密鑰更新廢止以及身份識別、數(shù)據(jù)完整性驗證等方面的眾多環(huán)節(jié)。今天的密鑰管理技術,其復雜度已經(jīng)超過設計密碼算法的復雜度。過去的密碼系統(tǒng)以密碼算法設計的完成為設計任務完成的標志,今天的密碼系統(tǒng)設計則必須將更大的注意力放在密鑰管理機制的設計上。許多密碼協(xié)議都把一個或多個已知的密碼算法作為可選用對象,主要解決密鑰管理問題。一個密碼協(xié)議的安全性分析也往往在假設密碼算法是安全的前提下討論,因為密碼協(xié)議采用的成熟密碼算法,設計者對其是信賴的,而密鑰是否安全則是密碼協(xié)議安全性的焦點。 686.2 從經(jīng)驗與技藝到科

40、學 密碼技術由經(jīng)驗到理論、由技藝到科學的飛躍起始于半個世紀之前。上個世紀四十年代末期,信息論的奠基人C.E.Shannon發(fā)表的通信的數(shù)學原理和保密系統(tǒng)的通信理論為密碼學奠定了重要的理論基礎。他以概率理論為工具,建立了信息量、平均信息量,信息熵等概念。他衡量一個密碼的安全性的方法是,在給定的密文條件下,一個密碼系統(tǒng)的安全性以明文的不確定性來衡量,并給出了在確定的密鑰空間下,要唯一確定明文至少要占有的密文數(shù)量即唯一解距離。根據(jù)他所建立的理論,他得出的結論為:除了一次一密的亂數(shù)本具有完全保密性外,一切實用的密碼由于在密文中必留有明文的信息,因此皆是理論可破的,隨著密文的增長,明文的不確定性趨向于0

41、。雖然這些理論受創(chuàng)立時密碼技術與通信技術發(fā)展水平的限制,且撇開了實際存在的復雜情況的討論,其局限性是不可避免的。但是Shannon對密碼學的理論貢獻是重大的,正是他將密碼學由經(jīng)驗與技藝上升為一門科學。 691976年公開密鑰密碼的思想的提出及實用的公開密鑰密碼算法的創(chuàng)設是密碼學的又一次重大的學說革命。歷來的密碼系統(tǒng)中,密鑰是必須保密的,它只能通過秘密渠道分發(fā),即用人工的方法面對面地交接。公開密鑰密碼通過建立公開密鑰和秘密密鑰對子的方法,使其中一個密鑰公開,而不危及另一個密鑰的安全。公開密鑰密碼的創(chuàng)立是一項科學的發(fā)現(xiàn)和技術的發(fā)明,是密碼學學說的意義重大的革命。R.C.Merkle、W.Diffl

42、e、M.E.Hellman、R.L.Rivest、A.Shamir和L.M.Adleman以他們對公開密鑰密碼的貢獻而載入密碼學的史冊。2003年的圖靈獎授予RSA算法的三位發(fā)明人,是對他們貢獻的再一次褒獎。 70公開密鑰密碼創(chuàng)立的更為重大的貢獻是賦予密碼以認證的功能,伴隨著它的是密碼學中一門新的理論的誕生,這就是認證系統(tǒng)的信息理論。這一理論于1984年由G.J.Simmons首次提出,其論文的題目是“認證理論/編碼理論”。認證理論研究如何設計使認證系統(tǒng)欺騙者獲得成功的概率極小的認證碼,以保障認證系統(tǒng)的安全性。當前密碼學中安全性證明中認證系統(tǒng)安全性證明是其中重要內容。 71密碼的高度數(shù)學化是現(xiàn)

43、代密碼學說革命的又一個組成部分。整個現(xiàn)代密碼時期是以數(shù)學與密碼的緊密結合為特點的,公開密鑰密碼則將兩者結合推到了極致。我們說密碼是數(shù)學的,歷來如此。但應該指出密碼與數(shù)學的緊密結合卻始于Shannon信息理論應用于密碼學之后,而早于公開密鑰密碼的誕生。序列密碼是電子密碼的領軍密碼,研究人員研制之前作了充分的理論準備,進行了深入的數(shù)學原理研究,為序列密碼設計奠定了堅實的數(shù)學基礎。這在電子密碼初期公開發(fā)表的出版物上就有反映。我們比較熟悉的S.W.Golomb的著作“移位寄存器序列”發(fā)表于1967年,它反映了美國人對序列密碼的數(shù)學原理研究已達到十分深刻的程度。隨著公開密鑰密碼的創(chuàng)設,這一門類的密碼直接

44、以數(shù)學難題作為構建密碼系統(tǒng)的基礎,使密碼的破譯等價于對應的數(shù)學難題的解決。這就導致若干數(shù)學難題被直接地引入密碼學研究的領域之中。數(shù)學難題解題方法及計算方法的前進與密碼設計及密碼破譯的進展呈同步之勢。在這個領域中,密碼即數(shù)學,數(shù)學即密碼,兩者可不加區(qū)分?,F(xiàn)代密碼的各種教程和論著幾乎都要論述密碼的數(shù)學背景,介紹有關的必備的數(shù)學基礎知識,足以說明密碼學與數(shù)學的高度融合。 726.3 從黑屋時代到全民時代 密碼在應用領域的革命可以用由黑屋時代走向全民時代來描述。密碼歷來是用于軍事、外交領域,限于為軍事與政府部門提供服務。美國人亞德里寫了一本書“黑屋”,極為形象而生動地刻劃了二十世紀二、三十年代密碼使用

45、與破譯所處的極為封閉而秘密的環(huán)境。這種密碼與民眾基本(不是完全)隔絕的狀態(tài)一直維持到上個世紀的六十年代。1967年D.Kahn發(fā)表了著名的著作“密碼破譯者”(The Codebreakers),全景式地介紹了密碼學的發(fā)展史,從而引起許多讀者的興趣,并促使一些人投入密碼研究事業(yè)。更為重要的是,這個時期計算機技術的發(fā)展及其應用范圍的擴大,產(chǎn)生了對密碼的商業(yè)應用和民間應用的需求。分組密碼和公開密鑰密碼正是在密碼技術商業(yè)應用和民間應用需求的牽引之下于1976、1977年誕生的。從密碼技術的應用范圍的擴張而言,分組密碼和公開密鑰密碼為密碼廣泛的商用化和民用化提供了可能,密碼的“黑屋”時代終于結束。上個世

46、紀九十年代信息技術的急劇發(fā)展導致社會信息化進程的加速,密碼史開始進入了密碼軍用與民用并進的全社會應用時代,這個時代可表述為密碼的“全民時代”。 73密碼應用革命的另一內容是,密碼應用的方向從保護信息的秘密性擴展到信息的認證。與在真實的世界中一樣,在數(shù)字化的信息社會中,人們的交往以相互信任關系的建立為基礎,包括相互身份的識別與認證、傳遞的數(shù)據(jù)、消息的完整性和真實性的確認,承諾的不可抵賴性的保證等。在虛擬世界的網(wǎng)絡環(huán)境,人們的交往中的信任關系的建立可能比保密還重要,特別在商業(yè)活動中,尤其突出信任關系的首要地位。在開放的互聯(lián)的網(wǎng)絡中,正是通過多元化的集成化的密碼技術所提供的全面的信息安全服務,才能確

47、保信息的秘密性、完整性、真實性和不可否認性。為信息安全服務的密碼技術的逐步完善并被社會承認的過程與社會信息化的進程是同步的?,F(xiàn)實的物理世界中,信任關系是一個復雜的關系。防止人與人交往中的欺騙,構建一個誠信的社會,是一個困難的艱巨的任務。在虛擬世界中,在互不相見的條件下建立人們交往中的信任關系,更加困難。它不僅要依靠技術,還要依靠道德建設和法制建設。構建虛擬世界的信任關系將是一個不斷持續(xù)的進程,從技術角度看正是密碼技術為其開辟了一條現(xiàn)實可能的道路。 74密碼由僅應用于通信環(huán)節(jié)到應用于事務處理的過程,這是密碼應用的第三個內容。傳統(tǒng)的密碼技術以實現(xiàn)通信保密為唯一的功能,故僅在通信環(huán)節(jié)發(fā)揮其作用?,F(xiàn)代

48、密碼在軍事系統(tǒng)中全面地服務于情報收集、通信、計算機處理和指揮控制,這種系統(tǒng)原為C3I,后為C4I,現(xiàn)在則為C4ISR(Control,Command,Communication,Computer,Intelligence,Surveillance,Reconnaissance,即控制、指揮、通信、計算機、情報、監(jiān)視、偵察系統(tǒng))。密碼成為軍隊自動化指揮控制系統(tǒng)必要組成部分。在商用、民用系統(tǒng)中,密碼為電子政務、電子商務、電子金融提供全程的服務。 75密碼應用革命的第四個重要內容是現(xiàn)代密碼除為信息系統(tǒng)服務之外,更配置到經(jīng)濟基礎設施和關系國計民生的航空、交通、金融、電力、能源等經(jīng)濟部門。這些基礎設施和經(jīng)濟部門的計算機網(wǎng)絡,控制和管理著整個部門的運作及與相關部門的交互,這些網(wǎng)絡的通信、數(shù)據(jù)管理、控制命令一旦發(fā)生差錯、阻塞甚至受到惡意的干擾、篡改,將會導致嚴重的后果。當我們應對信息社會的脆弱性時,這些設施和部門的網(wǎng)絡系統(tǒng)必須放在重要地位,必須得到密碼提供的信息安全服務??梢?,虛擬世界的安全與物理世界的安全是緊密相連的,社會的信息化也就是虛擬世界和物理世界的一體化。 767. 密碼學永不衰竭的發(fā)展動力 7.1 科技動

溫馨提示

  • 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

提交評論