網(wǎng)絡(luò)安全課件_第1頁
網(wǎng)絡(luò)安全課件_第2頁
網(wǎng)絡(luò)安全課件_第3頁
網(wǎng)絡(luò)安全課件_第4頁
網(wǎng)絡(luò)安全課件_第5頁
已閱讀5頁,還剩97頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第8章網(wǎng)絡(luò)安全第8章網(wǎng)絡(luò)安全第8章網(wǎng)絡(luò)安全8.1密碼學(xué)8.2對稱密鑰密碼體制8.3公開密鑰密碼體制8.4數(shù)字簽名8.5公鑰管理8.6通信安全8.7認(rèn)證協(xié)議8.8電子郵件安全8.9Web安全8.10社會問題第8章網(wǎng)絡(luò)安全8.1密碼學(xué)*網(wǎng)絡(luò)安全問題概述計(jì)算機(jī)網(wǎng)絡(luò)上的通信面臨以下的四種威脅:(1)截獲——從網(wǎng)絡(luò)上竊聽他人的通信內(nèi)容。(2)中斷——有意中斷他人在網(wǎng)絡(luò)上的通信。(3)篡改——故意篡改網(wǎng)絡(luò)上傳送的報文。(4)偽造——偽造信息在網(wǎng)絡(luò)上傳送。截獲信息的攻擊稱為被動攻擊,而更改信息和拒絕用戶使用資源的攻擊稱為主動攻擊。截獲篡改偽造中斷被動攻擊主動攻擊源站源站源站源站目的站目的站目的站目的站*網(wǎng)絡(luò)安全問題概述計(jì)算機(jī)網(wǎng)絡(luò)上的通信面臨以下的四種威脅:截本章集中在網(wǎng)絡(luò)有關(guān)的問題,而不是操作系統(tǒng)和應(yīng)用系統(tǒng)有關(guān)的問題。不討論以下內(nèi)容:基于生物統(tǒng)計(jì)學(xué)的用戶認(rèn)證口令安全、緩沖區(qū)溢出攻擊、特洛伊木馬、登錄欺騙、跨點(diǎn)腳本代碼注入病毒、蠕蟲等保密性認(rèn)證、不可否認(rèn)、完整性控制本章集中在網(wǎng)絡(luò)有關(guān)的問題,而不是操作系統(tǒng)保密性認(rèn)證8.1密碼學(xué)概論

密碼編碼學(xué)(cryptography)是密碼體制的設(shè)計(jì)學(xué),而密碼分析學(xué)(cryptanalysis)則是在未知密鑰的情況下從密文推演出明文或密鑰的技術(shù)。密碼編碼學(xué)與密碼分析學(xué)合起來即為密碼學(xué)(cryptology)。如果不論截取者獲得了多少密文,但在密文中都沒有足夠的信息來惟一地確定出對應(yīng)的明文,則這一密碼體制稱為無條件安全的,或稱為理論上是不可破的。如果密碼體制中的密碼不能被可使用的計(jì)算資源破譯,則這一密碼體制稱為在計(jì)算上是安全的。8.1密碼學(xué)概論密碼編碼學(xué)(cryptography)8.1.1一般的數(shù)據(jù)加密模型E加密算法D解密算法加密密鑰K解密密鑰K明文X明文X密文Y=EK(X)截取者截獲篡改密鑰源安全信道8.1.1一般的數(shù)據(jù)加密模型ED加密密鑰K解密密鑰K8.1.2置換密碼置換密碼(substitutioncipher)的最古老的例子是凱撒密碼,其原理用例子來說明:密鑰是3abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文c變成了密文F,其他字母依此類推8.1.2置換密碼置換密碼(substitutionciCIPHER145326attackbeginsatfour8.1.3替代密碼替代密碼(transpositioncipher)則是按照某一規(guī)則重新排列消息中的比特或字符順序。密鑰順序明文根據(jù)英文字母在26個字母中的先后順序,我們可以得出密鑰中的每一個字母的相對先后順序。因?yàn)槊荑€中沒有A和B,因此C為第1。同理,E為第2,H為第3,……,R為第6。于是得出密鑰字母的相對先后順序?yàn)?45326。CIPHER8.1.3替代密碼替代密碼(transposiCIPHER145326attackbeginsatfour密文的得出密鑰順序明文先讀順序?yàn)?的明文列,即aba

再讀順序?yàn)?的明文列,即cnu

再讀順序?yàn)?的明文列,即aio

再讀順序?yàn)?的明文列,即tet

再讀順序?yàn)?的明文列,即tgf

最后讀順序6的明文列,即ksr

因此密文就是:abacnuaiotettgfksr

CIPHER密文的得出密鑰先讀順序?yàn)?的明文列,即ab接收端從密文解出明文收到的密文:abacnuaiotettgfksr

CIPHER145326attackbeginsatfour密鑰順序明文最后按行讀出明文得出明文:attackbeginsatfour

接收端從密文解出明文收到的密文:abacnuaiotettg8.1.4一次性密鑰一次性密鑰(one-timepad)選擇隨機(jī)位串作密鑰與轉(zhuǎn)變成位串的明文異或量子密碼

