It計(jì)算機(jī)課件 計(jì)算機(jī)網(wǎng)絡(luò)安全 Chapter09密碼學(xué)與信息加密_第1頁(yè)
It計(jì)算機(jī)課件 計(jì)算機(jī)網(wǎng)絡(luò)安全 Chapter09密碼學(xué)與信息加密_第2頁(yè)
It計(jì)算機(jī)課件 計(jì)算機(jī)網(wǎng)絡(luò)安全 Chapter09密碼學(xué)與信息加密_第3頁(yè)
It計(jì)算機(jī)課件 計(jì)算機(jī)網(wǎng)絡(luò)安全 Chapter09密碼學(xué)與信息加密_第4頁(yè)
It計(jì)算機(jī)課件 計(jì)算機(jī)網(wǎng)絡(luò)安全 Chapter09密碼學(xué)與信息加密_第5頁(yè)
已閱讀5頁(yè),還剩76頁(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)介

清華大導(dǎo)出Best被北京交通大學(xué)出版H

TStNOHUAUNfVERStTYPRESS“http//prestbpi.c,

第9章密碼學(xué)與信息加密

9

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書6MM網(wǎng)絡(luò)安例程)第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

&內(nèi)容提要

-本章介紹密碼學(xué)的基本概念。

■介紹加密領(lǐng)域中兩種主流的加密技術(shù):

■DES加密(DataEncryptionStandard)

■RSA加密(Rivest-Shamir-Adleman)

■并用程序?qū)崿F(xiàn)這兩種加密技術(shù)的算法。

最后介紹目前常用的加密工具PGP

(PrettyGoodPrivacy),使用PGP產(chǎn)生

密鑰,加密文件和郵件。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

4密碼學(xué)概述

■密碼學(xué)是一門古老而深?yuàn)W的學(xué)科,對(duì)一般人來(lái)

說(shuō)是非常陌生的。長(zhǎng)期以來(lái),只在很小的范圍

內(nèi)使用,如軍事、外交、情報(bào)等部門。計(jì)算機(jī)

密碼學(xué)是研究計(jì)算機(jī)信息加密、解密及其變換

的科學(xué),是數(shù)學(xué)和計(jì)算機(jī)的交叉學(xué)科,也是一

門新興的學(xué)科。

■隨著計(jì)算機(jī)網(wǎng)絡(luò)和計(jì)算機(jī)通訊技術(shù)的發(fā)展,計(jì)

算機(jī)密碼學(xué)得到前所未有的重視并迅速普及和

發(fā)展起來(lái)。在國(guó)外,它已成為計(jì)算機(jī)安全主要

的研究方向。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

密碼技術(shù)簡(jiǎn)介

■密碼學(xué)的歷史比較悠久,在四千年前,古埃及人就開

始使用密碼來(lái)保密傳遞消息。

■兩千多年前,羅馬國(guó)王JuliusCaesare(愷撒)就開

始使用目前稱為“愷撒密碼”的密碼系統(tǒng)。但是密碼

技術(shù)直到本20世紀(jì)40年代以后才有重大突破和發(fā)展。

-特別是20世紀(jì)70年代后期,由于計(jì)算機(jī)、電子通信的

廣泛使用,現(xiàn)代密碼學(xué)得到了空前的發(fā)展。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

4消息和加密

■遵循國(guó)際命名標(biāo)準(zhǔn),加密和解密可以翻譯成:"Encipher(譯成

密碼)”和“(Decipher)(解譯密碼)”。也可以這樣命名:

aEncrypt(加密)”和"Decrypt(解密)”。

■消息被稱為明文。用某種方法偽裝消息以隱藏它的內(nèi)容的過(guò)程稱

為加密,加了密的消息稱為密文,而把密文轉(zhuǎn)變?yōu)槊魑牡倪^(guò)程稱

為解密,圖表明了加密和解密的過(guò)程。

原始明文

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

4明文密文

