第13章密碼學(xué)基礎(chǔ)_y_第1頁(yè)
第13章密碼學(xué)基礎(chǔ)_y_第2頁(yè)
第13章密碼學(xué)基礎(chǔ)_y_第3頁(yè)
第13章密碼學(xué)基礎(chǔ)_y_第4頁(yè)
第13章密碼學(xué)基礎(chǔ)_y_第5頁(yè)
已閱讀5頁(yè),還剩70頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、版權(quán)所有,盜版必糾版權(quán)所有,盜版必糾 本章講述密碼學(xué)的基本知識(shí),包括古典密碼、本章講述密碼學(xué)的基本知識(shí),包括古典密碼、對(duì)稱密碼、非對(duì)稱密碼、對(duì)稱密碼、非對(duì)稱密碼、Hash算法、數(shù)據(jù)簽算法、數(shù)據(jù)簽名等知識(shí)。名等知識(shí)。 版權(quán)所有,盜版必糾 第第13章章 密碼學(xué)基礎(chǔ)密碼學(xué)基礎(chǔ) 13.1 密碼學(xué)概述密碼學(xué)概述 13.2 古典密碼學(xué)古典密碼學(xué) 13.3 對(duì)稱密碼學(xué)對(duì)稱密碼學(xué) 13.4 非對(duì)稱密碼學(xué)非對(duì)稱密碼學(xué) 13.5 散列函數(shù)散列函數(shù) 13.6 數(shù)字簽名數(shù)字簽名 13.7密碼的絕對(duì)安全與相對(duì)安全密碼的絕對(duì)安全與相對(duì)安全 13.8 密碼學(xué)新方向密碼學(xué)新方向版權(quán)所有,盜版必糾 密碼學(xué)是研究編制密碼和破譯密

2、碼的技術(shù)科學(xué)。密碼學(xué)是研究編制密碼和破譯密碼的技術(shù)科學(xué)。研究密碼變化的客觀規(guī)律,應(yīng)用于編制密碼以研究密碼變化的客觀規(guī)律,應(yīng)用于編制密碼以保守通信秘密的,稱為保守通信秘密的,稱為編碼密碼學(xué)編碼密碼學(xué);應(yīng)用于破;應(yīng)用于破譯密碼以獲取通信情報(bào)的,稱為譯密碼以獲取通信情報(bào)的,稱為破譯密碼學(xué)破譯密碼學(xué),總稱密碼學(xué)??偡Q密碼學(xué)。 版權(quán)所有,盜版必糾 密碼學(xué)是在編碼與破譯的斗爭(zhēng)實(shí)踐中逐步發(fā)展密碼學(xué)是在編碼與破譯的斗爭(zhēng)實(shí)踐中逐步發(fā)展起來(lái)的起來(lái)的,并隨著先進(jìn)科學(xué)技術(shù)的應(yīng)用,已成為,并隨著先進(jìn)科學(xué)技術(shù)的應(yīng)用,已成為一門綜合性的尖端技術(shù)科學(xué)。一門綜合性的尖端技術(shù)科學(xué)。它與語(yǔ)言學(xué)、數(shù)它與語(yǔ)言學(xué)、數(shù)學(xué)、電子學(xué)、聲學(xué)、信

3、息論、計(jì)算機(jī)科學(xué)、軍學(xué)、電子學(xué)、聲學(xué)、信息論、計(jì)算機(jī)科學(xué)、軍事學(xué)等有著廣泛而密切的聯(lián)系事學(xué)等有著廣泛而密切的聯(lián)系。它的許多研究。它的許多研究成果,特別是各國(guó)政府現(xiàn)用的密碼編制及破譯成果,特別是各國(guó)政府現(xiàn)用的密碼編制及破譯手段都具有高度的機(jī)密性。手段都具有高度的機(jī)密性。版權(quán)所有,盜版必糾 小小的密碼還可以導(dǎo)致一場(chǎng)戰(zhàn)爭(zhēng)的勝負(fù)。例如,計(jì)算機(jī)時(shí)代的到來(lái)使得美國(guó)在1942年制造出了世界上第一臺(tái)計(jì)算機(jī)。二戰(zhàn)期間,日本采用的最高級(jí)別的加密手段是采用M-209轉(zhuǎn)輪轉(zhuǎn)輪機(jī)械加密機(jī)械加密改進(jìn)型紫密,在手工計(jì)算的情況下不可能在有限的時(shí)間破解,美國(guó)利用計(jì)算機(jī)輕松地破譯了日本的紫密密碼,使日本在中途島海戰(zhàn)中一敗涂地,日

4、本海軍的主力損失殆盡。1943年,在解密后獲悉日本山本五十六將于4月18日乘中型轟炸機(jī),由6架戰(zhàn)斗機(jī)護(hù)航,到中途島視察時(shí),羅斯??偨y(tǒng)親自做出決定截?fù)羯奖?,山本乘坐的飛機(jī)在去往中途島的路上被美軍擊毀,山本墜機(jī)身亡,日本海軍從此一蹶不振。密碼學(xué)的發(fā)展直接影響了二戰(zhàn)的戰(zhàn)局!版權(quán)所有,盜版必糾 歷史上的第一件軍用密碼裝置也是公元前歷史上的第一件軍用密碼裝置也是公元前5世紀(jì)的斯巴達(dá)世紀(jì)的斯巴達(dá)密碼密碼棒棒(Scytale),如圖,如圖13.1所示,它采用了密碼學(xué)上的移位法所示,它采用了密碼學(xué)上的移位法(Transposition)。移位法是將信息內(nèi)字母的次序調(diào)動(dòng),而。移位法是將信息內(nèi)字母的次序調(diào)動(dòng),而密

5、碼棒利用了密碼棒利用了字條纏繞木棒字條纏繞木棒的方式,把字母進(jìn)行位移。收信人的方式,把字母進(jìn)行位移。收信人要使用相同直徑的木棒才能得到還原的信息要使用相同直徑的木棒才能得到還原的信息。版權(quán)所有,盜版必糾 經(jīng)典密碼學(xué)經(jīng)典密碼學(xué)(Classical Cryptography)。其兩大類別分別為:。其兩大類別分別為: (1) 置換加密法,將字母的順序重新排列置換加密法,將字母的順序重新排列。 (2) 替換加密法,將一組字母換成其他字母或符號(hào)替換加密法,將一組字母換成其他字母或符號(hào)。 經(jīng)典加密法的資訊很易受統(tǒng)計(jì)的攻破,資料越多,解破就更容易,經(jīng)典加密法的資訊很易受統(tǒng)計(jì)的攻破,資料越多,解破就更容易,使

6、用使用分析頻率分析頻率就是好辦法。經(jīng)典密碼學(xué)現(xiàn)在仍未消失,常被用于就是好辦法。經(jīng)典密碼學(xué)現(xiàn)在仍未消失,常被用于考古學(xué)上,還經(jīng)常出現(xiàn)在智力游戲之中。在考古學(xué)上,還經(jīng)常出現(xiàn)在智力游戲之中。在20世紀(jì)早期世紀(jì)早期,包括轉(zhuǎn)包括轉(zhuǎn)輪機(jī)的一些機(jī)械設(shè)備被發(fā)明出來(lái)用于加密輪機(jī)的一些機(jī)械設(shè)備被發(fā)明出來(lái)用于加密,其中最著名的是用于其中最著名的是用于第二次世界大戰(zhàn)的密碼機(jī)第二次世界大戰(zhàn)的密碼機(jī)“迷迷”(Enigma),如圖,如圖13.2所示。所示。 這些機(jī)器產(chǎn)生的密碼相當(dāng)大地增加了密碼分析的難度。比如針對(duì)這些機(jī)器產(chǎn)生的密碼相當(dāng)大地增加了密碼分析的難度。比如針對(duì)Enigma的各種各樣的攻擊,在付出了相當(dāng)大的努力后才得

7、以成的各種各樣的攻擊,在付出了相當(dāng)大的努力后才得以成功。功。版權(quán)所有,盜版必糾密碼機(jī)“迷”版權(quán)所有,盜版必糾“圖靈甜點(diǎn)”(Turing Bombe)的大型解碼機(jī)版權(quán)所有,盜版必糾 總結(jié)來(lái)說(shuō),密碼學(xué)的發(fā)展劃分為總結(jié)來(lái)說(shuō),密碼學(xué)的發(fā)展劃分為3個(gè)階段:個(gè)階段: 1. 第一階段為古代到第一階段為古代到1949年。年。 這一時(shí)期可以看作是科學(xué)密碼學(xué)的前夜時(shí)期,這階段的密碼技術(shù)這一時(shí)期可以看作是科學(xué)密碼學(xué)的前夜時(shí)期,這階段的密碼技術(shù)可以說(shuō)是一種藝術(shù),而不是一種科學(xué),密碼學(xué)專家常常是憑知覺可以說(shuō)是一種藝術(shù),而不是一種科學(xué),密碼學(xué)專家常常是憑知覺和信念來(lái)進(jìn)行密碼設(shè)計(jì)和分析,而不是推理和證明。和信念來(lái)進(jìn)行密碼設(shè)

