版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、11第五(d w)講 公鑰密碼體制&密鑰管理牛秋娜共九十八頁2 Warm up1.2.2共九十八頁3解密是加密的逆運算: Dk( )=Ek-1( ); 解密與加密使用同樣的密鑰,掌握(zhngw)了加密方法與密鑰的人,就能解密。這樣的密碼系統(tǒng)被稱為對稱密鑰體系(也叫單密鑰制系統(tǒng))。對稱(duchn)密鑰系統(tǒng)(symmetric cipher)溫舊引新 共九十八頁4提 綱公鑰密碼體制(tzh)概述RSA密鑰分配與管理1234共九十八頁55.1 公鑰密碼體制(tzh)概述(asymmetric cipher)參考文獻:1盧開澄:計算機密碼學(xué) 清華大學(xué)出版社(1998年7月第二版) 2章照之:現(xiàn)代(
2、xindi)密碼學(xué)基礎(chǔ) 北京郵電大學(xué)出版社 (2004年4月第1版) 共九十八頁6外語(wiy)關(guān)鍵詞 公鑰密鑰體系: asymmetric cipher 計算(j sun)復(fù)雜性:computational complexity 素數(shù)分解:factorization of prime number 離散對數(shù):Discrete Logarithms 單向陷門函數(shù):trap-door one-way function 公鑰與私鑰:Public Key and Private Key 共九十八頁7 20世紀末,電子商務(wù)與因特網(wǎng)迅速發(fā)展(fzhn),一方面極大地方便了人們對信息的交換和共享,另一方面
3、,也給安全通信提出了很多新的需求,傳統(tǒng)的單鑰制密碼系統(tǒng)對此無能為力。如何更好地解決信息安全問題,已成為刻不容緩的任務(wù)。1、對稱密碼(m m)體制面對的形勢 5.1.1 公鑰密碼體系產(chǎn)生的背景:共九十八頁82、傳統(tǒng)密碼體制已不適應(yīng)形勢(xngsh)的發(fā)展1). 功能上的缺憾 傳統(tǒng)密碼學(xué)不擅長認證功能。 2). 使用上的難題 密鑰交換是對稱密鑰體制的難題。 3). 管理上的困難 密鑰管理問題成了通信的瓶頸。共九十八頁9 在這種情況下,一種新的密碼體制出現(xiàn)了。它就是公開密鑰系統(tǒng),也稱非對稱密鑰體系(也叫雙密鑰制系統(tǒng))。從理論到實踐上逐步解決了對稱密鑰存在的問題,并從根本上提升了密碼學(xué)的理念,標志著密
4、碼學(xué)進入了嶄新(zhnxn)的發(fā)展階段。 3、非對稱密鑰體系開始(kish)出現(xiàn)共九十八頁105.1.2 公鑰密碼體系(tx)的幾種算法 一種新理論新技術(shù)的產(chǎn)生,一方面是因為實際問題的需求,另一方面,也是科學(xué)發(fā)展的必然結(jié)果。 創(chuàng)新成果的產(chǎn)生,源于對前人成果的不斷積累(jli)與改進,也離不開發(fā)明者開創(chuàng)性的思維。 我們將通過三個典型案例的介紹,向同學(xué)們展示公鑰密碼體系的產(chǎn)生過程。共九十八頁111.Merkle難題(nnt) (Puzzle): 起初人們并沒有想到去發(fā)明一個(y )公鑰密碼,只不過是為了解決在普通信道中完成密鑰交換問題而進行了一系列探索和努力。 1974年,Merkle為解決對稱單
5、鑰制密鑰體系的密鑰交換問題,提出了一個設(shè)想。 Merkle密鑰交換協(xié)議如下: 共九十八頁12xi是0999999之間一個任意的但又各不相同的隨機數(shù);Yi也是0999999之間任意但又各不相同的隨機數(shù),分別作為每條消息的密鑰。Alice秘密保存(bocn)所有yi與xi的密鑰對照表后,就把這100萬條消息分別用所宣布的yi加密,發(fā)給Bob。Eyi(這條信息是xi,它的密鑰是yi)明文 xj (1)Alice向Bob發(fā)送(f sn)100萬條消息;共九十八頁13(2) Bob收到100萬條消息,從中任選一條,然后遍歷100萬個密鑰進行嘗試(chngsh),總有一個yj可將其解密,從而得知xj的值。
6、(3) Bob以明文形式將xj發(fā)給Alice (4) Alice收到xj,即知Bob所選的是哪個yj,從而二人都有了同樣的密鑰yj。共九十八頁14Merkle安全性探討(tnto)非法竊聽(qi tn)者Eve,即使收到了全部往來的明文和密文,為了找到xj對應(yīng)的yj,他需要對約100萬條消息一一作遍歷100萬個密鑰的嘗試。若嘗試1個密鑰耗時1毫秒,嘗試100萬個密鑰耗時1000秒17分鐘,這才解譯了一條消息,100萬條消息約31年才能全部試完。而合法用戶乙最多只需要17分鐘。 此設(shè)計方案顯然不現(xiàn)實,但其思想是很先進的。他用的是公開的算法,通過普通(不安全)信道完成了密鑰交換,其保密機制是基于計
7、算復(fù)雜性,安全理念是基于破譯的時效性,其設(shè)計理念已經(jīng)進入了公鑰密碼的大門。 14共九十八頁152 雙鑰制的提出(t ch) 1976年11月,美國斯坦福大學(xué)電氣工程系研究生W.Diffie和副教授Helman在IEEE上發(fā)表了題為“密碼學(xué)新方向“的學(xué)術(shù)論文,利用離散對數(shù)復(fù)雜性實際地解決了單鑰制的密鑰交換(jiohun)問題。 共九十八頁16(1)離散對數(shù)(du sh)問題 設(shè)p一個(y )為大素數(shù),已知整數(shù)x和b ,不難求出: 例如,y=36 mod 7=729 mod 7=1;然而若已知 y 和 b,用逆運算求x卻十分困難: 為了求上例的逆運算:x=log3 1 mod 7=? 需要算出全部
8、指數(shù)數(shù)據(jù),查表求反函數(shù):x 1 2 3 4 5 6y 3 2 6 4 5 1 共九十八頁17 遍歷法雖然是萬能的方法,卻是個笨方法。設(shè)想如果p是一個六位數(shù),計算大約100萬個x與y的對照表,再快也不會少于1毫秒吧,而如果p是一個一百零六位的數(shù),按照同樣的計算速度就需要10100毫秒=3.171089年。 實際上,上面的估計還是太保守了。隨著數(shù)位(shwi)的增大,加減乘除都會變得更加繁雜,對于大數(shù)的乘方運算與求模運算,計算量已經(jīng)遠遠增大,不能再沿用計算小數(shù)的速度來估計了。共九十八頁18(2)計算(j sun)復(fù)雜性所謂復(fù)雜性指計算所必須的基本運算步驟數(shù)量,它決定了計算所必須的機時和占用的計算機
9、資源。計算復(fù)雜性理論告訴我們,隨著數(shù)位N的增大,計算量從小到大的次序是:常數(shù)(chngsh)對數(shù)函數(shù)logN 線性函數(shù)aN 二次函數(shù)N2 三次函數(shù)N3多項式函數(shù)Nd 亞指數(shù)函數(shù)2logN 指數(shù)函數(shù)2N或10N。多項式以下的運算都認為是有效算法,屬于可解問題(P類),而比多項式發(fā)散更快的算法都被認為是難解問題(NP類,NPC類)。數(shù)學(xué)上已經(jīng)證明離散對數(shù)是非正常(NP)類復(fù)雜問題,計算量隨著N的增大而趨于無窮。 共九十八頁19補充(bchng):P問題、NP問題和NPC問題1 P問題 P是一個判定問題類,這些問題可以用一個確定性算法在多項式時間內(nèi)判定或解出。如果(rgu)一個判定性問題的復(fù)雜度是該
10、問題的一個實例的規(guī)模n的多項式函數(shù),則我們說這種可以在多項式時間內(nèi)解決的判定性問題屬于P類問題。P類問題就是所有復(fù)雜度為多項式時間的問題的集合。2 NP問題(Non-deterministic Polynomial) NP是一個判定問題類,這些問題可以用一個確定算法在多項式時間內(nèi)檢查或驗證出它們的解。也可以說這些問題可以在非確定性多項式時間內(nèi)解決,它并不要求給出一個算法來求解問題本身,而只要求給出一個確定性算法在多項式時間內(nèi)驗證它的解。顯然所有P類問題都屬于類問題,但是是否等于?未解。共九十八頁20 NPC問題 NPC,NP完全(wnqun)問題,是求NP中判定問題的一個子類,是最不可能被簡化
11、為P的決定性問題的集合。每一個NPC問題都可以在多項式時間內(nèi)轉(zhuǎn)化為任何一個NP問題。補充(bchng):P問題、NP問題和NPC問題共九十八頁21用戶(yngh)I 選xi為私鑰求出 yi=bxi mod p 為公鑰用戶(yngh)J 選xj為私鑰求出 yj=bxj mod p 為公鑰發(fā)b, p, yi發(fā) yj=(bxj)xi=kij =(bxi)xj=(3)Diffie和Helman的方案: 收到y(tǒng)j后, 由 (yj )xi mod p 得到會話密鑰收到y(tǒng)i后, 由 (yi )xj mod p 得到會話密鑰共九十八頁22 盡管公布了yi,yj和p,基于離散對數(shù)的困難性,任何第三者難以求出xi
12、和xj,因此無法獲得kij。 Diffie和Helman雖然討論的仍然是單鑰制的密鑰交換問題,但他們的觀念是很超前的。他們采用的算法是公開的,他們的保密機制是基于計算復(fù)雜性,并且(bngqi)他們首次提出了雙密鑰的觀點。因此這篇論文被認為是現(xiàn)代密碼學(xué)的開篇之作。 22共九十八頁235.1.3 RSA公開密鑰體系(tx) 1978年美國麻省理工大學(xué)的 Ron.Rivest、Adi.Shamir 和 Len.Adleman 提出RSA公鑰密碼體系。它是第一個具有實用價值的公鑰密碼算法.它是應(yīng)用最廣泛的公鑰密碼算法。它的原理是根據(jù)數(shù)論的歐拉定理。它的安全性是基于大數(shù)分解(fnji)因數(shù)的復(fù)雜性。共九
13、十八頁240、介紹(jisho)-模運算模運算(yn sun):簡單的說,就是求余數(shù)。設(shè)r是a除以b的余數(shù),a與b的關(guān)系可表示為a=r(mod b),這就是模運算。例:23=11(mod12) 29 (mod 26) = 3 10 (mod 26) = 3 -1 (mod 26) = 25模運算在數(shù)論和程序設(shè)計中都有著廣泛的應(yīng)用,從奇偶數(shù)的判別到素數(shù)的判別,從模冪運算到最大公約數(shù)的求法,從孫子問題到凱撒密碼問題,無不充斥著模運算的身影。 共九十八頁250、介紹(jisho)-同余一般地,兩個(lin )整數(shù)a和b,除以一個大于1的自然數(shù)m所得的余數(shù)相同,就稱a和b對于模m同余或a和b在模m下同
14、余,記為ab(mod m) 讀作a與b(模m)同余,“”讀作“同余于”。如,1811(mod 7)可用模將全體整數(shù)分類。如用4來將整數(shù)分類,由于余數(shù)可為0、1、2、3共四種,因而可分為四類:0,4,8,12,161,5,9,13,172,6,10,14,183,7,11,15,19共九十八頁260、介紹(jisho)-模逆元在公鑰密碼體制中,往往需要求解模逆元。求模逆元,即尋找一個x,使得(sh de) a*x=1(mod n) 或 1=(a*x) mod n 其中a和n是正整數(shù),x稱為a的模n逆元。 也寫作:a-1=x mod n例:4-1mod7=? 5-1mod14=? 2-1mod14
15、=?4*2(mod 7)=123沒有逆元!求解模逆元問題很困難,有時有結(jié)果,有時沒有結(jié)果。共九十八頁270、介紹-分解(fnji)因子(ynz)分解就是對合數(shù)的分解。例:18=2*32,96=25*3,110=2*5*11較好的因子分解方法:試除法、數(shù)域篩選法、橢圓曲線法等。但對于很大的數(shù)(1024bit以上的數(shù))進行因子分解,所需計算時間在目前條件下是一個天文數(shù)字。所以,已知兩個大素數(shù)p和q,求其積很容易;反之,知道n求p和q就很困難。RSA公鑰密碼體制這樣的分解是獨一無二共九十八頁281、RSA算法(sun f)原理 設(shè)p和q為兩個大素數(shù),計算 n = pq 在小于n的 n-1個正整數(shù)中:
16、 有p-1個正整數(shù):q, 2q, 3q, , (p-1)q 含因子q; 有q-1個正整數(shù):p, 2p, 3p, , (q-1)p含因子p;除此之外的數(shù)(同余類)都與n互素,其數(shù)目為: (n-1)-(p-1)-(q-1) = n-p-q+1 = pq-p-q+1 = (p-1)(q-1);令:(n) = (p-1)(q-1) 叫做歐拉數(shù),代表小于n且與n互素的數(shù)(同余類)的個數(shù)。 注:嚴謹?shù)谋硎鰬?yīng)當(dāng)是同余類-凡除以n后余數(shù)(ysh)相同的整 數(shù)為一個同余類)。共九十八頁29 Euler(歐拉) 定理:若m與n為互素的正整數(shù), 則: m (n) 1 (mod n)若k是任意整數(shù),則 mk也與n互素
17、,于是有: m k(n) 1 (mod n) m k (n) +1 m (mod n) (對任意 0mn)只要選擇e,d, 滿足ed 1 mod (n) ,(叫做(jiozu)在模(n) 運算下d 和e互為模逆元) 即有: ed=k(n)+1, 于是上式變?yōu)椋?med =m (mod n)得到(d do)d、e、n后,p、q、 (n)都銷毀29共九十八頁30設(shè)m為明文,由:med =m mod n出發(fā)可以設(shè)計出一種加、解密方案:如果用 me mod n作為加密計算結(jié)果, 就可用(me)d = m mod n來解密;如果用 md mod n作為加密計算結(jié)果, 就可用 (m d )e =m mod
18、 n來解密。一般取 (n, e) 為公鑰,對明文m進行加密得到密文(m wn) :c=me mod nd為私鑰,解密算法是: m=cd mod n當(dāng)然也可以用私鑰加密: c=md mod n用公鑰解密: m=c e mod n 共九十八頁31例1取兩個小素數(shù)(s sh)p=11,q=3來演示RSA的加、解密過程。解:先求出:n=pq=33,(n)=(p-1)(q-1)=20; 在1 e (n)中,取e=7為公鑰(與20互素即可) 不難看到: 73 mod 20=1 d= 3(為私鑰);設(shè)明文m= (010)2 = 2,則: 密文 c = 2 7 =128 mod 33 mod 33 =29;
19、解密:m = 293 mod 33 =24389 mod 33 =2; 共九十八頁32 因為e和d是在模(n)運算下的互為倒數(shù),當(dāng)e與d被確定后,應(yīng)當(dāng)把 p、q 和(n)都銷毀,僅留下n,e和d是無法互相推導(dǎo)的。 除非能將n分解,求出p和q,而大數(shù)(d sh)的分解因數(shù)是Np類難題。因此RSA的安全得到保證。 2、RSA的安全性共九十八頁33提 綱公鑰密碼體制介紹公鑰密碼體制特點密鑰分配(fnpi)與管理123 33共九十八頁345.2.1 公鑰密碼(m m)體制的特點從形式上講:由對稱單鑰制到非對稱的雙鑰制加密和解密所用的算法和密鑰不同,而且二者不可互相推導(dǎo)(tudo)。加密過程:C = E
20、k1 M解密過程:M = Dk2 C 共九十八頁352. 從使用(shyng)上講:由隱蔽密鑰制到公開密鑰制 雙鑰制的出現(xiàn)引入了一個新觀念:一對不對稱的密鑰中,可以只私密保密一把密鑰,稱為私鑰;另一把公開,叫做公鑰,就解決了密鑰交換難題。N個用戶的系統(tǒng),雖然每個用戶需要各自建立一對公鑰與私鑰,但網(wǎng)絡(luò)管理員只須保管(不必隱藏(yncng))N把公鑰,私鑰由用戶個人保管,也解除了網(wǎng)管的負擔(dān)。 共九十八頁點擊此處添加標題(biot)文字用于保密功能用于認證功能發(fā)信人用收信人的公鑰加密,收信人用自己的私鑰解密。其他人因沒有(mi yu)密文所要求的私鑰而不能解密。發(fā)信人用自己的私鑰加密,收信人用發(fā)信人
21、的公鑰解密,只要能解譯密文,就表明這個密文是掌握私鑰的那個人發(fā)出,別人做不出這樣的密文。3. 從功能上講:由單純保密功能到保密認證雙重功能 共九十八頁37基于公開密鑰的加密(ji m)過程共九十八頁38每個用戶(yngh)擁有自己的密鑰對(KP , KS)公鑰KP公開, 私鑰KS保密;當(dāng)AB通信時,用B的公鑰KPB加密: C=EKPB(M)B收密信后,用自己私鑰KSB解密: DKSB(C)= DKSB(EKPB(M)=M用公鑰密碼實現(xiàn)(shxin)保密共九十八頁39基于(jy)公開密鑰的認證過程共九十八頁40用公鑰密碼(m m)實現(xiàn)認證A為了向別人(birn)表明所發(fā)信息是自己的,應(yīng)當(dāng)用自己私
22、鑰KSA加密信息: C=DKSA(M)凡是拿到A的公鑰KPA的人都可以解密這個信息: EKPA(C)=EKPA(DKSA(M)=M 由此表明此信息是A所簽發(fā)。共九十八頁而B進行(jnxng)雙重解密: EKPA(DKSB(Z)=M加密(ji m)如果A 只想讓B驗證所發(fā)信息,應(yīng)雙重加密:Z= EKPB(DKSA(M)解密用公鑰密碼實現(xiàn)認證和加密共九十八頁小結(jié)(xioji)公鑰密碼體制的出現(xiàn),解決了對稱密碼體制很難解決的一些問題,主要體現(xiàn)(txin)三個方面: 密鑰分發(fā)問題 密鑰管理問題 數(shù)字簽名問題 42共九十八頁435.2.2公開密鑰體制(tzh)的構(gòu)建單鑰制密碼體系中,解密使用(shyng
23、)的密鑰與加密密鑰相同;能加密的人就能解密。因而又稱為對稱密鑰制。而公鑰密碼體系中,加密與解密使用的密鑰不同,并且無法從一把密鑰推導(dǎo)出另一把密鑰;故又稱為非對稱密鑰制。共九十八頁44單鑰制密碼體系中,解密是加密的逆運算,數(shù)學(xué)上兩個算法互為反函數(shù);而公鑰密碼體系中,加密算法的反函數(shù)應(yīng)當(dāng)是不可行的??梢?kjin)構(gòu)建公鑰密碼體系,需要找到除了反函數(shù)之外的另外一種逆運算方法。這個方法的實現(xiàn)還需要使用不同于加密算法的另外一把密鑰。數(shù)學(xué)上是否存在這樣(zhyng)的算法?共九十八頁45單向(dn xin)陷門函數(shù)(one way trapdoor function )單向陷門函數(shù)是滿足下列條件的函數(shù)f
24、(x):(1) 給定x,計算y=f(x)是容易的;(加密可行)(2) 給定y, 計算x=f -1(y)是不可行的; (安全有保障)(3) 對給定的任何y,還存在另一種(y zhn)計算x 的方法 xgk(y),在已知 k 的情況下完成計算是容易的. k 就是密鑰。(合法用戶得以解密)共九十八頁46而逆運算即求 的整數(shù)解十分復(fù)雜。表明它是單向函數(shù),逆運算不可行。對于已知密鑰 d 的人,還存在另一種計算 m 的方法: m=c d (mod n)RSA的安全性在于(ziy)攻擊者用逆運算求解不可行,由公鑰e和n出發(fā)計算私鑰d 也是不可行的。(指計算 復(fù)雜到不可行的程度) RSA就是一種單向陷門函數(shù)(
25、hnsh).計算c=me (mod n)是容易的。共九十八頁47 RSA公鑰密碼(m m)體制 安全性基于大整數(shù)(zhngsh)的素分解問題的安全性;ElGamal公鑰密碼體制 安全性基于有限域上的離散對數(shù)問題的困難性;Menezes-Vanstone公鑰密碼體制 安全性基于橢圓曲線上的離散對數(shù)問題的困難性;目前大部分的公鑰密碼體制都是基于這三類問題,已經(jīng)提出的許多公鑰密碼學(xué)的標準,譬如IEEE P1363等,也大都建立在這三類問題之上。 共九十八頁485.2.3 現(xiàn)代(xindi)密碼學(xué)的新理念 1. 從基于算法的神秘性到基于算法的復(fù)雜性 傳統(tǒng)的保密觀念,寄托安全性于某種鮮為人知的奇妙算法上
26、。其安全是暫時的,僥幸的,脆弱的?,F(xiàn)代密碼學(xué)基于算法的復(fù)雜性,不靠神奇靠麻煩。其安全是牢固的,可信的,科學(xué)的。從基于算法的神秘性到基于算法的復(fù)雜性是現(xiàn)代密碼學(xué)設(shè)計理念上一次重大轉(zhuǎn)變。密文(m wn)能否被破譯的關(guān)鍵不再是從密文(m wn)中提取信息有無可能性,而是從密文(m wn)中提取信息有無可行性。共九十八頁492.算法(sun f)可公開性 由于算法失去了保密價值,算法可以公開,讓它在攻擊中不斷改進和完善,并以此顯示其安全的堅固性。 算法公開了,合法用戶與非法用戶的區(qū)別在那里(n li)呢?合法用戶擁有密鑰,解譯密文十分容易;非法用戶沒有密鑰,破譯密文談何容易;不藏算法藏密鑰是設(shè)計理念上
27、一致的觀點。 共九十八頁503 安全(nqun)的相對性 當(dāng)然,應(yīng)充分估計破譯者的計算能力和計算技術(shù)未來的發(fā)展,從這個意義講,破譯只是時間和金錢的問題。 如果破譯工作所花的代價大于秘密本身的價值,或破譯花費的時間大于秘密的有效期,則破譯失去意義,而該保密系統(tǒng)就可以認為是安全的。這才是實事求是的科學(xué)的保密觀和破譯觀。不保絕對保相對是密碼設(shè)計理念上的又一個(y )轉(zhuǎn)變。 共九十八頁比較(bjio)公鑰密碼體制與對稱密碼體制相比:優(yōu)點: 密鑰的分發(fā)相對容易; 密鑰管理簡單; 可以有效地實現(xiàn)數(shù)字簽名。 缺點: 與對稱密碼體制相比,加解密速度比較慢; 同等安全(nqun)強度下,要求的密鑰位數(shù)要多一些;
28、 密文的長度往往大于明文長度。51共九十八頁521.公開密鑰體制的新理念: (1)系統(tǒng)安全基于計算復(fù)雜性,算法可以公開。 (2)加密解密使用非對程的雙密鑰,一把可以公開。 (3)科學(xué)的可靠的系統(tǒng)設(shè)計(shj)思想。2.公鑰密碼的功能: (1)用于保密:用接收方的公鑰加密,私鑰解密。 (2)用于認證:用發(fā)送方的私鑰加密,公鑰驗證。3.RSA公鑰密碼的原理與方法: (1) 系統(tǒng)搭建:n=pq, (n)=(p-1)(q-1), de=1 mod (n) (2)加、解密方法:c=me mod n, m=cd mod n內(nèi)容(nirng)要點(小結(jié))52共九十八頁53提 綱公鑰密碼體制概述公鑰密碼體制的
29、特點密鑰分配(fnpi)與管理123 53共九十八頁545.3密鑰分配(fnpi)方案要使常規(guī)加密(ji m)有效地進行,信息交互的雙方必須共享一個密鑰,并且這個密鑰還要防止被其他人獲得。要使公開加密有效地進行,信息接收的一方必須發(fā)布其公開密鑰,同時要防止其私有密鑰被其他人獲得。密鑰還需經(jīng)常更換,以便在攻擊者知道密鑰的情況下使得泄漏的數(shù)據(jù)量最小化。對于通信的雙方A和B,密鑰的分配可以有以下的幾種方法:共九十八頁55密鑰分配(fnpi)的四種方法(1)密鑰可以由A選定(xun dn),然后通過物理的方法安全地傳遞給B。(2) 密鑰可以由可信任的第三方C選定,然后通過物理的方法安全地傳遞給A和B。
30、 (3) 如果A和B都有一個到可信任的第三方C的加密連接,那么C就可以通過加密連接將密鑰安全地傳遞給A和B。 采用的是密鑰分配中心技術(shù),可信任的第三方C就是密鑰分配中心 KDC (key distribute center) ,常常用于常規(guī)加密密鑰的分配。上述方法由于需要對密鑰進行人工傳遞,對于大量連接的現(xiàn)代通信而言,顯然不適用。共九十八頁56(4) 如果A和B都在可信任的第三方發(fā)布自己的公開密鑰,那么它們都可以用彼此的公開密鑰加密進行通信。 采用的是密鑰認證中心(zhngxn)技術(shù),可信任的第三方C就是證書授權(quán)中心 C A (certificate authority),更多用于公開加密密鑰
31、的分配。主要講(3) KDC (4) CA方式共九十八頁575.3.1常規(guī)(chnggu)加密密鑰的分配1. 集中式密鑰分配方案 由一個中心節(jié)點(ji din)或者由一組節(jié)點(ji din)組成層次結(jié)構(gòu)負責(zé)密鑰的產(chǎn)生并分配給通信的雙方,在這種方式下,用戶不需要保存大量的會話密鑰,只需要保存同中心節(jié)點(ji din)的加密密鑰,用于安全傳送由中心節(jié)點產(chǎn)生的即將用于與第三方通信的會話密鑰。這種方式缺點是通信量大,同時需要較好的鑒別功能以鑒別中心節(jié)點和通信方。 目前這方面的主流技術(shù)是密鑰分配中心KDC技術(shù)。共九十八頁58 其中的第三方通常是一個負責(zé)為用戶分配密鑰的密鑰分配中心(KDC)。這時每一用戶
32、必須和密鑰分配中心有一個共享密鑰,稱為主密鑰。(可通過第二種方法)通過主密鑰分配給一對用戶的密鑰Ks稱為會話(huhu)密鑰,用于這一對用戶之間的保密通信。通信完成后,會話密鑰即被銷毀。如上所述,如果用戶數(shù)為n,則會話密鑰數(shù)為n(n-1)/2。但主密鑰數(shù)卻只需n個,所以主密鑰可通過物理手段發(fā)送。共九十八頁59密鑰分配(fnpi)中心KDC的密鑰分配方案AKDC:IDA | IDB | N1KDC A :EKA Ks | IDA| IDB |N1|EKbKs|IDAAB: EKBKs|IDABA: EKsN2A B: EKsf(N2)共九十八頁60實際上,到第(3)步已經(jīng)完成密鑰的分配過程,通信
33、的雙方已經(jīng)共享了當(dāng)前(dngqin)的會話密鑰Ks,第(4)步和第(5)步完成的是鑒別功能。第2項N1, Nonce 現(xiàn)時,是這次業(yè)務(wù)的惟一(wiy)識別符N1,稱N1為一次性隨機數(shù),可以是時戳、計數(shù)器或隨機數(shù)每次的N1都應(yīng)不同,且為防止假冒,應(yīng)使敵手對N1難以猜測。因此用隨機數(shù)作為這個識別符最為合適。共九十八頁61問題(wnt)單個密鑰分配中心KDC無法支持大型的通信網(wǎng)絡(luò)。每兩個(lin )可能要進行安全通信的終端都必須同某個密鑰分配中心共享主密鑰。當(dāng)通信的終端數(shù)量很大時,將出現(xiàn)這樣的情況:每個終端都要同許多密鑰分配中心共享主密鑰,增加了終端的成本和人工分發(fā)密鑰分配中心和終端共享的主密鑰的成
34、本。需要幾個特別大的密鑰分配中心,每個密鑰分配中心都同幾乎所有終端共享主密鑰。然而各個單位往往希望自己來選擇或建立自己的密鑰分配中心。共九十八頁62解決辦法網(wǎng)絡(luò)中如果用戶數(shù)目非常多且分布的地域非常廣,則使用多個KDC的分層結(jié)構(gòu):在每個小范圍(如一個LAN或一個建筑物)內(nèi),都建立一個本地KDC。同一(tngy)范圍的用戶在進行保密通信時,由本地KDC為他們分配密鑰;如果兩個不同范圍的用戶想獲得共享密鑰,則可通過各自的本地KDC,而兩個本地KDC的溝通又需經(jīng)過一個全局KDC。這樣就建立了兩層KDC;根據(jù)網(wǎng)絡(luò)中用戶的數(shù)目及分布的地域,可建立3層或多層KDC.分層結(jié)構(gòu)可減少主密鑰的分布,因為大多數(shù)主密
35、鑰是在本地KDC和本地用戶之間共享。分層結(jié)構(gòu)還可將虛假KDC的危害限制到一個局部區(qū)域,但 會降低信任度。共九十八頁632. 無中心(zhngxn)的密鑰控制用密鑰分配中心為用戶分配密鑰時,要求所有用戶都信任KDC,同時還要求對KDC加以保護。如果密鑰的分配是無中心的,則不必有以上兩個要求然而如果每個用戶都能和自己想與之建立聯(lián)系的另一用戶安全地通信,則對有n個用戶的網(wǎng)絡(luò)來說,主密鑰應(yīng)多達n(n-1)/2個。當(dāng)n很大時,這種方案(fng n)無實用價值;但在整個網(wǎng)絡(luò)的局部范圍卻非常有用.共九十八頁64發(fā)起方響應(yīng)(xingyng)方(1)(2)(3)1.AB:IDa|N1無中心的密鑰分配時,兩個用戶
36、(yngh)A和B建立會話密鑰需經(jīng)過以下3步: A向B發(fā)出建立會話密鑰的請求和一個一次性隨機數(shù)N1 B用與A共享的主密鑰MKm對應(yīng)答的消息加密,并發(fā)送給A應(yīng)答的消息中有B選取的會話密鑰KS、B的身份IDb、f(N1)和另一個一次性隨機數(shù)N2 A使用新建立的會話密鑰KS對f(N2)加密后返回給B2.BA:EMKmKs|IDa|IDb|f(N1)|N23.AB:EKsf(N2)優(yōu)點:每個通信方都必須保存多達(n一1)個主密鑰,但是需要多少會話密鑰就可以產(chǎn)生多少。共九十八頁655.3.2公鑰加密體制(tzh)的密鑰管理密鑰可根據(jù)其不同用途分為會話密鑰和主密鑰兩種類型會話密鑰又稱為(chn wi)數(shù)據(jù)
37、加密密鑰主密鑰又稱為密鑰加密密鑰由于密鑰用途不同,對密鑰的使用方式也希望加以某種控制如果主密鑰泄露了,則相應(yīng)的會話密鑰也將泄露,因此主密鑰的安全性應(yīng)高于會話密鑰的安全性一般在密鑰分配中心以及終端系統(tǒng)中主密鑰都是物理上安全的如果把主密鑰當(dāng)作會話密鑰注入加密設(shè)備,那么其安全性則降低共九十八頁66本節(jié)介紹兩方面內(nèi)容:一是公鑰密碼(m m)體制所用的公開密鑰的分配二是如何用公鑰體制來分配單鑰密碼體制所需的密鑰這是公鑰加密的一個主要用途共九十八頁PGP介紹(jisho)PGP:全名:Pretty Good Privacy,一種混合加密算法(綜合了對稱加密算法IDEA,非對稱加密算法RSA,MD5、以及偽
38、隨機數(shù)產(chǎn)生器等)。通常只理解為是PGP公司(n s)的系列軟件。能對郵件、文件、文件夾、整個硬盤加密,全網(wǎng)段加密權(quán)限和訪問權(quán)限控制等。共九十八頁PGP的使用(shyng)加密時:PGP用的是RSA和傳統(tǒng)加密的雜合算法,因為RSA算法計算量極大在速度上不適合加密大量數(shù)據(jù),所以PGP用來加密信息的不是(b shi)RSA,而是對稱加密算法IDEA 。 數(shù)字簽名:PGP還可以只簽名而不加密,這適用于公開發(fā)表聲明時,聲明人為了證實自己的身份,可以用自己的私鑰簽名。PGP 通過單向散列算法MD5(message digest 5)對郵件處理,生成一個128位的二進制數(shù)作為“郵件文摘” ,一旦郵件有任何改
39、變這個digest都會變化,那么這個數(shù)加上作者的名字(實際上在作者的密匙里)還有日期等等,就可以作為一個簽名。數(shù)字簽名和認證:甲用自己的私鑰將上述的128位的摘要加密,附加在郵件上,再用乙的公鑰將整個郵件加密。乙收到這份密文以后,乙用自己的私鑰將郵件解密,得到甲的原文和簽名,乙的PGP也從原文計算出一個128位的摘要,再與用甲的公鑰解密簽名得到的數(shù)比較,如果符合就說明這份郵件確實是甲寄來的。這樣既實現(xiàn)了保密又實現(xiàn)了認證。 共九十八頁69公開密鑰的公開宣布公開可用目錄(ml)公開密鑰管理機構(gòu)4. 公開密鑰證書 一.公鑰的分配(fnpi):四種方式共九十八頁701. 公開發(fā)布公開發(fā)布指用戶(yng
40、h)將自己的公鑰發(fā)給每一其他用戶(yngh),或向某一團體廣播如PGP(pretty good privacy)中采用了RSA算法,它的很多用戶都是將自己的公鑰附加到消息上,然后發(fā)送到公開(公共)區(qū)域,如因特網(wǎng)郵件列表缺點很明顯,即任何人都可偽造這種公開發(fā)布如果某個用戶假裝是用戶A并以A的名義向另一用戶發(fā)送或廣播自己的公開鑰,則在A發(fā)現(xiàn)假冒者以前,這一假冒者可解讀所有意欲發(fā)向A的加密消息,而且假冒者還能用偽造的密鑰獲得認證共九十八頁712. 公用目錄表公用目錄表指一個公用的公鑰動態(tài)目錄表公用目錄表的建立、維護以及(yj)公鑰的分布由某個可信的實體或組織承擔(dān),稱這個實體或組織為公用目錄的管理員該
41、方案有以下一些組成部分: 管理員為每個用戶都在目錄表中建立一個目錄,目錄中有兩個數(shù)據(jù)項: 用戶名;用戶的公開鑰 每一用戶都親自或以某種安全的認證通信在管理者那里為自己的公開鑰注冊 用戶如果由于自己的公開鑰用過的次數(shù)太多或由于與公開鑰相關(guān)的秘密鑰已被泄露,可隨時用新密鑰替換現(xiàn)有的密鑰共九十八頁72 管理員定期公布或定期更新目錄表例如,像電話號碼本一樣公布目錄表或在發(fā)行量很大的報紙上公布目錄表的更新 用戶可通過電子手段訪問目錄表,這時從管理員到用戶必須有安全的認證通信安全性高于公開發(fā)布,但仍易受攻擊如果敵手成功地獲取管理員的秘密鑰(密碼),就可偽造(wizo)一個公鑰目錄表,以后既可假冒任一用戶又
42、能監(jiān)聽發(fā)往任一用戶的消息。公用目錄表還易受到敵手的竄擾(破壞)用戶需要登錄到公鑰目錄表中自己查找收方的公鑰共九十八頁733. 公鑰管理機構(gòu)為防止用戶自行對公鑰目錄表操作所帶來的安全威脅,假定有一個公鑰管理機構(gòu)來為各用戶建立、維護動態(tài)的公鑰目錄.它比公開可用目錄多了公開密鑰管理機構(gòu)和通信(tng xn)方的認證以及通信(tng xn)雙方的認證。即由用戶提出請求,公鑰管理機構(gòu)通過認證信道將用戶所需要查找公鑰傳給用戶該認證信道主要基于公鑰管理機構(gòu)的簽名 共九十八頁74 用戶A向公鑰管理機構(gòu)發(fā)送一個帶時戳的消息,消息中有獲取用戶B的當(dāng)前公鑰的請求 管理機構(gòu)對A的應(yīng)答由一個消息表示,該消息由管理機構(gòu)用
43、自己的秘密密鑰SKAU加密(ji m),因此A能用管理機構(gòu)的公開鑰解密,并使A相信這個消息的確是來源于管理機構(gòu)應(yīng)答的消息中有以下幾項:B的公鑰PKB,A可用之對將發(fā)往B的消息加密;A的請求,用于A驗證收到的應(yīng)答的確是對相應(yīng)請求的應(yīng)答,且還能驗證自己最初發(fā)出的請求在被管理機構(gòu)收到以前是否被篡改;抗篡改最初的時戳,以使A相信管理機構(gòu)發(fā)來的消息不是一個舊消息,因此消息中的公開密鑰的確是B當(dāng)前的公鑰抗重放共九十八頁75 A用PKB對一個消息加密后發(fā)往B,包含兩個數(shù)據(jù)項: 一是A的身份IDA二是一次性隨機數(shù)N1,用于惟一地標識這次業(yè)務(wù) 、步驟中:B以相同方式從管理機構(gòu)獲取A的公開鑰這時,A和B都已安全地
44、得到了對方的公鑰,所以可進行保密通信。前5個消息用于安全的獲取對方的公開鑰用戶(yngh)得到對方的公開鑰后保存起來可供以后使用,這樣就不必再發(fā)送消息、 、了用戶還可以通過以下兩步進行相互認證: B用PKA加密一次性隨機數(shù)N1和B產(chǎn)生的一次性隨機數(shù)N2,發(fā)往A,可使A相信通信的另一方的確是BA用PKB對N2加密后返回給B,可使B相信通信另一方的確是A必須定期地通過密鑰管理中心獲取通信對方的公開鑰,以免對方的公開鑰更新后無法保證當(dāng)前的通信共九十八頁76公鑰管理機構(gòu)方式的優(yōu)缺點每次密鑰的獲得由公鑰管理機構(gòu)查詢并認證發(fā)送,用戶不需要查表,提高了安全性但公鑰管理機構(gòu)必須一直在線,由于每一用戶要想和他人
45、聯(lián)系都需求助于管理機構(gòu),所以管理機構(gòu)有可能成為系統(tǒng)的瓶頸由管理機構(gòu)維護的公鑰目錄表也易被敵手通過一定方式竄擾4. 公鑰證書用戶通過公鑰證書來互相交換自己(zj)的公鑰而無須與公鑰管理機構(gòu)聯(lián)系公鑰證書由證書管理機構(gòu)CA(certificate authority)為用戶建立共九十八頁77證書中的數(shù)據(jù)項有與該用戶的秘密鑰相匹配的公開鑰及用戶的身份和時戳等,所有的數(shù)據(jù)項經(jīng)CA用自己的秘密鑰簽字后就形成證書證書的形式為CA=ESKCAT, IDA, PKAIDA是用戶A的身份,PKA是A的公鑰,T是當(dāng)前(dngqin)時戳SKCA是CA的秘密鑰,CA即是為用戶A產(chǎn)生的證書共九十八頁78用戶可將自己的公
46、開鑰通過公鑰證書發(fā)給另一用戶,接收(jishu)方可用CA的公鑰PKCA對證書加以驗證即DPKCACA=DPKCAESKCAT,IDA,PKA=(T,IDA,PKA) 因為只有用CA的公鑰才能解讀證書,接收方從而驗證了證書的確是由CA發(fā)放的,且也獲得了發(fā)送方的身份IDA和公開鑰PKA時戳T為接收方保證了收到的證書的新鮮性,用以防止發(fā)送方或敵方重放一舊證書。因此時戳可被當(dāng)作截止日期,證書如果過舊,則被吊銷共九十八頁79 WIDOWS中的證書(zhngsh) 79共九十八頁80 WIDOWS中的證書(zhngsh) 80共九十八頁81二. 用公鑰加密(ji m)分配單鑰密碼體制的密鑰 公開鑰分配完
47、成后,用戶就可用公鑰加密體制(tzh)進行保密通信。然而由于公鑰加密的速度過慢,以此進行保密通信不太合適,但用于分配單鑰密碼體制的密鑰卻非常合適1. 簡單分配下圖表示簡單使用公鑰加密算法建立會話密鑰的過程,如果A希望與B通信,可通過以下幾步建立會話密鑰:共九十八頁82 A產(chǎn)生自己的一對密鑰PKA,SKA,并向B發(fā)送PKA|IDA,其中IDA表示A的身份 B產(chǎn)生會話密鑰KS,并用A的公開鑰PKA對KS加密后發(fā)往A A由DSKAEPKAKS恢復(fù)會話密鑰。因為只有A能解讀KS,所以僅A、B知道這一共享密鑰。 A銷毀PKA,SKA,B銷毀PKA。A、B現(xiàn)在可以用單鑰加密算法以KS作為會話密鑰進行保密通
48、信,通信完成(wn chng)后,又都將KS銷毀這種分配法盡管簡單,但卻由于A、B雙方在通信前和完成通信后,都未存儲密鑰,因此,密鑰泄露的危險性為最小,且可防止雙方的通信被敵手監(jiān)聽,每次公私鑰由發(fā)方臨時產(chǎn)生但由于公鑰缺少證書管理機構(gòu)認證且非物理傳輸容易受到主動攻擊共九十八頁83中間人攻擊(gngj)如果敵手E已接入A、B雙方的通信信道,就可通過以下不被察覺的方式截獲雙方的通信: 與上面的步驟相同 E截獲A的發(fā)送后,建立自己的一對密鑰PKE,SKE,并將PKEIDA發(fā)送給B。 B產(chǎn)生會話密鑰KS后,將EPKEKS發(fā)送出去。 E截獲B發(fā)送的消息后,由DPKEEPKE KS解讀KS。 E再將EPKA
49、KS發(fā)往A?,F(xiàn)在A和B知道KS,但并未意識到KS已被E截獲。A、B在用KS通信時,E就可以實施監(jiān)聽共九十八頁842. 具有保密性和認證性的密鑰分配(fnpi)既可防止被動攻擊,又可防止主動攻擊假定A、B雙方已完成公鑰交換,可按以下步驟建立共享會話密鑰: A用PKB的公開鑰加密A的身份IDA和一個一次性隨機數(shù)N1后發(fā)往B,其中N1用于惟一地標識這一業(yè)務(wù)共九十八頁85 B用PKA加密N1和B新產(chǎn)生的一次性隨機數(shù)N2后發(fā)往A。B發(fā)來的消息中N1的存在可使A相信對方的確是B A用PKB對N2加密后返回給B,使B相信對方的確是A A選一會話密鑰KS,然后將M=EPKBESKAKS發(fā)給B,其中用B的公開鑰
50、加密是為保證只有B能解讀加密結(jié)果,用A的秘密鑰加密是保證該加密結(jié)果只有A能發(fā)送 B以DPKADSKBM恢復(fù)會話密鑰注意:這個方案其實是有漏洞的,即第4條消息容易被重放,假設(shè)敵手知道(zh do)上次通話時協(xié)商的會話密鑰Ks,以及A對Ks的簽名和加密,則通過簡單的重放即可實現(xiàn)對B的欺騙,解決的方法是將第3和第4條消息合并發(fā)送共九十八頁86方案(fng n)的修改修改(xigi)后的過程共九十八頁875.3.3密鑰的管理(gunl)密鑰管理機制對常規(guī)加密體制來說,在進行通信之前,雙方必須持有相同的密鑰,在通信過程中要防止(fngzh)密鑰泄密和更改密鑰。通常是設(shè)立KDC來管理密鑰,但增加了網(wǎng)絡(luò)成本,降低了
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 防火疏散的應(yīng)急預(yù)案
- 二手房買賣合同終止協(xié)議模板
- 業(yè)務(wù)合同模板:勞動聘用關(guān)鍵條款
- 臨時借用合同范文
- 臨時工雇傭合同書
- 三方合作合同模板范本
- 云計算服務(wù)框架合同
- 事業(yè)單位合同到期人員何去何從
- 二手汽車轉(zhuǎn)讓合同協(xié)議
- 個人土地承包經(jīng)營權(quán)轉(zhuǎn)讓合同范本
- (一診)畢節(jié)市2025屆高三第一次診斷性考試 生物試卷(含答案)
- 《教育強國建設(shè)規(guī)劃綱要(2024-2035年)》解讀與培訓(xùn)
- 三年級上冊豎式計算練習(xí)300題及答案
- 礦山安全培訓(xùn)課件-地下礦山開采安全技術(shù)
- 【課件】DNA片段的擴增及電泳鑒定課件高二下學(xué)期生物人教版(2019)選擇性必修3
- GB/T 6417.1-2005金屬熔化焊接頭缺欠分類及說明
- 2023年湖北成人學(xué)位英語考試真題及答案
- 《社會主義市場經(jīng)濟理論(第三版)》第七章社會主義市場經(jīng)濟規(guī)則論
- 《腰椎間盤突出》課件
- simotion輪切解決方案與應(yīng)用手冊
- 柴油發(fā)電機運行檢查記錄表格
評論
0/150
提交評論