■明文用M(Message,消息)或P(Plaintext,明文)

表示,它可能是比特流、文本文件、位圖、數(shù)字化的

語(yǔ)音流或者數(shù)字化的視頻圖像等。

■密文用C(Cipher)表示,也是二進(jìn)制數(shù)據(jù),有時(shí)和M

一樣大,有時(shí)稍大。通過(guò)壓縮和加密的結(jié)合,C有可能

比P小些。

■加密函數(shù)E作用于M得到密文C,用數(shù)學(xué)公式表示為:E

(M)=Co解密函數(shù)D作用于C產(chǎn)生M,用數(shù)據(jù)公式表

示為:D(C)=Mo先加密后再解密消息,原始的明

文將恢復(fù)出來(lái),D(E(M))二M必須成立。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書:計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

鑒別、完整性和抗抵賴性

■除了提供機(jī)密性外,密碼學(xué)需要提供三方面的功能:鑒別、完整

性和抗抵賴性。這些功能是通過(guò)計(jì)算機(jī)進(jìn)行社會(huì)交流,至關(guān)重要

的需求。

■鑒別:消息的接收者應(yīng)該能夠確認(rèn)消息的來(lái)源;入侵者不可能偽

裝成他人。

■完整性:消息的接收者應(yīng)該能夠驗(yàn)證在傳送過(guò)程中消息沒(méi)有被修

改;入侵者不可能用假消息代替合法消息。

■抗抵賴性:發(fā)送消息者事后不可能虛假地否認(rèn)他發(fā)送的消息。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

T算法和密鑰

■現(xiàn)代密碼學(xué)用密鑰解決了這個(gè)問(wèn)題,密鑰用K表示。K

可以是很多數(shù)值里的任意值,密鑰K的可能值的范圍叫

做密鑰空間。加密和解密運(yùn)算都使用這個(gè)密鑰,即運(yùn)

算都依賴于密鑰,并用K作為下標(biāo)表示,加解密函數(shù)表

達(dá)為:

.EK(M)=C

■DK(C)=M

-DK(EK(M))=M,如圖8-2所示。

密鑰密鑰

明文密文原始明文

----------?力口密解密

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書61算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

-有些算法使用不同的加密密鑰和解密密鑰,也就是說(shuō)加密密鑰K1

與相應(yīng)的解密密鑰K2不同,在這種情況下,加密和解密的函數(shù)表

達(dá)式為:

-EKI(M)=C

■DK2(C)=M

■函數(shù)必須具有的特性是,DK2(EKI(M))=M,如圖8-3所示。

加密解密

密鑰.密鑰

w

[計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNGHUAUNIVERSITYPRESS

&對(duì)稱算法

■基于密鑰的算法通常有兩類:對(duì)稱算法和公開

密鑰算法(非對(duì)稱算法)。對(duì)稱算法有時(shí)又叫

傳統(tǒng)密碼算法,加密密鑰能夠從解密密鑰中推

算出來(lái),反過(guò)來(lái)也成立。

■在大多數(shù)對(duì)稱算法中,加解密的密鑰是相同的。

對(duì)稱算法要求發(fā)送者和接收者在安全通信之前,

協(xié)商一個(gè)密鑰。對(duì)稱算法的安全性依賴于密鑰,

泄漏密鑰就意味著任何人都能對(duì)消息進(jìn)行加解

密。對(duì)稱算法的加密和解密表示為:

.EK(M)=C

-DK(C)=M

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

h公開密鑰算法

■公開密鑰算法(非對(duì)稱算法)的加密的密鑰和解密的密鑰不同,而且

解密密鑰不能根據(jù)加密密鑰計(jì)算出來(lái),或者至少在可以計(jì)算的時(shí)間內(nèi)

不能計(jì)算出來(lái)。

-之所以叫做公開密鑰算法,是因?yàn)榧用苊荑€能夠公開,即陌生者能用