8.1.5兩個基本密碼學(xué)原則冗余度新鮮度8.1.4一次性密鑰一次性密鑰(one-timepad8.2對稱密鑰系統(tǒng)對稱密碼算法:加密密鑰與解密密鑰是相同的密碼體制。乘積密碼、分組密碼P盒、S盒輪8.2對稱密鑰系統(tǒng)對稱密碼算法:加密密鑰與解密密鑰是分組密碼體制輸入輸出加密算法密鑰明文輸入輸出解密算法密鑰明文nbitnbitnbitnbit密文密文分組密碼體制輸入輸出加密密鑰明文輸入輸出解密密鑰明文nb8.2.1數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于常規(guī)密鑰密碼體制,是一種分組密碼。在加密前,先對整個明文進(jìn)行分組。每一個組長為64bit。然后對每一個64bit二進(jìn)制數(shù)據(jù)進(jìn)行加密處理,產(chǎn)生一組64bit密文數(shù)據(jù)。最后將各組密文串接起來,即得出整個的密文。使用的密鑰為64bit(實(shí)際密鑰長度為56bit,有8bit用于奇偶校驗(yàn))。8.2.1數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于DES加密標(biāo)準(zhǔn)

L0R0L1=R0IPL2=R1L15=R14R1=L0f(R0,K1)R2=L1f(R1,K2)R15=L14f(R14,K15)L16=R15R16=L15f(R15,K16)IP1fff輸出密文Y(64bit)明文X(64bit)輸入K16(48bit)K2(48bit)K1(48bit)X0的左半邊(32bit)X0(64bit)X0的右半邊(32bit)R16L16(64bit)DES加密標(biāo)準(zhǔn)L0R0L1=R0IPL2=R1LDES的明顯缺點(diǎn)DES實(shí)際上就是一種單字符替代,而這種字符的長度是64bit。也就是說,對于DES算法,相同的明文就產(chǎn)生相同的密文。這對DES的安全性來說是不利的。為了提高DES的安全性,可采用加密分組鏈接的方法。DES的明顯缺點(diǎn)DES實(shí)際上就是一種單字符替代,而這種三重DES

(TripleDES)三重DES使用兩個密鑰,執(zhí)行三次DES算法。下圖中的方框E和D分別表示執(zhí)行加密和解密算法。因此加密時是E-D-E,解密時是D-E-D。EDEK1K2K1明文密文DEDK1K2K1密文明文加密解密三重DES(TripleDES)三重DES使用兩DES

的保密性、AESDES

的保密性僅取決于對密鑰的保密,而算法是公開的。盡管人們在破譯DES方面取得了許多進(jìn)展,但至今仍未能找到比窮舉搜索密鑰更有效的方法。DES是世界上第一個公認(rèn)的實(shí)用密碼算法標(biāo)準(zhǔn),它曾對密碼學(xué)的發(fā)展做出了重大貢獻(xiàn)。目前較為嚴(yán)重的問題是DES的密鑰的長度。1997年,提出了高級加密標(biāo)準(zhǔn)AESDES的保密性、AESDES的保密性僅取決于對密鑰的保密8.3公開密鑰密碼體制公開密鑰密碼體制使用不同的加密密鑰與解密密鑰,是一種“由已知加密密鑰推導(dǎo)出解密密鑰在計(jì)算上是不可行的”密碼體制。公開密鑰密碼體制的產(chǎn)生主要是因?yàn)閮蓚€方面的原因,一是由于常規(guī)密鑰密碼體制的密鑰分配問題,另一是由于對數(shù)字簽名的需求?,F(xiàn)有三種公開密鑰密碼體制,其中最著名的是RSA體制,它基于數(shù)論中大數(shù)分解問題的體制,由美國三位科學(xué)家Rivest,Shamir和Adleman于1976年提出并在1978年正式發(fā)表的。8.3公開密鑰密碼體制公開密鑰密碼體制使用不同的加密密鑰8.2.3密碼模式電碼本模式密碼塊鏈模式密碼反饋模式流密碼模式計(jì)數(shù)器模式8.2.4其他密碼模式(p614圖)8.2.5密碼分析區(qū)分密碼分析(差分攻擊)線性密碼分析電子功率消耗分析8.2.3密碼模式電碼本模式8.3公開密鑰算法在公開密鑰密碼體制中,加密密鑰(即公開密鑰)PK是公開信息,而解密密鑰(即秘密密鑰)SK是需要保密的加密算法E和解密算法D也都是公開的。雖然秘密密鑰SK是由公開密鑰PK決定的,但卻不能根據(jù)PK計(jì)算出SK。任何加密方法的安全性取決于密鑰的長度,以及攻破密文所需的計(jì)算量。在這方面,公開密鑰密碼體制并不具有比傳統(tǒng)加密體制更加優(yōu)越之處。由于目前公開密鑰加密算法的開銷較大,在可見的將來還看不出來要放棄傳統(tǒng)的加密方法。公開密鑰還需要密鑰分配協(xié)議,具體的分配過程并不比采用傳統(tǒng)加密方法時更為簡單。8.3公開密鑰算法在公開密鑰密碼體制中,加密密鑰(即公公開密鑰密碼體制接收者發(fā)送者E加密算法D解密算法加密密鑰PK解密密鑰SK明文X密文Y=EPK(X)密鑰對產(chǎn)生源明文X=DSK(EPK(X))公開密鑰密碼體制接收者發(fā)送者ED加密密鑰PK解密密鑰S8.3.1RSA公開密鑰密碼體制RSA公開密鑰密碼體制所根據(jù)的原理是:根據(jù)數(shù)論,尋求兩個大素數(shù)比較簡單,而將它們的乘積分解開則極其困難。每個用戶有兩個密鑰:加密密鑰PK{e,n}和解密密鑰SK{d,n}。用戶把加密密鑰公開,使得系統(tǒng)中任何其他用戶都可使用,而對解密密鑰中的d則保密。N為兩個大素數(shù)p和q之積(素數(shù)p和q一般為100位以上的十進(jìn)數(shù)),e和d滿足一定的關(guān)系。當(dāng)敵手已知e和n時并不能求出d。8.3.1RSA公開密鑰密碼體制RSA公開密鑰密碼體(1)加密算法若用整數(shù)X表示明文,用整數(shù)Y表示密文(X和Y均小于n),則加密和解密運(yùn)算為:加密:YXemodn(9-7)解密:XYdmodn(9-8)(1)加密算法若用整數(shù)X表示明文,用整數(shù)Y表示密(2)密鑰的產(chǎn)生①計(jì)算n。用戶秘密地選擇兩個大素數(shù)p和q,計(jì)算出n

pq。n稱為RSA算法的模數(shù)。明文必須能夠用小于n的數(shù)來表示。實(shí)際上n是幾百比特長的數(shù)。②計(jì)算(n)。用戶再計(jì)算出n的歐拉函數(shù)(n)(p

1)(q

1)(9-9)(n)定義為不超過n并與n互素的數(shù)的個數(shù)。③選擇e。用戶從[0,(n)1]中選擇一個與(n)互素的數(shù)e作為公開的加密指數(shù)。(2)密鑰的產(chǎn)生①計(jì)算n。用戶秘密地選擇兩個大素數(shù)p(2)密鑰的產(chǎn)生(續(xù))④計(jì)算d。用戶計(jì)算出滿足下式的d

ed

1mod(n)(8-10)作為解密指數(shù)。⑤得出所需要的公開密鑰和秘密密鑰:公開密鑰(即加密密鑰)PK{e,n}秘密密鑰(即解密密鑰)SK{d,n}(2)密鑰的產(chǎn)生(續(xù))④計(jì)算d。用戶計(jì)算出滿足下式的(3)正確性的例子說明設(shè)選擇了兩個素數(shù),p

7,q

17。計(jì)算出n

pq

717119。計(jì)算出(n)(p

1)(q

1)96。從[0,95]中選擇一個與96互素的數(shù)e。選e

5。然后根據(jù)(9-10)式,5d

1mod96解出d。不難得出,d

77,因?yàn)閑d