8、計(jì)和分析,而不是推理和證明。 這一時(shí)期還沒有形成密碼學(xué)的系統(tǒng)理論。這時(shí)的密碼學(xué)專家進(jìn)行這一時(shí)期還沒有形成密碼學(xué)的系統(tǒng)理論。這時(shí)的密碼學(xué)專家進(jìn)行密碼的設(shè)計(jì)和分析密碼的設(shè)計(jì)和分析憑借的往往是直覺,而不是嚴(yán)謹(jǐn)?shù)耐评砗妥C明憑借的往往是直覺,而不是嚴(yán)謹(jǐn)?shù)耐评砗妥C明。 這個(gè)時(shí)期發(fā)明的密碼算法在現(xiàn)代計(jì)算機(jī)技術(shù)條件下都是不安全的。這個(gè)時(shí)期發(fā)明的密碼算法在現(xiàn)代計(jì)算機(jī)技術(shù)條件下都是不安全的。但是,但是,其中的一些算法思想,比如代換、置換,是分組密碼算法其中的一些算法思想,比如代換、置換,是分組密碼算法的基本運(yùn)算模式的基本運(yùn)算模式。 斯巴達(dá)密碼棒就屬于這一時(shí)期的斯巴達(dá)密碼棒就屬于這一時(shí)期的“杰作杰作”。版權(quán)所有,盜

9、版必糾 2. 第二階段為第二階段為1949年到年到1975年。年。 1949年香農(nóng)發(fā)表的年香農(nóng)發(fā)表的為私鑰密碼系統(tǒng)建立了理論基礎(chǔ),從此密碼學(xué)成為一門科學(xué)。 20世紀(jì)70年代,在IBM沃森公司工作的菲斯特提出了一種被稱為菲斯特密碼的密碼體制,成為當(dāng)今著名的數(shù)據(jù)加密標(biāo)準(zhǔn)DES的基礎(chǔ)。在1976年,菲斯特和美國(guó)國(guó)家安全局一起制定了DES標(biāo)準(zhǔn),是一個(gè)具有深遠(yuǎn)影響的分組密碼算法。 這一時(shí)期的美、蘇、英、法等很多國(guó)家已經(jīng)意識(shí)到了密碼的重要性,開始投入大量的人力和物力進(jìn)行相關(guān)的研究,但是,研究成果都是保密的;而另一方面,作為個(gè)人,既沒有系統(tǒng)的知識(shí),更沒有巨大的財(cái)力來(lái)從事密碼學(xué)研究。這一狀況一直持續(xù)到1967

10、年David Kahn發(fā)表了破譯者一書。這本書中雖然沒有任何新穎的思想,但是,它詳盡的闡述了密碼學(xué)的發(fā)展和歷史,使許許多多的人開始了解和接觸密碼學(xué)。此后,關(guān)于密碼的文獻(xiàn)逐漸多起來(lái)。版權(quán)所有,盜版必糾 3. 第第3階段為階段為1976年至今。年至今。 1976年年Diffie 和和 Hellman發(fā)表的文章發(fā)表的文章“密碼學(xué)的新動(dòng)向密碼學(xué)的新動(dòng)向”一文導(dǎo)致了密碼學(xué)上的一場(chǎng)革命。他們首先一文導(dǎo)致了密碼學(xué)上的一場(chǎng)革命。他們首先證明了在發(fā)送端和接證明了在發(fā)送端和接收端無(wú)密鑰傳輸?shù)谋C芡ㄐ攀强赡艿氖斩藷o(wú)密鑰傳輸?shù)谋C芡ㄐ攀强赡艿?,從而開創(chuàng)了公,從而開創(chuàng)了公鑰密碼學(xué)鑰密碼學(xué)的的新紀(jì)元。從此,密碼開始充分發(fā)

11、揮它的商用價(jià)值和社會(huì)價(jià)值,普新紀(jì)元。從此,密碼開始充分發(fā)揮它的商用價(jià)值和社會(huì)價(jià)值,普通人才能夠接觸到前沿的密碼學(xué)。通人才能夠接觸到前沿的密碼學(xué)。 1978年,在年,在ACM通信中,通信中,Rivest、Shamir和和Adleman公公布了布了RSA密碼體制密碼體制,是第一個(gè)真正實(shí)用的公鑰密碼體制,可以,是第一個(gè)真正實(shí)用的公鑰密碼體制,可以用于公鑰加密和數(shù)字簽名。由于用于公鑰加密和數(shù)字簽名。由于RSA算法對(duì)計(jì)算機(jī)安全和通信算法對(duì)計(jì)算機(jī)安全和通信的巨大影響,該算法的的巨大影響,該算法的3個(gè)發(fā)明人因此獲得了個(gè)發(fā)明人因此獲得了計(jì)算機(jī)界的諾貝爾計(jì)算機(jī)界的諾貝爾獎(jiǎng)獎(jiǎng)圖靈獎(jiǎng)圖靈獎(jiǎng)。在。在1990年,中國(guó)學(xué)

12、者來(lái)學(xué)嘉和年,中國(guó)學(xué)者來(lái)學(xué)嘉和Massey提出一提出一種有效的、通用的數(shù)據(jù)加密算法種有效的、通用的數(shù)據(jù)加密算法IDEA,試圖替代日益老化的,試圖替代日益老化的DES,成為分組密碼發(fā)展史上的又一個(gè)里程碑。,成為分組密碼發(fā)展史上的又一個(gè)里程碑。版權(quán)所有,盜版必糾 為了對(duì)付美國(guó)聯(lián)邦調(diào)查局對(duì)公民通信的監(jiān)控,為了對(duì)付美國(guó)聯(lián)邦調(diào)查局對(duì)公民通信的監(jiān)控,Zimmerman在在1991年發(fā)布了年發(fā)布了基于基于IDEA的免費(fèi)郵件加密軟件的免費(fèi)郵件加密軟件PGP。由于該軟。由于該軟件提供了具有軍用安全強(qiáng)度的算法并得到廣泛傳播,因此成為了件提供了具有軍用安全強(qiáng)度的算法并得到廣泛傳播,因此成為了一種事實(shí)標(biāo)準(zhǔn)。一種事實(shí)標(biāo)

13、準(zhǔn)。 現(xiàn)代密碼學(xué)的另一個(gè)主要標(biāo)志是基于計(jì)算復(fù)雜度理論的密碼算法現(xiàn)代密碼學(xué)的另一個(gè)主要標(biāo)志是基于計(jì)算復(fù)雜度理論的密碼算法安全性證明。清華大學(xué)姚期智教授在保密通信計(jì)算復(fù)雜度理論上安全性證明。清華大學(xué)姚期智教授在保密通信計(jì)算復(fù)雜度理論上有重大的貢獻(xiàn),并因此獲得圖靈獎(jiǎng),是圖靈獎(jiǎng)歷史上唯一的華人。有重大的貢獻(xiàn),并因此獲得圖靈獎(jiǎng),是圖靈獎(jiǎng)歷史上唯一的華人。在密碼分析領(lǐng)域,在密碼分析領(lǐng)域,王小云教授對(duì)經(jīng)典哈希函數(shù)王小云教授對(duì)經(jīng)典哈希函數(shù)MD5、SHA-1等等的破解是最近十年密碼學(xué)的重大進(jìn)展的破解是最近十年密碼學(xué)的重大進(jìn)展。 隨著計(jì)算能力的不斷增強(qiáng),現(xiàn)在隨著計(jì)算能力的不斷增強(qiáng),現(xiàn)在DES已經(jīng)變得越來(lái)越不安全。

14、已經(jīng)變得越來(lái)越不安全。1997年美國(guó)國(guó)際標(biāo)準(zhǔn)研究所公開征集新一代分組加密算法年美國(guó)國(guó)際標(biāo)準(zhǔn)研究所公開征集新一代分組加密算法,并,并于于2000年選擇年選擇Rijndael作為高級(jí)加密算法作為高級(jí)加密算法AES以取代以取代DES。版權(quán)所有,盜版必糾 總的來(lái)說(shuō),在實(shí)際應(yīng)用方面,古典密碼算法有替代加密、總的來(lái)說(shuō),在實(shí)際應(yīng)用方面,古典密碼算法有替代加密、置換加密;對(duì)稱加密算法包括置換加密;對(duì)稱加密算法包括DES和和AES;非對(duì)稱加;非對(duì)稱加密算法包括密算法包括RSA、背包密碼、背包密碼、Rabin、橢圓曲線等。、橢圓曲線等。目前在數(shù)據(jù)通信中使用最普遍的算法有目前在數(shù)據(jù)通信中使用最普遍的算法有DES算法