加密密鑰加密信息,但只有用相應(yīng)的解密密鑰才能解密信息。加密密

鑰叫做公開密鑰(簡(jiǎn)稱公鑰),解密密鑰叫做私人密鑰(簡(jiǎn)稱私鑰)。

■公開密鑰K1加密表示為:EKI(M)=Co公開密鑰和私人密鑰是不

同的,用相應(yīng)的私人密鑰K2解密可表示為:DK2(C)=M0

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

hirn/pr>?>b|tu中。U.c力

$DES對(duì)稱加密技術(shù)

■DES(DataEncryptionStandard)算法,于1977年得至U

美國(guó)政府的正式許可,是一種用56位密鑰來(lái)加密64位

數(shù)據(jù)的方法。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

&DES算法的歷史

■美國(guó)國(guó)家標(biāo)準(zhǔn)局1973年開始研究除國(guó)防部外的其它部

門的計(jì)算機(jī)系統(tǒng)的數(shù)據(jù)加密標(biāo)準(zhǔn),于1973年5月15日

和1974年8月27日先后兩次向公眾發(fā)出了征求加密算

法的公告。

■加密算法要達(dá)到的目的有四點(diǎn)。

■提供高質(zhì)量的數(shù)據(jù)保護(hù),防止數(shù)據(jù)未經(jīng)授權(quán)的泄露和未被察

覺(jué)的修改;

■具有相當(dāng)高的復(fù)雜性,使得破譯的開銷超過(guò)可能獲得的利益,

同時(shí)又要便于理解和掌握;

■DES密碼體制的安全性應(yīng)該不依賴于算法的保密,其安全性僅

以加密密鑰的保密為基礎(chǔ);

-實(shí)現(xiàn)經(jīng)濟(jì),運(yùn)行有效,并且適用于多種完全不同的應(yīng)用。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書【計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

&DES算法的安全性

■DES算法正式公開發(fā)表以后,引起了一場(chǎng)激烈的爭(zhēng)論。

1977年Diffie和Hellman提出了制造一個(gè)每秒能測(cè)試106

個(gè)密鑰的大規(guī)模芯片,這種芯片的機(jī)器大約一天就可

以搜索DES算法的整個(gè)密鑰空間,制造這樣的機(jī)器需

要兩千萬(wàn)美元。

■1993年RSession和M.Wiener給出了一個(gè)非常詳細(xì)的密

鑰搜索機(jī)器的設(shè)計(jì)方案,它基于并行的密鑰搜索芯片,

此芯片每秒測(cè)試5X107個(gè)密鑰,當(dāng)時(shí)這種芯片的造價(jià)

是10.5美元,5760個(gè)這樣的芯片組成的系統(tǒng)需要10萬(wàn)

美元,這一系統(tǒng)平均L5天即可找到密鑰,如果利用10

個(gè)這樣的系統(tǒng),費(fèi)用是100萬(wàn)美元,但搜索時(shí)間可以降

至U2.5小時(shí)??梢娺@種機(jī)制是不安全的。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

&DES算法的安全性

■1997年1月28日,美國(guó)的RSA數(shù)據(jù)安全公司在互聯(lián)網(wǎng)上

開展了一項(xiàng)名為“密鑰挑戰(zhàn)”的競(jìng)賽,懸賞一萬(wàn)美元,

破解一段用56比特密鑰加密的DES密文。計(jì)劃公布后

引起了網(wǎng)絡(luò)用戶的強(qiáng)力響應(yīng)。一位名叫RockeVerser

的程序員設(shè)計(jì)了一個(gè)可以通過(guò)互聯(lián)網(wǎng)分段運(yùn)行的密鑰

窮舉搜索程序,組織實(shí)施了一個(gè)稱為DESHALL的搜索

行動(dòng),成千上萬(wàn)的志愿者加入到計(jì)劃中,在計(jì)劃實(shí)施

的第96天,即挑戰(zhàn)賽計(jì)劃公布的第140天,1997年6月