57738549611mod96。于是,公開密鑰PK(e,n){5,119},秘密密鑰SK{77,119}。(3)正確性的例子說明設(shè)選擇了兩個素數(shù),p7,q(3)正確性的例子說明(續(xù))對明文進(jìn)行加密。先把明文劃分為分組,使每個明文分組的二進(jìn)制值不超過n,即不超過119。設(shè)明文X19。用公開密鑰加密時,先計(jì)算Xe

195

2476099。再除以119,得出商為20807,余數(shù)為66。這就是對應(yīng)于明文19的密文Y的值。在用秘密密鑰SK{77,119}進(jìn)行解密時,先計(jì)算Yd

6677

1.27...10140。再除以119,得出商為1.06...10138,余數(shù)為19。此余數(shù)即解密后應(yīng)得出的明文X。(3)正確性的例子說明(續(xù))對明文進(jìn)行加密RSA算法舉例明文1919==20807公開密鑰={5,119}加密52476099119及余數(shù)

66密文6666==1.0610秘密密鑰={77,119}解密771.27...10119及余數(shù)

19

明文19140138RSA算法舉例明文19=8.4數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):(1)接收者能夠核實(shí)發(fā)送者對報文的簽名;(2)發(fā)送者事后不能抵賴對報文的簽名;(3)接收者不能偽造對報文的簽名?,F(xiàn)在已有多種實(shí)現(xiàn)各種數(shù)字簽名的方法。但采用公開密鑰算法要比采用常規(guī)密鑰算法更容易實(shí)現(xiàn)。8.4數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):數(shù)字簽名的實(shí)現(xiàn)DSKPK用公開密鑰核實(shí)簽名用秘密密鑰進(jìn)行簽名X發(fā)送者A接收者BDSK(X)XE數(shù)字簽名的實(shí)現(xiàn)DSKPK用公開密鑰用秘密密鑰X發(fā)送者A接數(shù)字簽名的實(shí)現(xiàn)B用已知的A的公開加密密鑰得出EPKA(DSKA(X))X。因?yàn)槌鼳外沒有別人能具有A的解密密鑰SKA,所以除A外沒有別人能產(chǎn)生密文DSKA(X)。這樣,B相信報文X是A簽名發(fā)送的。若A要抵賴曾發(fā)送報文給B,B可將X及DSKA(X)出示給第三者。第三者很容易用PKA去證實(shí)A確實(shí)發(fā)送X給B。反之,若B將X偽造成X‘,則B不能在第三者前出示DSKA(X’)。這樣就證明了B偽造了報文。數(shù)字簽名的實(shí)現(xiàn)B用已知的A的公開加密密鑰得出EPKA8.4.3消息摘要散列函數(shù)SHA-1和SHA-2MD58.4.4生日攻擊8.4.3消息摘要散列函數(shù)8.5公鑰管理:密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分配、注入、驗(yàn)證和使用。本節(jié)只討論密鑰的分配。密鑰分配是密鑰管理中最大的問題。密鑰必須通過最安全的通路進(jìn)行分配。目前常用的密鑰分配方式是設(shè)立密鑰分配中心KDC(KeyDistribution),通過KDC來分配密鑰。8.5公鑰管理:密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分8.5.1證書用戶B用戶主密鑰A

KAB

KB……用戶私有主密鑰文件KDC用戶AA和B用密鑰R1通信③EKB(A,R1)B知道了密鑰R1①EKA(A,B)②EKA(R1,EKB(A,R1))A知道了密鑰R18.5.1證書用戶B用戶主密鑰……用戶私有主密鑰文件8.6通信安全網(wǎng)絡(luò)層安全協(xié)議族IPsecIPsec就是“IP安全(Security)協(xié)議”的縮寫。網(wǎng)絡(luò)層保密是指所有在IP數(shù)據(jù)報中的數(shù)據(jù)都是加密的。此外,網(wǎng)絡(luò)層還應(yīng)提供源站鑒別,即當(dāng)目的站收到IP數(shù)據(jù)報時,能確信這是從該數(shù)據(jù)報的源IP地址的主機(jī)發(fā)來的。鑒別首部AH(AuthenticationHeader):AH提供源站鑒別和數(shù)據(jù)完整性,但不能保密。封裝安全有效載荷ESP(EncapsulationSecurityPayload):ESP比AH復(fù)雜得多,它提供源站鑒別、數(shù)據(jù)完整性和保密。8.6通信安全網(wǎng)絡(luò)層安全協(xié)議族IPsec安全關(guān)聯(lián)SA(SecurityAssociation)

