加密編碼的基礎(chǔ)知識(shí)課件_第1頁
加密編碼的基礎(chǔ)知識(shí)課件_第2頁
加密編碼的基礎(chǔ)知識(shí)課件_第3頁
加密編碼的基礎(chǔ)知識(shí)課件_第4頁
加密編碼的基礎(chǔ)知識(shí)課件_第5頁
已閱讀5頁,還剩171頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第7章 加密編碼

加密編碼的基礎(chǔ)知識(shí)數(shù)據(jù)加密標(biāo)準(zhǔn)DES國際數(shù)據(jù)加密算法(IDEA)公開密鑰加密法信息安全和確認(rèn)技術(shù)1第7章 加密編碼加密編碼的基礎(chǔ)知識(shí)17.1密碼學(xué)的基礎(chǔ)知識(shí)人們希望把重要信息通過某種變換轉(zhuǎn)換成秘密形式的信息。轉(zhuǎn)換方法可以分為兩大類:隱寫術(shù),隱蔽信息載體——信號(hào)的存在,古代常用。編碼術(shù),將載荷信息的信號(hào)進(jìn)行各種變換使它們不為非授權(quán)者所理解。在利用現(xiàn)代通訊工具的條件下,隱寫術(shù)受到很大限制,但編碼術(shù)卻以計(jì)算機(jī)為工具取得了很大的發(fā)展。27.1密碼學(xué)的基礎(chǔ)知識(shí)人們希望把7.1.1密碼學(xué)中的基本概念加密前的真實(shí)數(shù)據(jù)稱為明文M

對(duì)真實(shí)數(shù)據(jù)施加變化的過程稱為加密EK

加密后輸出的數(shù)據(jù)稱為密文C

從密文恢復(fù)出明文的過程稱為解密DK完成加密和解密的算法稱為密碼體制。變換過程中使用的參數(shù)叫密鑰K。加密時(shí)使用的密鑰與解密時(shí)使用的密鑰可以相同(單密鑰),也可以不同(雙密鑰)

37.1.1密碼學(xué)中的基本概念加密前的真實(shí)數(shù)據(jù)稱為明文M安全性如果求解一個(gè)問題需要一定量的計(jì)算,但環(huán)境所能提供的實(shí)際資源卻無法實(shí)現(xiàn)它,則稱這種問題是計(jì)算上不可能的;如果一個(gè)密碼體制的破譯是計(jì)算上不可能的,則稱該密碼體制是計(jì)算上安全的。4安全性如果求解一個(gè)問題需要一定量的計(jì)算,但環(huán)境所能提供的實(shí)際密碼體制必須滿足三個(gè)基本要求:對(duì)所有的密鑰,加密和解密都必須迅速有效體制必須容易使用;體制的安全性必須只依賴于密鑰的保密性,而不依賴算法E或D的保密性。密碼體制須實(shí)現(xiàn)的功能:保密性真實(shí)性5密碼體制必須滿足三個(gè)基本要求:對(duì)所有的密鑰,加密和解密都必須即使截獲了一段密文C,甚至知道了與它對(duì)應(yīng)的明文M,破譯者要從中系統(tǒng)地求出解密變換仍然是計(jì)算上不可能的。破譯者要由截獲的密文C系統(tǒng)地求出明文M是計(jì)算上不可能的。保密性只要求對(duì)變換DK(解密密鑰)加以保密,只要不影響DK的保密,變換EK可以公布于眾。

EKDKMCM保密性:密碼分析員無法從截獲的密文中求出明文6即使截獲了一段密文C,甚至知道了與它對(duì)應(yīng)的明文M,破譯者要從真實(shí)性:密碼分析員無法用虛假的密文代替真實(shí)密文而不被察覺對(duì)于給定的C,即使密碼分析員知道對(duì)應(yīng)于它的明文M,要系統(tǒng)地求出加密變換EK仍然是計(jì)算上不可能的。密碼分析員要系統(tǒng)地找到密文C’,使DK(C’)是明文空間上有意義的明文,這在計(jì)算上是不可能的。EKDKMCM真實(shí)性只要求變換EK(加密密鑰)保密,變換DK可公布于眾。7真實(shí)性:密碼分析員無法用虛假的密文代替真實(shí)密文而不被察覺對(duì)于密碼體制(1)對(duì)稱(單密鑰)體制:加密密鑰和解密密鑰相同或者很容易相互推導(dǎo)出。比如:DES由于假定加密方法是眾所周知的,所以這就意味著變換EK和DK很容易互相推導(dǎo)。因此,如果對(duì)EK和DK都保密,則保密性和真實(shí)性就都有了保障。但這種體制中EK和DK只要暴露其中一個(gè),另一個(gè)也就暴露了。所以,對(duì)稱密碼體制必須同時(shí)滿足保密性和真實(shí)性的全部要求。用于加密私人文件。8密碼體制(1)對(duì)稱(單密鑰)體制:加密密鑰和解密密鑰相同或者非對(duì)稱(雙密鑰)密碼體制:加密密鑰和解密密鑰中至少有一個(gè)在計(jì)算上不可能被另一個(gè)導(dǎo)出。因此,在變換EK或DK中有一個(gè)可公開而不影響另一個(gè)的保密。比如:RSA通過保護(hù)兩個(gè)不同的變換分別獲得保密性和真實(shí)性。保護(hù)DK獲得保密性,保護(hù)EK獲得真實(shí)性。公開密鑰體制即是這種。接收者通過保密自己的解密密鑰來保障其接收信息的保密性,但不能保證真實(shí)性,因?yàn)槿魏沃榔浼用苊荑€的人都可以將虛假消息發(fā)給他。發(fā)送者通過保密自己的解密密鑰來保障其發(fā)送信息的真實(shí)性。但任何知道其加密密鑰的人都可以破譯消息,保密性不能保證。用于數(shù)字簽名。密碼體制(2)9非對(duì)稱(雙密鑰)密碼體制:加密密鑰和解密密鑰中至少有一個(gè)在計(jì)EBDBMCM保障保密性保障真實(shí)性MCMDAEADAEBDBEAMC’CC’M保密性真實(shí)性保密性與真實(shí)性10EBDBM密碼分類根據(jù)加密明文數(shù)據(jù)時(shí)的加密單位的不同,分為分組密碼和序列密碼兩大類。分組密碼:設(shè)M為密碼消息,將M分成等長的連續(xù)區(qū)組M1,M2,…,分組的長度一般是幾個(gè)字符,并且用同一密鑰K為各區(qū)組加密,即