17日晚上10點(diǎn)39分,美國(guó)鹽湖城Inetz公司的職員

MichaelSanders成功地找到了密鑰,在計(jì)算機(jī)上顯示

了明文:“Theunknownmessageis:Strong

cryptographymakestheworldasaferplace”。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNGHUAUNIVERSITYPRESS

&DES算法的原理

■DES算法的入口參數(shù)有三個(gè):Key、Data、

其中為個(gè)字節(jié)共僉,是算

Mode0Key864DES

法的工作密鑰;Data也為8個(gè)字節(jié)64位,是要

被加密或被解密的數(shù)據(jù);Mode為DES的工作方

式有兩種:加密或解密。

■DES算法是這樣工作的:如Mode為加密,則用

Key去把數(shù)據(jù)Data進(jìn)行加密,生成Data的密碼

形式(64位)作為DES的輸出結(jié)果;如Mode為

解密,則用Key去把密碼形式的數(shù)據(jù)Data解密,

還原為Data的明碼形式(64位)作為DES的輸

出結(jié)果。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

&DES算法的實(shí)現(xiàn)步驟

■DES算法實(shí)現(xiàn)加密需要三個(gè)步驟:

■第一步:變換明文。對(duì)給定的64位比特的明文X,首先

通過(guò)一個(gè)置換IP表來(lái)重新排列X,從而構(gòu)造出64位比特

的xO,xO=IP(x)=LORO,其中L0表示xO的前32比特,

R0表示xO的后32位。

■第二步:按照規(guī)則迭代。規(guī)則為

■Li=Ri-1

■Ri=Li十f(Ri-l,Ki)(i=l,2,3…16)

■經(jīng)過(guò)第一步變換已經(jīng)得到LO和RO的值,其中符號(hào)十表

示的數(shù)學(xué)運(yùn)算是異或,f表示一種置換,由S盒置換構(gòu)

成,K[是一些由密鑰編排函數(shù)產(chǎn)生的比特塊。f和Ki將

在后面介紹。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書【計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

疑北京交通大學(xué)出版也

德“hitn/praobitu?eu.?n

■第三步:對(duì)L16R16利用IP-1作逆置換,

就得到了密文y。加密過(guò)程如圖8-4所示。

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

hirn/pr>?>b|tu中。U.c力

■從圖中可以看出,DES加密需要四個(gè)關(guān)鍵點(diǎn):1、IP置

換表和IP-1逆置換表。2、函數(shù)%3、子密鑰Ki。4、S

盒的工作原理。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

(1)IP置換表和IP-1逆置換表

■輸入的64位數(shù)據(jù)按置換IP表進(jìn)行重新組合,

并把輸出分為L(zhǎng)O、R0兩部分,每部分各長(zhǎng)

32位,其置換IP表如表8-1所示。

585012342618102605244362820124

625446383022146645648403224168

57494133251791595143352719113

615345372921135635547393123157

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

■將輸入64位比特的第58位換到第一位,第50位換到第二位,依此

類推,最后一位是原來(lái)的第7位。L0、R0則是換位輸出后的兩部

分,L0是輸出的左32位,R0是右32位。比如:置換前的輸入值為

D1D2D3...D64,則經(jīng)過(guò)初始置換后的結(jié)果為:L0=D58D50…D8,

R0=D57D49...D7o

■經(jīng)過(guò)16次迭代運(yùn)算后。得到L16、R16,將此作為輸入,進(jìn)行逆置

換,即得到密文輸出。逆置換正好是初始置的逆運(yùn)算,例如,第

1位經(jīng)過(guò)初始置換后,處于第40位,而通過(guò)逆置換IP-1,又將第

40位換回到第1位,其逆置換IP-1規(guī)則表8-2所示。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

逆置換表IP?1

408481656246432397471555236331

386461454226230375451353216129

364441252206028353431151195927

34242105018582633141949175725

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

hirn/pr>?>b|tu中。U.c力

、*(2)函數(shù)f

■函數(shù)f有兩個(gè)輸入:32位的Ri-1和48位Ki,f函數(shù)的處理

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

■E變換的算法是從Ri?l的32位中選取某些位,構(gòu)成48位。即

E將32比特?cái)U(kuò)展變換為48位,變換規(guī)則根據(jù)E位選擇表,如