15、和算法和RSA算法等。算法等。除了以上這些密碼技術(shù)以外,一些新的密碼技術(shù)如除了以上這些密碼技術(shù)以外,一些新的密碼技術(shù)如辮子密碼、量子密碼、混沌密碼、辮子密碼、量子密碼、混沌密碼、DNA密碼等近年來(lái)密碼等近年來(lái)也發(fā)展起來(lái),但是它們距離真正的實(shí)用還有一段距離。也發(fā)展起來(lái),但是它們距離真正的實(shí)用還有一段距離。版權(quán)所有,盜版必糾 圖圖13.3所示為香農(nóng)提出的保密通信模型。消息源要傳輸?shù)南⑺緸橄戕r(nóng)提出的保密通信模型。消息源要傳輸?shù)南(可以是文本文件、位圖、數(shù)字化的語(yǔ)音、數(shù)字化的視頻圖像可以是文本文件、位圖、數(shù)字化的語(yǔ)音、數(shù)字化的視頻圖像)就叫做明文,明文通過(guò)加密器加密后得到密文就叫做明文,明文通

16、過(guò)加密器加密后得到密文Y,將明文變成密,將明文變成密文的過(guò)程叫加密,記為文的過(guò)程叫加密,記為E,它的逆過(guò)程稱為解密,記為,它的逆過(guò)程稱為解密,記為D。 要傳輸消息要傳輸消息X,首先加密得到密文,首先加密得到密文Y,即,即Y=E(X),接收者收到,接收者收到Y(jié)后,要對(duì)其進(jìn)行解密后,要對(duì)其進(jìn)行解密D(Y),為了保證將明文恢復(fù),要求:,為了保證將明文恢復(fù),要求:D(E(X)=X。版權(quán)所有,盜版必糾 除了以上的術(shù)語(yǔ)以外還有如下一些術(shù)語(yǔ)。除了以上的術(shù)語(yǔ)以外還有如下一些術(shù)語(yǔ)。 密碼員密碼員:對(duì)明文進(jìn)行加密操作的人員稱作密碼員或加密員:對(duì)明文進(jìn)行加密操作的人員稱作密碼員或加密員 (Cryptographer

17、)。)。 加密算法加密算法:密碼員對(duì)明文進(jìn)行加密時(shí)采用的一組規(guī)則稱為加密算:密碼員對(duì)明文進(jìn)行加密時(shí)采用的一組規(guī)則稱為加密算法法(Encryption Algorithm)。 接收者接收者:傳送消息的預(yù)定對(duì)象稱為接收者:傳送消息的預(yù)定對(duì)象稱為接收者(Receiver)。 解密算法解密算法:接收者對(duì)密文進(jìn)行解密時(shí)采用的一組規(guī)則稱作解密算:接收者對(duì)密文進(jìn)行解密時(shí)采用的一組規(guī)則稱作解密算法法(dncryption algorithm)。 加密密鑰和解密密鑰加密密鑰和解密密鑰:加密算法和解密算法的操作通常是在一組:加密算法和解密算法的操作通常是在一組密鑰(密鑰(Key)的控制下進(jìn)行的,分別稱為加密密鑰)

18、的控制下進(jìn)行的,分別稱為加密密鑰(Encryption Key)和解密密鑰和解密密鑰(Decryption key)。版權(quán)所有,盜版必糾 截收者截收者:在消息傳輸和處理系統(tǒng)中,除了預(yù)定的接收者外,還有:在消息傳輸和處理系統(tǒng)中,除了預(yù)定的接收者外,還有非授權(quán)者,他們通過(guò)各種辦法,如搭線竊聽、電磁竊聽、聲音竊非授權(quán)者,他們通過(guò)各種辦法,如搭線竊聽、電磁竊聽、聲音竊聽等來(lái)竊取機(jī)密信息,稱其為聽等來(lái)竊取機(jī)密信息,稱其為截收者截收者(Eavesdropper)。 密碼分析密碼分析:雖然不知道系統(tǒng)所用的密鑰,但通過(guò)分析可能從截獲:雖然不知道系統(tǒng)所用的密鑰,但通過(guò)分析可能從截獲的密文推斷出原來(lái)的明文,這一過(guò)

19、程稱為密碼分析的密文推斷出原來(lái)的明文,這一過(guò)程稱為密碼分析(Cryptanalysis)。 密碼分析者密碼分析者: 從事密碼分析工作的人稱作密碼分析員或密碼分析從事密碼分析工作的人稱作密碼分析員或密碼分析者者(Cryptanalyst)。 Kerckholf假設(shè)假設(shè):通常假定密碼分析者或敵手(通常假定密碼分析者或敵手(Opponent)知道所使用的密碼系統(tǒng)知道所使用的密碼系統(tǒng),這個(gè)假設(shè)稱為,這個(gè)假設(shè)稱為Kerckholf假設(shè)假設(shè)。 密碼編碼學(xué)密碼編碼學(xué)(Cryptography): 主要研究對(duì)信息進(jìn)行編碼主要研究對(duì)信息進(jìn)行編碼,實(shí)現(xiàn)實(shí)現(xiàn)對(duì)信息的隱蔽。對(duì)信息的隱蔽。 密碼分析學(xué)密碼分析學(xué)(Cry

20、ptanalytics): 主要研究加密消息的破譯或消主要研究加密消息的破譯或消息的偽造。息的偽造。版權(quán)所有,盜版必糾 進(jìn)行明密變換的法則,稱為密碼的體制進(jìn)行明密變換的法則,稱為密碼的體制。指示這種變換的參數(shù),指示這種變換的參數(shù),稱為密鑰。稱為密鑰。它們是密碼編制的重要組成部分。密碼體制的基本類它們是密碼編制的重要組成部分。密碼體制的基本類型可以分為型可以分為4種種: (1) 錯(cuò)亂錯(cuò)亂按照規(guī)定的圖形和線路,改變明文字母或數(shù)碼等的按照規(guī)定的圖形和線路,改變明文字母或數(shù)碼等的位置成為密文;位置成為密文; (2) 代替代替用一個(gè)或多個(gè)代替表將明文字母或數(shù)碼等代替為密用一個(gè)或多個(gè)代替表將明文字母或數(shù)碼

21、等代替為密文;文; (3) 密本密本用預(yù)先編定的字母或數(shù)字密碼組,代替一定的詞組用預(yù)先編定的字母或數(shù)字密碼組,代替一定的詞組單詞等變明文為密文;單詞等變明文為密文; (4) 加亂加亂用有限元素組成的一串序列作為亂數(shù),按規(guī)定的算用有限元素組成的一串序列作為亂數(shù),按規(guī)定的算法,同明文序列相結(jié)合變成密文。以上四種密碼體制,既可單獨(dú)法,同明文序列相結(jié)合變成密文。以上四種密碼體制,既可單獨(dú)使用,也可混合使用,以編制出各種復(fù)雜度很高的實(shí)用密碼。使用,也可混合使用,以編制出各種復(fù)雜度很高的實(shí)用密碼。版權(quán)所有,盜版必糾 根據(jù)密鑰的特點(diǎn)將密碼體制分為根據(jù)密鑰的特點(diǎn)將密碼體制分為對(duì)稱密碼體制對(duì)稱密碼體制(Symm

22、etric Cryptosystem) 和和非對(duì)稱密碼體非對(duì)稱密碼體制制 (Asymmetric Cryptosystem)兩種。兩種。 對(duì)稱密碼體制又稱對(duì)稱密碼體制又稱單鑰單鑰(One-key) 或私鑰或私鑰(Private Key)或傳統(tǒng))或傳統(tǒng)(Classical)密碼體制。非密碼體制。非對(duì)稱密碼體制又稱對(duì)稱密碼體制又稱雙鑰雙鑰(Two-Key) 或公鑰或公鑰(Public Key)密碼體制。密碼體制。 版權(quán)所有,盜版必糾 在對(duì)稱密碼體制中,加密密鑰和解密密鑰是一樣的或者在對(duì)稱密碼體制中,加密密鑰和解密密鑰是一樣的或者彼此之間是容易相互確定的彼此之間是容易相互確定的。 在私鑰密碼體制中,