使用AH或ESP之前,先要從源主機(jī)到目的主機(jī)建立一條網(wǎng)絡(luò)層的邏輯連接-----叫做安全關(guān)聯(lián)SA。IPsec

就將傳統(tǒng)的因特網(wǎng)無連接的網(wǎng)絡(luò)層轉(zhuǎn)換為具有邏輯連接的層安全關(guān)聯(lián)是一個單向連接。它由一個三元組惟一地確定,包括:(1)安全協(xié)議(使用AH或ESP)的標(biāo)識符(2)此單向連接的源IP地址(3)一個32bit的連接標(biāo)識符,稱為安全參數(shù)索引SPI(SecurityParameterIndex)對于一個給定的安全關(guān)聯(lián)SA,每一個Ipsec數(shù)據(jù)報都有一個存放SPI的字段。通過此SA的所有數(shù)據(jù)報都使用同樣的SPI值。安全關(guān)聯(lián)SA(SecurityAssociation)2.鑒別首部AH

在使用鑒別首部AH時,將AH首部插在原數(shù)據(jù)報數(shù)據(jù)部分的前面,同時將IP首部中的協(xié)議字段置為51。在傳輸過程中,中間的路由器都不查看AH首部。當(dāng)數(shù)據(jù)報到達(dá)目的站時,目的站主機(jī)才處理AH字段,以鑒別源主機(jī)和檢查數(shù)據(jù)報的完整性。IP首部AH首部TCP/UDP報文段協(xié)議=51可鑒別的IP數(shù)據(jù)報原數(shù)據(jù)報的數(shù)據(jù)部分2.鑒別首部AH在使用鑒別首部AH時,將AHAH首部

(1)下一個首部(8bit)。標(biāo)志緊接著本首部的下一個首部的類型(如TCP或UDP)。(2)有效載荷長度(8bit),即鑒別數(shù)據(jù)字段的長度,以32bit字為單位。(3)安全參數(shù)索引SPI(32bit)。標(biāo)志安全關(guān)聯(lián)。(4)序號(32bit)。鑒別數(shù)據(jù)字段的長度,以32bit字為單位。(5)保留(16bit)。為今后用。(6)鑒別數(shù)據(jù)(可變)。為32bit字的整數(shù)倍,它包含了經(jīng)數(shù)字簽名的報文摘要。因此可用來鑒別源主機(jī)和檢查IP數(shù)據(jù)報的完整性。AH首部(1)下一個首部(8bit)。標(biāo)志緊接著本首3.封裝安全有效載荷ESP在ESP首部中有標(biāo)識一個安全關(guān)聯(lián)的安全參數(shù)索引SPI(32bit),和序號(32bit)。在ESP尾部中有下一個首部(8bit,作用和AH首部的一樣)。ESP尾部和原來數(shù)據(jù)報的數(shù)據(jù)部分一起進(jìn)行加密,因此攻擊者無法得知所使用的運(yùn)輸層協(xié)議。ESP的鑒別數(shù)據(jù)和AH中的鑒別數(shù)據(jù)是一樣的。因此,用ESP封裝的數(shù)據(jù)報既有鑒別源站和檢查數(shù)據(jù)報完整性的功能,又能提供保密。3.封裝安全有效載荷ESP在ESP首部中有標(biāo)識一個在IP數(shù)據(jù)報中的ESP的各字段IP首部ESP首部TCP/UDP報文段協(xié)議=50可鑒別的保密的IP數(shù)據(jù)報原數(shù)據(jù)報的數(shù)據(jù)部分ESP尾部ESP鑒別數(shù)據(jù)加密的部分鑒別的部分在IP數(shù)據(jù)報中的ESP的各字段IP首部ESP首部8.6.2防火墻(firewall)防火墻是由軟件、硬件構(gòu)成的系統(tǒng),用來在兩個網(wǎng)絡(luò)之間實(shí)施接入控制策略。接入控制策略是由使用防火墻的單位自行制訂的,為的是可以最適合本單位的需要。防火墻內(nèi)的網(wǎng)絡(luò)稱為“可信賴的網(wǎng)絡(luò)”(trustednetwork),而將外部的因特網(wǎng)稱為“不可信賴的網(wǎng)絡(luò)”(untrustednetwork)。防火墻可用來解決內(nèi)聯(lián)網(wǎng)和外聯(lián)網(wǎng)的安全問題8.6.2防火墻(firewall)防火墻是由軟件、硬件防火墻在互連網(wǎng)絡(luò)中的位置G內(nèi)聯(lián)網(wǎng)可信賴的網(wǎng)絡(luò)不可信賴的網(wǎng)絡(luò)分組過濾路由器

R分組過濾路由器

R應(yīng)用網(wǎng)關(guān)外局域網(wǎng)內(nèi)局域網(wǎng)防火墻因特網(wǎng)防火墻在互連網(wǎng)絡(luò)中的位置G內(nèi)聯(lián)網(wǎng)可信賴的網(wǎng)絡(luò)不可信賴的網(wǎng)絡(luò)防火墻技術(shù)一般分為兩類(1)網(wǎng)絡(luò)級防火墻—用來防止整個網(wǎng)絡(luò)出現(xiàn)外來非法入侵。屬于這類的有分組過濾和授權(quán)服務(wù)器。前者檢查所有流入本網(wǎng)絡(luò)的信息,然后拒絕不符合事先制訂好的一套準(zhǔn)則的數(shù)據(jù),而后者則是檢查用戶的登錄是否合法。(2)應(yīng)用級防火墻—從應(yīng)用程序來進(jìn)行接入控制。通常使用應(yīng)用網(wǎng)關(guān)或代理服務(wù)器來區(qū)分各種應(yīng)用。例如,可以只允許通過訪問萬維網(wǎng)的應(yīng)用,而阻止FTP應(yīng)用的通過8.6.3虛擬專用網(wǎng)VPN8.6.4無線網(wǎng)安全802.11安全性藍(lán)牙安全性防火墻技術(shù)一般分為兩類(1)網(wǎng)絡(luò)級防火墻—用來防止整個網(wǎng)8.7認(rèn)證協(xié)議基于共享密鑰的認(rèn)證建立共享密鑰:Diffie-Hellman密鑰交換使用密鑰分發(fā)中心的認(rèn)證使用Kerberos的身份認(rèn)證使用公開密鑰密碼學(xué)的認(rèn)證8.7認(rèn)證協(xié)議基于共享密鑰的認(rèn)證8.8電子郵件的加密PGP(PrettyGoodPrivacy)PGP是一個完整的電子郵件安全軟件包,包括加密、鑒別、電子簽名和壓縮等技術(shù)。PGP并沒有使用什么新的概念,它只是將現(xiàn)有的一些算法如MD5,RSA,以及IDEA等綜合在一起而已。雖然PGP已被廣泛使用,但PGP并不是因特網(wǎng)的正式標(biāo)準(zhǔn)。