表8-3所示。

3212345456789891011

12131213141516171617181920212021

2223242524252627282928293031321

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

■Ki是由密鑰產(chǎn)生的48位比特串,具體的算法下面介紹。將E的

選位結(jié)果與Ki作異或操作,得到一個(gè)48位輸出。分成8組,每

組6位,作為8個(gè)S盒的輸入。

-每個(gè)S盒輸出4位,共32位,S盒的工作原理將在第第四步介紹。

S盒的輸出作為P變換的輸入,P的功能是對(duì)輸入進(jìn)行置換,P

換位表如表8-4所示。

16720212912281711523265183110

28241432273919133062211425

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

■(3)子密鑰ki

■假設(shè)密鑰為K,長(zhǎng)度為64位,但是其中第8、16、24、32、40、

48、64用作奇偶校驗(yàn)位,實(shí)際上密鑰長(zhǎng)度為56位。K的下標(biāo)i的取

值范圍是1到16,用16輪來(lái)構(gòu)造。構(gòu)造過(guò)程如圖8-6所示。

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

■首先,對(duì)于給定的密鑰K,應(yīng)用PC1變換進(jìn)行選位,選

定后的結(jié)果是56位,設(shè)其前28位為CO,后28位為DO。

PC1選位如表8-5所示。

57494133251791585042342618

10259514335271911360524436

635547393123157625446383022

1466153453729211352820124

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

hirn/pr>?>b|tu中。U.c力

■第一輪:對(duì)CO作左移LSI得到Cl,對(duì)DO作左移LSI得到

D1,對(duì)C1D1應(yīng)用PC2進(jìn)行選位,得到K1。其中LSI是

左移的位數(shù),如表8-6所示。

1122222212222221

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

-表8-6中的第一列是LSI,第二列是LS2,以此類推。左移的原理

是所有二進(jìn)位向左移動(dòng),原來(lái)最右邊的比特位移動(dòng)到最左邊。

其中PC2如表8-7所示。

14171124153281562110

231912,42681672720132

415231374755304051453348

444939563453464250362932

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

■第二輪:對(duì)Cl,DI作左移LS2得到C2和D2,進(jìn)

一步對(duì)C2D2應(yīng)用PC2進(jìn)行選位,得到K2。如此

繼續(xù),分別得到K3,K4...K16o

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

(4)S盒的工作原理

■S盒以6位作為輸入,而以4位作為輸出,現(xiàn)在以S1為例說(shuō)明其過(guò)

程。假設(shè)輸入為A=ala2a3a4a5a6,則a2a3a4a5所代表的數(shù)是0

到15之間的一個(gè)數(shù),記為:k=a2a3a4a5;由ala6所代表的數(shù)是0

到3間的一個(gè)數(shù),記為h=ala6。在S1的h行,k列找到一個(gè)數(shù)B,B

在。到15之間,它可以用4位二進(jìn)制表示,為8=1?地2b3b4,這就

是S1的輸出。

-DES算法的解密過(guò)程是一樣的,區(qū)別僅僅在于第一次迭代時(shí)用子

密鑰K15,第二次K14、最后一次用K0,算法本身并沒(méi)有任何變化。

DES的算法是對(duì)稱的,既可用于加密又可用于解密。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNGHUAUNIVERSITYPRESS

&DES算法的應(yīng)用誤區(qū)

■DES算法具有比較高安全性,到目前為止,除

了用窮舉搜索法對(duì)DES算法進(jìn)行攻擊外,還沒(méi)