序列密碼:若將M分成連續(xù)的字符或位m1,m2,…,并用密鑰序列K=K1K2…的第i個(gè)元素給mi加密,即常用分組密碼:DES、RSA11密碼分類根據(jù)加密明文數(shù)據(jù)時(shí)的加密單位的不同,分為分組密碼和序7.1.2加密編碼中的熵概念密碼學(xué)和信息論一樣,都是把信源看成是符號(hào)(文字、語言等)的集合,并且它按一定的概率產(chǎn)生離散符號(hào)序列。在第二章中介紹的多余度的概念也可用在密碼學(xué)中,用來衡量破譯某一種密碼體制的難易程度。多余度越小,破譯的難度就越大??梢妼?duì)明文先壓縮其多余度,然后再加密,可提高密文的保密度。127.1.2加密編碼中的熵概念密碼安全性在截獲密文后,明文在多大程度上仍然無法確定。即如果無論截獲了多長的密文都得不到任何有關(guān)明文的信息,那么就說這種密碼體制是絕對(duì)安全的。所有實(shí)際密碼體制的密文總是會(huì)暴露某些有關(guān)明文的信息。被截獲的密文越長,明文的不確定性就越小,最后會(huì)變?yōu)榱?。這時(shí),就有了足夠的信息唯一地決定明文,于是這種密碼體制也就在理論上可破譯了。理論上可破譯,并不能說明這些密碼體制不安全,因?yàn)榘衙魑挠?jì)算出來的時(shí)空需求也許會(huì)超過實(shí)際上可供使用的資源。在計(jì)算上是安全的。13安全性在截獲密文后,明文在多大程度上仍然無法確定。即如果無論熵概念密碼系統(tǒng)的安全問題與噪聲信道問題進(jìn)行類比。噪聲相當(dāng)于加密變換,接收的失真消息相當(dāng)于密文,破譯者則可類比于噪聲信道中的計(jì)算者。隨機(jī)變量的不確定性可以通過給予附加信息而減少。正如前面介紹過條件熵一定小于無條件熵。例如,令X是32位二進(jìn)制整數(shù)并且所有值的出現(xiàn)概率都相等,則X的熵H(X)=32比特。假設(shè)已經(jīng)知道X是偶數(shù),那么熵就減少了一位,因?yàn)閄的最低位肯定是零。14熵概念密碼系統(tǒng)的安全問題與噪聲信道問題進(jìn)行類比。噪聲相當(dāng)于加疑義度對(duì)于給定密文,密鑰的疑義度可表示為對(duì)于給定密文,明文的疑義度可表示為15疑義度對(duì)于給定密文,密鑰的疑義度可表示為15破譯者的任務(wù)是從截獲的密文中提取有關(guān)明文的信息或從密文中提取有關(guān)密鑰的信息I(M;C)=H(M)-H(M/C)I(K;C)=H(K)-H(K/C) H(M/C)和H(K/C)越大,破譯者從密文能夠提取出有關(guān)明文和密鑰的信息就越小。對(duì)于合法的接收者,在已知密鑰和密文條件下提取明文信息:H(M/C,K)=0

I(M;C,K)=H(M)-H(M/C,K)=H(M)疑義度16破譯者的任務(wù)是從截獲的密文中提取有關(guān)明文的信息或從密文中提取

因?yàn)镠(K/C)+H(M/K,C)

=H(M/C)+H(K/M,C)(M和K交換)

H(M/C) (熵值H(K/M,C)總是大于等于零)H(M/C,K)=0,上式得H(K/C)H(M/C)即已知密文后,密鑰的疑義度總是大于等于明文的疑義度??梢赃@樣來理解,由于可能存在多種密鑰把一個(gè)明文消息M加密成相同的密文消息C,即滿足