23、按在私鑰密碼體制中,按加密方式又將私鑰密碼體制分為加密方式又將私鑰密碼體制分為流密碼流密碼(Stream Cipher)和分組密碼和分組密碼(Block Cipher)兩種。兩種。在流密碼中將明文消息按字符逐位地進(jìn)行加密。在分組在流密碼中將明文消息按字符逐位地進(jìn)行加密。在分組密碼中將明文消息分組(每組含有多個(gè)字符),逐組地密碼中將明文消息分組(每組含有多個(gè)字符),逐組地進(jìn)行加密。進(jìn)行加密。 在公鑰密碼體制中,加密密鑰和解密密鑰不同,從一個(gè)在公鑰密碼體制中,加密密鑰和解密密鑰不同,從一個(gè)難于推出另一個(gè)難于推出另一個(gè),可將加密能力和解密能力分開。,可將加密能力和解密能力分開。版權(quán)所有,盜版必糾 現(xiàn)

24、代密碼學(xué)的一個(gè)基本原則是:一切秘密都存在于密鑰現(xiàn)代密碼學(xué)的一個(gè)基本原則是:一切秘密都存在于密鑰之中。之中。其含義是,在設(shè)計(jì)加密系統(tǒng)時(shí),總是假設(shè)密碼算其含義是,在設(shè)計(jì)加密系統(tǒng)時(shí),總是假設(shè)密碼算法是公開的,真正需要保密的是密鑰。這是因?yàn)槊艽a算法是公開的,真正需要保密的是密鑰。這是因?yàn)槊艽a算法相對(duì)密鑰來(lái)說(shuō)更容易泄漏。法相對(duì)密鑰來(lái)說(shuō)更容易泄漏。算法不需要保密的事實(shí)意算法不需要保密的事實(shí)意味著制造商能夠并已經(jīng)開發(fā)了實(shí)現(xiàn)數(shù)據(jù)加密算法的低成味著制造商能夠并已經(jīng)開發(fā)了實(shí)現(xiàn)數(shù)據(jù)加密算法的低成本芯片,這些芯片可廣泛使用并能與一些產(chǎn)品融為一體本芯片,這些芯片可廣泛使用并能與一些產(chǎn)品融為一體。對(duì)于加密算法的使用,主要

25、的安全問題是維護(hù)其密鑰的對(duì)于加密算法的使用,主要的安全問題是維護(hù)其密鑰的安全。安全。版權(quán)所有,盜版必糾 那么,什么樣的密碼體制是安全的呢?有一種理想的加那么,什么樣的密碼體制是安全的呢?有一種理想的加密方案,叫做密方案,叫做一次一密密碼一次一密密碼(One-Time Pad),),它它是由是由Major Joseph Mauborgne和和AT&T公司的公司的Gilbert Vernam在在1917年發(fā)明的。一次一密的密年發(fā)明的。一次一密的密碼本是一個(gè)大的不重復(fù)的真隨機(jī)密鑰字母集,這個(gè)密鑰碼本是一個(gè)大的不重復(fù)的真隨機(jī)密鑰字母集,這個(gè)密鑰字母集被寫在幾張紙上,并一起粘成一個(gè)密碼本。發(fā)方字

26、母集被寫在幾張紙上,并一起粘成一個(gè)密碼本。發(fā)方用密碼本中的每一個(gè)作為密鑰的字母準(zhǔn)確地加密一個(gè)明用密碼本中的每一個(gè)作為密鑰的字母準(zhǔn)確地加密一個(gè)明文字符。加密是明文字符和一次一密亂碼本密鑰字符的文字符。加密是明文字符和一次一密亂碼本密鑰字符的模模26加法。加法。 版權(quán)所有,盜版必糾 每個(gè)密鑰僅對(duì)一個(gè)消息使用一次。發(fā)方對(duì)所發(fā)的每個(gè)密鑰僅對(duì)一個(gè)消息使用一次。發(fā)方對(duì)所發(fā)的消息加密,然后銷毀密碼本中用過(guò)的一頁(yè)。收方消息加密,然后銷毀密碼本中用過(guò)的一頁(yè)。收方有一個(gè)同樣的密碼本,并依次使用密碼本上的每有一個(gè)同樣的密碼本,并依次使用密碼本上的每個(gè)密鑰去解密密文的每個(gè)字符。收方在解密消息個(gè)密鑰去解密密文的每個(gè)字符

27、。收方在解密消息后銷毀密碼本中用過(guò)的一頁(yè)。后銷毀密碼本中用過(guò)的一頁(yè)。 只要密碼本不被泄漏只要密碼本不被泄漏,該密碼體制是絕對(duì)安全的。,該密碼體制是絕對(duì)安全的。該體制的主要問題的密碼本的安全分配和安全存該體制的主要問題的密碼本的安全分配和安全存儲(chǔ)問題。儲(chǔ)問題。 例如,如果消息是:例如,如果消息是: ONETIMEPAD , 而取自亂碼本的密鑰序列是而取自亂碼本的密鑰序列是 TBFRGFARFM , 那么密文就是那么密文就是 IPKLPSFHGQ , 因?yàn)橐驗(yàn)?O + T mod26 = I N + B mod26 = P E + F mod26 = K 等等。等等。 版權(quán)所有,盜版必糾版權(quán)所有,

28、盜版必糾 根據(jù)密碼分析者破譯時(shí)已具備的前提條件,通常人們將攻擊類型根據(jù)密碼分析者破譯時(shí)已具備的前提條件,通常人們將攻擊類型分為分為4種。種。 1. 唯密文攻擊唯密文攻擊(Ciphertext-only Attack):密碼分析者有一:密碼分析者有一個(gè)或更多的用個(gè)或更多的用同一密鑰加密同一密鑰加密的密文,通過(guò)對(duì)這些截獲的密文進(jìn)行的密文,通過(guò)對(duì)這些截獲的密文進(jìn)行分析得出明文或密鑰。分析得出明文或密鑰。 2. 已知明文攻擊已知明文攻擊(Known Plaintext Attack):除待解的密:除待解的密文外,密碼分析者文外,密碼分析者有一些有一些明文和用同一個(gè)密鑰加密這些明文所對(duì)明文和用同一個(gè)密鑰

