




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
第4章基礎安全技術
4.1密碼技術4.2完整性校驗與數(shù)字簽名4.3PKI技術習題4.1密碼技術4.1.1古典密碼系統(tǒng)4.1.2對稱密碼系統(tǒng)
4.1.3公鑰密碼系統(tǒng)數(shù)據(jù)加密的一般模型如下圖所示。
明文M用加密算法E和加密密鑰Ke得到密文C=Eke(M)。傳遞過程中可能出現(xiàn)加密密文截取者。到了接收端,利用解密算法D和解密密鑰Kd,解出明文M=DKe(C)。4.1.1古典密碼系統(tǒng)
1.仿射密碼系統(tǒng)仿射密碼系統(tǒng)是一種典型的單表變換密碼系統(tǒng)。所謂單表變換密碼是指明文的所有字母和密文的所有字母之間存在一個固定的映射關系f:Zn→Zn。返回本節(jié)
下表是從明文字母映射到密文字母的一個實例。
【例4-1】根據(jù)表4-2對明文“affinecipher”進行加密。根據(jù)表4-2的映射關系,存在以下的加密變換:
a→y,f→d,i→g,n→l,e→c,c→a,p→n,h→f,r→p于是可以得到密文:“yddglcagnfcp”接收方收到密文后,也可以通過表2-l進行還原:
y→a,d→f,g→i,l→n,c→e,a→c,n→p,
f→h,p→r得到明文:“affinecipher”
在仿射密碼系統(tǒng)(AffineCipher)中,明文空間和密文空間均為Zn。密鑰空間:K={K=(k0,k1)|gcd(k1,n)=1,k0,k1∈Zn}加密算法:Ek(i)i)=(ik1+k0)modn解密算法:Dk(j)=(j-k0)/k1modn
2.Vigenère密碼系統(tǒng)多表變換密碼系統(tǒng)是單表變換密碼系統(tǒng)的擴展。在單表變換中,加密和解密由一個映射來完成,而多表變換中存在多個映射。
在Vigenère密碼系統(tǒng)中,明文空間和密文空間均為Zn。密鑰:k=(k0,k1,…,kd),ki∈Zn
加密算法:mi+tdci+td
ci+td=(mi+td+ki
)(modn)解密算法:ci+td
mi+td
mi+td=(ci+td-ki)(modn)
【例4-3】在Vigenère密碼系統(tǒng)中,明文和密文都是英文字母串,n=26,密鑰k={19,7,8,13,10},明文的英文形式是:“thealgebraicformofanellipticcurve”相應的數(shù)字形式是:“19,7,4,0,11
6,4,1,17,0,8,2,5,14,17,12,14,5,0,13,
4,11,11,8,15,19,8,2,2,2017,21,4”(忽略空格)
實施加密算法:
19(+19)→127(+7)→144(+8)→120(+13)→1311(+10)→216(+19)→254(+7)→111(+8)→917(+13)→40(+10)→108(+19)→12(+7)→95(+8)→1314(+13)→117(+10)→112(+19)→514(+7)→215(+8)→130(+13)→1313(+10)→234(+19)→2311(+7)→1811(+8)→198(+13)→2115(+10)→2519(+19)→128(+7)→152(+8)→102(+13)→1520(+10)→417(+19)→102l(+7)→24(+8)→12
得到數(shù)字密文:“12,14,12,13,21,25,11,9,4,10,1,9,13,1,1,5,21,13,13,23,
23,18,19,21,25,12,15,10,15,4,10,2,12”
相應的英文密文:“momnvzljekbjnbbfvnnxxstvzmpkpekcm”
實施解密算法:
12(-19)→1914(-7)→712(-8)→413(-13)→021(-10)→1125(-19)→611(-7)→49(-8)→l4(-13)→1710(-10)→0l(-19)→89(-7)→213(-8)→5l(-13)→141(-10)→175(-19)→1221(-7)→1413(-8)→51(-13)→023(-10)→1323(-19)→418(-7)→1119(-8)→112l(-13)→825(-l0)→1512(-19)→1915(-7)→810(-8)→215(-13)→24(-10)→2010(-19)→172(-7)→2l12(-8)→4
還原出數(shù)字明文:“19,7,4,0,11,6,4,1,17,0,8,2,5,14,17,12,14,5,0,13,4,11,11,8,15,19,8,2,2,20,17,21,4”
還原出英文明文:“thealgebraicformofanellipticcurve”
3.Hill密碼系統(tǒng)在Hill密碼系統(tǒng)中,明文空間和密文空間都是Zmn,明文用(xl,x2,…,xm)表示,密文用(y1,y2,…,ym)表示。
密鑰:
k=
加密算法:(y1,y2,…,ym)=(xl,x2,…,xm)
相應的解密算法是:
4.1.2對稱密碼系統(tǒng)
1.DES算法DES算法具有對稱性,既可用于加密又可用于解密。對稱性帶來的一個很大的好處在于硬件容易實現(xiàn),DES的加密和解密可以用完全相同的器件來實現(xiàn)。DES算法的明文分組是64位,輸出密文也是64位。所用密鑰的有效位數(shù)是56位,加上校驗位共64位。(1)DES加密算法的數(shù)據(jù)流程圖
64比特的明文初始換位加密變換逆初始換位64比特的密文子密鑰的生成(k1,k2,…,k16)64比特的密鑰
(2)原理
①該算法輸入的是64比特的明文,在64比特的密鑰控制下,通過初始換位IP變成T0=IP(T)。
②再對T0經(jīng)過16層的加密變換。
③最后通過逆初始變換得到64比特的密文。它反復使用替換和變位,以便徹底地打亂明文的信息,使得密文的每一位都依賴于明文的每一位和密鑰的每一位。DES的加密過程可分為加密處理、加密變換及子密鑰的生成幾個部分。(3)算法流程圖
密鑰數(shù)據(jù)R(32)擴展型換位R′(48)K(48)S1S2S3S4S5S6S7S8換位(32)F(R,k)(32)
輸入64位初始變換L0R0fL1=R0R1=L0
F(R0,K1)輸入64位逆初始變換L2=R1L15=R14L16=R15R2=L1F(R1,K2)R15=L44F(R14,K15)R16=L15F(R15,K16)ffK16fKnK2K1
(4)關于DES的評價DES具有良好的保密性能和抗分析破譯性能,并已廣泛地應用于金融業(yè),美國、日本和西歐一些國家都使用DES。目前,DES在各種算法的加密軟、硬件產(chǎn)品中占有很大的比重,最具有代表性,影響最大,應用最廣。返回本節(jié)
2.其他對稱密碼系統(tǒng)(1)LOKI算法
LOKI算法于1990年在密碼學界首次亮相。同DES一樣,LOKI算法以64位二進制分組加密數(shù)據(jù),也使用64位密鑰,不同的是在密鑰中無奇偶校驗位。
(2)Khufu和Khafre算法1990年,由Merhie設計的Khufu和Khafre算法也是一個很有特點的算法。該算法具有較長的密鑰,適合于軟件實現(xiàn)。
(3)FEAL-8密碼FEAL密碼算法是由日本NTT(日本電報電話公司)的Shimizi和Miyaguchi設計的一種算法,其主要思路是增加每一輪迭代的算法強度。FEAL密碼算法是一個算法族,如:FEAL-8表示8輪迭代的FEAL密碼算法
(4)IDEA算法1990年,XueJiaLai和Massey首次提出IDEA密碼系統(tǒng),當時稱為建議加密標準(PES)。該算法于1992年正式更名為IDEA。IDEA的明文和密文分組都是64位,密鑰長度為128位,算法具有對稱性,同一種算法既可用于加密,又可用于解密。
(5)RC5算法RC5是由RSA公司的首席科學家RonRivest于1994年設計、1995年正式公開的一個很實用的加密算法。RC5的特點是分組長度、密鑰長度和迭代輪數(shù)都可變。自RC5公布以來至今還沒有發(fā)現(xiàn)攻擊它的有效手段,但一些理論文章也分析出了RC5的某些弱點。(6)高級加密標準AES算法1997年4月15日,NIST(NationalInstituteofStandardTechnology,美國國家標準和技術研究所)發(fā)起了征集AES(AdvancedEncryptionStandard,高級加密標準)算法的活動美國學者約翰遜(DonB.Johnson)首次提出把未來彈性(FutureResilien-cy)引入AES評估標準。
未來彈性的概念“未來彈性”作為系統(tǒng)設計的目標,旨在設計出能夠應付未來難以預測的變化和不確定性的系統(tǒng)。Internet是具有未來彈性特征的。密碼多樣性也是具有未來彈性特征的。
未來彈性與AES評估標準將未來彈性引入AES評估標準還有以下優(yōu)點:增強安全性;增強適應性;減少專利糾紛;分散目標避免攻擊。
淺析AES算法的遴選AES算法具有可變的分組長度和密鑰長度,分別設計了3個密鑰長度128/192/256位,用于加密長度為128/192/256位的分組,相應的輪數(shù)為10/12/14。AES算法具有安全、性能好、效率高、易于實現(xiàn)和靈活等優(yōu)勢。4.1.3公鑰密碼系統(tǒng)
1976年,美國學者Diffie和hellman根據(jù)單向函數(shù)的概念提出了公開密鑰體制,引起了密碼學的一場革命。公開密鑰密碼體制從根本上克服了傳統(tǒng)密碼體制的困難,解決了密鑰分配和消息認證等問題,特別適合于計算機網(wǎng)絡系統(tǒng)的應用。返回本節(jié)
1.RSA公鑰系統(tǒng)(1)原理在公開密鑰密碼體制中,加密密鑰和解密密鑰互異分離。加密密鑰可以通過非保密信道向他人公開,使任何得到該加密密鑰的用戶據(jù)此將明文信息加密后予以發(fā)送;而按特定要求選擇的解密密鑰則需保持秘密。
(2)基礎RSA算法運用了數(shù)論中的Euler定理,即a、r是兩個互素的正整數(shù)。則az≡1(modr),其中z為與r互素且不大于r的正整數(shù)的個數(shù)(即Euler函數(shù))。該算法取用一個合數(shù)(該合數(shù)為兩個大素數(shù)的乘積),而不是取用一個大素數(shù)作為其模數(shù)r。
(3)RSA的實施實施RSA公開密鑰密碼體制的步驟為:設計密鑰先仔細選取兩個互異的大素數(shù)P和Q,令:N=PQ,z=(P-1)(Q-1)接著尋求兩個正整數(shù)和,使其滿足:
這里的就是公開的加密密鑰。
加密密文把要發(fā)送的明文信息M數(shù)字化和分塊,其加密過程是:
恢復明文:對C解密,即得到明文:
(4)RSA算法的安全性大整數(shù)分解情況年度被分解因子十進位長度機器形式時間198347HP迷你計算機3天198369Cray超級計算機32小時19889025個SUN工作站幾星期1989961MIPS處理器1個月198910680個工作站以上幾星期1993110128×128處理器(0.2MIPS)1個月19941291600臺計算機
8個月
RSA與DES加密速度的比較密碼體制硬件速度(bit/s)軟件速度(bit/s或MIPS)RSA加密220k0.5k解密-------32kDES1.2G400k
(5)舉例取兩個質數(shù)p=11,q=13,p和q的乘積為n=p×q=143,算出另一個數(shù)z=(p-1)×(q-1)=120;
再選取一個與z=120互質的數(shù),例如e=7,則公開密鑰=(n,e)=(143,7)。對于這個e值,可以算出其逆:d=103。因為e×d=7×103=721,滿足e×dmodz=1;
即721mod120=1成立。則秘密密鑰=(n,d)=(143,103)。
設張小姐需要發(fā)送機密信息(明文)m=85給李先生,她已經(jīng)從公開媒體得到了李先生的公開密鑰(n,e)=(143,7),于是她算出加密值:c=memodn=857mod143=123并發(fā)送給李先生。李先生在收到密文c=123后,利用只有他自己知道的秘密密鑰計算:m=cdmodn=123103mod143=85,所以,李先生可以得到張小姐發(fā)給他的真正的信息m=85,實現(xiàn)了解密。
(6)RSA的安全性就目前的計算機水平用1024位的密鑰是安全的,2048位是絕對安全的。RSA實驗室認為,512位的n已不夠安全,應停止使用,現(xiàn)在的個人需要用668位的n,公司要用1024位的n,極其重要的場合應該用2048位的n。
(7)密鑰分配公認的有效方法是通過密鑰分配中心KDC來管理和分配公開密鑰。KDC的公開密鑰和秘密密鑰分別為PKAS、SKAS。每個用戶只保存自己的秘密密鑰和KDC的公開密鑰PKAS。用戶可以通過KDC獲得任何其他用戶的公開密鑰。4.2完整性校驗與數(shù)字簽名4.2.1Hash函數(shù)4.2.2HMAC函數(shù)4.2.3數(shù)字簽名
完整性校驗的原理如下圖所示:
(1)消息的發(fā)送者對所要發(fā)送的消息產(chǎn)生一個附件,并將該附件和消息傳輸給接收者;(2)消息的接收者在將消息作為真實消息接收之前,檢查接收到的消息內(nèi)容和附件是否是一致的;
(3)如果不對該附件進行保護,攻擊者很容易進行主動攻擊,即先對數(shù)據(jù)內(nèi)容進行修改,然后基于修改后的數(shù)據(jù)產(chǎn)生一個附件。為避免這種攻擊,需利用一個密鑰來產(chǎn)生一個附件。只有知道密鑰的人才能打開附件,從而驗證其真實性。一旦攻擊者修改了消息,必將被檢測出來。
實現(xiàn)數(shù)據(jù)完整性必須滿足兩個要求:(1)是數(shù)據(jù)完整性應該能被消息的接收者所驗證;(2)是數(shù)據(jù)完整性應該與消息相關,即消息不同,產(chǎn)生的附件數(shù)據(jù)也應該不同。4.2.1Hash函數(shù)
Hash函數(shù)是將任意長度的輸入串變化成固定長度的輸出串的一種函數(shù)。Hash函數(shù)的輸人可以是任意大小的消息,而輸出是一個固定長度的消息摘要,其原理如下圖所示:
輸入消息的每一位對輸出消息摘要都有影響。Hash函數(shù)可用于保證信息的完整性,防止在傳輸過程中有人改變信息的內(nèi)容。最常用的Hash函數(shù)有MD2、MD4、MD5以及SHA等。4.2.2HMAC函數(shù)
Hash函數(shù)的一個重要應用就是產(chǎn)生消息的附件,如下圖所示:
使用Hash函數(shù)產(chǎn)生附件時,需要給消息前綴或后綴一個密鑰,然后再對這個級聯(lián)消息應用Hash函數(shù)。Hash函數(shù)的輸出即為附件:Hash函數(shù)作用于一個任意長度的消息M,它返回一個固定長度m的散列值h:h=H(M)。這種利用帶密鑰的Hash函數(shù)實現(xiàn)數(shù)據(jù)完整性保護的方法稱為HMAC。4.2.3數(shù)字簽名
1.數(shù)字簽名的要求:(1)收方能夠確認或證實發(fā)方的簽名,但不能偽造。(2)發(fā)方發(fā)出簽名的消息送收方后,就不能再否認他所簽發(fā)的消息。(3)收方對收到簽名消息不能否認,即有收到認證。(4)第三者可以確認收發(fā)雙方之間的消息傳送,但不能偽造這一過程。2.數(shù)字簽名與手書簽名的區(qū)別(1)手書簽名是模擬的,且因人而異。(2)數(shù)字簽名是0和1的數(shù)字串,因消息而異。(3)消息認證使收方能驗證消息發(fā)送者及所發(fā)消息內(nèi)容是否被篡改過。(4)數(shù)字簽名技術可解決收者和發(fā)者之間有利害沖突時的糾紛。返回本節(jié)
3.數(shù)字簽名的二大類(1)對整個消息的簽名。(2)對壓縮消息的簽名。它們都是附加在被簽名消息之后或某一特定位置上的一段簽名圖樣。返回本節(jié)
4.按明、密文的對應關系分類(1)確定性數(shù)字簽名其明文與密文一一對應,它對特定消息的簽名不變化(使用簽名者的密鑰簽名),如RSA、ElGamal等簽名。(2)隨機化的或概率式數(shù)學簽名,它對同一消息的簽名是隨機變化的,取決于簽名算法中的隨機參數(shù)和取值。
5.簽名體制的組成(1)簽名算法;(2)驗證算法。(3)原理①對M的簽名可簡記為Sig(M)=s
,而對s的證實簡記為Ver(s)={真,偽}={0,1}。
②簽名算法或簽名密鑰是秘密的,只有簽名人掌握。證實算法應當公開,以便于他們進行驗證。③一個簽名體制可由量(M,S,K,V)表示,其中M是明文空間,S是簽名的集合,K是密鑰空間,V證實函數(shù)的值域,由真、偽組成。
④對于每一k?K
,有一簽名算法,易于計算
s=Sigk(m)?S
。利用公開的證實算法:Verk
(s,m)?
{真,偽}可以驗證簽名的真?zhèn)巍?/p>
⑤對每一m?M,真簽名Sigk(m)?S為M→S
的映射。易于證實S是否為M的名。Verk
(s,m)
=真,當Sigk(s,m)滿足驗證方程偽,當Sigk(s,m)不滿足驗證方程返回本節(jié)
6.數(shù)字簽名的應用(1)用數(shù)字簽名對文檔進行標識,為文檔附上電子時間標簽。(2)電子貿(mào)易、電子支票、電子貨幣、電子匯款使用電子簽名。(3)大范圍的商業(yè)應用(4)數(shù)據(jù)庫的保護返回本節(jié)
基本的數(shù)字簽名方法
(1)A用其私鑰加密文件,這便是簽名過程;(2)A將加密的文件和未加密的文件都發(fā)送到B;(3)B用A的公鑰解開A傳送來的文件,將解密得到的文件與明文文件進行比較,如果二者相同就可以認為文件的確來自A,否則認為文件并非來自A,這就是簽名驗證過程。4.3PKI技術4.3.1PKI的概念4.3.2PKI部署與應用
4.3.1PKI的概念
1.PKI的定義PKI是利用公開密鑰技術所構建的、解決網(wǎng)絡安全問題的、普遍適用的一種基礎設施。美國的部分學者也把提供全面安全服務的基礎設施,包括軟件、硬件、人和策略的集合稱作PKI。
2.PKI的組成簡單地講,PKI就是一個為實體發(fā)證的系統(tǒng),它的核心是將實體的身份信息和公鑰信息綁定在一起,并且利用認證機構(CertificationAuthority,簡稱CA)的簽名來保證這種綁定關系不被破壞,從而形成一種數(shù)據(jù)結構,即數(shù)字證書(簡稱證書)。
一個典型的PKI系統(tǒng)的結構圖:
(1)終端實體(Entity);一個終端實體可以是一個終端用戶、一個設備(如服務器、路由器等)或一個進程等。終端實體可以分為:PKI證書的使用者;終端用戶或者系統(tǒng),它們是PKI證書的主體。
(2)認證機構(CA);CA的主要功能是接收實體的證書請求,在確認實體的身份之后,為實體簽發(fā)數(shù)字證書數(shù)字證書的組成如下圖:
(3)注冊機構(RA);RA在PKI系統(tǒng)中是一個可選的組件,主要是完成CA的一些管理功能。(4)證書撤銷列表發(fā)布者;(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供銷保價合同范本
- 農(nóng)村臨時建房承包合同范本
- 書畫采購合同范本
- 出版合同范本填寫
- 書贈與合同范本
- 農(nóng)莊裝修合同范本
- 出資借款合同范本
- 分體機空調(diào)保養(yǎng)合同范本
- 企業(yè)合作運營合同范本
- 產(chǎn)品收款合同范本
- 情報學與情報分析基礎知識課件
- 第17課《屈原》課件(24張PPT) 部編版語文九年級下冊
- 窮查理寶典課件
- 高危新生兒管理
- 殯葬禮儀服務整體保障方案
- 中山市口腔醫(yī)院門診牙科診所醫(yī)療機構地址名單
- 新疆特色美食介紹課件
- 做時間的主人課件- 高中時間管理主題班會
- 附件3.信息化項目建設方案論證審批報告書
- 小橋涵水文計算軟件
- 李德新中醫(yī)基礎理論講稿
評論
0/150
提交評論