有發(fā)現(xiàn)更有效的辦法。而56位長(zhǎng)的密鑰的窮舉

空間為256,這意味著如果一臺(tái)計(jì)算機(jī)的速度

是每一秒種檢測(cè)一百萬(wàn)個(gè)密鑰,則它搜索完全

部密鑰就需要將近2285年的時(shí)間,可見,這是

難以實(shí)現(xiàn)的,當(dāng)然,隨著科學(xué)技術(shù)的發(fā)展,當(dāng)

出現(xiàn)超高速計(jì)算機(jī)后,我們可考慮把DES密鑰

的長(zhǎng)度再增長(zhǎng)一些,以此來(lái)達(dá)到更高的保密程

度。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

DES算法的程序?qū)崿F(xiàn)

■根據(jù)DES算法的原理,可以方便的利用C語(yǔ)言實(shí)現(xiàn)其加

密和解密算法。程序在VC++6.0環(huán)境下測(cè)試通過(guò)

■在VC++6.0中新建基于控制臺(tái)的Win32應(yīng)用程序,算

法如程序proj8_l.cpp所示。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst洞北京交通大學(xué)出版社

TStNOHUAUNIVERStTYPRESS".hltp:/*pr?*>b)tu、GU.CM

■設(shè)置一個(gè)密鑰匙為數(shù)組charkey[8]={l,9,8,0,9,l,7,2),

要加密的字符串?dāng)?shù)組是str[]="HelkA利用

Des_SetKey(key)設(shè)置加密的密鑰,調(diào)用Des_Run(str,

str,ENCRYPT)對(duì)輸入的明文進(jìn)行加密,其中笏一個(gè)參

數(shù)str是輸出的密文,第二個(gè)參數(shù)str是輸入的明文,枚

舉值ENCRYPT設(shè)置進(jìn)行加密運(yùn)算。程序執(zhí)行的結(jié)果如

圖8-7所示。

圓"F:\計(jì)算機(jī)網(wǎng)絡(luò)安全實(shí)用教程)整理版本\U8ChapterO8案例\案例8-01\proj8」',Debug\pr.8」一,

Beforeencrypting

Hello

Afterencrypting

T]:c<F?

Afterdecrypting

Hello

Pressanykeytocontinue

11________________________________________________________IJjL

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNGHUAUNIVERSITYPRESS

&RSA算法的原理

■1976年,Diffie和Hellman在文章“密碼學(xué)新方

向(NewDirectioninCryptography)”中首

次提出了公開密鑰密碼林制碣思想,1977年,

Rivest、Shamir和Adleman三個(gè)人實(shí)現(xiàn)了公開

密鑰密碼體制,現(xiàn)在稱為RSA公開密鑰體制,

它是第一個(gè)既能用于數(shù)據(jù)加密也能用于數(shù)字簽

名的算法。這種算法易于理解和操作,算法的

名字以發(fā)明者的名字命名:RonRivest,Adi

Shamir和LeonardAdleman。但RSA的安全性

一直未能得到理論上的證明。它經(jīng)歷了各種攻

擊,至今未被完全攻破。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

%RSA體制

■RSA體制可以簡(jiǎn)單描述如下:

-(1)、生成兩個(gè)大素?cái)?shù)p和q。

-(2)、計(jì)算這兩個(gè)素?cái)?shù)的乘積n=pxq。

-(3)、計(jì)算小于n并且與n互質(zhì)的整數(shù)的個(gè)數(shù),即歐拉函數(shù)cp(n)=(p-l)(q-l)。