29、加密這些明文所對(duì)應(yīng)的密文。應(yīng)的密文。 3. 選擇明文攻擊選擇明文攻擊(Chosen Plaintext Attack):密碼分析者:密碼分析者可以得到所需要的可以得到所需要的任何明文所對(duì)應(yīng)的密文任何明文所對(duì)應(yīng)的密文。如針對(duì)如針對(duì)RSA算法進(jìn)算法進(jìn)行攻擊。行攻擊。 4. 選擇密文攻擊選擇密文攻擊(Chosen Ciphertext Attack):密碼分析密碼分析者可得到所需要的者可得到所需要的任何密文所對(duì)應(yīng)的明文任何密文所對(duì)應(yīng)的明文。(。(比如用一定的手段在通信過(guò)程中偽造消息替換真實(shí)消息,然后竊取并獲得解密結(jié)果) 上述四種攻擊類型的強(qiáng)度按序遞增,如果一個(gè)密碼系統(tǒng)能抵抗選上述四種攻擊類型的強(qiáng)度按

30、序遞增,如果一個(gè)密碼系統(tǒng)能抵抗選擇明文攻擊,那么它當(dāng)然能夠抵抗唯密文攻擊和已知明文攻擊。擇明文攻擊,那么它當(dāng)然能夠抵抗唯密文攻擊和已知明文攻擊。版權(quán)所有,盜版必糾密碼技術(shù)的應(yīng)用一直伴隨著人類文化的發(fā)展,其古老甚至原始的方法奠定了現(xiàn)代密碼學(xué)的基礎(chǔ)。使用密碼的目標(biāo)就是使一份消息或記錄對(duì)非授權(quán)使一份消息或記錄對(duì)非授權(quán)的人是不可理解的的人是不可理解的。下面介紹古典密體制發(fā)展演化的過(guò)程。版權(quán)所有,盜版必糾 最為人們所熟悉的古典加密方法,莫過(guò)于最為人們所熟悉的古典加密方法,莫過(guò)于隱寫術(shù)隱寫術(shù)。它通常將秘密消息隱藏于其它消息中,使真正的秘它通常將秘密消息隱藏于其它消息中,使真正的秘密通過(guò)一份無(wú)傷大雅的消息發(fā)

31、送出去。隱寫術(shù)分為密通過(guò)一份無(wú)傷大雅的消息發(fā)送出去。隱寫術(shù)分為兩種,兩種,技術(shù)隱寫術(shù)技術(shù)隱寫術(shù)和語(yǔ)言隱寫術(shù)。技術(shù)方面的隱寫和語(yǔ)言隱寫術(shù)。技術(shù)方面的隱寫比較容易想象:比如不可見的墨水,洋蔥法和牛奶比較容易想象:比如不可見的墨水,洋蔥法和牛奶法也被證明是普遍且有效的方法(只要在背面加熱法也被證明是普遍且有效的方法(只要在背面加熱或紫外線照射即可復(fù)現(xiàn))。語(yǔ)言隱寫術(shù)與密碼編碼或紫外線照射即可復(fù)現(xiàn))。語(yǔ)言隱寫術(shù)與密碼編碼學(xué)關(guān)系比較密切,它主要提供兩種類型的方法:符學(xué)關(guān)系比較密切,它主要提供兩種類型的方法:符號(hào)碼和公開代碼。號(hào)碼和公開代碼。 版權(quán)所有,盜版必糾 1. 符號(hào)碼符號(hào)碼 符號(hào)碼是以可見的方式,如

32、手寫體字或圖形,隱藏秘密的書寫。在書或報(bào)紙上標(biāo)記所選擇的字母,比如用點(diǎn)或短劃線,這比上述方法更容易被人懷疑,除非使用顯隱墨水,但此方法易于實(shí)現(xiàn)。一種變形的應(yīng)用是降低所關(guān)心的字母,使其水平位置略低于其它字母,但這種降低幾乎讓人覺察不到。 版權(quán)所有,盜版必糾 2. 公開代碼公開代碼 一份秘密的信件或偽裝的消息要通過(guò)公開信道傳送,需要雙方事前的約定,也就是需要一種公開代碼。這可能是保密技術(shù)的最古老形式,公開文獻(xiàn)中經(jīng)常可以看到。東方和遠(yuǎn)東的商人和賭徒在這方面有獨(dú)到之處,他們非常熟練地掌握了手勢(shì)和表情的應(yīng)用。在美國(guó)的紙牌騙子中較為盛行的方法有:手拿一支煙或用手撓一下頭,表示所持的牌不錯(cuò);一只手放在胸前并

33、且蹺起大拇指,意思是“我將贏得這局,有人愿意跟我嗎?”右手手掌朝下放在桌子上,表示“是”,手握成拳頭表示“不”。 版權(quán)所有,盜版必糾代替密碼就是將明文字母表中的每個(gè)字符替代替密碼就是將明文字母表中的每個(gè)字符替換為密文字母表中的字符。這里對(duì)應(yīng)密文字母換為密文字母表中的字符。這里對(duì)應(yīng)密文字母可能是一個(gè),也可能是多個(gè)。接收者對(duì)密文進(jìn)可能是一個(gè),也可能是多個(gè)。接收者對(duì)密文進(jìn)行逆向替換即可得到明文。代替密碼有五種表行逆向替換即可得到明文。代替密碼有五種表現(xiàn)形式:現(xiàn)形式: 版權(quán)所有,盜版必糾 1. 單表代替單表代替 即簡(jiǎn)單代替密碼或者稱為即簡(jiǎn)單代替密碼或者稱為單字母代替單字母代替,明文字,明文字母表中的一

34、個(gè)字符對(duì)應(yīng)密文字母表中的一個(gè)字母表中的一個(gè)字符對(duì)應(yīng)密文字母表中的一個(gè)字符。這是所有加密中最簡(jiǎn)單的方法。符。這是所有加密中最簡(jiǎn)單的方法。 版權(quán)所有,盜版必糾 2. 多名碼代替多名碼代替 就是將就是將明文字母表中的字符映射為密文字母表中明文字母表中的字符映射為密文字母表中的多個(gè)字符的多個(gè)字符。多名碼簡(jiǎn)單代替早在。多名碼簡(jiǎn)單代替早在1401年就由年就由DuchyMantua公司使用。在英文中,元音字公司使用。在英文中,元音字母出現(xiàn)頻率最高,降低對(duì)應(yīng)密文字母出現(xiàn)頻率的母出現(xiàn)頻率最高,降低對(duì)應(yīng)密文字母出現(xiàn)頻率的一種方法就是使用多名碼,如一種方法就是使用多名碼,如e可能被密文可能被密文5、13或或25替代

35、。替代。 版權(quán)所有,盜版必糾 3. 多音碼代替多音碼代替 就是將多個(gè)明文字符代替為一個(gè)密文字符就是將多個(gè)明文字符代替為一個(gè)密文字符。比如。比如將字母將字母“i” 和和“j”對(duì)應(yīng)為對(duì)應(yīng)為“K”,“v”和和“w”代代替為替為“L”。最古老的這種多字母加密始見于最古老的這種多字母加密始見于1563年由波他的年由波他的密寫評(píng)價(jià)密寫評(píng)價(jià)(De furtiois literarum notis)一書。)一書。 版權(quán)所有,盜版必糾 3. 多表代替多表代替 即由多個(gè)簡(jiǎn)單代替組成,也就是使用了兩個(gè)或兩即由多個(gè)簡(jiǎn)單代替組成,也就是使用了兩個(gè)或兩個(gè)以上的代替表。個(gè)以上的代替表。比如使用有比如使用有5個(gè)簡(jiǎn)單代替表的個(gè)

36、簡(jiǎn)單代替表的代替密碼,明文的第一個(gè)字母用第一個(gè)代替表,代替密碼,明文的第一個(gè)字母用第一個(gè)代替表,第二個(gè)字母用第二個(gè)表,第三個(gè)字母用第三個(gè)表,第二個(gè)字母用第二個(gè)表,第三個(gè)字母用第三個(gè)表,以此類推,循環(huán)使用這五張代替表。以此類推,循環(huán)使用這五張代替表。多表代替密多表代替密碼由萊昂碼由萊昂.巴蒂斯塔于巴蒂斯塔于1568年發(fā)明,著名的維年發(fā)明,著名的維吉尼亞密碼和博福特密碼均是多表代替密碼。吉尼亞密碼和博福特密碼均是多表代替密碼。 版權(quán)所有,盜版必糾 4. 密本密本 密本不同于代替表,密本不同于代替表,一個(gè)密本可能是由大量代表字、片語(yǔ)、音節(jié)一個(gè)密本可能是由大量代表字、片語(yǔ)、音節(jié)和字母這些明文單元和數(shù)字

37、密本組組成和字母這些明文單元和數(shù)字密本組組成。如。如1563- baggage,1673-bomb,2675-catch,2784-custom,3645-decide to,4728-from then on等等。在某種意義上,密等等。在某種意義上,密本就是一個(gè)龐大的代替表,其基本的明文單位是單詞和片語(yǔ),字本就是一個(gè)龐大的代替表,其基本的明文單位是單詞和片語(yǔ),字母和音節(jié)主要用來(lái)拼出密本中沒有的單詞。實(shí)際使用中,密本和母和音節(jié)主要用來(lái)拼出密本中沒有的單詞。實(shí)際使用中,密本和代替表的區(qū)別還是比較明顯的,代替表是按照代替表的區(qū)別還是比較明顯的,代替表是按照規(guī)則的明文長(zhǎng)度規(guī)則的明文長(zhǎng)度進(jìn)進(jìn)行操作的,

38、而行操作的,而密本是按照密本是按照可變長(zhǎng)度的明文組可變長(zhǎng)度的明文組進(jìn)行操作的。密本的進(jìn)行操作的。密本的最早出現(xiàn)在最早出現(xiàn)在1400年左右,后來(lái)大多應(yīng)用于商業(yè)領(lǐng)域。二戰(zhàn)中盟年左右,后來(lái)大多應(yīng)用于商業(yè)領(lǐng)域。二戰(zhàn)中盟軍的商船密本,美國(guó)外交系統(tǒng)使用的軍的商船密本,美國(guó)外交系統(tǒng)使用的GRAY密本就是典型的例子。密本就是典型的例子。版權(quán)所有,盜版必糾 凱撒密碼是一個(gè)古老的代替加密方法,當(dāng)年凱撒大帝行凱撒密碼是一個(gè)古老的代替加密方法,當(dāng)年凱撒大帝行軍打仗時(shí)用這種方法進(jìn)行通信,因此得名。它的原理很軍打仗時(shí)用這種方法進(jìn)行通信,因此得名。它的原理很簡(jiǎn)單,其實(shí)就是單字母的替換。讓看一個(gè)簡(jiǎn)單的例子:簡(jiǎn)單,其實(shí)就是單字