8.8電子郵件的加密PGP(PrettyGoodPGP的加密過程MD5RSAZIPIDEAbase64RSAA的明文PPP1P1.ZKM至因特網(wǎng)ASCII文本B的RSA公開密鑰EBKM:IDEA的加密密鑰(一次一密):拼接P與H拼接H壓縮后的P1用密鑰KM加密后的P1.Z與用密鑰EB加密后的KM拼接A的RSA秘密密鑰DAPGP的加密過程MD5RSAZIPIDEAbaseR8.9WEB安全性8.9.1威脅8.9.2安全命名:DNS8.9.3安全插口層SSL

SSL又稱為安全套接層(SecureSocketLayer),可對萬維網(wǎng)客戶與服務(wù)器之間傳送的數(shù)據(jù)進(jìn)行加密和鑒別。SSL在雙方的聯(lián)絡(luò)階段協(xié)商將使用的加密算法和密鑰,以及客戶與服務(wù)器之間的鑒別。在聯(lián)絡(luò)階段完成之后,所有傳送的數(shù)據(jù)都使用在聯(lián)絡(luò)階段商定的會話密鑰。SSL不僅被所有常用的瀏覽器和萬維網(wǎng)服務(wù)器所支持,而且也是運(yùn)輸層安全協(xié)議TLS(TransportLayerSecurity)的基礎(chǔ)。8.9WEB安全性8.9.1威脅SSL提供以下三個功能(1)SSL

服務(wù)器鑒別允許用戶證實(shí)服務(wù)器的身份。具有SSL功能的瀏覽器維持一個表,上面有一些可信賴的認(rèn)證中心CA(CertificateAuthority)和它們的公開密鑰。(2)加密的SSL會話客戶和服務(wù)器交互的所有數(shù)據(jù)都在發(fā)送方加密,在接收方解密。(3)SSL客戶鑒別允許服務(wù)器證實(shí)客戶的身份。SSL提供以下三個功能(1)SSL服務(wù)器鑒別8.10社會問題隱私匿名郵件轉(zhuǎn)發(fā)器加密朋克郵件轉(zhuǎn)發(fā)器言論自由信息隱藏學(xué)版權(quán)8.10社會問題隱私8.11本章總結(jié)與習(xí)題密碼學(xué):對稱密鑰算法與公開密鑰算法數(shù)字簽名公鑰管理與證書網(wǎng)絡(luò)與WEB安全習(xí)題布置(p678)2,7,12,13,178.11本章總結(jié)與習(xí)題密碼學(xué):對稱密鑰算法與公開密鑰算法第8章網(wǎng)絡(luò)安全第8章網(wǎng)絡(luò)安全第8章網(wǎng)絡(luò)安全8.1密碼學(xué)8.2對稱密鑰密碼體制8.3公開密鑰密碼體制8.4數(shù)字簽名8.5公鑰管理8.6通信安全8.7認(rèn)證協(xié)議8.8電子郵件安全8.9Web安全8.10社會問題第8章網(wǎng)絡(luò)安全8.1密碼學(xué)*網(wǎng)絡(luò)安全問題概述計(jì)算機(jī)網(wǎng)絡(luò)上的通信面臨以下的四種威脅:(1)截獲——從網(wǎng)絡(luò)上竊聽他人的通信內(nèi)容。(2)中斷——有意中斷他人在網(wǎng)絡(luò)上的通信。(3)篡改——故意篡改網(wǎng)絡(luò)上傳送的報文。(4)偽造——偽造信息在網(wǎng)絡(luò)上傳送。截獲信息的攻擊稱為被動攻擊,而更改信息和拒絕用戶使用資源的攻擊稱為主動攻擊。截獲篡改偽造中斷被動攻擊主動攻擊源站源站源站源站目的站目的站目的站目的站*網(wǎng)絡(luò)安全問題概述計(jì)算機(jī)網(wǎng)絡(luò)上的通信面臨以下的四種威脅:截本章集中在網(wǎng)絡(luò)有關(guān)的問題,而不是操作系統(tǒng)和應(yīng)用系統(tǒng)有關(guān)的問題。不討論以下內(nèi)容:基于生物統(tǒng)計(jì)學(xué)的用戶認(rèn)證口令安全、緩沖區(qū)溢出攻擊、特洛伊木馬、登錄欺騙、跨點(diǎn)腳本代碼注入病毒、蠕蟲等保密性認(rèn)證、不可否認(rèn)、完整性控制本章集中在網(wǎng)絡(luò)有關(guān)的問題,而不是操作系統(tǒng)保密性認(rèn)證8.1密碼學(xué)概論

密碼編碼學(xué)(cryptography)是密碼體制的設(shè)計(jì)學(xué),而密碼分析學(xué)(cryptanalysis)則是在未知密鑰的情況下從密文推演出明文或密鑰的技術(shù)。密碼編碼學(xué)與密碼分析學(xué)合起來即為密碼學(xué)(cryptology)。如果不論截取者獲得了多少密文,但在密文中都沒有足夠的信息來惟一地確定出對應(yīng)的明文,則這一密碼體制稱為無條件安全的,或稱為理論上是不可破的。如果密碼體制中的密碼不能被可使用的計(jì)算資源破譯,則這一密碼體制稱為在計(jì)算上是安全的。8.1密碼學(xué)概論密碼編碼學(xué)(cryptography)8.1.1一般的數(shù)據(jù)加密模型E加密算法D解密算法加密密鑰K解密密鑰K明文X明文X密文Y=EK(X)截取者截獲篡改密鑰源安全信道8.1.1一般的數(shù)據(jù)加密模型ED加密密鑰K解密密鑰K8.1.2置換密碼置換密碼(substitutioncipher)的最古老的例子是凱撒密碼,其原理用例子來說明:密鑰是3abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABCcaesarcipherFDHVDUFLSKHU明文密文明文c變成了密文F,其他字母依此類推8.1.2置換密碼置換密碼(substitutionciCIPHER145326attackbeginsatfour8.1.3替代密碼替代密碼(transpositioncipher)則是按照某一規(guī)則重新排列消息中的比特或字符順序。密鑰順序明文根據(jù)英文字母在26個字母中的先后順序,我們可以得出密鑰中的每一個字母的相對先后順序。因?yàn)槊荑€中沒有A和B,因此C為第1。同理,E為第2,H為第3,……,R為第6。于是得出密鑰字母的相對先后順序?yàn)?45326。CIPHER8.1.3替代密碼替代密碼(transposiCIPHER145326attackbeginsatfour密文的得出密鑰順序明文先讀順序?yàn)?的明文列,即aba