-(4)、選擇一個(gè)隨機(jī)數(shù)b滿足lvbv(p(n),并且b和(p(n)互質(zhì),即gcd(b,(p(n))=l。

■(5)、計(jì)算ab=lmod(p(n)。

■(6)、保密a,p和q,公開用叱。

-利用RSA加密時(shí),明文以分組的方式加密:每一個(gè)分組的比特?cái)?shù)應(yīng)該小于1092n比特。力口

密明文x時(shí),利用公鑰(b,n)來(lái)計(jì)算c=xbmodn就可以得到相應(yīng)的密文c。翻落的時(shí)候,通

過(guò)并算camodn就可以恢復(fù)而明文x。

-選取的素?cái)?shù)p和q要足夠大,從而乘積n足夠大,在事先不知道p和q的情況下分解n是計(jì)算

上木可行的。

■常用的公鑰加密算法包括:RSA密碼體制、EIGamal密碼體制和散列函數(shù)密碼體制(MD4、

MD5等)。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNGHUAUNIVERSITYPRESS

&RSA算法的安全性

■RSA的安全性依賴于大數(shù)分解,但是否等同于

大數(shù)分解一直未能得到理論上的證明,因?yàn)闆](méi)

有證明破解RSA就一定需要作大數(shù)分解。假設(shè)

存在一種無(wú)須分解大數(shù)的算法,那它肯定可以

修改成為大數(shù)分解算法。目前,RSA的一些

變種算法已被證明等價(jià)于大數(shù)分解。不管怎樣,

分解n是最顯然的攻擊方法。現(xiàn)在,人們已能

分解多個(gè)十進(jìn)制位的大素?cái)?shù)。因此,模數(shù)n必

須選大一些,因具體適用情況而定

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書《計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst

TStNOHUAUNIVERStTYPRESS

RSA算法的速度

■由于進(jìn)行的都是大數(shù)計(jì)算,使得RSA最快的情況也比DES慢上倍,

無(wú)論是軟件還是硬件實(shí)現(xiàn)。速度一直是RSA的缺陷。一般來(lái)說(shuō)只

用于少量數(shù)據(jù)加密。

-RSA算法是第一個(gè)能同時(shí)用于加密和數(shù)字簽名的算法,也易于理

解和操作。RSA是被研究得最廣泛的公鑰算法,從提出到現(xiàn)在已

近二十年,經(jīng)歷了各種攻擊的考驗(yàn),逐漸為人們接受,普遍認(rèn)為

是目前最優(yōu)秀的公鑰方案之一。

高等學(xué)校計(jì)算機(jī)科學(xué)與技術(shù)叢書計(jì)算機(jī)網(wǎng)絡(luò)安全教程》第2版

清華大導(dǎo)出figst赳北京交通大學(xué)出版H

TStNOHUAUNIVERStTYPRESS**hitnb|tus?eu.c口

RSA算法的程序?qū)崿F(xiàn)

■根據(jù)RSA算法的原理,可以利用C語(yǔ)言實(shí)現(xiàn)其加密和解

密算法。RSA算法比DES算法復(fù)雜,加解密的所需要的

時(shí)間也比較長(zhǎng)。

-本案例利用RSA算法對(duì)文件的加密和解密。算法根據(jù)設(shè)置自動(dòng)產(chǎn)

生大素?cái)?shù)P和q,并根據(jù)p和q的值產(chǎn)生模(n)、公鑰(e)和密鑰(d)。

利用VC++6.0實(shí)現(xiàn)核心算法,如圖8-8所示。

Mixedrsf“osohVHu31c一roO_MnffDCS_DIAinG(Dialog)】*U21xJ

U囿音■「3

,CMlxcdCSDIq'IhA"classEembcfs1yH?CMixedCSDIgiffix!到

"?CLabel

?,,CMcs

?'-CMixcdCSApp

?'-CMixedCSDIg

?'?CMynieDialog

里?:CRsa

I:?:CRsaKeyOIg

??,CWIndow

f!"?deshead

mcshead

_jGlobals

;"此..胸前...雇也..

g|密花舞t,.|E3戶工國(guó)

Configuration:tiixedCSWin32Debug

HixedCS.exe-9error(5),0warning(s)

jLltKBaildfMut\Find5Files】\FuulinFil”2XSQL

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論