39、母的替換。讓看一個(gè)簡(jiǎn)單的例子:“This is Caesar Code”。用凱撒密碼加密后字符。用凱撒密碼加密后字符串變?yōu)榇優(yōu)椤皏jku ku Ecguct Eqfg”??雌饋?lái)似乎加密。看起來(lái)似乎加密得很得很“安全安全”。可是只要把這段很難懂的東西每一個(gè)字??墒侵灰堰@段很難懂的東西每一個(gè)字母換為字母表中前移母換為字母表中前移2位的字母,結(jié)果就出來(lái)了。凱撒位的字母,結(jié)果就出來(lái)了。凱撒密碼的字母對(duì)應(yīng)關(guān)系如下:密碼的字母對(duì)應(yīng)關(guān)系如下: A b c d e f g h i x y z C d e f g h I j k z a b版權(quán)所有,盜版必糾 如何破解包括愷撒密碼在內(nèi)的單字母替換密碼呢?方法

40、是如何破解包括愷撒密碼在內(nèi)的單字母替換密碼呢?方法是字母頻字母頻度分析度分析。盡管不知道是誰(shuí)發(fā)現(xiàn)了字母頻度的差異可以用于破解密盡管不知道是誰(shuí)發(fā)現(xiàn)了字母頻度的差異可以用于破解密碼。但是碼。但是9世紀(jì)的科學(xué)家阿爾世紀(jì)的科學(xué)家阿爾金迪在金迪在關(guān)于破譯加密信息的手稿關(guān)于破譯加密信息的手稿對(duì)該技術(shù)做了最早的描述:對(duì)該技術(shù)做了最早的描述:“如果知道一條加密信息所使用的語(yǔ)如果知道一條加密信息所使用的語(yǔ)言,那么破譯這條加密信息的方法就是找出同樣的語(yǔ)言寫的一篇言,那么破譯這條加密信息的方法就是找出同樣的語(yǔ)言寫的一篇其他文章,大約一頁(yè)紙長(zhǎng),然后計(jì)算其中每個(gè)字母的出現(xiàn)頻率。其他文章,大約一頁(yè)紙長(zhǎng),然后計(jì)算其中每個(gè)字

41、母的出現(xiàn)頻率。將頻率最高的字母標(biāo)為將頻率最高的字母標(biāo)為1號(hào),頻率排第號(hào),頻率排第2的標(biāo)為的標(biāo)為2號(hào),第號(hào),第3標(biāo)為標(biāo)為3號(hào),依次類推,直到數(shù)完樣品文章中所有字母。然后觀察需要破號(hào),依次類推,直到數(shù)完樣品文章中所有字母。然后觀察需要破譯的密文,同樣分類出所有的字母,找出頻率最高的字母,并全譯的密文,同樣分類出所有的字母,找出頻率最高的字母,并全部用樣本文章中最高頻率的字母替換。第二高頻的字母用樣本中部用樣本文章中最高頻率的字母替換。第二高頻的字母用樣本中2號(hào)代替,第號(hào)代替,第3則用則用3號(hào)替換,直到密文中所有字母均已被樣本中號(hào)替換,直到密文中所有字母均已被樣本中的字母替換。的字母替換?!卑鏅?quán)所有

42、,盜版必糾 以英文為例,首先以一篇或幾篇一定長(zhǎng)度的普通文章,建立字母表中每個(gè)字母的頻度表。再分析密文中的字母頻率,將其對(duì)照即可破解。版權(quán)所有,盜版必糾 雖然設(shè)密者后來(lái)針對(duì)頻率分析技術(shù)對(duì)以前的設(shè)密方法做雖然設(shè)密者后來(lái)針對(duì)頻率分析技術(shù)對(duì)以前的設(shè)密方法做了些改進(jìn),比如說(shuō)引進(jìn)空符號(hào)等,目的是為了打破正常了些改進(jìn),比如說(shuō)引進(jìn)空符號(hào)等,目的是為了打破正常的字母出現(xiàn)頻率。但是小的改進(jìn)已經(jīng)無(wú)法掩蓋單字母替的字母出現(xiàn)頻率。但是小的改進(jìn)已經(jīng)無(wú)法掩蓋單字母替換法的巨大缺陷了。到換法的巨大缺陷了。到16世紀(jì),最好的密碼破譯師已世紀(jì),最好的密碼破譯師已經(jīng)能夠破譯當(dāng)時(shí)大多數(shù)的加密信息。經(jīng)能夠破譯當(dāng)時(shí)大多數(shù)的加密信息。 但

43、是這種破解方法也有其局限性。但是這種破解方法也有其局限性。短文可能嚴(yán)重偏離標(biāo)短文可能嚴(yán)重偏離標(biāo)準(zhǔn)頻率,假如文章少于準(zhǔn)頻率,假如文章少于100個(gè)字母,那么對(duì)它的解密個(gè)字母,那么對(duì)它的解密就會(huì)比較困難。就會(huì)比較困難。而且不是所有文章都適用標(biāo)準(zhǔn)頻度。而且不是所有文章都適用標(biāo)準(zhǔn)頻度。版權(quán)所有,盜版必糾 在換位密碼中,明文字符集保持不變,只是字母明文字符集保持不變,只是字母的順序被打亂了的順序被打亂了。比如簡(jiǎn)單的縱行換位,就是將明文按照固定的寬度寫在一張圖表紙上,然后按照垂直方向讀取密文。版權(quán)所有,盜版必糾 通過(guò)執(zhí)行通過(guò)執(zhí)行多次置換多次置換,置換密碼的安全性能夠有較,置換密碼的安全性能夠有較大改觀。大改

44、觀。應(yīng)使用復(fù)雜的排列方法且不容易被重構(gòu)。應(yīng)使用復(fù)雜的排列方法且不容易被重構(gòu)。版權(quán)所有,盜版必糾 對(duì)稱密碼學(xué)所采用的算法也稱為對(duì)稱密鑰算法。所謂的對(duì)稱密碼學(xué)所采用的算法也稱為對(duì)稱密鑰算法。所謂的對(duì)對(duì)稱密鑰算法就是用加密數(shù)據(jù)使用的密鑰可以計(jì)算出用于解稱密鑰算法就是用加密數(shù)據(jù)使用的密鑰可以計(jì)算出用于解密數(shù)據(jù)的密鑰,反之亦然密數(shù)據(jù)的密鑰,反之亦然。絕大多數(shù)的對(duì)稱加密算法加密絕大多數(shù)的對(duì)稱加密算法加密密鑰和解密密鑰都是相同的。對(duì)稱加密算法要求通訊雙方密鑰和解密密鑰都是相同的。對(duì)稱加密算法要求通訊雙方在建立安全信道之前,約定好所使用的密鑰。對(duì)稱算法是在建立安全信道之前,約定好所使用的密鑰。對(duì)稱算法是傳統(tǒng)常