的K值不止一個(gè)。但用同一個(gè)密鑰對(duì)不同明文加密而得到相同的密文則較困難。疑義度17因?yàn)镠(K/C)+H(M/K,C)又因?yàn)镠(K)H(K/C)H(M/C),則上式說明,保密系統(tǒng)的密鑰量越少,密鑰熵H(K)就越小,其密文中含有的關(guān)于明文的信息量I(M;C)就越大。至于破譯者能否有效地提取出來,則是另外的問題了。作為系統(tǒng)設(shè)計(jì)者,自然要選擇有足夠多的密鑰量才行。疑義度18又因?yàn)镠(K)H(K/C)H(M7.2數(shù)據(jù)加密標(biāo)準(zhǔn)DES

——私密密鑰加密法1977年7月美國國家標(biāo)準(zhǔn)局公布了采納IBM公司設(shè)計(jì)的方案作為非機(jī)密數(shù)據(jù)的正式數(shù)據(jù)加密標(biāo)準(zhǔn)(DESDataEncryptionStandard)。DES密碼是一種采用傳統(tǒng)加密方法的區(qū)組密碼,它的算法是對(duì)稱的,既可用于加密又可用于解密。197.2數(shù)據(jù)加密標(biāo)準(zhǔn)DES

7.2.1換位和替代密碼換位密碼:對(duì)數(shù)據(jù)中的字符或更小的單位(如位)重新組織,但并不改變它們本身。替代密碼:改變數(shù)據(jù)中的字符,但不改變它們之間的相對(duì)位置。207.2.1換位和替代密碼換位密碼:對(duì)數(shù)據(jù)中的字符或更小P盒

015 150014 140013 130012 120輸011 110輸010 100入09 90出08 80數(shù)07 70數(shù)06 60據(jù)05 51據(jù)04 4003 3002 2011 10輸入第i位輸出第j位151413121110987654321741210152111914638135換位盒(P盒)21P盒輸入輸出157換位盒(P盒)21S盒n=32n=82n=80001112213314415516677輸入輸出000001010011100101110111101010100111000110011001替代盒(S盒)22S盒輸入輸出000101替代盒(S盒)220PsPsPsP0

010000輸0sss0輸01入01出0sss1數(shù)01數(shù)00據(jù)0sss0據(jù)00010sss110

P盒和S盒的結(jié)合使用230Ps7.2.2DES密碼算法DES密碼就是在上述換位和替代密碼的基礎(chǔ)上發(fā)展的。將輸入明文序列分成區(qū)組,每組64比特。64比特的密鑰源循環(huán)移位產(chǎn)生16個(gè)子密鑰247.2.2DES密碼算法DES密碼就是在上述換位和替2525圖7-7密碼運(yùn)算26圖7-7密碼運(yùn)算262727密鑰表計(jì)算28密鑰表計(jì)算287.2.3DES密碼的安全性DES的出現(xiàn)在密碼學(xué)史上是一個(gè)創(chuàng)舉。以前的任何設(shè)計(jì)者對(duì)于密碼體制及其設(shè)計(jì)細(xì)節(jié)都是嚴(yán)加保密的。而DES算法則公開發(fā)表,任人測(cè)試、研究和分析,無須通過許可就可制作DES的芯片和以DES為基礎(chǔ)的保密設(shè)備。DES的安全性完全依賴于所用的密鑰。297.2.3DES密碼的安全性DES弱密鑰DES算法中每次迭代所用的子密鑰都相同,即K1=K2=…=K16,如11…1,此時(shí) DESk(DESk(x))=x,DESk-1(DESk-1(x))=x 即以k對(duì)x加密兩次或解密兩次都恢復(fù)出明文。其加密運(yùn)算和解密運(yùn)算沒有區(qū)別。而對(duì)一般密鑰只滿足DESk-1(DESk(x))=DESk(DESk-1(x))=x30弱密鑰DES算法中每次迭代所用的子密鑰都相同,即K1半弱密鑰給定的密鑰k,相應(yīng)的16個(gè)子密鑰只有兩種圖樣,且每種都出現(xiàn)8次。如1010…10半弱密鑰的特點(diǎn)是成對(duì)地出現(xiàn),且具有下述性質(zhì):若k1和k2為一對(duì)互逆的半弱密鑰,x為明文組,則有DESk1(DESk2(x))=DESk2(DESk1(x))=x稱k1和k2是互為對(duì)合的。31半弱密鑰給定的密鑰k,相應(yīng)的16個(gè)子密鑰只有兩種圖樣,且每種問題DES的密鑰短了些選擇長的密鑰會(huì)使成本提高、運(yùn)行速度降低。新算法很可能要采用128比特密鑰。實(shí)現(xiàn)DES算法的產(chǎn)品有:設(shè)計(jì)專用LSI器件或芯片;用現(xiàn)成的微處理器實(shí)現(xiàn);只限于實(shí)現(xiàn)DES算法;可運(yùn)行各種工作模式。32問題DES的密鑰短了些327.2.4

DES密碼的改進(jìn)盡管DES算法十分復(fù)雜,但它基本上還是采用64比特字符的單字母表替換密碼。當(dāng)同樣的64比特明文塊進(jìn)入編碼器后,得到的是同樣的64比特的密文塊。破譯者可利用這個(gè)性質(zhì)來破譯DES。DES密碼的缺點(diǎn):采用64比特字符的單字母表替換密碼。例:工資表有3列,姓名16×8比特,職稱和工資各8×8比特,想篡改,只需將兩人的第3、4個(gè)64比特密文塊調(diào)換一下。改進(jìn)方法:密碼塊鏈接、密碼反饋方式337.2.4

DES密碼的改進(jìn)盡管D密碼塊鏈接

M1

M2M3M4C1C2C3C4

V####密鑰DDDD

解密箱

加密箱密鑰EEEE…V####…

異或

C1C2C3C4M1

M2M3M4

(a)(b)34密碼塊鏈接M1M264位移位寄存器64位移位寄存器C2C3C4C5C6C7C8C9C2C3C4C5C6C7C8C9

64

8

密鑰E加密箱C10

密鑰E加密箱C10

選擇最左字節(jié)

選擇最左字節(jié)

8

M10#C10C10#M10

8(a)(b)密碼反饋方式3564位移位寄存器7.3國際數(shù)據(jù)加密算法(IDEA)盡管一次加密的DES仍然廣泛應(yīng)用于保密中,但專家們對(duì)DES不安全的原因作了大量的分析,認(rèn)為這種方法剛被發(fā)明時(shí)是很適用的,而現(xiàn)在已不再能滿足需要。人們開始尋求更安全的塊密碼,曾提出了許多算法,其中最令人感興趣最重要的就是IDEA(InternationalDataEncryptionAlgorithm),即國際數(shù)據(jù)加密算法。IDEA由瑞士的兩名科學(xué)家于1990年提出,最早稱作PES(ProposedEncryptionStandard),后改稱為IDEA。367.3國際數(shù)據(jù)加密算法(IDEA)盡管一次加密的DES仍7.3.1算法原理采用下述幾種基本運(yùn)算:(1)

逐位mod2和,記作⊙;(2)mod216(即65536)整數(shù)加,記作;(3)mod(216+1)(即65537)整數(shù)乘,記作;(4)三個(gè)運(yùn)算中任意兩個(gè)運(yùn)算不滿足分配律。例如:a(bc)

≠(ab)(ac)(5)三個(gè)運(yùn)算中任意兩個(gè)運(yùn)算間不滿足結(jié)合律。例如:a(b⊙c)

≠(ab)⊙c

377.3.1算法原理采用下述幾種基本運(yùn)算:37實(shí)現(xiàn)時(shí)需考慮(1)基本構(gòu)件——乘/加單元:實(shí)現(xiàn)16比特為字長的非線性S盒,如圖所示。它是IDEA實(shí)現(xiàn)中的關(guān)鍵非線性構(gòu)件。通過8輪迭代,能夠完成更好的擴(kuò)散和混淆。研究表明,為實(shí)現(xiàn)完善混淆至少需要4輪迭代。(2)硬件:加密、解密運(yùn)算相似,差別是密鑰時(shí)間表,類似于DES,具有對(duì)合性,可用同一器件實(shí)現(xiàn)。由于采用規(guī)則的模塊結(jié)構(gòu),易于設(shè)計(jì)ASIC實(shí)現(xiàn)。(3)軟件:采用子段結(jié)構(gòu):以16比特為字長進(jìn)行處理。采用簡(jiǎn)單運(yùn)算,三種運(yùn)算易于編程實(shí)現(xiàn)加、移位等。F116

F216K5

K6

G116

G21638實(shí)現(xiàn)時(shí)需考慮(1)基本構(gòu)件——乘/加單元:實(shí)現(xiàn)17.3.2加密解密過程輸入和輸出字長為64比特,密鑰長128比特,8輪迭代體制。最后經(jīng)過一個(gè)輸出變換給出密文。IDEA可用于各種標(biāo)準(zhǔn)工作模式。它由兩部分組成:一個(gè)是對(duì)輸入64比特明文組的8輪迭代產(chǎn)生64比特密文輸出;另一個(gè)是由輸入的128比特會(huì)話密鑰,產(chǎn)生8輪迭代所需的52個(gè)子密鑰,共52×16比特。397.3.2加密解密過程輸入和輸出字長為64比特,密鑰長164比特明文xx1x2x3x4

K1

迭代1K6w11

w12

w13

w14

K7

迭代2

K12

w21

w22

w23

w24w71

w72

w73

w74

K43

迭代8

K48w81

w82

w83

w84

K49

輸出變換

K52y11

y12

y13

y14

密文IDEA算法框圖4064比特明文xID128比特密鑰K

子密鑰生成器16…K1K52

x1x2x3x4

K1

K3K2

K4

⊙⊙

乘加單元K5

K6

w11

w12

w13

w14

圖7-15w1

w2

w3

w4

K49

K51K50

K52

圖7-16IDEA的輸出變換41128比特密鑰Kx1

K(128比特)

K1

K2K3K4K5K6K7K8K15K16K9K10K11K12K13K14K15

K22K23K24K17K18K19K20K21K28K29K30K31K32K25K26K27K28K35K36K37K38K39K40K33K34K41K42K43K44K45K46K47K48K49K50K51K52

圖7-17IDEA的子密鑰

42 K(128比特)

427.3.3算法的安全性如果采用窮搜索破譯,要求進(jìn)行2128≈1038次試探。若每秒可完成100萬次加密,需1013年;若用1024個(gè)ASIC芯片陣需要一天。有關(guān)專家研究表明,IDEA算法沒有似DES意義下的弱密鑰,8輪迭代使得沒有任何捷徑破譯,在差分和線性攻擊下是安全的。當(dāng)然若將字長由16比特增加到32比特,密鑰相應(yīng)長256比特,采用232模加,232+1模乘,則可進(jìn)一步強(qiáng)化IDEA。437.3.3算法的安全性如果采用窮7.4公開密鑰加密法前面介紹的秘密密鑰加密法,算法公開,密鑰是保密的(對(duì)稱密鑰)。如果要進(jìn)行通信,必須在這之前把密鑰通過非??煽康姆绞椒峙浣o所有接收者,這在某些場(chǎng)合是很難做到的。因而提出了公開密鑰加密法PKC(PublicKeyCryptography)447.4公開密鑰加密法前面介紹的秘密密鑰加密法,算法公開密鑰使用兩個(gè)不同密鑰(非對(duì)稱密鑰體制);一個(gè)公開(公鑰),另一個(gè)為用戶專用(私鑰);通信雙方無需事先交換密鑰就可進(jìn)行保密通信;要從公鑰或密文分析出明文或私鑰,在計(jì)算上是不可能的。45密鑰使用兩個(gè)不同密鑰(非對(duì)稱密鑰體制);45應(yīng)用保密通信:多個(gè)用戶將信息傳給某用戶,可用該用戶的公鑰加密,唯有該用戶可用自己的私鑰解讀。數(shù)字簽名:用自己的私鑰加密信息,而以公鑰作為解密密鑰,用來確認(rèn)發(fā)送者。46應(yīng)用保密通信:46PKC算法的關(guān)鍵

-加密函數(shù)y=F(x)的單向性

加密計(jì)算容易:對(duì)任意給定的x值,容易計(jì)算y=F(x)的值;破譯難:已知F和y,不可能求出對(duì)應(yīng)的x值;用私鑰容易解密:若知道F的某種特殊性質(zhì)(竅門trapdoor),就容易計(jì)算出x值。47PKC算法的關(guān)鍵

-加密函數(shù)y構(gòu)造和使用使用者構(gòu)造出單向函數(shù)F(公鑰)和它的逆函數(shù)F-1(私鑰)。破譯者:已知F和密文不能推導(dǎo)出F-1或明文;接收者:用竅門信息(解密密鑰Kd)簡(jiǎn)單地求解x=F-1Kd(y)。48構(gòu)造和使用使用者構(gòu)造出單向函數(shù)F(公鑰)和它的逆函數(shù)F-1(7.4.1公開密鑰密碼體制

-保密通信

公開加密密鑰秘密解密密鑰B(e,n)B(d,n)A(e,n)A(d,n)B發(fā)到ABMfA(e,n)CAA接收BACfA(d,n)MA發(fā)到BAMfB(e,n)CBB接收ABCfB(d,n)M497.4.1公開密鑰密碼體制

7.4.1公開密鑰密碼體制

-數(shù)字簽名

公開加密密鑰秘密解密密鑰B(e,n)B(d,n)A(e,n)A(d,n)B發(fā)到ABMfB(d,n)SfA(e,n)CAA收到BACfA(d,n)SfB(e,n)M507.4.1公開密鑰密碼體制

RSA由來理論基礎(chǔ)密鑰設(shè)計(jì)加密解密實(shí)現(xiàn)步驟7.4.2RSA密碼體制51RSA由來7.4.2RSA密碼體制51RSA密碼體制(1)RSA由來:RSA體制是根據(jù)PKC算法由美國麻省理工學(xué)院(MIT)的研究小組提出的,該體制的名稱是用了三位作者(Rivest,Shamir和Adleman)英文名字的第一個(gè)字母拼合而成。理論基礎(chǔ):利用數(shù)論

正:要求得到兩個(gè)大素?cái)?shù)(如大到100位)的乘積在計(jì)算機(jī)上很容易實(shí)現(xiàn)。