再讀順序?yàn)?的明文列,即cnu

再讀順序?yàn)?的明文列,即aio

再讀順序?yàn)?的明文列,即tet

再讀順序?yàn)?的明文列,即tgf

最后讀順序6的明文列,即ksr

因此密文就是:abacnuaiotettgfksr

CIPHER密文的得出密鑰先讀順序?yàn)?的明文列,即ab接收端從密文解出明文收到的密文:abacnuaiotettgfksr

CIPHER145326attackbeginsatfour密鑰順序明文最后按行讀出明文得出明文:attackbeginsatfour

接收端從密文解出明文收到的密文:abacnuaiotettg8.1.4一次性密鑰一次性密鑰(one-timepad)選擇隨機(jī)位串作密鑰與轉(zhuǎn)變成位串的明文異或量子密碼

8.1.5兩個基本密碼學(xué)原則冗余度新鮮度8.1.4一次性密鑰一次性密鑰(one-timepad8.2對稱密鑰系統(tǒng)對稱密碼算法:加密密鑰與解密密鑰是相同的密碼體制。乘積密碼、分組密碼P盒、S盒輪8.2對稱密鑰系統(tǒng)對稱密碼算法:加密密鑰與解密密鑰是分組密碼體制輸入輸出加密算法密鑰明文輸入輸出解密算法密鑰明文nbitnbitnbitnbit密文密文分組密碼體制輸入輸出加密密鑰明文輸入輸出解密密鑰明文nb8.2.1數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于常規(guī)密鑰密碼體制,是一種分組密碼。在加密前,先對整個明文進(jìn)行分組。每一個組長為64bit。然后對每一個64bit二進(jìn)制數(shù)據(jù)進(jìn)行加密處理,產(chǎn)生一組64bit密文數(shù)據(jù)。最后將各組密文串接起來,即得出整個的密文。使用的密鑰為64bit(實(shí)際密鑰長度為56bit,有8bit用于奇偶校驗(yàn))。8.2.1數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于DES加密標(biāo)準(zhǔn)

L0R0L1=R0IPL2=R1L15=R14R1=L0f(R0,K1)R2=L1f(R1,K2)R15=L14f(R14,K15)L16=R15R16=L15f(R15,K16)IP1fff輸出密文Y(64bit)明文X(64bit)輸入K16(48bit)K2(48bit)K1(48bit)X0的左半邊(32bit)X0(64bit)X0的右半邊(32bit)R16L16(64bit)DES加密標(biāo)準(zhǔn)L0R0L1=R0IPL2=R1LDES的明顯缺點(diǎn)DES實(shí)際上就是一種單字符替代,而這種字符的長度是64bit。也就是說,對于DES算法,相同的明文就產(chǎn)生相同的密文。這對DES的安全性來說是不利的。為了提高DES的安全性,可采用加密分組鏈接的方法。DES的明顯缺點(diǎn)DES實(shí)際上就是一種單字符替代,而這種三重DES

(TripleDES)三重DES使用兩個密鑰,執(zhí)行三次DES算法。下圖中的方框E和D分別表示執(zhí)行加密和解密算法。因此加密時是E-D-E,解密時是D-E-D。EDEK1K2K1明文密文DEDK1K2K1密文明文加密解密三重DES(TripleDES)三重DES使用兩DES

的保密性、AESDES

的保密性僅取決于對密鑰的保密,而算法是公開的。盡管人們在破譯DES方面取得了許多進(jìn)展,但至今仍未能找到比窮舉搜索密鑰更有效的方法。DES是世界上第一個公認(rèn)的實(shí)用密碼算法標(biāo)準(zhǔn),它曾對密碼學(xué)的發(fā)展做出了重大貢獻(xiàn)。目前較為嚴(yán)重的問題是DES的密鑰的長度。1997年,提出了高級加密標(biāo)準(zhǔn)AESDES的保密性、AESDES的保密性僅取決于對密鑰的保密8.3公開密鑰密碼體制公開密鑰密碼體制使用不同的加密密鑰與解密密鑰,是一種“由已知加密密鑰推導(dǎo)出解密密鑰在計(jì)算上是不可行的”密碼體制。公開密鑰密碼體制的產(chǎn)生主要是因?yàn)閮蓚€方面的原因,一是由于常規(guī)密鑰密碼體制的密鑰分配問題,另一是由于對數(shù)字簽名的需求?,F(xiàn)有三種公開密鑰密碼體制,其中最著名的是RSA體制,它基于數(shù)論中大數(shù)分解問題的體制,由美國三位科學(xué)家Rivest,Shamir和Adleman于1976年提出并在1978年正式發(fā)表的。8.3公開密鑰密碼體制公開密鑰密碼體制使用不同的加密密鑰8.2.3密碼模式電碼本模式密碼塊鏈模式密碼反饋模式流密碼模式計(jì)數(shù)器模式8.2.4其他密碼模式(p614圖)8.2.5密碼分析區(qū)分密碼分析(差分攻擊)線性密碼分析電子功率消耗分析8.2.3密碼模式電碼本模式8.3公開密鑰算法在公開密鑰密碼體制中,加密密鑰(即公開密鑰)PK是公開信息,而解密密鑰(即秘密密鑰)SK是需要保密的加密算法E和解密算法D也都是公開的。雖然秘密密鑰SK是由公開密鑰PK決定的,但卻不能根據(jù)PK計(jì)算出SK。任何加密方法的安全性取決于密鑰的長度,以及攻破密文所需的計(jì)算量。在這方面,公開密鑰密碼體制并不具有比傳統(tǒng)加密體制更加優(yōu)越之處。由于目前公開密鑰加密算法的開銷較大,在可見的將來還看不出來要放棄傳統(tǒng)的加密方法。公開密鑰還需要密鑰分配協(xié)議,具體的分配過程并不比采用傳統(tǒng)加密方法時更為簡單。8.3公開密鑰算法在公開密鑰密碼體制中,加密密鑰(即公公開密鑰密碼體制接收者發(fā)送者E加密算法D解密算法加密密鑰PK解密密鑰SK明文X密文Y=EPK(X)密鑰對產(chǎn)生源明文X=DSK(EPK(X))公開密鑰密碼體制接收者發(fā)送者ED加密密鑰PK解密密鑰S8.3.1RSA公開密鑰密碼體制RSA公開密鑰密碼體制所根據(jù)的原理是:根據(jù)數(shù)論,尋求兩個大素數(shù)比較簡單,而將它們的乘積分解開則極其困難。每個用戶有兩個密鑰:加密密鑰PK{e,n}和解密密鑰SK{d,n}。用戶把加密密鑰公開,使得系統(tǒng)中任何其他用戶都可使用,而對解密密鑰中的d則保密。N為兩個大素數(shù)p和q之積(素數(shù)p和q一般為100位以上的十進(jìn)數(shù)),e和d滿足一定的關(guān)系。當(dāng)敵手已知e和n時并不能求出d。8.3.1RSA公開密鑰密碼體制RSA公開密鑰密碼體(1)加密算法若用整數(shù)X表示明文,用整數(shù)Y表示密文(X和Y均小于n),則加密和解密運(yùn)算為:加密:YXemodn(9-7)解密:XYdmodn(9-8)(1)加密算法若用整數(shù)X表示明文,用整數(shù)Y表示密(2)密鑰的產(chǎn)生①計(jì)算n。用戶秘密地選擇兩個大素數(shù)p和q,計(jì)算出n

pq。n稱為RSA算法的模數(shù)。明文必須能夠用小于n的數(shù)來表示。實(shí)際上n是幾百比特長的數(shù)。②計(jì)算(n)。用戶再計(jì)算出n的歐拉函數(shù)(n)(p

1)(q

1)(9-9)(n)定義為不超過n并與n互素的數(shù)的個數(shù)。③選擇e。用戶從[0,(n)1]中選擇一個與(n)互素的數(shù)e作為公開的加密指數(shù)。(2)密鑰的產(chǎn)生①計(jì)算n。用戶秘密地選擇兩個大素數(shù)p(2)密鑰的產(chǎn)生(續(xù))④計(jì)算d。用戶計(jì)算出滿足下式的d

ed

1mod(n)(8-10)作為解密指數(shù)。⑤得出所需要的公開密鑰和秘密密鑰:公開密鑰(即加密密鑰)PK{e,n}秘密密鑰(即解密密鑰)SK{d,n}(2)密鑰的產(chǎn)生(續(xù))④計(jì)算d。用戶計(jì)算出滿足下式的(3)正確性的例子說明設(shè)選擇了兩個素數(shù),p

7,q

17。計(jì)算出n

pq

717119。計(jì)算出(n)(p

1)(q

1)96。從[0,95]中選擇一個與96互素的數(shù)e。選e

5。然后根據(jù)(9-10)式,5d

1mod96解出d。不難得出,d

77,因?yàn)閑d