45、用的算法。如傳統(tǒng)常用的算法。如DES、3DES、AES等算法都屬于對(duì)等算法都屬于對(duì)稱算法。圖稱算法。圖13.5所示為對(duì)稱密碼算法的原理圖。所示為對(duì)稱密碼算法的原理圖。版權(quán)所有,盜版必糾DES(Data Encryption Standard) 算法是美算法是美國(guó)政府機(jī)關(guān)為了保護(hù)信息處理中的計(jì)算機(jī)數(shù)據(jù)而使用國(guó)政府機(jī)關(guān)為了保護(hù)信息處理中的計(jì)算機(jī)數(shù)據(jù)而使用的一種加密方式,是一種常規(guī)密碼體制的密碼算法,的一種加密方式,是一種常規(guī)密碼體制的密碼算法,目前已廣泛用于電子商務(wù)系統(tǒng)中。目前已廣泛用于電子商務(wù)系統(tǒng)中。64位位DES的算法詳?shù)乃惴ㄔ敿?xì)情況已在美國(guó)聯(lián)邦信息處理標(biāo)準(zhǔn)(細(xì)情況已在美國(guó)聯(lián)邦信息處理標(biāo)準(zhǔn)(F

46、IPS PUB46)上發(fā)表。上發(fā)表。該算法輸入的是該算法輸入的是64比特的明文,在比特的明文,在64比特比特密鑰的控制下產(chǎn)生密鑰的控制下產(chǎn)生64比特的密文;反之輸入比特的密文;反之輸入64比特比特的密文,輸出的密文,輸出64比特的明文。比特的明文。64比特的密鑰中含有比特的密鑰中含有8個(gè)比特的奇偶校驗(yàn)位,所以實(shí)際有效密鑰長(zhǎng)度為個(gè)比特的奇偶校驗(yàn)位,所以實(shí)際有效密鑰長(zhǎng)度為56比比特。特。圖圖13.6 所示為所示為DES算法的流程圖。圖算法的流程圖。圖13.7所示所示為為DES算法的結(jié)構(gòu)。算法的結(jié)構(gòu)。版權(quán)所有,盜版必糾版權(quán)所有,盜版必糾版權(quán)所有,盜版必糾 隨著研究的發(fā)展,隨著研究的發(fā)展,DES算法在

47、基本不改變加密強(qiáng)度算法在基本不改變加密強(qiáng)度的條件下,發(fā)展了許多變形的條件下,發(fā)展了許多變形DES。3DES 是是DES算算法擴(kuò)展其密鑰長(zhǎng)度的一種方法,法擴(kuò)展其密鑰長(zhǎng)度的一種方法,可使加密密鑰長(zhǎng)度擴(kuò)可使加密密鑰長(zhǎng)度擴(kuò)展到展到128比特(比特(112比特有效)或比特有效)或192比特(比特(168比特有效)。其基本原理是將比特有效)。其基本原理是將128比特的密鑰分為比特的密鑰分為64比特的兩組,對(duì)明文多次進(jìn)行普通的比特的兩組,對(duì)明文多次進(jìn)行普通的DES加解密加解密操作,從而增強(qiáng)加密強(qiáng)度。操作,從而增強(qiáng)加密強(qiáng)度。版權(quán)所有,盜版必糾 對(duì)稱算法最主要的問題是:由于加解密雙方都要使用相同的密鑰,對(duì)稱算法

48、最主要的問題是:由于加解密雙方都要使用相同的密鑰,因此在發(fā)送、接收數(shù)據(jù)之前,必須完成因此在發(fā)送、接收數(shù)據(jù)之前,必須完成密鑰的分發(fā)密鑰的分發(fā)。因而,密鑰。因而,密鑰的分發(fā)便成了該加密體系中的最薄弱因而風(fēng)險(xiǎn)最大的環(huán)節(jié)。的分發(fā)便成了該加密體系中的最薄弱因而風(fēng)險(xiǎn)最大的環(huán)節(jié)。 在歷史戰(zhàn)爭(zhēng)中,破獲他國(guó)情報(bào)的紀(jì)錄不外是兩種方式:一種是在在歷史戰(zhàn)爭(zhēng)中,破獲他國(guó)情報(bào)的紀(jì)錄不外是兩種方式:一種是在敵方更換敵方更換“密碼本密碼本”的過(guò)程中截獲對(duì)方密碼本;另一種是敵人密的過(guò)程中截獲對(duì)方密碼本;另一種是敵人密鑰變動(dòng)周期太長(zhǎng),被長(zhǎng)期跟蹤,找出規(guī)律從而被破獲。鑰變動(dòng)周期太長(zhǎng),被長(zhǎng)期跟蹤,找出規(guī)律從而被破獲。 在對(duì)稱算法中,

49、盡管由于密鑰強(qiáng)度增強(qiáng),跟蹤找出規(guī)律破獲密鑰在對(duì)稱算法中,盡管由于密鑰強(qiáng)度增強(qiáng),跟蹤找出規(guī)律破獲密鑰的機(jī)會(huì)大大減小了,但密鑰分發(fā)的困難問題幾乎無(wú)法解決。如,的機(jī)會(huì)大大減小了,但密鑰分發(fā)的困難問題幾乎無(wú)法解決。如,設(shè)有設(shè)有n方參與通信,若方參與通信,若 n 方都采用同一個(gè)對(duì)稱密鑰,一旦密鑰被方都采用同一個(gè)對(duì)稱密鑰,一旦密鑰被破解,整個(gè)體系就會(huì)崩潰;若采用不同的對(duì)稱密鑰則需破解,整個(gè)體系就會(huì)崩潰;若采用不同的對(duì)稱密鑰則需 n(n-1)/2個(gè)密鑰,密鑰數(shù)與參與通信人數(shù)的平方數(shù)成正比。個(gè)密鑰,密鑰數(shù)與參與通信人數(shù)的平方數(shù)成正比。 這便使這便使大系統(tǒng)密鑰的管理大系統(tǒng)密鑰的管理幾乎成為不可能。幾乎成為不可能

50、。所謂非對(duì)稱加密算法是指用于加密的密鑰與用于解密的密鑰是不同的,而且從加密的密鑰無(wú)法推導(dǎo)出解密的密鑰。這類算法之所以被稱為公鑰算法是因?yàn)橛糜诩用艿拿荑€是可以廣泛公開的加密的密鑰是可以廣泛公開的,任何人都可以得到加密密鑰并用來(lái)加任何人都可以得到加密密鑰并用來(lái)加密信息,但是只有擁有對(duì)應(yīng)解密密鑰的人才能將信息解密密信息,但是只有擁有對(duì)應(yīng)解密密鑰的人才能將信息解密。圖13.8為對(duì)稱加密算法示意圖。版權(quán)所有,盜版必糾 在公鑰體制中,加密密鑰不同于解密密鑰,將加密密鑰公之于眾,誰(shuí)都可以使用;而解密密鑰只有解密人自己知道。它們分別稱為公開密鑰 (Public key,PK) 和秘密密鑰 (Secret ke

51、y,SK)。目前已經(jīng)有許多非對(duì)稱加密算法,如RSA算法、ECC算法等。 迄今為止的所有公鑰密碼體系中,RSA系統(tǒng)是最著名、使用最廣泛的一種。RSA公開密鑰密碼系統(tǒng)是由R. Rivest、A. Shamir和L. Adleman三位教授于1977年提出的。RSA的取名就是來(lái)自于這三位發(fā)明者的姓的第一個(gè)字母。版權(quán)所有,盜版必糾 RSA算法是目前應(yīng)用最為廣泛的公鑰密碼算法。它的基本原理如下: 密鑰管理中心產(chǎn)生一對(duì)公開密鑰和秘密密鑰,方法是在離線方式下,先產(chǎn)生兩個(gè)足夠大的強(qiáng)質(zhì)數(shù)p、q。可得p與q的乘積為n=pxq。再由p和q算出另一個(gè)數(shù)z=(p-1)(q-1),然后再選取一個(gè)與z互素的奇數(shù)e,稱e為公

52、開指數(shù);從這個(gè)e值可以找出另一個(gè)值d,并能滿足ed=1 mod (z)條件。由此而得到的兩組數(shù)(n,e) 和 (n,d)分別被稱為公開密鑰和秘密密鑰,或簡(jiǎn)稱公鑰和私鑰。 對(duì)于明文M,用公鑰 (n,e) 加密可得到密文C。 C = Me mod n (1) 對(duì)于密文C,用私鑰(n,d)解密可得到明文M。 M = Cd mod n (2)版權(quán)所有,盜版必糾 用于簽名:用于簽名:定義用私鑰定義用私鑰(n,d)先進(jìn)行解密后,然后用先進(jìn)行解密后,然后用公鑰公鑰(n,e)進(jìn)行加密。進(jìn)行加密。 p、q、z由密鑰管理中心負(fù)責(zé)保密。在密鑰對(duì)一經(jīng)產(chǎn)生由密鑰管理中心負(fù)責(zé)保密。在密鑰對(duì)一經(jīng)產(chǎn)生便自動(dòng)將其銷毀或者為了以

53、后密鑰恢復(fù)的需要將其存入便自動(dòng)將其銷毀或者為了以后密鑰恢復(fù)的需要將其存入離線的安全黑庫(kù)里面;如密鑰對(duì)是用戶自己離線產(chǎn)生的,離線的安全黑庫(kù)里面;如密鑰對(duì)是用戶自己離線產(chǎn)生的,則則p、q、z的保密或及時(shí)銷毀由用戶自己負(fù)責(zé)。的保密或及時(shí)銷毀由用戶自己負(fù)責(zé)。 在密鑰對(duì)產(chǎn)生好后,公鑰則通過(guò)簽證機(jī)關(guān)在密鑰對(duì)產(chǎn)生好后,公鑰則通過(guò)簽證機(jī)關(guān)CA以證書的以證書的形式向用戶分發(fā);經(jīng)加密后的私鑰用形式向用戶分發(fā);經(jīng)加密后的私鑰用PIN卡攜帶分發(fā)卡攜帶分發(fā)至用戶本人。至用戶本人。版權(quán)所有,盜版必糾 RSA算法之所以具有安全性,是基于數(shù)論中的一個(gè)特算法之所以具有安全性,是基于數(shù)論中的一個(gè)特性事實(shí):即將兩個(gè)大的質(zhì)數(shù)合成一個(gè)