逆:但要分解兩個(gè)大素?cái)?shù)的乘積在計(jì)算上幾乎不可能實(shí)現(xiàn)。52RSA密碼體制(1)RSA由來:RSA體制是根據(jù)PKC算法密鑰設(shè)計(jì):兩個(gè)密鑰:公鑰(e,n)私鑰(d,n)加密解密:加密時(shí): 解密時(shí):RSA密碼體制(2)53密鑰設(shè)計(jì):兩個(gè)密鑰:公鑰(e,n)RSA密碼體制(2)5實(shí)現(xiàn)步驟:選取兩個(gè)很大的素?cái)?shù)p和q,令模數(shù)求n的歐拉函數(shù)并從2至[(n)-1]中任選一個(gè)數(shù)作為加密指數(shù)e;解同余方程求得解密指數(shù)d;(e,n)即為公開密鑰,(d,n)即為秘密密鑰。RSA密碼體制(3)54實(shí)現(xiàn)步驟:RSA密碼體制(3)54例題-保密通信例7-1在RSA方法中,令p=3,q=17,取e=5,試計(jì)算解密密鑰d并加密M=2。解:n=p×q=51

(n)=(p-1)×(q-1)=32(5×d)mod32=1,可解得d=13加密 y=xemodn=25mod51=32解密 ydmodn=3213mod51=2=x若需發(fā)送的報(bào)文內(nèi)容是用英文或其他文字表示的,則可先將文字轉(zhuǎn)換成等效的數(shù)字,再進(jìn)行加密運(yùn)算。55例題-保密通信例7-1在RSA方法中,令p=3,q=17,RSA公開密鑰體制用于數(shù)字簽名發(fā)送者A用自己的秘密解密密鑰(dA,nA)計(jì)算簽名;用接收者B的公開加密密鑰(eB,nB)再次加密:接收者B用自己的秘密解密密鑰(dB,nB)解密:查發(fā)送者A的公開密鑰(eA,nA)計(jì)算,恢復(fù)出發(fā)送者的簽名,認(rèn)證密文的來源。(dA,nA)(eB,nB)(dB,nB)(eA,nA)MiSiSSiMi