57738549611mod96。于是,公開密鑰PK(e,n){5,119},秘密密鑰SK{77,119}。(3)正確性的例子說明設(shè)選擇了兩個素數(shù),p7,q(3)正確性的例子說明(續(xù))對明文進(jìn)行加密。先把明文劃分為分組,使每個明文分組的二進(jìn)制值不超過n,即不超過119。設(shè)明文X19。用公開密鑰加密時,先計(jì)算Xe

195

2476099。再除以119,得出商為20807,余數(shù)為66。這就是對應(yīng)于明文19的密文Y的值。在用秘密密鑰SK{77,119}進(jìn)行解密時,先計(jì)算Yd

6677

1.27...10140。再除以119,得出商為1.06...10138,余數(shù)為19。此余數(shù)即解密后應(yīng)得出的明文X。(3)正確性的例子說明(續(xù))對明文進(jìn)行加密RSA算法舉例明文1919==20807公開密鑰={5,119}加密52476099119及余數(shù)

66密文6666==1.0610秘密密鑰={77,119}解密771.27...10119及余數(shù)

19

明文19140138RSA算法舉例明文19=8.4數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):(1)接收者能夠核實(shí)發(fā)送者對報文的簽名;(2)發(fā)送者事后不能抵賴對報文的簽名;(3)接收者不能偽造對報文的簽名?,F(xiàn)在已有多種實(shí)現(xiàn)各種數(shù)字簽名的方法。但采用公開密鑰算法要比采用常規(guī)密鑰算法更容易實(shí)現(xiàn)。8.4數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):數(shù)字簽名的實(shí)現(xiàn)DSKPK用公開密鑰核實(shí)簽名用秘密密鑰進(jìn)行簽名X發(fā)送者A接收者BDSK(X)XE數(shù)字簽名的實(shí)現(xiàn)DSKPK用公開密鑰用秘密密鑰X發(fā)送者A接數(shù)字簽名的實(shí)現(xiàn)B用已知的A的公開加密密鑰得出EPKA(DSKA(X))X。因?yàn)槌鼳外沒有別人能具有A的解密密鑰SKA,所以除A外沒有別人能產(chǎn)生密文DSKA(X)。這樣,B相信報文X是A簽名發(fā)送的。若A要抵賴曾發(fā)送報文給B,B可將X及DSKA(X)出示給第三者。第三者很容易用PKA去證實(shí)A確實(shí)發(fā)送X給B。反之,若B將X偽造成X‘,則B不能在第三者前出示DSKA(X’)。這樣就證明了B偽造了報文。數(shù)字簽名的實(shí)現(xiàn)B用已知的A的公開加密密鑰得出EPKA8.4.3消息摘要散列函數(shù)SHA-1和SHA-2MD58.4.4生日攻擊8.4.3消息摘要散列函數(shù)8.5公鑰管理:密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分配、注入、驗(yàn)證和使用。本節(jié)只討論密鑰的分配。密鑰分配是密鑰管理中最大的問題。密鑰必須通過最安全的通路進(jìn)行分配。目前常用的密鑰分配方式是設(shè)立密鑰分配中心KDC(KeyDistribution),通過KDC來分配密鑰。8.5公鑰管理:密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分8.5.1證書用戶B用戶主密鑰A