54、大數(shù)很容易,而相性事實(shí):即將兩個(gè)大的質(zhì)數(shù)合成一個(gè)大數(shù)很容易,而相反的過(guò)程則非常困難。在當(dāng)今技術(shù)條件下,當(dāng)反的過(guò)程則非常困難。在當(dāng)今技術(shù)條件下,當(dāng)n足夠大足夠大時(shí),為了找到時(shí),為了找到d,欲從,欲從n中通過(guò)質(zhì)因子分解試圖找到與中通過(guò)質(zhì)因子分解試圖找到與d對(duì)應(yīng)的對(duì)應(yīng)的p、q是極其困難甚至是不可能的。由此可見,是極其困難甚至是不可能的。由此可見,RSA的安全性是依賴于作為公鑰的大數(shù)的安全性是依賴于作為公鑰的大數(shù)n的位數(shù)長(zhǎng)度的的位數(shù)長(zhǎng)度的。 為保證足夠的安全性,一般認(rèn)為現(xiàn)在的個(gè)人應(yīng)用需要用為保證足夠的安全性,一般認(rèn)為現(xiàn)在的個(gè)人應(yīng)用需要用384或或512比特位的比特位的n,公司需要用,公司需要用1024

55、比特位的比特位的n,重要的場(chǎng)合應(yīng)該用重要的場(chǎng)合應(yīng)該用2048比特位甚至更高的比特位甚至更高的n。版權(quán)所有,盜版必糾 散列函數(shù),也稱為Hash函數(shù)、雜湊函數(shù)、哈希算法、散列算法或消息摘要算法。它通過(guò)把一個(gè)單向數(shù)學(xué)函數(shù)應(yīng)用于數(shù)據(jù),將任意長(zhǎng)度的一塊數(shù)據(jù)轉(zhuǎn)換為一個(gè)定長(zhǎng)的、不可逆轉(zhuǎn)的數(shù)據(jù)。消息摘要算法可以敏感地檢測(cè)到數(shù)據(jù)是否被篡改。消息摘要算法再結(jié)合其他的算法就可以用來(lái)保護(hù)數(shù)據(jù)的完整性。版權(quán)所有,盜版必糾 散列函數(shù)的特點(diǎn)是:散列函數(shù)的特點(diǎn)是: 1接受的輸入報(bào)文數(shù)據(jù)沒有長(zhǎng)度限制;接受的輸入報(bào)文數(shù)據(jù)沒有長(zhǎng)度限制; 2對(duì)輸入任何長(zhǎng)度的報(bào)文數(shù)據(jù)能夠生成該電對(duì)輸入任何長(zhǎng)度的報(bào)文數(shù)據(jù)能夠生成該電文固定長(zhǎng)度的摘要文固

56、定長(zhǎng)度的摘要(數(shù)字指紋數(shù)字指紋)輸出;輸出; 3從報(bào)文能方便地算出摘要;從報(bào)文能方便地算出摘要; 4極難極難從指定的摘要生成一個(gè)報(bào)文,而由該從指定的摘要生成一個(gè)報(bào)文,而由該報(bào)文又反推算出該指定的摘要;報(bào)文又反推算出該指定的摘要; 5兩個(gè)不同的報(bào)文兩個(gè)不同的報(bào)文極難極難生成相同的摘要。生成相同的摘要。版權(quán)所有,盜版必糾 曾有數(shù)家統(tǒng)計(jì)計(jì)算結(jié)果表明,如數(shù)字指紋曾有數(shù)家統(tǒng)計(jì)計(jì)算結(jié)果表明,如數(shù)字指紋h(m)的長(zhǎng)度的長(zhǎng)度為為128位位(bit)時(shí),則任意兩個(gè)分別為時(shí),則任意兩個(gè)分別為M1M2的電文的電文具有完全相同的具有完全相同的h(m)的概率為的概率為1/2128,即近于零,即近于零的重復(fù)概率。而當(dāng)取的

57、重復(fù)概率。而當(dāng)取h(m)為為384(bit)乃至乃至1024(bit)時(shí),則更是不大可能重復(fù)了。時(shí),則更是不大可能重復(fù)了。 另外,如電文另外,如電文M1與電文與電文M2全等全等,則有則有h(m1)與與h(m2)全等,如只將全等,如只將M2或或M1中的某任意一位中的某任意一位(bit)改變了,其結(jié)果將導(dǎo)致改變了,其結(jié)果將導(dǎo)致h(m1)與與h(m2)中有一半左右中有一半左右對(duì)應(yīng)的位對(duì)應(yīng)的位(bit)的值都不相同了。的值都不相同了。版權(quán)所有,盜版必糾 目前常用的目前常用的Hash函數(shù)有函數(shù)有MD5(128bit)和)和SHA-1(160bits)等)等,它們都是以它們都是以 MD4 為基礎(chǔ)設(shè)計(jì)的。為

58、基礎(chǔ)設(shè)計(jì)的。Hash算法在信息安全方面的應(yīng)用主要體現(xiàn)在以下的算法在信息安全方面的應(yīng)用主要體現(xiàn)在以下的3個(gè)方面:個(gè)方面: (1) 文件校驗(yàn)文件校驗(yàn) 比較熟悉的校驗(yàn)算法有奇偶校驗(yàn)和比較熟悉的校驗(yàn)算法有奇偶校驗(yàn)和CRC校驗(yàn),這校驗(yàn),這2種校種校驗(yàn)都沒有抗數(shù)據(jù)篡改的能力,它們一定程度上能檢測(cè)數(shù)驗(yàn)都沒有抗數(shù)據(jù)篡改的能力,它們一定程度上能檢測(cè)數(shù)據(jù)傳輸中的信道誤碼,但卻不能防止對(duì)數(shù)據(jù)的惡意破壞。據(jù)傳輸中的信道誤碼,但卻不能防止對(duì)數(shù)據(jù)的惡意破壞。 MD5 Hash算法的算法的“數(shù)字指紋數(shù)字指紋”特性特性,使它成為目前,使它成為目前應(yīng)用最廣泛的一種文件完整性校驗(yàn)和應(yīng)用最廣泛的一種文件完整性校驗(yàn)和(Checksu

59、m)算算法。法。 版權(quán)所有,盜版必糾 (2) 數(shù)字簽名數(shù)字簽名 Hash 算法也是現(xiàn)代密碼體系中的一個(gè)重要組算法也是現(xiàn)代密碼體系中的一個(gè)重要組成部分。由于非對(duì)稱算法的運(yùn)算速度較慢,所成部分。由于非對(duì)稱算法的運(yùn)算速度較慢,所以在數(shù)字簽名協(xié)議中,單向散列函數(shù)扮演了一以在數(shù)字簽名協(xié)議中,單向散列函數(shù)扮演了一個(gè)重要的角色。個(gè)重要的角色。對(duì)對(duì) Hash 值,又稱值,又稱“數(shù)字摘要數(shù)字摘要”進(jìn)行數(shù)字簽名,進(jìn)行數(shù)字簽名,在統(tǒng)計(jì)上可以認(rèn)為與對(duì)文件本在統(tǒng)計(jì)上可以認(rèn)為與對(duì)文件本身進(jìn)行數(shù)字簽名是等效的身進(jìn)行數(shù)字簽名是等效的。而且這樣的協(xié)議還而且這樣的協(xié)議還有其他的優(yōu)點(diǎn)。有其他的優(yōu)點(diǎn)。 版權(quán)所有,盜版必糾 (3) “

60、挑戰(zhàn)挑戰(zhàn)-認(rèn)證模式認(rèn)證模式”鑒權(quán)協(xié)議鑒權(quán)協(xié)議 例如:例如:(1)客戶端向服務(wù)器端發(fā)送請(qǐng)求,要求進(jìn)行身份驗(yàn)證)客戶端向服務(wù)器端發(fā)送請(qǐng)求,要求進(jìn)行身份驗(yàn)證。 (2)服務(wù)器從數(shù)據(jù)庫(kù)中查找用戶名是否合法,若不合法則不做)服務(wù)器從數(shù)據(jù)庫(kù)中查找用戶名是否合法,若不合法則不做處理。處理。 (3)服務(wù)器產(chǎn)生一個(gè))服務(wù)器產(chǎn)生一個(gè)“挑戰(zhàn)挑戰(zhàn)”隨機(jī)數(shù)隨機(jī)數(shù),發(fā)給客戶端,發(fā)給客戶端,作為作為 “提提問問” 。 (4)客戶端使用)客戶端使用 “用戶名用戶名” +Hash(共享密鑰(共享密鑰+挑戰(zhàn))挑戰(zhàn)) 做做應(yīng)答應(yīng)答。 (5)服務(wù)器收到應(yīng)答)服務(wù)器收到應(yīng)答和自己計(jì)算的比較和自己計(jì)算的比較,相等則認(rèn)證通過(guò),反,相等則認(rèn)證通過(guò),反

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論