版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
第2章密碼技術(shù)基礎
密碼安全——通信安全的最核心部分
2.1密碼技術(shù)概述
2.2傳統(tǒng)密碼技術(shù)
2.3現(xiàn)代密碼技術(shù)
2.4網(wǎng)絡加密技術(shù)上一章返回目錄2.1.1密碼基本概念
密碼學(Cryptology):是研究消息的變形及其合法復現(xiàn)的一門學科。密碼編碼學(Cryptography)
:使得消息保密的技術(shù)和科學,負責密碼體制的設計。密碼分析學(Cryptanalysis):破譯密文的技術(shù)和科學,負責密碼體制的破譯。密碼學=密碼編碼學+密碼分析學密碼學的主要作用提供機密性鑒別完整性抗抵賴消息的接收者應該能夠確認消息的來源;入侵者不可能偽裝成他人。消息的接收者應該能夠驗證在傳送過程中消息沒有被修改;入侵者不可能用假消息代替合法消息。消息的發(fā)送者事后不可能虛假地否認他發(fā)送的消息。密碼學專業(yè)術(shù)語明文密文加密E(M)=C解密D(C)=M算法受限制的算法密鑰用于加密和解密的數(shù)學函數(shù)。參與加密或解密變換的參數(shù)加密和解密的過程可以表示為:加密解密明文密文原始明文先加密再解密,原始明文將恢復。故等式D(E(M))=M必須成立引入密鑰后,加密和解密的過程可以表示為:加密解密明文密文原始明文加密函數(shù)為:DK2(EK1(M))=M并滿足:加密密鑰解密密鑰EK1(M)=C解密函數(shù)為:DK2(C)=M密碼體制
通常一個完整的密碼體制包括如下五個要素:M所有明文的集合,稱為明文空間。C所有密文的集合,稱為密文空間。K所有密鑰的集合,稱為密鑰空間。
對于密鑰空間的任一密鑰,有一個加密算法和相應的解密算法,使得加密函數(shù)EK:M->C和解密函數(shù)DK:C->M滿足:DK(EK(x))=x,這里x∈ME加密函數(shù)D解密函數(shù)8密碼學的發(fā)展第一個階段:1949年以前古典加密計算機技術(shù)出現(xiàn)以前密碼學作為一種技藝,而不是一門科學第二個階段:1949年到1976年標志:Shannon發(fā)表”CommunicationTheoryofSecrecySystem”密碼學進入了科學的軌道主要技術(shù):單密鑰的對稱密鑰加密算法第三個階段:1976年以后標志:Diffie,Hellman發(fā)表”NewDircetionsinCryptography”一種新的密碼體制:公開密鑰體制2.2傳統(tǒng)密碼技術(shù)換位(Transposition):根據(jù)一定規(guī)則重新安排明文字母,使之成為密文。明文的字母保持相同,但順序被打亂了。二者區(qū)別:字母是否保持相同代替(Substitution):就是明文中的每一個字符被替換成密文中的另一個字符。接收者對密文進行逆替換就可以恢復出明文來。換位密碼
在換位密碼中,明文的字母保持相同,但順序被打亂。列換位密碼周期換位密碼換位密碼(transpositioncipher)簡單換位密碼例:密鑰(2,4,1,3),明文“codesandciphersarefunKey:2413plaintext:codesandciphersarefunxxxciphertext:dceonsdapchisearfruexnxx換位密碼(transpositioncipher)列換位密碼例:密鑰(2,3,4,1),明文“encryptionalgorithms”Key:2341plaintext:encryptionalgorithmsciphertext:riliseyogtnpnohctarm換位密碼(transpositioncipher)周期換位密碼例:密鑰是i=1,2,3,4的一個置換f(i)=(3,4,2,1),明文“codesandciphersarefunKey:f(i)3421plaintext:codesandciphersarefunxxxciphertext:deocndasphicsarefuerxxxn換位密碼算法的分析密文字符和明文字符相同,只是順序被打亂密文和明文中的字母出現(xiàn)頻率相同,使得分析者可以很容易進行判別使用多輪置換加密可提高安全性代替密碼簡單代替密碼(simplesubstitutionciper):又稱單字母密碼(monoalphabeticcipher),明文的一個字符用相應的一個密文字符代替。包括移位密碼、乘數(shù)密碼、仿射密碼、多項式代替密碼以及密鑰短語密碼等多名或同音代替密碼(homophonicsubstitutioncipher):單個字符明文可以映射成密文的幾個字符之一。多表代替密碼(polyalphabeticsubstitutioncipher):由多個簡單的代替密碼構(gòu)成。它有多個單字母密鑰,每一個密鑰被用來加密一個明文字母。多字母代替密碼(polygramsubstitutioncipher):字符塊被成組加密。簡單代替密碼明文的一個字符用相應的一個密文字符代替。移位密碼乘數(shù)密碼仿射密碼移位密碼基本思想:最簡單的一類代替密碼,將明文字母表中的字母右移k個位置,并對字母表長度q作模運算得到密文字母。加密變換為:(1)ek(m)=(k+m)modq=c解密變換為:(2)dk(c)=(c-k)modq=m其中q為字母表M的長度,“m”代表明文字母在字母表M中的位置,“c”代表密文字母在字母表C中的位置。愷撒密碼就是對英文26個字母進行移位代替的密碼。因為愷撒大帝曾使用過k=3的這種密碼。乘數(shù)密碼基本思想:將明文字母乘以密鑰k并對q作模運算得到密文字母。加密變換為:(1)ek(m)=kmmodq=c解密變換為:(2)dk(c)=c/kmodq=m其中k和q是互素的,這樣字母表中的字母會產(chǎn)生一個復雜的剩余集合。若k和q不互素,則會有一些明文字母被加密成相同的密文字母,而且不是所有的字母都會出現(xiàn)在密文字母表中。仿射密碼基本思想:將明文字母經(jīng)過線性變換得到密文字母。加密變換為:ek(m)=(k1m+k2)modq=c解密變換為:dk(c)=k1-1(m-k2)modq=m其中k和q是互素的。例如:選取密鑰為(7,3),利用這個密鑰,字hot可以使用仿射加密法加密。將hot轉(zhuǎn)換成數(shù)字7、14、19。利用仿射等式生成:ek(7)=(7×7+3)mod26=0即為字母aek(14)=(7×14+3)mod26=23即為字母xek(19)=(7×19+3)mod26=6即為字母g所以,密文為axg多名或同音代替密碼(homophonicsubstitutioncipher)基本思想:在同音代替中,一個明文字母表的字母a,可以變換為若干個密文字母f(a),稱為同音字母,因此,從明文到密文的映射f的形式為f:A2C,其中A,C分別為明文和密文的字母表。例:假定一個同音代替密碼的密鑰是一段短文,該文及其各個單詞的編號,如下所示:(1)Canada’slargelandmassand(6)Scatteredpopulationmakeefficientcommunication(11)anecessity.Extensiverailway,road(16)andothertransportationsystems,as(21)wellastelephone,telegraph,and(26)cablenetworks,havehelpedto(31)linkcommunitiesandhaveplayed(36)avitalpartinthe(41)country’sdevelopmentforfuture如:明文:Iloveherforever
密文:392173792891443171413371314多表代替密碼基本思想:由多個簡單的代替密碼構(gòu)成。代表:Vigenere密碼和游動鑰密碼。Vigenere密碼用戶鑰是一個有限序列k=(k1,k2,k3,…,kd),我們可以通過周期性(周期為d),將k擴展為無限序列,得到工作鑰K=(K1,K2,K3,…)其中Ki=K(imodd),1≤i<∞,如果我們用Ф和θ分別表示密文和明文字母,則Vigenere密碼的變換公式為:Ф≡(θ+ki)(modn)例:在用戶鑰為cat的Vigenere密碼(周期為3)中,加密明文Vigenerecipher的過程如下(n=26):明文M=vigenerecipher工作鑰K=catcatcatcatca密文C=XIZGNXTEVKPAGR每個三字母組中的第一個,第二個和第三個字母分別移動(mod26)2個,0個,19個位置。多表代替密碼游動鑰密碼是一種非周期性的Vigenere密碼,它的密鑰和明文信息一樣長,而且不重復。例:假定一個游動鑰密碼的密鑰是美國1776年7月4日發(fā)布的《獨立宣言》,從第一段開始,因此,明文theobjectof…明文:M=theobjectof…密鑰:K=whenIntheco…密文:C=POIBJWXJXQT…多字母代替密碼——Playfair基本思想:將明文中的雙字母組合作為一個單元對待,并將這些單元轉(zhuǎn)換為密文的雙字母組合。5x5變換矩陣:J被除去
HARPSICODBEFGKLMNQTUVWXYZ加密規(guī)則:按成對字母加密1)相同對中的字母插入一無效字母(如x)
balloon→balxloon2)同行取右邊:AP→RS,PS→SH3)同列取下邊:DK→KT,TY→YP4)其他取交叉:FT→KN,MD→TI5)奇數(shù)個字母末尾附加一個無效字母。Playfair密碼分析Playfair有26x26=676種字母對組合字符出現(xiàn)幾率一定程度上被均勻化基于字母頻率的攻擊比較困難轉(zhuǎn)輪密碼機ENIGMA,由ArthurScherbius于1919年發(fā)明,面板前有燈泡和插接板。二戰(zhàn)中德國軍隊大約裝備了三萬臺ENIGMA。在第二次世界大戰(zhàn)開始時,德軍通訊的保密性在當時世界上無與倫比。ENIGMA在納粹德國二戰(zhàn)初期的勝利中起到的作用是決定性的。輪轉(zhuǎn)機一次一密密碼1917年,MajorJosephMauborgne和AT&T公司的GilbertVernam發(fā)明的一次一密亂碼本是一個大的不重復的真隨機密鑰字母集,這個密鑰字母集被寫在幾張紙上,并一起粘成一個亂碼本,它最初用于電傳打字機。發(fā)方用亂碼本中的每一密鑰字母準確的加密一個明文字符。加密是明文字符和一次一密亂碼本密鑰字符的模26加法。若明文:ONETIMEPAD亂碼本的密鑰序列是:TBFRGFARFM由:
(O+T)mod26=I(N+B)mod26=P(E+F)mod26=K
…則密文是:IPKLPSFHGQ一次一密密碼體制的特點:
每個密鑰僅對一個消息使用一次密鑰以隨機方式產(chǎn)生。
密鑰長度等于明文長度。發(fā)送者和接收者必須完全同步。是唯一達到理論不可破譯的密碼體制。2.3.1對稱密碼技術(shù)
對稱算法又叫:秘密密鑰算法單密鑰算法
對稱密鑰加密:利用一個密鑰對數(shù)據(jù)進行加密,對方接收到數(shù)據(jù)后,需要用同一密鑰來進行解密。加密:E:(X,K)→Y,y=E(x,k)解密:D:(Y,K)→X,x=D(y,k)常用的對稱密鑰加密算法DES、IDEA、AES算法等XKYEYKXD對稱算法的安全性依賴于密鑰。使用對稱密碼系統(tǒng)通信的過程可以描述如下:
1)Alice和Bob協(xié)商用同一密碼系統(tǒng)。
2)Alice和Bob協(xié)商用同一密鑰。
3)Alice用加密算法和選取的密鑰加密明文,得到密文。
4)Alice發(fā)送密文給Bob。
5)Bob用同樣的算法和密鑰解密密文,然后讀出明文。對稱密碼算法的特點:優(yōu)點:使用簡單,速度快。安全性依賴于密鑰而不是算法。缺點:1)通信雙方事先必須約定密鑰。2)密鑰必須秘密分配。3)如果密鑰泄密,攻擊者可以冒充協(xié)議發(fā)送方,產(chǎn)生虛假加密消息。4)對于一個完備的通信網(wǎng),需要的密鑰數(shù)量非常大。5)不具備數(shù)字簽名功能,不能保證消息的完整性和不可否認性。2.3.2非對稱密碼技術(shù)非對稱密鑰加密:加密和解密使用的是兩個不同的密鑰,并且解密密鑰不能根據(jù)加密密鑰計算出來。也稱為公開密鑰加密。加密密鑰叫公開密鑰(public-key,簡稱公鑰)解密密鑰叫私人密鑰(private-key,簡稱私鑰)相應的加密過程可表示為:
EK1(M)=C用相應的私鑰解密過程可表示為:
DK2(C)=M公鑰加密廣泛用于數(shù)字簽名。使用公開密碼系統(tǒng)通信的過程可以描述如下:
1)Bob和Alice選用一個公開密碼系統(tǒng)。
2)Alice將他的公開密鑰傳送給Bob。
3)Bob用Alice的公開密鑰加密他的消息,然后傳送給Alice
。
4)Alice用他的私人密鑰解密Bob的密文。公開密碼體制具有如下優(yōu)點:
1)密鑰分發(fā)簡單。
2)秘密保存的密鑰量減少。
3)在互不信任的通信雙方之間,可以相互驗證對方身份。
4)可以實現(xiàn)數(shù)字簽名。使用混合密碼系統(tǒng)進行加密通信的過程如下:
1)Bob將他的公開密鑰發(fā)給Alice。
2)Alice產(chǎn)生隨機會話密鑰K,用Bob的公開密鑰加密,并把加密的密鑰EB(K)送給Bob。
3)Bob用他的私人密鑰解密Alice的消息,恢復出會話密鑰:DB(EB(K))=K4)雙方用同一會話密鑰對他們的消息進行加密。對稱密鑰加密算法——DES算法分組密碼(blockcipher):將明文劃分成固定的n比特的數(shù)據(jù)組,然后以組為單位,在密鑰的控制下進行一系列的線性或非線性的變化而得到密文。DES(DataEncryptionStandard)——數(shù)據(jù)加密標準,是一種分組加密算法,是最通用的計算機對稱加密算法。DES算法描述1)分組加密算法:2)對稱算法:3)有效密鑰長度為56位。4)代替和置換5)易于實現(xiàn)DES算法的總體過程:在初始置換IP后,明文組被分為左右兩部分,每部分32位,以L0,R0表示。經(jīng)過16輪運算(),將數(shù)據(jù)和密鑰結(jié)合。16輪后,左、右兩部分連接在一起。經(jīng)過末置換(初始置換的逆置換)。算法完成。初始置換IP+
k1+
k2+k16
IP-1L0R0L1=R0R1=L0
(R0,K1)L2=R1R2=L1
(R1,K2)L15=R14R15=L14
(R14,K15)R16=L15
(R15,K16)L16=R1564位明文64位密文1.初始置換
初始置換在第一輪運算之前進行。對輸入分組實施如表2-3所示的變換。表2-3初始換位表58,50,42,34,26,18,10,2,60,52,44,36,28,20,12,4,62,54,46,38,30,22,14,6,64,56,48,40,32,24,16,8,57,49,41,33,25,17,9,1,59,51,43,35,27,19,11,3,61,53,45,37,29,21,13,5,63,55,47,39,31,23,15,7
表2-3應從左向右,從上向下讀。例如,初始置換將明文的第58位換到第1位第50位換到第2位第42位換到第3位第1位換到第40位2.迭代過程經(jīng)過初始置換后,進行16輪完全相同的運算。這些運算被稱為,在運算過程中數(shù)據(jù)與密鑰結(jié)合。+
k1L0R0L1=R0R1=L0
(R0,K1)
函數(shù)的輸出經(jīng)過一個異或運算,和左半部分結(jié)合,其結(jié)果成為新的右半部分,原來的右半部分成為新的左半部分。假設Li和Ri是第i次迭代結(jié)果的左半部分和右半部分,Ki是第i輪的48位密鑰,則每一輪迭代過程可以表示為:Li-1(32bit)Ri-1(32bit)擴展置換ES盒代替P-盒置換Ri(32bit)Li(32bit)
Ki48bit
Ri=Li-1
(Ri-1,Ki)Li=Ri-132位48位48位32位32位32位(1)密鑰置換
DES算法由64位密鑰產(chǎn)生16輪的48位子密鑰。在每一輪運算過程中,使用不同的子密鑰。每一輪子密鑰生成過程可以表示為:64位密鑰置換選擇1C0(28位)D0(28位)循環(huán)左移循環(huán)左移C1(28位)D1(28位)置換選擇2循環(huán)左移循環(huán)左移Ci(28位)Di
(28位)置換選擇256位k148位ki48位56位壓縮置換。將56位輸入置換為48位。不考慮每字節(jié)的第8位,將64位密鑰減至56位。然后進行一次密鑰置換。各輪循環(huán)移動的次數(shù)由輪數(shù)決定。置換選擇157,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4
由于不考慮每個字節(jié)的第8位,DES的密鑰由64位減至56位。每個字節(jié)的第8位可作為奇偶校驗以確保密鑰不發(fā)生錯誤。然后進行置換選擇164位密鑰置換選擇1
經(jīng)過置換選擇1,將輸出的56位密鑰分成兩部分,每部分28位。然后,根據(jù)輪數(shù),將兩部分分別循環(huán)左移1位或2位。如表所示。每輪移動的位數(shù)
輪12345678910111213141516位數(shù)1122222212222221C0(28位)D0(28位)循環(huán)左移循環(huán)左移C1(28位)D1(28位)64位密鑰置換選擇1
移動后,從56位輸出中選出48位。由于該運算不僅置換了每位的順序,同時也選擇了密鑰,因而被稱為壓縮換位。如表所示。壓縮換位14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32
例如,處在第33位的那一位在輸出時移到了第35位,而省略了第9,18,22,25,35,38,43,54位。64位密鑰置換選擇1C0(28位)D0(28位)循環(huán)左移循環(huán)左移C1(28位)D1(28位)置換選擇256位k148位擴展置換32,1,2,3,4,5,4,5,6,7,8,9,
8,9,10,11,12,13,12,13,14,15,16,17,16,17,18,19,20,21,20,21,22,23,24,25,24,25,26,27,28,29,28,29,30,31,32,1
在擴展置換中,盡管輸出分組大于輸入分組,但每個輸入分組產(chǎn)生唯一的輸出分組。(2)擴展置換E(3)S盒代替48-位輸入32-位輸出S-盒1S-盒2S-盒3S-盒4S-盒5S-盒6S-盒7S-盒8
代替運算由8個不同的代替盒(S盒)完成。每個S盒有6位輸入,4位輸出。
48位的輸入被分為8個6位的分組,每一分組對應一個S-盒代替操作。
經(jīng)過S盒代替,形成8個4位分組。
例如,假設S-盒6的輸入(即異或函數(shù)的第31位到36位)為110011。第1位和最后一位組合形成了11,它對應著S-盒6的第3行。中間的4位組合形成了1001,它對應著S-盒6的第9列。
S-盒6的第3行第9列處的數(shù)是14,得到輸出值為1110。S-盒612,1,10,15,9,2,6,8,0,13,3,4,14,7,5,11,10,15,4,2,7,12,9,5,6,1,13,14,0,11,3,8,
9,14,15,5,2,8,12,3,7,0,4,10,1,13,11,6,
4,3,2,12,9,5,15,10,11,14,1,7,6,0,8,13(4)P-盒置換16,7,20,21,29,12,28,17,1,15,23,26,5,18,31,10,
2,8,24,14,32,27,3,9,19,13,30,6,22,11,4,25例如,第21位移到了第4位,第4位移到了第31位。3.末置換末置換是初始置換的逆過程。
DES在最后一輪迭代過程后,左半部分和右半部分并不交換,而是將R16和L16并在一起形成一個分組作為末置換的輸入。這樣使該算法既能用作加密,又能用作解密。末置換40,8,48,16,56,24,64,32,39,7,47,15,55,23,63,31,38,6,46,14,54,22,62,30,37,5,45,13,53,21,61,29,36,4,44,12,52,20,60,28,35,3,43,11,51,19,59,27,34,2,42,10,50,18,58,26,33,1,41,9,49,17,57,25初始置換IP+
k1+
k2+k16
IP-1L0R0L1=R0R1=L0
(RO,K1)L2=R1R2=L1
(R1,K2)L15=R14R15=L14
(R14,K15)R16=L15
(R15,K16)L16=R1564位明文64位密文DES算法大致可以分為3個部分:
初始置換迭代過程逆置換迭代過程:
密鑰置換擴展置換
S-盒代替
P-盒置換DES解密
DES的解密和加密使用相同的算法。解密過程中使用的子密鑰順序與加密過程中使用的密鑰順序相反。Li-1=Ri
(Li,Ki)Ri-1=Li現(xiàn)代常規(guī)分組加密算法對DES進行復合,強化它的抗攻擊能力;二重DES、三重DES開辟新的算法,既像DES那樣加密解密速度快,又具有有效抗攻擊能力。IDEA算法、AES算法二重DESC=EK2[EK1[P]]?P=DK1[DK2[C]]PEK1XEK2C(a)加密CDK2XDK1P(b)解密兩個密鑰的三重DESC=EK1[DK2[EK1[P]]]?P=DK1[EK2[DK1[C]]]PDK2BEK1C(a)加密(b)解密EK1ACEK2ADK1PDK1B三個密鑰的三重DESC=EK3[DK2[EK1[P]]]?P=DK1[EK2[DK3[C]]]PDK2BEK1C(a)加密(b)解密EK3ACEK2ADK3PDK1B國際數(shù)據(jù)加密算法--IDEA1990年瑞士聯(lián)邦技術(shù)學院的XueJiaLai和著名密碼學家JamesMassey開發(fā)出PES,即建議的加密標準,是其雛形1991年設計者對PES強化成為IPES,即改進的建議加密標準1992年更名為IDEA,即國際加密標準明文分組:64位,密鑰長度:128位類似于DES,IDEA也是一種數(shù)據(jù)塊加密算法,它設計了一系列加密輪次,每輪加密都使用從完整的加密密鑰中生成一個子密鑰。21世紀高級加密標準—AES算法1997年4月15日,NIST(美國國家標準技術(shù)局)征集AES(AdvancedEncryptionStandard)以代替DES算法。1998年8月20日舉辦了首屆AES候選會議,選出了15個候選算法。1999年8月9日,NIST宣布了第二輪AES的優(yōu)勝者:MARS,RC6,Rijndael,SERPENT,Twofish。2000年10月2日,NIST最終確定Rijndael作為AES算法。比利時密碼專家JoanDaemen和VincentRijmen2001年11月26日NIST正式宣布AES為美國政府的新加密標準,該決定在2002年5月26日生效。Rijndael算法特點(1)密鑰長度可變:Rijndael的信息塊長度和加密密鑰長度都是可變的,都可以是128位,192位和256位
(2)混合的運算:AES每輪要經(jīng)過四次變換:
ByteSub()字節(jié)代換
ShiftRows()行移位
MixColumns()列混合
AddRoundKey()輪密鑰的添加
(3)能有效抵制目前已知的攻擊算法公鑰技術(shù)是二十一世紀最偉大的思想之一:改變了密鑰分發(fā)的方式廣泛用于數(shù)字簽名和身份認證服務公開密鑰算法的基本思想:利用求解某些數(shù)學難題的困難性。單向陷門(trapdoor)函數(shù):單項函數(shù)計算起來相對容易,但求逆卻非常困難。
單向陷門函數(shù)單向陷門函數(shù)是滿足下列條件的函數(shù)f(x):給定x,計算y=f(x)是容易的;給定y,計算x使x=f-1(y)是困難的;存在d,已知d時,對給定的任何y,若相應的x存在,則計算x使得f-1(x)是容易的d稱為陷門信息,第(3)條稱為陷門性。目前公鑰密碼系統(tǒng)單向陷門函數(shù)基于的數(shù)學難題背包問題背包加密體制大整數(shù)因子分解問題
RSA體制有限域上的離散對數(shù)問題
EIGamal體制,DSS/DSA橢圓曲線上的離散對數(shù)問題橢圓曲線加密背包問題背包問題描述:已知一容積為C的背包及體積分別為k1,k2,…kn的n個物品,從這些物品中選出若干個正好裝滿這個背包,究竟是哪些物品?0-1背包問題:給定一個正整數(shù)C和一個背包向量K=(k1,k2,…kn),其中ki和C都是正整數(shù),求滿足方程C=∑kimi的二進制向量M=(m1,m2,…mn)。這是一個著名的NP完全問題,也就是說解決這個問題所需要的時間與n呈指數(shù)增長,窮舉搜索的復雜度為O(2n)。背包問題用于公鑰密碼學例如背包序列{2,3,6,13,27,52}求解70的背包結(jié)果為{2,3,13,52}
密文70對應的明文為110101RSA算法1977年由Rivest、Shamir和Adleman在麻省理工學院發(fā)明,1978年公布第一個比較完善的同時也是應用最廣泛的公鑰密碼算法RSA算法的理論基礎114381625757888867669235779976146612010218296721242362562561842935706935245733897830597123563958705058989075147599290026879543541=3490529510847650949147849619903898133417764638493387843990820577*32769132993266709549961988190834461413177642967992942539798288533RSA算法描述(1)密鑰的生成選擇p,q為互異素數(shù)計算n=p*q,
(n)=(p-1)*(q-1)選擇整數(shù)e使e與
(n)互質(zhì)計算d,使?jié)M足d*e=1mod(n)公鑰PK={n,e}私鑰SK={n,d}例如:取P=47,q=71,則n=p*q=3337,(n)=(p-1)*(q-1)=46*70=3220隨機選取e使e與
(n)互質(zhì),取e=79,則可以計算出d=e-1mod(n)=79-1mod3220=1019則可得:公鑰pk={n,e}={3337,79}私鑰sk={n,d}={3337,1019}(2)加密(用{n,e})明文:M密文:C=Me(modn)例如:M=688則密文C=Me(modn)=68879(mod3337)=1570(3)解密(用{n,d})密文:C明文:M=Cd(modn)例如:C=1570則密文M=Cd(modn)=15701019(mod3337)=688RSA算法實例:(1)取P=3,q=11,則(2)n=p*q=33,(n)=(p-1)*(q-1)=2*10=20(3)隨機選取e使e與
(n)互質(zhì),取e=3(4)可以計算出d=e-1mod(n)=3-1mod20=7(5)則可得:公鑰pk={n,e}={33,3}私sk={n,d}={33,7}(6)若明文P=“SUZANNE”,則
明文P密文C字母序號P3P3(mod33)S19685928U21926121Z261757620A0111N1427445N1427445E0512526
解密
C7C7(mod33)字母1349292851219S180108854121U12800000026Z11A7812514N7812514N80318101765ERSA算法的安全性取決于從公開密鑰(n,e)計算出秘密密鑰(n,d)的困難程度。因此,
RSA算法的安全性完全依賴于大數(shù)分解的難度。即:只要能夠?qū)⒁阎膎分解為p和q的乘積后,即可破解RSA。RSA的安全性RSA的安全性1977年,《科學美國人》懸賞征求分解一個129位十進數(shù)(426比特),直至1994年4月,才由包括5大洲43個國家600多人參加,用1600臺機器同時產(chǎn)生820條指令數(shù)據(jù),通過Internet網(wǎng),耗時8個月,利用二次篩選法分解出64位和65位的兩個因子,原來估計要用4億億年。這是有史以來最大規(guī)模的數(shù)學運算。
1999.8.22,荷蘭H.Riele領導的一群來自6個國家的數(shù)學家和計算機科學家耗時7個月并動用292臺計算機,破解了RSA—155(512-bit)加密系統(tǒng)的數(shù)字密碼。密鑰長度的選取個人——需要用384或512比特位的N,公司——需要用1024比特位的N極其重要的場合———應該用2048比特位的N
EIGamal算法EIGamal算法是由T.EIGamal在1985年提出的EIGamal算法的理論基礎:依賴于計算有限域上離散對數(shù)這一難題求解離散對數(shù)是模指數(shù)運算的逆過程,例如求x,使得x滿足3x(mod17)=15橢圓曲線密碼體制橢圓曲線密碼體制是由NealKoblitz和VSMiller在1985年提出的依賴于計算橢圓曲線上離散對數(shù)這一難題非數(shù)學的加密理論與技術(shù)信息隱藏:將某一機密信息秘密隱藏于另一公開的信息中,然后通過公開信息的傳遞來傳遞機密信息。量子密碼:“海森堡測不準定理”和“單量子不可復制定理”。生物識別:將生物和信息兩大技術(shù)交匯融合為一體的技術(shù)。2.4網(wǎng)絡加密技術(shù)
網(wǎng)絡系統(tǒng)中常見的三種加密方式:
1.鏈路加密
2.節(jié)點加密
3.端對端加密發(fā)方收方敵人鏈路加密目前最常用的網(wǎng)絡加密方法,通常用硬件在網(wǎng)絡層以下的物理層實現(xiàn),用于保護通信節(jié)點間傳輸?shù)臄?shù)據(jù),簡單,易實現(xiàn)。每個鏈路只需要一對密鑰,密碼設備安裝在兩個節(jié)點間的線路上,即把密碼設備安裝在節(jié)點和調(diào)制解調(diào)器之間,使用相同的密鑰即可,用戶沒有選擇的余地,也不需要了解加密技術(shù)的細節(jié)。節(jié)點(發(fā)方)加密解密節(jié)點(交換中心)加密解密節(jié)點(收方)數(shù)據(jù)(明文)密文明文密文(明文)數(shù)據(jù)鏈路加密分類優(yōu)點:
1)加密對用戶是透明的
2)提供了信號流安全機制。缺點:
1)數(shù)據(jù)在中間結(jié)點以明文形式出現(xiàn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版學校游泳池兒童游樂區(qū)設計與施工承包合同示范3篇
- 2025版土地使用權(quán)出讓居間合同(新型合作模式)3篇
- 2025版城市住宅小區(qū)全面滅蟑螂服務合同4篇
- 2025版土地測繪保密協(xié)議:保密項目合作與技術(shù)支持合同3篇
- 乳粉產(chǎn)品質(zhì)量法律規(guī)制與合規(guī)考核試卷
- 會展產(chǎn)業(yè)與數(shù)字經(jīng)濟的創(chuàng)新結(jié)合考核試卷
- 2025版十五年商業(yè)地產(chǎn)租賃合同范本15篇
- 2025版城市慶典活動委托演出合同3篇
- 2025年水土保持設施驗收技術(shù)服務與生態(tài)修復實施合同3篇
- 2025年醫(yī)療設備使用及維護管理協(xié)議
- 南通市2025屆高三第一次調(diào)研測試(一模)地理試卷(含答案 )
- 2025年上海市閔行區(qū)中考數(shù)學一模試卷
- 2025中國人民保險集團校園招聘高頻重點提升(共500題)附帶答案詳解
- 重癥患者家屬溝通管理制度
- 碳排放管理員 (碳排放核查員) 理論知識考核要素細目表三級
- 2024年河北省中考數(shù)學試題(含答案解析)
- 小學二年級數(shù)學口算練習題1000道
- 納布啡在產(chǎn)科及分娩鎮(zhèn)痛的應用
- DZ/T 0462.4-2023 礦產(chǎn)資源“三率”指標要求 第4部分:銅等12種有色金屬礦產(chǎn)(正式版)
- 化學-福建省龍巖市2024屆高三下學期三月教學質(zhì)量檢測(一模)試題和答案
- 凸優(yōu)化在經(jīng)濟學與金融學中的應用
評論
0/150
提交評論