56RSA公開密鑰體制用于數(shù)字簽名發(fā)送者A用自己的秘密解密密鑰(例題-數(shù)字簽名例7-2用戶A發(fā)送給用戶B一份密文,用戶A用首字母B=02來簽署密文。用戶A知道下列三個(gè)密鑰:AB公開密鑰(e,n)(7,123)(13,51)秘密密鑰(d,n)(23,123)A計(jì)算他的簽名:再次加密簽名:57例題-數(shù)字簽名例7-2用戶A發(fā)送給用戶B一份密文,用戶A接收者B必須恢復(fù)出02=B認(rèn)證他接收的密文。接收者也知道三個(gè)密鑰:AB公開密鑰(e,n)(7,123)(13,51)秘密密鑰(d,n)(5,51)B用戶用自己的秘密解密密鑰一次解密:

再用A用戶的公開密鑰解密:B用戶可確認(rèn):該簽名是由A發(fā)出——用A公鑰可解讀;該簽名是發(fā)給自己的——用了B的公鑰。例題-數(shù)字簽名(續(xù))58接收者B必須恢復(fù)出02=B認(rèn)證他接收的密文安全性和速度n要大,破譯512比特(154位)RSA算法體制與破譯64比特的單密鑰體制相當(dāng);目前n=512比特在短期內(nèi)十分安全,但已有一定威脅,很快可能要采用768比特甚至1024比特;RSA算法的硬件實(shí)現(xiàn)速度很慢,最快也只有DES的1/1000,512比特模下的VLSI硬件實(shí)現(xiàn)只達(dá)64kb/s;軟件實(shí)現(xiàn)的RSA的速度只有DES的軟件實(shí)現(xiàn)的1/100。在速度上RSA無法與對(duì)稱密鑰體制相比,因而RSA體制多用于密鑰交換和認(rèn)證。59安全性和速度n要大,破譯512比特(154位)RSA算法體有時(shí)需要確認(rèn)一段報(bào)文的出處,而報(bào)文本身不需加密。如用公開密鑰算法加密整段報(bào)文,則加密時(shí)間長,而且報(bào)文傳輸和存儲(chǔ)的開銷也大。采用報(bào)文摘要(messagedigest),即從一段報(bào)文中計(jì)算出較短的報(bào)文摘要,然后在報(bào)文摘要上簽名,并將簽名的摘要和報(bào)文一起發(fā)送。7.4.3報(bào)文摘要60有時(shí)需要確認(rèn)一段報(bào)文的出處,而報(bào)文本身不需加密。如用公開密鑰報(bào)文摘要的特點(diǎn)該方案基于單向散列(Hash)函數(shù)的思想;給出報(bào)文P就易于計(jì)算出報(bào)文摘要MD(P);只給出MD(P),幾乎無法找出P;無法生成兩條具有同樣報(bào)文摘要的報(bào)文;如果有人替換了報(bào)文P,當(dāng)接收者計(jì)算MD(P)時(shí)就得不到相同的結(jié)果。61報(bào)文摘要的特點(diǎn)該方案基于單向散列(Hash)函數(shù)的思想;61添加1~512比特報(bào)文長度Kmod264L×512比特=N×32比特K比特報(bào)文100…0

512比特512比特512比特512比特Y0Y1…Yq…YL-1

512512512512ABCDHMD5HMD5HMD5HMD5

128128128128128比特報(bào)文摘要采用MD5算法產(chǎn)生報(bào)文摘要62

MDq128Yq

512ABCD32ABCDfF

(ABCD,Yq,T[1..16])

ABCDABCDfG

(ABCD,Yq,T[17..32])

ABCDABCDfH

(ABCD,Yq,T[33..48])

ABCDABCDfI

(ABCD,Yq,T[49..64])

++++

MDq+1128處理512比特塊的算法HMD5

63

ABCD

g

32

+X[k]

+T[i]

CLSs

+AB+CLSs{A+g(BCD)+X[k]+T[i]}16次64AB表7-12基本函數(shù)的邏輯運(yùn)算關(guān)系輪基本函數(shù)gg(B,C,D)fFF(B,C,D)fGG(B,C,D)fHH(B,C,D)fII(B,C,D)65表7-12基本函數(shù)的邏輯運(yùn)算關(guān)系輪基本函數(shù)gg(B,C, 表7-13基本函數(shù)的真值表BCDFGHI0000111100110011010101010101001100100111011010011001110066 表7-13基本函數(shù)的真值表BCDFGHI0000001MD5的安全性安全的hash函數(shù)在設(shè)計(jì)時(shí)必須滿足兩個(gè)要求:其一是尋找兩個(gè)輸入得到相同的輸出值在計(jì)算上是不可行的,這就是通常所說的抗碰撞的;其二是找一個(gè)輸入,能得到給定的輸出在計(jì)算上是不可行的,即不可從結(jié)果推導(dǎo)出它的初始狀態(tài)。67MD5的安全性安全的hash函數(shù)在設(shè)MD5是在國內(nèi)外有著廣泛應(yīng)用的hash函數(shù)算法,它曾一度被認(rèn)為是非常安全的。然而,2004年山東大學(xué)的王小云教授在國際密碼學(xué)會(huì)議(Crypto2004)上公布了MD系列算法的破解結(jié)果,可以很快找到MD5的“碰撞”,就是兩個(gè)文件可以產(chǎn)生相同的報(bào)文摘要。美國國家技術(shù)與標(biāo)準(zhǔn)局(NIST)對(duì)此發(fā)表專門評(píng)論,安全性暫時(shí)沒有問題,但隨著技術(shù)的發(fā)展,需要換用其他更長更安全的算法替代。MD5的安全性68MD5是在國內(nèi)外有著廣泛應(yīng)用的hash函數(shù)算法,它曾一度被認(rèn)公開密碼體制的優(yōu)缺點(diǎn)減少了密鑰數(shù)量。在n個(gè)用戶的密碼系統(tǒng)中,采用對(duì)稱密碼體制,需要n(n-1)/2個(gè)密鑰。采用公鑰密碼體制,只需要n對(duì)密鑰,而真正需要嚴(yán)加保管的只有用戶自己的秘密密鑰;徹底消除了密鑰在分送過程中被竊的可能性,大大提高了密碼體制的安全性。便于實(shí)現(xiàn)數(shù)字簽名,完滿地解決了對(duì)發(fā)方和收方的證實(shí)問題,徹底解決了發(fā)、收雙方就傳送內(nèi)容可能發(fā)生的爭(zhēng)端,為在商業(yè)上廣泛應(yīng)用創(chuàng)造了條件。計(jì)算較復(fù)雜,加密和解密的工作速率遠(yuǎn)低于對(duì)稱密碼體制。69公開密碼體制的優(yōu)缺點(diǎn)減少了密鑰數(shù)量。在n個(gè)用戶的密碼系統(tǒng)中,7.5模擬信號(hào)加密

--模擬話音加密

分類:模擬加密、數(shù)字加密模擬話音的特性:時(shí)間、頻率和幅度模擬加密方法:時(shí)間置亂、頻率置亂、幅度置亂;一維置亂、二維置亂

數(shù)字加密方法:比特置亂、比特掩蓋模擬加密簡(jiǎn)單,但保密度較差;數(shù)字加密,要求取樣率較高??山Y(jié)合使用。707.5模擬信號(hào)加密

7.6通信網(wǎng)絡(luò)中的加密

--鏈路加密

數(shù)據(jù)數(shù)據(jù)節(jié)點(diǎn)密鑰1密鑰1密鑰2密鑰2節(jié)點(diǎn)節(jié)點(diǎn)明文717.6通信網(wǎng)絡(luò)中的加密

--鏈路加密

數(shù)據(jù)7.6通信網(wǎng)絡(luò)中的加密

--節(jié)點(diǎn)加密節(jié)點(diǎn)節(jié)點(diǎn)節(jié)點(diǎn)加密數(shù)據(jù)加密數(shù)據(jù)數(shù)據(jù)(密鑰1)(密鑰2)數(shù)據(jù)

密鑰1密鑰1密鑰2密鑰2(安全模塊)(安全模塊)(安全模塊)數(shù)據(jù)數(shù)據(jù)727.6通信網(wǎng)絡(luò)中的加密

--節(jié)點(diǎn)加密7.6通信網(wǎng)絡(luò)中的加密

--端對(duì)端加密節(jié)點(diǎn)密鑰1節(jié)點(diǎn)節(jié)點(diǎn)密鑰1數(shù)據(jù)數(shù)據(jù)737.6通信網(wǎng)絡(luò)中的加密

--端對(duì)端加密節(jié)點(diǎn)數(shù)據(jù)737.7信息安全和確認(rèn)技術(shù)信息資源共享的限制信息資源的保護(hù)747.7信息安全和確認(rèn)技術(shù)信息資源共享的限制747.7.1信息安全的基本概念認(rèn)證業(yè)務(wù):提供某種方法來證實(shí)某一聲明是正確的。例如:口令訪問控制:控制非授權(quán)的訪問。例如:防火墻。保密業(yè)務(wù):對(duì)未授權(quán)者保護(hù)信息,例如:數(shù)據(jù)加密。數(shù)據(jù)完整性業(yè)務(wù):對(duì)安全威脅所采取的一類防護(hù)措施,不可否認(rèn)業(yè)務(wù):提供無可辯駁的證據(jù)來證明曾經(jīng)發(fā)生過的交換。采用數(shù)字簽名技術(shù)。757.7.1信息安全的基本概念認(rèn)證業(yè)務(wù):提供某種方法來證7.7.2數(shù)字簽名偽造:接收方偽造一份來自某一發(fā)送方的文件;篡改:接收方篡改接收到的文件或其中的數(shù)據(jù);冒充:網(wǎng)絡(luò)中任一用戶冒充另一用戶作為接收方或發(fā)送方;否認(rèn):發(fā)送/接收方不承認(rèn)曾發(fā)送/接收過某一文件。767.7.2數(shù)字簽名偽造:接收方偽造一份來自某一發(fā)送方的手跡簽名代替方案接收者可以確認(rèn)發(fā)送者的身份;發(fā)送者以后不能否認(rèn)文件是他發(fā)的;接收者自己不能偽造該文件。

第一個(gè)條件是必須的,比如當(dāng)一位顧客通過計(jì)算機(jī)發(fā)訂貨單,向一家銀行訂購一噸黃金,銀行計(jì)算機(jī)需要證實(shí)發(fā)出訂購要求的計(jì)算機(jī)確實(shí)屬于付款的公司。第二個(gè)條件用于保護(hù)銀行不受欺騙。假設(shè)銀行為該顧客買入了這噸黃金,但金價(jià)隨后立即暴跌,狡猾的顧客可能會(huì)控告這家銀行,聲稱自己從未發(fā)出過任何訂購黃金的訂單。第三個(gè)條件用來在下述情況下保護(hù)顧客,如金價(jià)暴漲,銀行偽造一個(gè)文件,說顧客只要買一條黃金而不是一噸黃金。77手跡簽名代替方案接收者可以確認(rèn)發(fā)送者的身份;77數(shù)字簽名的優(yōu)點(diǎn)數(shù)字簽名可以通過計(jì)算機(jī)網(wǎng)絡(luò)使地理位置不同的用戶實(shí)現(xiàn)簽名;數(shù)字簽名既可有手寫簽名那樣的可見性,又可將簽名存儲(chǔ)于計(jì)算機(jī)系統(tǒng)之中;數(shù)字簽名與整個(gè)文件的每一組成部分都有關(guān),從而保證了不變性,而手寫簽名的文件則可以改換某一頁內(nèi)容;數(shù)字簽名可以對(duì)一份文件的一部分進(jìn)行簽署,這是手寫簽名所不能做到的;手寫簽名一般要經(jīng)過專家的鑒定才能確認(rèn),而在一個(gè)具有良好數(shù)字簽名方案的網(wǎng)絡(luò)內(nèi),接收方可以立即識(shí)別接收的文件中的簽名的真?zhèn)巍?8數(shù)字簽名的優(yōu)點(diǎn)數(shù)字簽名可以通過計(jì)算機(jī)網(wǎng)絡(luò)使地理位置不同的用戶秘密密鑰的數(shù)字簽名

A2.X(A+D+P)BB4.X(A+D+P)B

3.X(A+D+P)

1.KA(P)5.KB(A+D+P)79秘密密鑰的數(shù)字簽名

1.A用戶的計(jì)算機(jī)傳輸線B用戶的計(jì)算機(jī)

PA的私有B的公開B的私有A的公開P密鑰DA密鑰EB密鑰DB密鑰EA

DA(P)EB(DA(P))DA(P)

公開密鑰的數(shù)字簽名80A用戶的計(jì)算機(jī)7.7.3防火墻所謂防火墻就是一個(gè)或一組系統(tǒng),用來在兩個(gè)或多個(gè)網(wǎng)絡(luò)間加強(qiáng)訪問控制。它是一個(gè)網(wǎng)絡(luò)與其它網(wǎng)絡(luò)之間的可控網(wǎng)關(guān),通常它置于一個(gè)私有的、有確認(rèn)的網(wǎng)絡(luò)和公開的Internet之間。817.7.3防火墻所謂防火墻就是一個(gè)或一組系統(tǒng),用來在兩主要技術(shù)包過濾(PacketFilter),該技術(shù)是在網(wǎng)絡(luò)層中對(duì)數(shù)據(jù)包實(shí)施有選擇的通過。應(yīng)用網(wǎng)關(guān)(ApplicationGateway),這是建立在網(wǎng)絡(luò)應(yīng)用層上的協(xié)議過濾技術(shù)。代理服務(wù)(ProxyService),這是設(shè)置在Internet防火墻網(wǎng)關(guān)的專用應(yīng)用級(jí)代碼。82主要技術(shù)包過濾(PacketFilter),該技術(shù)是在網(wǎng)第7章復(fù)習(xí)密碼學(xué)的基本知識(shí)密碼學(xué)的基本概念:明文、密文、加密、解密、破譯、密鑰、密碼體制保密性、真實(shí)性對(duì)稱密鑰體制、非對(duì)稱密鑰體制分組密碼、序列密碼密碼學(xué)中的熵概念83第7章復(fù)習(xí)密碼學(xué)的基本知識(shí)83幾種加密體制的比較私密加密體制中,采用對(duì)稱密鑰算法,加密算法公開,安全性在于對(duì)密鑰的保護(hù);公開加密體制中,采用非對(duì)稱密鑰算法,加密算法公開,其中的一個(gè)密鑰也公開,安全性在于對(duì)另一個(gè)密鑰的保護(hù);84幾種加密體制的比較私密加密體制中,采用對(duì)稱密鑰算法,加密算法數(shù)據(jù)加密標(biāo)準(zhǔn)DES換位和替代密碼DES密碼算法DES密碼的安全性DES密碼的改進(jìn)85數(shù)據(jù)加密標(biāo)準(zhǔn)DES換位和替代密碼85國際數(shù)據(jù)加密算法IDEA算法原理加密解密過程算法的安全性86國際數(shù)據(jù)加密算法IDEA算法原理86公開密鑰加密法公開密鑰密碼體制RSA密碼體制報(bào)文摘要由P計(jì)算MD(P)簡(jiǎn)單,反之復(fù)雜不同P不能生成相同的MD(P)相同的P生成相同的MD(P)87公開密鑰加密法公開密鑰密碼體制87數(shù)字簽名密碼密鑰的數(shù)字簽名公開密鑰的數(shù)字簽名88數(shù)字簽名密碼密鑰的數(shù)字簽名88第7章 加密編碼

加密編碼的基礎(chǔ)知識(shí)數(shù)據(jù)加密標(biāo)準(zhǔn)DES國際數(shù)據(jù)加密算法(IDEA)公開密鑰加密法信息安全和確認(rèn)技術(shù)89第7章 加密編碼加密編碼的基礎(chǔ)知識(shí)17.1密碼學(xué)的基礎(chǔ)知識(shí)人們希望把重要信息通過某種變換轉(zhuǎn)換成秘密形式的信息。轉(zhuǎn)換方法可以分為兩大類:隱寫術(shù),隱蔽信息載體——信號(hào)的存在,古代常用。編碼術(shù),將載荷信息的信號(hào)進(jìn)行各種變換使它們不為非授權(quán)者所理解。在利用現(xiàn)代通訊工具的條件下,隱寫術(shù)受到很大限制,但編碼術(shù)卻以計(jì)算機(jī)為工具取得了很大的發(fā)展。907.1密碼學(xué)的基礎(chǔ)知識(shí)人們希望把7.1.1密碼學(xué)中的基本概念加密前的真實(shí)數(shù)據(jù)稱為明文M

對(duì)真實(shí)數(shù)據(jù)施加變化的過程稱為加密EK

加密后輸出的數(shù)據(jù)稱為密文C

從密文恢復(fù)出明文的過程稱為解密DK完成加密和解密的算法稱為密碼體制。變換過程中使用的參數(shù)叫密鑰K。加密時(shí)使用的密鑰與解密時(shí)使用的密鑰可以相同(單密鑰),也可以不同(雙密鑰)

917.1.1密碼學(xué)中的基本概念加密前的真實(shí)數(shù)據(jù)稱為明文M安全性如果求解一個(gè)問題需要一定量的計(jì)算,但環(huán)境所能提供的實(shí)際資源卻無法實(shí)現(xiàn)它,則稱這種問題是計(jì)算上不可能的;如果一個(gè)密碼體制的破譯是計(jì)算上不可能的,則稱該密碼體制是計(jì)算上安全的。92安全性如果求解一個(gè)問題需要一定量的計(jì)算,但環(huán)境所能提供的實(shí)際密碼體制必須滿足三個(gè)基本要求:對(duì)所有的密鑰,加密和解密都必須迅速有效體制必須容易使用;體制的安全性必須只依賴于密鑰的保密性,而不依賴算法E或D的保密性。密碼體制須實(shí)現(xiàn)的功能:保密性真實(shí)性93密碼體制必須滿足三個(gè)基本要求:對(duì)所有的密鑰,加密和解密都必須即使截獲了一段密文C,甚至知道了與它對(duì)應(yīng)的明文M,破譯者要從中系統(tǒng)地求出解密變換仍然是計(jì)算上不可能的。破譯者要由截獲的密文C系統(tǒng)地求出明文M是計(jì)算上不可能的。保密性只要求對(duì)變換DK(解密密鑰)加以保密,只要不影響DK的保密,變換EK可以公布于眾。

EKDKMCM保密性:密碼分析員無法從截獲的密文中求出明文94即使截獲了一段密文C,甚至知道了與它對(duì)應(yīng)的明文M,破譯者要從真實(shí)性:密碼分析員無法用虛假的密文代替真實(shí)密文而不被察覺對(duì)于給定的C,即使密碼分析員知道對(duì)應(yīng)于它的明文M,要系統(tǒng)地求出加密變換EK仍然是計(jì)算上不可能的。密碼分析員要系統(tǒng)地找到密文C’,使DK(C’)是明文空間上有意義的明文,這在計(jì)算上是不可能的。EKDKMCM真實(shí)性只要求變換EK(加密密鑰)保密,變換DK可公布于眾。95真實(shí)性:密碼分析員無法用虛假的密文代替真實(shí)密文而不被察覺對(duì)于密碼體制(1)對(duì)稱(單密鑰)體制:加密密鑰和解密密鑰相同或者很容易相互推導(dǎo)出。比如:DES由于假定加密方法是眾所周知的,所以這就意味著變換EK和DK很容易互相推導(dǎo)。因此,如果對(duì)EK和DK都保密,則保密性和真實(shí)性就都有了保障。但這種體制中EK和DK只要暴露其中一個(gè),另一個(gè)也就暴露了。所以,對(duì)稱密碼體制必須同時(shí)滿足保密性和真實(shí)性的全部要求。用于加密私人文件。96密碼體制(1)對(duì)稱(單密鑰)體制:加密密鑰和解密密鑰相同或者非對(duì)稱(雙密鑰)密碼體制:加密密鑰和解密密鑰中至少有一個(gè)在計(jì)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論