KAB

KB……用戶私有主密鑰文件KDC用戶AA和B用密鑰R1通信③EKB(A,R1)B知道了密鑰R1①EKA(A,B)②EKA(R1,EKB(A,R1))A知道了密鑰R18.5.1證書用戶B用戶主密鑰……用戶私有主密鑰文件8.6通信安全網(wǎng)絡(luò)層安全協(xié)議族IPsecIPsec就是“IP安全(Security)協(xié)議”的縮寫。網(wǎng)絡(luò)層保密是指所有在IP數(shù)據(jù)報中的數(shù)據(jù)都是加密的。此外,網(wǎng)絡(luò)層還應(yīng)提供源站鑒別,即當(dāng)目的站收到IP數(shù)據(jù)報時,能確信這是從該數(shù)據(jù)報的源IP地址的主機(jī)發(fā)來的。鑒別首部AH(AuthenticationHeader):AH提供源站鑒別和數(shù)據(jù)完整性,但不能保密。封裝安全有效載荷ESP(EncapsulationSecurityPayload):ESP比AH復(fù)雜得多,它提供源站鑒別、數(shù)據(jù)完整性和保密。8.6通信安全網(wǎng)絡(luò)層安全協(xié)議族IPsec安全關(guān)聯(lián)SA(SecurityAssociation)

使用AH或ESP之前,先要從源主機(jī)到目的主機(jī)建立一條網(wǎng)絡(luò)層的邏輯連接-----叫做安全關(guān)聯(lián)SA。IPsec

就將傳統(tǒng)的因特網(wǎng)無連接的網(wǎng)絡(luò)層轉(zhuǎn)換為具有邏輯連接的層安全關(guān)聯(lián)是一個單向連接。它由一個三元組惟一地確定,包括:(1)安全協(xié)議(使用AH或ESP)的標(biāo)識符(2)此單向連接的源IP地址(3)一個32bit的連接標(biāo)識符,稱為安全參數(shù)索引SPI(SecurityParameterIndex)對于一個給定的安全關(guān)聯(lián)SA,每一個Ipsec數(shù)據(jù)報都有一個存放SPI的字段。通過此SA的所有數(shù)據(jù)報都使用同樣的SPI值。安全關(guān)聯(lián)SA(SecurityAssociation)2.鑒別首部AH

在使用鑒別首部AH時,將AH首部插在原數(shù)據(jù)報數(shù)據(jù)部分的前面,同時將IP首部中的協(xié)議字段置為51。在傳輸過程中,中間的路由器都不查看AH首部。當(dāng)數(shù)據(jù)報到達(dá)目的站時,目的站主機(jī)才處理AH字段,以鑒別源主機(jī)和檢查數(shù)據(jù)報的完整性。IP首部AH首部TCP/UDP報文段協(xié)議=51可鑒別的IP數(shù)據(jù)報原數(shù)據(jù)報的數(shù)據(jù)部分2.鑒別首部AH在使用鑒別首部AH時,將AHAH首部

(1)下一個首部(8bit)。標(biāo)志緊接著本首部的下一個首部的類型(如TCP或UDP)。(2)有效載荷長度(8bit),即鑒別數(shù)據(jù)字段的長度,以32bit字為單位。(3)安全參數(shù)索引SPI(32bit)。標(biāo)志安全關(guān)聯(lián)。(4)序號(32bit)。鑒別數(shù)據(jù)字段的長度,以32bit字為單位。(5)保留(16bit)。為今后用。(6)鑒別數(shù)據(jù)(可變)。為32bit字的整數(shù)倍,它包含了經(jīng)數(shù)字簽名的報文摘要。因此可用來鑒別源主機(jī)和檢查IP數(shù)據(jù)報的完整性。AH首部(1)下一個首部(8bit)。標(biāo)志緊接著本首3.封裝安全有效載荷ESP在ESP首部中有標(biāo)識一個安全關(guān)聯(lián)的安全參數(shù)索引SPI(32bit),和序號(32bit)。在ESP尾部中

溫馨提示

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

評論

0/150

提交評論