![計(jì)算機(jī)網(wǎng)絡(luò)第5版課件_第1頁](http://file4.renrendoc.com/view/369717daa51739008cc0ba00d464d2c9/369717daa51739008cc0ba00d464d2c91.gif)
![計(jì)算機(jī)網(wǎng)絡(luò)第5版課件_第2頁](http://file4.renrendoc.com/view/369717daa51739008cc0ba00d464d2c9/369717daa51739008cc0ba00d464d2c92.gif)
![計(jì)算機(jī)網(wǎng)絡(luò)第5版課件_第3頁](http://file4.renrendoc.com/view/369717daa51739008cc0ba00d464d2c9/369717daa51739008cc0ba00d464d2c93.gif)
![計(jì)算機(jī)網(wǎng)絡(luò)第5版課件_第4頁](http://file4.renrendoc.com/view/369717daa51739008cc0ba00d464d2c9/369717daa51739008cc0ba00d464d2c94.gif)
![計(jì)算機(jī)網(wǎng)絡(luò)第5版課件_第5頁](http://file4.renrendoc.com/view/369717daa51739008cc0ba00d464d2c9/369717daa51739008cc0ba00d464d2c95.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
計(jì)算機(jī)網(wǎng)絡(luò)(第5版)第7章網(wǎng)絡(luò)安全計(jì)算機(jī)網(wǎng)絡(luò)(第5版)第7章網(wǎng)絡(luò)安全1第7章網(wǎng)絡(luò)安全
7.1網(wǎng)絡(luò)安全問題概述7.1.1計(jì)算機(jī)網(wǎng)絡(luò)面臨的安全性威脅7.1.2計(jì)算機(jī)網(wǎng)絡(luò)安全的內(nèi)容7.1.3一般的數(shù)據(jù)加密模型7.2兩類密碼體制7.2.1對稱密鑰密碼體制7.2.2公鑰密碼體制第7章網(wǎng)絡(luò)安全7.1網(wǎng)絡(luò)安全問題概述2第7章網(wǎng)絡(luò)安全(續(xù))7.3數(shù)字簽名7.4鑒別7.4.1報(bào)文鑒別7.4.2實(shí)體鑒別7.5密鑰分配7.5.1對稱密鑰的分配7.5,2公鑰的分配第7章網(wǎng)絡(luò)安全(續(xù))7.3數(shù)字簽名3第7章網(wǎng)絡(luò)安全(續(xù))7.6因特網(wǎng)使用的安全協(xié)議7.6.1網(wǎng)絡(luò)層安全協(xié)議7.6.2運(yùn)輸層安全協(xié)議7.6.3應(yīng)用層的安全協(xié)議破7.7鏈路加密與端到端加密7.7.1鏈路加密7.7.2端到端加密7.8防火墻第7章網(wǎng)絡(luò)安全(續(xù))7.6因特網(wǎng)使用的安全協(xié)議47.1網(wǎng)絡(luò)安全問題概述
7.1.1計(jì)算機(jī)網(wǎng)絡(luò)面臨的安全性威脅
計(jì)算機(jī)網(wǎng)絡(luò)上的通信面臨以下的四種威脅:(1)截獲——從網(wǎng)絡(luò)上竊聽他人的通信內(nèi)容。(2)中斷——有意中斷他人在網(wǎng)絡(luò)上的通信。(3)篡改——故意篡改網(wǎng)絡(luò)上傳送的報(bào)文。(4)偽造——偽造信息在網(wǎng)絡(luò)上傳送。截獲信息的攻擊稱為被動攻擊,而更改信息和拒絕用戶使用資源的攻擊稱為主動攻擊。7.1網(wǎng)絡(luò)安全問題概述
7.1.1計(jì)算機(jī)網(wǎng)絡(luò)面臨5對網(wǎng)絡(luò)的被動攻擊和主動攻擊截獲篡改偽造中斷被動攻擊主動攻擊目的站源站源站源站源站目的站目的站目的站對網(wǎng)絡(luò)的被動攻擊和主動攻擊截獲篡改偽造中斷被動攻擊主動6被動攻擊在被動攻擊中,攻擊者只是觀察和分析某一個(gè)協(xié)議數(shù)據(jù)單元PDU而不干擾信息流。攻擊者通過觀察PDU的長度和傳輸?shù)念l度,了解所交換的數(shù)據(jù)的某種性質(zhì),這種被動攻擊又稱為流量分析(trafficanalysis)。被動攻擊在被動攻擊中,攻擊者只是觀察和分析某一個(gè)協(xié)議數(shù)據(jù)單元7主動攻擊主動攻擊是指攻擊者對某個(gè)連接中通過的PDU進(jìn)行各種處理。更改報(bào)文流:包括對通過連接的PDU的真實(shí)性、完整性和有序性的攻擊。拒絕報(bào)文服務(wù):指攻擊者向因特網(wǎng)上的服務(wù)器不停地發(fā)送大量的分組,使因特網(wǎng)或服務(wù)器無法提供正常的服務(wù)。也稱為拒絕服務(wù)DoS或網(wǎng)絡(luò)帶寬攻擊或連通性攻擊。偽造連接初始化:攻擊者重放以前被記錄的合法連接初始化序列,或者偽造身份而企圖建立連接。主動攻擊主動攻擊是指攻擊者對某個(gè)連接中通過的PDU8(1)防止析出報(bào)文內(nèi)容;(2)防止通信量分析;(3)檢測更改報(bào)文流;(4)檢測拒絕報(bào)文服務(wù);(5)檢測偽造初始化連接。計(jì)算機(jī)網(wǎng)絡(luò)通信安全的目標(biāo)(1)防止析出報(bào)文內(nèi)容;計(jì)算機(jī)網(wǎng)絡(luò)通信安全的目標(biāo)9防止攻擊的策略對于被動攻擊可以采用各種加密技術(shù)。對于主動攻擊,則需將加密技術(shù)和適當(dāng)?shù)蔫b別技術(shù)相結(jié)合。還有一種特殊的主動攻擊就是惡意程序。防止攻擊的策略對于被動攻擊可以采用各種加密技術(shù)。10計(jì)算機(jī)病毒——會“傳染”其他程序的程序,“傳染”是通過修改其他程序來把自身或其變種復(fù)制進(jìn)去完成的。計(jì)算機(jī)蠕蟲——通過網(wǎng)絡(luò)的通信功能將自身從一個(gè)結(jié)點(diǎn)發(fā)送到另一個(gè)結(jié)點(diǎn)并啟動運(yùn)行的程序。特洛伊木馬——一種程序,它執(zhí)行的功能超出所聲稱的功能。邏輯炸彈——一種當(dāng)運(yùn)行環(huán)境滿足某種特定條件時(shí)執(zhí)行其他特殊功能的程序。惡意程序(rogueprogram)計(jì)算機(jī)病毒——會“傳染”其他程序的程序,“傳染”是通過修改其117.1.2計(jì)算機(jī)網(wǎng)絡(luò)安全的內(nèi)容保密性安全協(xié)議的設(shè)計(jì)訪問控制或存取控制或接入控制7.1.2計(jì)算機(jī)網(wǎng)絡(luò)安全的內(nèi)容保密性12明文X
截獲密文Y7.1.3一般的數(shù)據(jù)加密模型加密密鑰K明文X密文Y截取者篡改ABE運(yùn)算加密算法D運(yùn)算解密算法因特網(wǎng)解密密鑰K明文X截獲密文Y7.1.3一般的數(shù)據(jù)加密模型加13一些重要概念密碼編碼學(xué)(cryptography)是密碼體制的設(shè)計(jì)學(xué),而密碼分析學(xué)(cryptanalysis)則是在未知密鑰的情況下從密文推演出明文或密鑰的技術(shù)。密碼編碼學(xué)與密碼分析學(xué)合起來即為密碼學(xué)(cryptology)。如果不論截取者獲得了多少密文,但在密文中都沒有足夠的信息來唯一地確定出對應(yīng)的明文,則這一密碼體制稱為無條件安全的,或稱為理論上是不可破的。如果密碼體制中的密碼不能被可使用的計(jì)算資源破譯,則這一密碼體制稱為在計(jì)算上是安全的。一些重要概念密碼編碼學(xué)(cryptography)是密碼體147.2兩類密碼體制
7.2.1對稱密鑰密碼體制
所謂常規(guī)密鑰密碼體制,即加密密鑰與解密密鑰是相同的密碼體制。這種加密系統(tǒng)又稱為對稱密鑰系統(tǒng)。7.2兩類密碼體制
7.2.1對稱密鑰密碼體制所15數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于常規(guī)密鑰密碼體制,是一種分組密碼。在加密前,先對整個(gè)明文進(jìn)行分組。每一組長為64位二進(jìn)制數(shù)據(jù)。然后對每一個(gè)64位二進(jìn)制數(shù)據(jù)進(jìn)行加密處理,產(chǎn)生一組64位密文數(shù)據(jù)。最后將各組密文串接起來,即得出整個(gè)的密文。使用的密鑰為64位(實(shí)際密鑰長度為56位,有8位用于奇偶校驗(yàn))。數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于常規(guī)密鑰密碼體16DES
的保密性DES
的保密性僅取決于對密鑰的保密,而算法是公開的。盡管人們在破譯DES方面取得了許多進(jìn)展,但至今仍未能找到比窮舉搜索密鑰更有效的方法。DES是世界上第一個(gè)公認(rèn)的實(shí)用密碼算法標(biāo)準(zhǔn),它曾對密碼學(xué)的發(fā)展做出了重大貢獻(xiàn)。目前較為嚴(yán)重的問題是DES的密鑰的長度?,F(xiàn)在已經(jīng)設(shè)計(jì)出來搜索DES密鑰的專用芯片。國際數(shù)據(jù)加密算法IDEA使用128bit密鑰,更不容易被攻破。
DES的保密性DES的保密性僅取決于對密鑰的保密,而算法177.2.2公鑰密碼體制公鑰密碼體制使用不同的加密密鑰與解密密鑰,是一種“由已知加密密鑰推導(dǎo)出解密密鑰在計(jì)算上是不可行的”密碼體制。公鑰密碼體制的產(chǎn)生主要是因?yàn)閮蓚€(gè)方面的原因,一是由于常規(guī)密鑰密碼體制的密鑰分配問題,另一是由于對數(shù)字簽名的需求。現(xiàn)有最著名的公鑰密碼體制是RSA體制,它基于數(shù)論中大數(shù)分解問題的體制,由美國三位科學(xué)家Rivest,Shamir和Adleman于1976年提出并在1978年正式發(fā)表的。7.2.2公鑰密碼體制公鑰密碼體制使用不同的加密密鑰與解18加密密鑰與解密密鑰在公鑰密碼體制中,加密密鑰(即公鑰)PK是公開信息,而解密密鑰(即私鑰或秘鑰)SK是需要保密的。加密算法E和解密算法D也都是公開的。雖然秘鑰SK是由公鑰PK決定的,但卻不能根據(jù)PK計(jì)算出SK。加密密鑰與解密密鑰在公鑰密碼體制中,加密密鑰(即公鑰)P19應(yīng)當(dāng)注意任何加密方法的安全性取決于密鑰的長度,以及攻破密文所需的計(jì)算量。在這方面,公鑰密碼體制并不具有比傳統(tǒng)加密體制更加優(yōu)越之處。由于目前公鑰加密算法的開銷較大,在可見的將來還看不出來要放棄傳統(tǒng)的加密方法。公鑰還需要密鑰分配協(xié)議,具體的分配過程并不比采用傳統(tǒng)加密方法時(shí)更簡單。應(yīng)當(dāng)注意任何加密方法的安全性取決于密鑰的長度,以及攻破密文20公鑰算法的特點(diǎn)發(fā)送者A用B的公鑰PKB對明文X加密(E運(yùn)算)后,在接收者B用自己的私鑰SKB解密(D運(yùn)算),即可恢復(fù)出明文:(7-4)解密密鑰是接收者專用的秘鑰,對其他人都保密。加密密鑰是公開的,但不能用它來解密,即
(7-5)公鑰算法的特點(diǎn)發(fā)送者A用B的公鑰PKB對明文21公鑰算法的特點(diǎn)(續(xù))加密和解密的運(yùn)算可以對調(diào),即
在計(jì)算機(jī)上可容易地產(chǎn)生成對的PK和SK。從已知的PK實(shí)際上不可能推導(dǎo)出SK,即從PK到SK是“計(jì)算上不可能的”。加密和解密算法都是公開的。(7-6)公鑰算法的特點(diǎn)(續(xù))加密和解密的運(yùn)算可以對調(diào),即(7-6)22公鑰密碼體制密文Y
E運(yùn)算加密算法D運(yùn)算解密算法加密解密明文X明文X
ABB的私鑰SKB密文Y
因特網(wǎng)B的公鑰PKB公鑰密碼體制密文YE運(yùn)算D運(yùn)算加密解密明文X明文237.3數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):(1)報(bào)文鑒別——接收者能夠核實(shí)發(fā)送者對報(bào)文的簽名;(2)報(bào)文的完整性——發(fā)送者事后不能抵賴對報(bào)文的簽名;(3)不可否認(rèn)——接收者不能偽造對報(bào)文的簽名。現(xiàn)在已有多種實(shí)現(xiàn)各種數(shù)字簽名的方法。但采用公鑰算法更容易實(shí)現(xiàn)。7.3數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):24密文數(shù)字簽名的實(shí)現(xiàn)D運(yùn)算明文X明文X
ABA的私鑰SKA因特網(wǎng)簽名核實(shí)簽名E運(yùn)算密文A的公鑰PKA密文數(shù)字簽名的實(shí)現(xiàn)D明文X明文XABA的私鑰S25數(shù)字簽名的實(shí)現(xiàn)因?yàn)槌鼳外沒有別人能具有A的私鑰,所以除A外沒有別人能產(chǎn)生這個(gè)密文。因此B相信報(bào)文X是A簽名發(fā)送的。若A要抵賴曾發(fā)送報(bào)文給B,B可將明文和對應(yīng)的密文出示給第三者。第三者很容易用A的公鑰去證實(shí)A確實(shí)發(fā)送X給B。反之,若B將X偽造成X‘,則B不能在第三者前出示對應(yīng)的密文。這樣就證明了B偽造了報(bào)文。數(shù)字簽名的實(shí)現(xiàn)因?yàn)槌鼳外沒有別人能具有A的私鑰,所以26具有保密性的數(shù)字簽名核實(shí)簽名解密加密簽名E運(yùn)算D運(yùn)算明文X明文X
ABA的私鑰SKA因特網(wǎng)E運(yùn)算B的私鑰SKBD運(yùn)算加密與解密簽名與核實(shí)簽名B的公鑰PKBA的公鑰PKA密文具有保密性的數(shù)字簽名核實(shí)簽名解密加密簽名E運(yùn)算D277.4鑒別在信息的安全領(lǐng)域中,對付被動攻擊的重要措施是加密,而對付主動攻擊中的篡改和偽造則要用鑒別(authentication)
。報(bào)文鑒別使得通信的接收方能夠驗(yàn)證所收到的報(bào)文(發(fā)送者和報(bào)文內(nèi)容、發(fā)送時(shí)間、序列等)的真?zhèn)?。使用加密就可達(dá)到報(bào)文鑒別的目的。但在網(wǎng)絡(luò)的應(yīng)用中,許多報(bào)文并不需要加密。應(yīng)當(dāng)使接收者能用很簡單的方法鑒別報(bào)文的真?zhèn)巍?.4鑒別在信息的安全領(lǐng)域中,對付被動攻擊的重要措施是加28鑒別與授權(quán)不同鑒別與授權(quán)(authorization)是不同的概念。授權(quán)涉及到的問題是:所進(jìn)行的過程是否被允許(如是否可以對某文件進(jìn)行讀或?qū)懀?。鑒別與授權(quán)不同鑒別與授權(quán)(authorization)是不同297.4.1報(bào)文鑒別許多報(bào)文并不需要加密但卻需要數(shù)字簽名,以便讓報(bào)文的接收者能夠鑒別報(bào)文的真?zhèn)?。然而對很長的報(bào)文進(jìn)行數(shù)字簽名會使計(jì)算機(jī)增加很大的負(fù)擔(dān)(需要進(jìn)行很長時(shí)間的運(yùn)算。當(dāng)我們傳送不需要加密的報(bào)文時(shí),應(yīng)當(dāng)使接收者能用很簡單的方法鑒別報(bào)文的真?zhèn)巍?.4.1報(bào)文鑒別許多報(bào)文并不需要加密但卻需要數(shù)字簽名30報(bào)文摘要MD
(MessageDigest)A將報(bào)文X經(jīng)過報(bào)文摘要算法運(yùn)算后得出很短的報(bào)文摘要H。然后然后用自己的私鑰對H進(jìn)行D運(yùn)算,即進(jìn)行數(shù)字簽名。得出已簽名的報(bào)文摘要D(H)后,并將其追加在報(bào)文X后面發(fā)送給B。
B收到報(bào)文后首先把已簽名的D(H)和報(bào)文X分離。然后再做兩件事。用A的公鑰對D(H)進(jìn)行E運(yùn)算,得出報(bào)文摘要H。對報(bào)文X進(jìn)行報(bào)文摘要運(yùn)算,看是否能夠得出同樣的報(bào)文摘要H。如一樣,就能以極高的概率斷定收到的報(bào)文是A產(chǎn)生的。否則就不是。報(bào)文摘要MD
(MessageDigest)A將報(bào)文31報(bào)文摘要的優(yōu)點(diǎn)僅對短得多的定長報(bào)文摘要H進(jìn)行數(shù)字簽名要比對整個(gè)長報(bào)文進(jìn)行數(shù)字簽名要簡單得多,所耗費(fèi)的計(jì)算資源也小得多。但對鑒別報(bào)文X來說,效果是一樣的。也就是說,報(bào)文X和已簽名的報(bào)文摘要D(H)合在一起是不可偽造的,是可檢驗(yàn)的和不可否認(rèn)的。報(bào)文摘要的優(yōu)點(diǎn)僅對短得多的定長報(bào)文摘要H進(jìn)行數(shù)字簽名要比32報(bào)文摘要算法報(bào)文摘要算法就是一種散列函數(shù)。這種散列函數(shù)也叫做密碼編碼的檢驗(yàn)和。報(bào)文摘要算法是防止報(bào)文被人惡意篡改。報(bào)文摘要算法是精心選擇的一種單向函數(shù)??梢院苋菀椎赜?jì)算出一個(gè)長報(bào)文X的報(bào)文摘要H,但要想從報(bào)文摘要H反過來找到原始的報(bào)文X,則實(shí)際上是不可能的。若想找到任意兩個(gè)報(bào)文,使得它們具有相同的報(bào)文摘要,那么實(shí)際上也是不可能的。報(bào)文摘要算法報(bào)文摘要算法就是一種散列函數(shù)。這種散列函數(shù)也叫做33報(bào)文摘要算法MD5把任意長的報(bào)文按模264計(jì)算其余數(shù)(64bit),追加在報(bào)文的后面。在報(bào)文和余數(shù)之間填充1~512bit的數(shù)據(jù)塊,使的填充后的總長度是512的整數(shù)倍。填充的首位是1,后面都是0。把追加和填充后的報(bào)文分割成一個(gè)個(gè)512bit的數(shù)據(jù)塊,每個(gè)512bit的報(bào)文數(shù)據(jù)再分成4個(gè)128bit的數(shù)據(jù)塊依次送到不同的散列函數(shù)進(jìn)行4輪計(jì)算。每一輪又都按32bit的小數(shù)據(jù)塊進(jìn)行復(fù)雜的運(yùn)算。一直到最后計(jì)算出128bit的MD5報(bào)文摘要代碼。報(bào)文摘要算法MD5把任意長的報(bào)文按模264計(jì)算其余數(shù)(634報(bào)文摘要算法MD5MD5算法可以對任意長的報(bào)文進(jìn)行運(yùn)算,最后得出128bit的報(bào)文摘要代碼。MD5報(bào)文摘要代碼中的每一位都與原來報(bào)文中的每一位有關(guān)。安全散列算法SHA和MD5相似,但碼長為160位,比MD5更安全,但慢一些。報(bào)文摘要算法MD5MD5算法可以對任意長的報(bào)文進(jìn)行運(yùn)算,最后35報(bào)文摘要的實(shí)現(xiàn)A比較簽名核實(shí)簽名報(bào)文XHD運(yùn)算D(H)A的私鑰報(bào)文XD(H)B報(bào)文摘要報(bào)文XD(H)發(fā)送E運(yùn)算H簽名的報(bào)文摘要H報(bào)文摘要運(yùn)算A的公鑰報(bào)文摘要運(yùn)算報(bào)文摘要報(bào)文摘要因特網(wǎng)報(bào)文摘要的實(shí)現(xiàn)A比較簽名核實(shí)簽名報(bào)文XHD運(yùn)算D(367.4.2實(shí)體鑒別實(shí)體鑒別和報(bào)文鑒別不同。報(bào)文鑒別是對每一個(gè)收到的報(bào)文都要鑒別報(bào)文的發(fā)送者,而實(shí)體鑒別是在系統(tǒng)接入的全部持續(xù)時(shí)間內(nèi)對和自己通信的對方實(shí)體只需驗(yàn)證一次。7.4.2實(shí)體鑒別實(shí)體鑒別和報(bào)文鑒別不同。37最簡單的實(shí)體鑒別過程A發(fā)送給B的報(bào)文的被加密,使用的是對稱密鑰KAB。B收到此報(bào)文后,用共享對稱密鑰KAB進(jìn)行解密,因而鑒別了實(shí)體A的身份。ABA,口令KAB最簡單的實(shí)體鑒別過程A發(fā)送給B的報(bào)文的被加密,使用的38明顯的漏洞入侵者C可以從網(wǎng)絡(luò)上截獲A發(fā)給B的報(bào)文。C并不需要破譯這個(gè)報(bào)文(因?yàn)檫@可能花很多時(shí)間)而可以直接把這個(gè)由A加密的報(bào)文發(fā)送給B,使B誤認(rèn)為C就是A。然后B就向偽裝是A的C發(fā)送應(yīng)發(fā)給A的報(bào)文。這就叫做重放攻擊(replayattack)。C甚至還可以截獲A的IP地址,然后把A的IP地址冒充為自己的IP地址(這叫做IP欺騙),使B更加容易受騙。明顯的漏洞入侵者C可以從網(wǎng)絡(luò)上截獲A發(fā)給B的報(bào)文39使用不重?cái)?shù)為了對付重放攻擊,可以使用不重?cái)?shù)(nonce)。不重?cái)?shù)就是一個(gè)不重復(fù)使用的大隨機(jī)數(shù),即“一次一數(shù)”。在鑒別過程中不重?cái)?shù)可以使B能夠把重復(fù)的鑒別請求和新的鑒別請求區(qū)分開。使用不重?cái)?shù)為了對付重放攻擊,可以使用不重?cái)?shù)(nonce)。不40使用不重?cái)?shù)進(jìn)行鑒別ABA,RARBKABRARBKAB,時(shí)間使用不重?cái)?shù)進(jìn)行鑒別ABA,RARBKABRARBKAB,41使用不重?cái)?shù)進(jìn)行鑒別A首先用明文發(fā)送自己的身份A和一個(gè)不重?cái)?shù)RA給B。B響應(yīng)A的查問,用共享的密鑰KAB對RA加密后發(fā)給A,同時(shí)也給出自己的不重?cái)?shù)RB。最后A再響應(yīng)B的查問,用共享的密鑰KAB對RB加密后發(fā)回給B。使用不重?cái)?shù)進(jìn)行鑒別A首先用明文發(fā)送自己的身份A和一個(gè)不重?cái)?shù)R42中間人攻擊AB我是A中間人C我是ARBRBSKC請把公鑰發(fā)來PKCRBRBSKA請把公鑰發(fā)來PKADATAPKCDATAPKA時(shí)間中間人攻擊AB我是A中間人C我是ARBRBSKC請把43中間人攻擊說明A向B發(fā)送“我是A”的報(bào)文,并給出了自己的身份。此報(bào)文被“中間人”C截獲,C把此報(bào)文原封不動地轉(zhuǎn)發(fā)給B。B選擇一個(gè)不重?cái)?shù)RB發(fā)送給A,但同樣被C截獲后也照樣轉(zhuǎn)發(fā)給A。中間人C用自己的私鑰SKC對RB加密后發(fā)回給B,使B誤以為是A發(fā)來的。A收到RB后也用自己的私鑰SKA對RB加密后發(fā)回給B,中途被C截獲并丟棄。B向A索取其公鑰,此報(bào)文被C截獲后轉(zhuǎn)發(fā)給A。C把自己的公鑰PKC冒充是A的發(fā)送給B,而C也截獲到A發(fā)送給B的公鑰PKA。B用收到的公鑰PKC(以為是A的)對數(shù)據(jù)加密發(fā)送給A。C截獲后用自己的私鑰SKC解密,復(fù)制一份留下,再用A的公鑰PKA對數(shù)據(jù)加密后發(fā)送給A。A收到數(shù)據(jù)后,用自己的私鑰SKA解密,以為和B進(jìn)行了保密通信。其實(shí),B發(fā)送給A的加密數(shù)據(jù)已被中間人C截獲并解密了一份。但A和B卻都不知道。中間人攻擊說明A向B發(fā)送“我是A”的報(bào)文,并給出了自447.5密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分配、注入、驗(yàn)證和使用。本節(jié)只討論密鑰的分配。密鑰分配是密鑰管理中最大的問題。密鑰必須通過最安全的通路進(jìn)行分配。目前常用的密鑰分配方式是設(shè)立密鑰分配中心KDC(KeyDistribution),通過KDC來分配密鑰。7.5密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分配、注入、457.5.1對稱密鑰的分配目前常用的密鑰分配方式是設(shè)立密鑰分配中心KDC(KeyDistributionCenter)。KDC是大家都信任的機(jī)構(gòu),其任務(wù)就是給需要進(jìn)行秘密通信的用戶臨時(shí)分配一個(gè)會話密鑰(僅使用一次)。用戶A和B都是KDC的登記用戶,并已經(jīng)在KDC的服務(wù)器上安裝了各自和KDC進(jìn)行通信的主密鑰(masterkey)KA和KB?!爸髅荑€”可簡稱為“密鑰”。7.5.1對稱密鑰的分配目前常用的密鑰分配方式是設(shè)立密鑰46對稱密鑰的分配AB密鑰分配中心KDCA,B,KABKB……用戶專用主密鑰用戶主密鑰A
KAB
KB
A,B,KABKABKBKA,時(shí)間A,B對稱密鑰的分配AB密鑰A,B,KABKB……用戶專用主47對稱密鑰的分配在網(wǎng)絡(luò)上傳送密鑰時(shí),都是經(jīng)過加密的。解密用的密鑰都不在網(wǎng)絡(luò)上傳送。會話密鑰KAB都是用隨機(jī)數(shù)產(chǎn)生的“一次一密”,是一次性的。KDC分配給用戶的密鑰KA和KB都應(yīng)定期的更換。KDC還可以加入時(shí)間戳,以防止報(bào)文的截獲者利用以前已記錄下來的報(bào)文進(jìn)行重放攻擊。目前最出名的密鑰分配協(xié)議是KerberosV5。對稱密鑰的分配在網(wǎng)絡(luò)上傳送密鑰時(shí),都是經(jīng)過加密的。解密用的密48KerberosV5KerberosV5是麻省理工學(xué)院MIT開發(fā)的。KerberosV5既是鑒別協(xié)議,也是KDC。KerberosV5使用比DES更安全的先進(jìn)的加密標(biāo)準(zhǔn)AES(AdvancedEncryptionStandard)進(jìn)行加密。Kerberos使用兩個(gè)服務(wù)器:鑒別服務(wù)器AS(AuthenticationServer)、票據(jù)授予服務(wù)器TGS(Ticket-GrantingServer)。Kerberos只用于客戶與服務(wù)器之間的鑒別,而不用于人對人的鑒別。在下圖中,A是請求服務(wù)的客戶,B是服務(wù)器。KerberosV5KerberosV5是麻省理工學(xué)院M49ABKerberosAASTGSTKAB,A,KABKBT+1KABA,KSTKS,B,KTGA,KABKB,B,KABKSKTGKAA,KSKS,ABKerberosAASTGSTKAB,A,KAB50KerberosA用明文向鑒別服務(wù)器AS表明自己的身份。AS就是KDC,掌握各實(shí)體登記的身份和相應(yīng)的口令。AS對A的身份進(jìn)行驗(yàn)證,只有驗(yàn)證結(jié)果正確,才允許A和票據(jù)授予服務(wù)器TGS進(jìn)行聯(lián)系。AS向A發(fā)送用A的對稱密鑰KA加密的報(bào)文,這個(gè)報(bào)文包含A和TGS通信的會話密鑰KS以及AS要發(fā)送給TGS的票據(jù)(用TGS的對稱密鑰KTG加密)。A并未保存密鑰KA,當(dāng)這個(gè)報(bào)文到達(dá)A時(shí),A就鍵入其口令。若口令正確,則該口令和適當(dāng)?shù)乃惴ㄒ黄鹁湍苌擅荑€KA。這個(gè)口令隨即被銷毀。密鑰KA用來對AS發(fā)送過來的報(bào)文進(jìn)行解密,提取出會話密鑰KS和要轉(zhuǎn)發(fā)給TGS的票據(jù)。KerberosA用明文向鑒別服務(wù)器AS表明自己的身份。AS51KerberosA向TGS發(fā)送三個(gè)項(xiàng)目:轉(zhuǎn)發(fā)AS發(fā)來的票據(jù)。服務(wù)器B的名字。這表明A請求B的服務(wù)。注意,A向TGS證明自己的身份并非通過鍵入口令(因?yàn)槿肭终吣軓木W(wǎng)上截獲明文口令),而是通過轉(zhuǎn)發(fā)AS發(fā)出的票據(jù)(因?yàn)橹挥蠥才能取出)。票據(jù)是加密的,入侵者偽造不了。用KS加密的時(shí)間戳T,它用來防止入侵者的重放攻擊。KerberosA向TGS發(fā)送三個(gè)項(xiàng)目:52KerberosTGS發(fā)送兩個(gè)票據(jù),每一個(gè)都包含A和B通信的會話密鑰KAB。給A的票據(jù)用KS加密;給B的票據(jù)用B的密鑰KB加密。現(xiàn)在入侵者不能提取KAB,因?yàn)椴恢繩S和KB。入侵者也不能重放步驟3,因?yàn)槿肭终卟荒馨褧r(shí)間戳更換為一個(gè)新的(因?yàn)椴恢繩S)。如果入侵者在時(shí)間戳到期之前,非常迅速的發(fā)送步驟3的報(bào)文,那么對TGS發(fā)送過來的兩個(gè)票據(jù)仍然不能解密。A向B轉(zhuǎn)發(fā)TGS發(fā)來的票據(jù),同時(shí)發(fā)送用KAB加密的時(shí)間戳T。B把時(shí)間戳T加1來證實(shí)收到了票據(jù)。B向A發(fā)送的報(bào)文用密鑰KAB加密。KerberosTGS發(fā)送兩個(gè)票據(jù),每一個(gè)都包含A和B通信的53Kerberos以后A和B就使用KAB進(jìn)行通信。Kerberos要求所有使用Kerberos的主機(jī)及必須在時(shí)鐘上進(jìn)行“松散的”同步,這是為了防止重放攻擊。所謂的“松散的”同步是要求所有主機(jī)的時(shí)鐘誤差不能太大。Kerberos以后A和B就使用KAB進(jìn)行通信。547.5.2公鑰的分配需要有一個(gè)值得信賴的機(jī)構(gòu)——即認(rèn)證中心CA(CertificationAuthority),將公鑰與其對應(yīng)的實(shí)體(人或機(jī)器)進(jìn)行綁定(binding)。認(rèn)證中心一般由政府出資建立。每個(gè)實(shí)體都有CA發(fā)來的證書(certificate),里面有公鑰及其擁有者的標(biāo)識信息。此證書被CA進(jìn)行了數(shù)字簽名。任何用戶都可從可信的地方獲得認(rèn)證中心CA的公鑰,此公鑰用來驗(yàn)證某個(gè)公鑰是否為某個(gè)實(shí)體所擁有。有的大公司也提供認(rèn)證中心服務(wù)。為了使CA具有統(tǒng)一的格式,ITU-T指定了X.509協(xié)議標(biāo)準(zhǔn),用來描述證書的結(jié)構(gòu)。在X.509中規(guī)定要使用ASN.1。IETF接受了X.509,并在RFC3280中給出了因特網(wǎng)X.509公鑰基礎(chǔ)結(jié)構(gòu)PKI。7.5.2公鑰的分配需要有一個(gè)值得信賴的機(jī)構(gòu)——即認(rèn)證中557.6因特網(wǎng)使用的安全協(xié)議
7.6.1網(wǎng)絡(luò)層安全協(xié)議
IPsec與安全關(guān)聯(lián)SA1998.11公布了因特網(wǎng)網(wǎng)絡(luò)安全的系列RFC2401~2411。其中最重要的就是描述IP安全體系結(jié)構(gòu)的RFC2401和提供IPsec協(xié)議族描述的RFC2411。網(wǎng)絡(luò)層保密是指所有在IP數(shù)據(jù)報(bào)中的數(shù)據(jù)都是加密的。網(wǎng)絡(luò)層還提供源點(diǎn)鑒別,即當(dāng)目的站收到IP數(shù)據(jù)報(bào)時(shí),能確信這是從該數(shù)據(jù)報(bào)的源IP地址的主機(jī)發(fā)來的。7.6因特網(wǎng)使用的安全協(xié)議
7.6.1網(wǎng)絡(luò)層安全協(xié)56IPsec中最主要的兩個(gè)部分鑒別首部AH(AuthenticationHeader):AH鑒別源點(diǎn)和檢查數(shù)據(jù)完整性,但不能保密。封裝安全有效載荷ESP(EncapsulationSecurityPayload):ESP比AH復(fù)雜得多,它鑒別源點(diǎn)、檢查數(shù)據(jù)完整性和提供保密。IPsec中最主要的兩個(gè)部分鑒別首部AH(Authe57安全關(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)SA
(SecurityAssociation)58安全關(guān)聯(lián)的特點(diǎn)安全關(guān)聯(lián)是一個(gè)單向連接。它由一個(gè)三元組唯一地確定,包括:(1)安全協(xié)議(使用AH或ESP)的標(biāo)識符(2)此單向連接的源IP地址(3)一個(gè)32位的連接標(biāo)識符,稱為安全參數(shù)索引SPI(SecurityParameterIndex)對于一個(gè)給定的安全關(guān)聯(lián)SA,每一個(gè)IPsec數(shù)據(jù)報(bào)都有一個(gè)存放SPI的字段。通過此SA的所有數(shù)據(jù)報(bào)都使用同樣的SPI值。安全關(guān)聯(lián)的特點(diǎn)安全關(guān)聯(lián)是一個(gè)單向連接。它由一個(gè)三元組唯一地確592.鑒別首部協(xié)議AH在使用鑒別首部協(xié)議AH時(shí),把AH首部插在原數(shù)據(jù)報(bào)數(shù)據(jù)部分的前面,同時(shí)把IP首部中的協(xié)議字段置為51。在傳輸過程中,中間的路由器都不查看AH首部。當(dāng)數(shù)據(jù)報(bào)到達(dá)終點(diǎn)時(shí),目的主機(jī)才處理AH字段,以鑒別源點(diǎn)和檢查數(shù)據(jù)報(bào)的完整性。IP首部AH首部TCP/UDP報(bào)文段協(xié)議=512.鑒別首部協(xié)議AH在使用鑒別首部協(xié)議AH時(shí),把60AH首部下一個(gè)首部(8位)。標(biāo)志緊接著本首部的下一個(gè)首部的類型(如TCP或UDP)。有效載荷長度(8位),即鑒別數(shù)據(jù)字段的長度,以32位字為單位。安全參數(shù)索引SPI(32位)。標(biāo)志安全關(guān)聯(lián)。序號(32位)。鑒別數(shù)據(jù)字段的長度,以32位字為單位。保留(16位)。為今后用。鑒別數(shù)據(jù)(可變)。為32位字的整數(shù)倍,它包含了經(jīng)數(shù)字簽名的報(bào)文摘要。因此可用來鑒別源主機(jī)和檢查IP數(shù)據(jù)報(bào)的完整性。AH首部下一個(gè)首部(8位)。標(biāo)志緊接著本首部的下一個(gè)首613.封裝安全有效載荷ESP使用ESP時(shí),IP數(shù)據(jù)報(bào)首部的協(xié)議字段置為50。當(dāng)IP首部檢查到協(xié)議字段是50時(shí),就知道在IP首部后面緊接著的是ESP首部,同時(shí)在原IP數(shù)據(jù)報(bào)后面增加了兩個(gè)字段,即ESP尾部和ESP數(shù)據(jù)。在ESP首部中有標(biāo)識一個(gè)安全關(guān)聯(lián)的安全參數(shù)索引SPI(32位),和序號(32位)。3.封裝安全有效載荷ESP使用ESP時(shí),IP數(shù)據(jù)623.封裝安全有效載荷ESP(續(xù))在ESP尾部中有下一個(gè)首部(8位,作用和AH首部的一樣)。ESP尾部和原來數(shù)據(jù)報(bào)的數(shù)據(jù)部分一起進(jìn)行加密,因此攻擊者無法得知所使用的運(yùn)輸層協(xié)議。ESP鑒別和AH中的鑒別數(shù)據(jù)是一樣的。因此,用ESP封裝的數(shù)據(jù)報(bào)既有鑒別源站和檢查數(shù)據(jù)報(bào)完整性的功能,又能提供保密。3.封裝安全有效載荷ESP(續(xù))在ESP尾部中有下63在IP數(shù)據(jù)報(bào)中的
ESP的各字段IP首部ESP首部TCP/UDP報(bào)文段使用ESP的IP數(shù)據(jù)報(bào)原數(shù)據(jù)報(bào)的數(shù)據(jù)部分ESP尾部ESP鑒別加密的部分鑒別的部分協(xié)議=50在IP數(shù)據(jù)報(bào)中的
ESP的各字段IP首部ESP首647.6.2運(yùn)輸層安全協(xié)議
1.安全套接層SSL
SSL是安全套接層(SecureSocketLayer)協(xié)議,可對萬維網(wǎng)客戶與服務(wù)器之間傳送的數(shù)據(jù)進(jìn)行加密和鑒別。SSL在雙方的聯(lián)絡(luò)階段協(xié)商將使用的加密算法和密鑰,以及客戶與服務(wù)器之間的鑒別。在聯(lián)絡(luò)階段完成之后,所有傳送的數(shù)據(jù)都使用在聯(lián)絡(luò)階段商定的會話密鑰。SSL不僅限于萬維網(wǎng)應(yīng)用,還用于IMAP郵件存取的鑒別和數(shù)據(jù)加密。而且也是運(yùn)輸層安全協(xié)議TLS(TransportLayerSecurity)的基礎(chǔ)。7.6.2運(yùn)輸層安全協(xié)議
1.安全套接層SSLSS65SSL的位置TCP應(yīng)用層SSL運(yùn)輸層HTTPIMAPSSL功能標(biāo)準(zhǔn)套接字在發(fā)送方,SSL接收應(yīng)用層的數(shù)據(jù)(如HTTP或IMAP報(bào)文),對數(shù)據(jù)進(jìn)行加密,然后把加了密的數(shù)據(jù)送往TCP套接字。在接收方,SSL從TCP套接字讀取數(shù)據(jù),解密后把數(shù)據(jù)交給應(yīng)用層。SSL的位置TCP應(yīng)用層SSL運(yùn)輸層HTTPIMA66SSL提供以下三個(gè)功能SSL
服務(wù)器鑒別:允許用戶證實(shí)服務(wù)器的身份。具有SSL功能的瀏覽器維持一個(gè)表,上面有一些可信賴的認(rèn)證中心CA(CertificateAuthority)和它們的公鑰。加密的SSL會話:客戶和服務(wù)器交互的所有數(shù)據(jù)都在發(fā)送方加密,在接收方解密。SSL還提供一種檢測信息是否被攻擊者篡改的機(jī)制。SSL客戶鑒別:允許服務(wù)器證實(shí)客戶的身份。SSL提供以下三個(gè)功能SSL服務(wù)器鑒別:允許用戶證實(shí)服672.安全電子交易SET
(SecureElectronicTransaction)安全電子交易SET是專為在因特網(wǎng)上進(jìn)行安全支付卡交易的協(xié)議。SET的主要特點(diǎn)是:(1)SET是專為與支付有關(guān)的報(bào)文進(jìn)行加密的。而SSL可以為任何數(shù)據(jù)加密。(2)SET協(xié)議涉及到三方,即顧客、商家和商業(yè)銀行。所有在這三方之間交互的敏感信息都被加密。(3)SET要求這三方都有證書。在SET交易中,商家看不見顧客傳送給商業(yè)銀行的信用卡號碼。2.安全電子交易SET
(SecureElectr687.6.3應(yīng)用層的安全協(xié)議
1.PGP(PrettyGoodPrivacy)
PGP是一個(gè)完整的電子郵件安全軟件包,包括加密、鑒別、電子簽名和壓縮等技術(shù),提供了電子郵件的安全性、發(fā)送方鑒別和報(bào)文完整性。PGP并沒有使用什么新的概念,它只是將現(xiàn)有的一些算法如MD5,RSA,以及IDEA等綜合在一起而已。雖然PGP已被廣泛使用,但PGP并不是因特網(wǎng)的正式標(biāo)準(zhǔn)。
7.6.3應(yīng)用層的安全協(xié)議
1.PGP(Pret69PGP的工作過程假定A向B發(fā)送電子郵件明文X。若使用PGP進(jìn)行加密,則A有三個(gè)密鑰:自己的私鑰、B的公鑰和自己生成的一次性密鑰。B有兩個(gè)密鑰:自己的私鑰和A的公鑰。PGP的工作過程假定A向B發(fā)送電子郵件明文X。若使用PGP進(jìn)70A的工作對明文X進(jìn)行MD5報(bào)文摘要運(yùn)算,得出報(bào)文摘要H。用自己的私鑰對H進(jìn)行數(shù)字簽名,得出簽名的報(bào)文摘要D(H),把它拼接在明文的后面,得到報(bào)文(X+D(H))。使用自己生成的一次性密鑰對報(bào)文(X+D(H))進(jìn)行加密。使用B的公鑰對一次性密鑰進(jìn)行加密。把加了密的一次性密鑰和報(bào)文發(fā)給B。A的工作對明文X進(jìn)行MD5報(bào)文摘要運(yùn)算,得出報(bào)文摘要H。用自71B的工作把被加密的一次性密鑰和報(bào)文分離開。用自己的私鑰解出A的一次性密鑰。用解出的一次性密鑰解密報(bào)文(X+D(H)),然后分離出明文X和D(H)。用A的公鑰對D(H)進(jìn)行核實(shí),得出報(bào)文摘要H。對X進(jìn)行報(bào)文摘要算法,得出報(bào)文摘要,看是否和H一樣。如一樣,則電子郵件的發(fā)送方鑒別就通過了,報(bào)文的完整性也得到了肯定。B的工作把被加密的一次性密鑰和報(bào)文分離開。722.PEM
(PrivacyEnhancedMail)
PEM是因特網(wǎng)的郵件加密建議標(biāo)準(zhǔn),由四個(gè)RFC文檔來描述:(1)RFC1421:報(bào)文加密與鑒別過程(2)RFC1422:基于證書的密鑰管理(3)RFC1423:PEM的算法、工作方式和標(biāo)識符(4)RFC1424:密鑰證書和相關(guān)的服務(wù)2.PEM
(PrivacyEnhancedMail73PEM的主要特點(diǎn)PEM的功能和PGP的差不多,都是對基于RFC822的電子郵件進(jìn)行加密和鑒別。PEM有比PGP更加完善的密鑰管理機(jī)制。由認(rèn)證中心發(fā)布證書,上面有用戶姓名、公鑰以及密鑰的使用期限。每個(gè)證書有一個(gè)唯一的序號。證書還包括用認(rèn)證中心秘鑰簽了名的MD5散列函數(shù)。PEM的主要特點(diǎn)PEM的功能和PGP的差不多,都是對747.7鏈路加密與端到端加密
7.7.1鏈路加密
在采用鏈路加密的網(wǎng)絡(luò)中,每條通信鏈路上的加密是獨(dú)立實(shí)現(xiàn)的。通常對每條鏈路使用不同的加密密鑰。
D1E2明文X結(jié)點(diǎn)1D2E3明文X結(jié)點(diǎn)2Dn明文X用戶BE1明文X用戶A
E1(X)鏈路1
E2(X)鏈路2
En(X)鏈路n
E3(X)密文密文密文密文相鄰結(jié)點(diǎn)之間具有相同的密鑰,因而密鑰管理易于實(shí)現(xiàn)。鏈路加密對用戶來說是透明的,因?yàn)榧用艿墓δ苁怯赏ㄐ抛泳W(wǎng)提供的。7.7鏈路加密與端到端加密
7.7.1鏈路加密在采用75鏈路加密報(bào)頭和數(shù)據(jù)都被加密,這掩蓋了源點(diǎn)和終點(diǎn)。由于報(bào)文是以明文形式在各結(jié)點(diǎn)內(nèi)加密的,所以結(jié)點(diǎn)本身必須是安全的。所有的中間結(jié)點(diǎn)(包括可能經(jīng)過的路由器)未必都是安全的。因此必須采取有效措施。鏈路加密的最大缺點(diǎn)是在中間結(jié)點(diǎn)暴露了信息的內(nèi)容。另外鏈路加密也不適用于廣播網(wǎng)絡(luò),因?yàn)閺V播網(wǎng)絡(luò)的通信子網(wǎng)沒有明確的鏈路存在。在網(wǎng)絡(luò)互連的情況下,僅采用鏈路加密是不能實(shí)現(xiàn)通信安全的。鏈路加密報(bào)頭和數(shù)據(jù)都被加密,這掩蓋了源點(diǎn)和終點(diǎn)。767.7.2端到端加密端到端加密是在源結(jié)點(diǎn)和目的結(jié)點(diǎn)中對傳送的PDU進(jìn)行加密和解密,報(bào)文的安全性不會因中間結(jié)點(diǎn)的不可靠而受到影響。
結(jié)點(diǎn)1結(jié)點(diǎn)2DK明文X結(jié)點(diǎn)nEK明文X結(jié)點(diǎn)0
EK(X)鏈路1
EK(X)鏈路2
EK(X)鏈路n端到端鏈路傳送的都是密文在端到端加密的情況下,PDU的控制信息部分(如源結(jié)點(diǎn)地址、目的結(jié)點(diǎn)地址、路由信息等)不能被加密,否則中間結(jié)點(diǎn)就不能正確選擇路由。7.7.2端到端加密端到端加密是在源結(jié)點(diǎn)和目的結(jié)點(diǎn)中對777.8防火墻(firewall)防火墻是由軟件、硬件構(gòu)成的系統(tǒng),是一種特殊編程的路由器,用來在兩個(gè)網(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)的安全問題。7.8防火墻(firewall)防火墻是由軟件、硬件構(gòu)成78防火墻在互連網(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ò)79防火墻的功能防火墻的功能有兩個(gè):阻止和允許。“阻止”就是阻止某種類型的通信量通過防火墻(從外部網(wǎng)絡(luò)到內(nèi)部網(wǎng)絡(luò),或反過來)?!霸试S”的功能與“阻止”恰好相反。防火墻必須能夠識別通信量的各種類型。不過在大多數(shù)情況下防火墻的主要功能是“阻止”。防火墻的功能防火墻的功能有兩個(gè):阻止和允許。80防火墻技術(shù)一般分為兩類(1)網(wǎng)絡(luò)級防火墻——用來防止整個(gè)網(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)用的通過。防火墻技術(shù)一般分為兩類(1)網(wǎng)絡(luò)級防火墻——用來防止整個(gè)817-01,7-02,7-05,7-06,7-07,7-10,7-12,7-14,7-17,7-19,7-20,7-217-01,7-02,7-05,7-06,7-07,82計(jì)算機(jī)網(wǎng)絡(luò)(第5版)第7章網(wǎng)絡(luò)安全計(jì)算機(jī)網(wǎng)絡(luò)(第5版)第7章網(wǎng)絡(luò)安全83第7章網(wǎng)絡(luò)安全
7.1網(wǎng)絡(luò)安全問題概述7.1.1計(jì)算機(jī)網(wǎng)絡(luò)面臨的安全性威脅7.1.2計(jì)算機(jī)網(wǎng)絡(luò)安全的內(nèi)容7.1.3一般的數(shù)據(jù)加密模型7.2兩類密碼體制7.2.1對稱密鑰密碼體制7.2.2公鑰密碼體制第7章網(wǎng)絡(luò)安全7.1網(wǎng)絡(luò)安全問題概述84第7章網(wǎng)絡(luò)安全(續(xù))7.3數(shù)字簽名7.4鑒別7.4.1報(bào)文鑒別7.4.2實(shí)體鑒別7.5密鑰分配7.5.1對稱密鑰的分配7.5,2公鑰的分配第7章網(wǎng)絡(luò)安全(續(xù))7.3數(shù)字簽名85第7章網(wǎng)絡(luò)安全(續(xù))7.6因特網(wǎng)使用的安全協(xié)議7.6.1網(wǎng)絡(luò)層安全協(xié)議7.6.2運(yùn)輸層安全協(xié)議7.6.3應(yīng)用層的安全協(xié)議破7.7鏈路加密與端到端加密7.7.1鏈路加密7.7.2端到端加密7.8防火墻第7章網(wǎng)絡(luò)安全(續(xù))7.6因特網(wǎng)使用的安全協(xié)議867.1網(wǎng)絡(luò)安全問題概述
7.1.1計(jì)算機(jī)網(wǎng)絡(luò)面臨的安全性威脅
計(jì)算機(jī)網(wǎng)絡(luò)上的通信面臨以下的四種威脅:(1)截獲——從網(wǎng)絡(luò)上竊聽他人的通信內(nèi)容。(2)中斷——有意中斷他人在網(wǎng)絡(luò)上的通信。(3)篡改——故意篡改網(wǎng)絡(luò)上傳送的報(bào)文。(4)偽造——偽造信息在網(wǎng)絡(luò)上傳送。截獲信息的攻擊稱為被動攻擊,而更改信息和拒絕用戶使用資源的攻擊稱為主動攻擊。7.1網(wǎng)絡(luò)安全問題概述
7.1.1計(jì)算機(jī)網(wǎng)絡(luò)面臨87對網(wǎng)絡(luò)的被動攻擊和主動攻擊截獲篡改偽造中斷被動攻擊主動攻擊目的站源站源站源站源站目的站目的站目的站對網(wǎng)絡(luò)的被動攻擊和主動攻擊截獲篡改偽造中斷被動攻擊主動88被動攻擊在被動攻擊中,攻擊者只是觀察和分析某一個(gè)協(xié)議數(shù)據(jù)單元PDU而不干擾信息流。攻擊者通過觀察PDU的長度和傳輸?shù)念l度,了解所交換的數(shù)據(jù)的某種性質(zhì),這種被動攻擊又稱為流量分析(trafficanalysis)。被動攻擊在被動攻擊中,攻擊者只是觀察和分析某一個(gè)協(xié)議數(shù)據(jù)單元89主動攻擊主動攻擊是指攻擊者對某個(gè)連接中通過的PDU進(jìn)行各種處理。更改報(bào)文流:包括對通過連接的PDU的真實(shí)性、完整性和有序性的攻擊。拒絕報(bào)文服務(wù):指攻擊者向因特網(wǎng)上的服務(wù)器不停地發(fā)送大量的分組,使因特網(wǎng)或服務(wù)器無法提供正常的服務(wù)。也稱為拒絕服務(wù)DoS或網(wǎng)絡(luò)帶寬攻擊或連通性攻擊。偽造連接初始化:攻擊者重放以前被記錄的合法連接初始化序列,或者偽造身份而企圖建立連接。主動攻擊主動攻擊是指攻擊者對某個(gè)連接中通過的PDU90(1)防止析出報(bào)文內(nèi)容;(2)防止通信量分析;(3)檢測更改報(bào)文流;(4)檢測拒絕報(bào)文服務(wù);(5)檢測偽造初始化連接。計(jì)算機(jī)網(wǎng)絡(luò)通信安全的目標(biāo)(1)防止析出報(bào)文內(nèi)容;計(jì)算機(jī)網(wǎng)絡(luò)通信安全的目標(biāo)91防止攻擊的策略對于被動攻擊可以采用各種加密技術(shù)。對于主動攻擊,則需將加密技術(shù)和適當(dāng)?shù)蔫b別技術(shù)相結(jié)合。還有一種特殊的主動攻擊就是惡意程序。防止攻擊的策略對于被動攻擊可以采用各種加密技術(shù)。92計(jì)算機(jī)病毒——會“傳染”其他程序的程序,“傳染”是通過修改其他程序來把自身或其變種復(fù)制進(jìn)去完成的。計(jì)算機(jī)蠕蟲——通過網(wǎng)絡(luò)的通信功能將自身從一個(gè)結(jié)點(diǎn)發(fā)送到另一個(gè)結(jié)點(diǎn)并啟動運(yùn)行的程序。特洛伊木馬——一種程序,它執(zhí)行的功能超出所聲稱的功能。邏輯炸彈——一種當(dāng)運(yùn)行環(huán)境滿足某種特定條件時(shí)執(zhí)行其他特殊功能的程序。惡意程序(rogueprogram)計(jì)算機(jī)病毒——會“傳染”其他程序的程序,“傳染”是通過修改其937.1.2計(jì)算機(jī)網(wǎng)絡(luò)安全的內(nèi)容保密性安全協(xié)議的設(shè)計(jì)訪問控制或存取控制或接入控制7.1.2計(jì)算機(jī)網(wǎng)絡(luò)安全的內(nèi)容保密性94明文X
截獲密文Y7.1.3一般的數(shù)據(jù)加密模型加密密鑰K明文X密文Y截取者篡改ABE運(yùn)算加密算法D運(yùn)算解密算法因特網(wǎng)解密密鑰K明文X截獲密文Y7.1.3一般的數(shù)據(jù)加密模型加95一些重要概念密碼編碼學(xué)(cryptography)是密碼體制的設(shè)計(jì)學(xué),而密碼分析學(xué)(cryptanalysis)則是在未知密鑰的情況下從密文推演出明文或密鑰的技術(shù)。密碼編碼學(xué)與密碼分析學(xué)合起來即為密碼學(xué)(cryptology)。如果不論截取者獲得了多少密文,但在密文中都沒有足夠的信息來唯一地確定出對應(yīng)的明文,則這一密碼體制稱為無條件安全的,或稱為理論上是不可破的。如果密碼體制中的密碼不能被可使用的計(jì)算資源破譯,則這一密碼體制稱為在計(jì)算上是安全的。一些重要概念密碼編碼學(xué)(cryptography)是密碼體967.2兩類密碼體制
7.2.1對稱密鑰密碼體制
所謂常規(guī)密鑰密碼體制,即加密密鑰與解密密鑰是相同的密碼體制。這種加密系統(tǒng)又稱為對稱密鑰系統(tǒng)。7.2兩類密碼體制
7.2.1對稱密鑰密碼體制所97數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于常規(guī)密鑰密碼體制,是一種分組密碼。在加密前,先對整個(gè)明文進(jìn)行分組。每一組長為64位二進(jìn)制數(shù)據(jù)。然后對每一個(gè)64位二進(jìn)制數(shù)據(jù)進(jìn)行加密處理,產(chǎn)生一組64位密文數(shù)據(jù)。最后將各組密文串接起來,即得出整個(gè)的密文。使用的密鑰為64位(實(shí)際密鑰長度為56位,有8位用于奇偶校驗(yàn))。數(shù)據(jù)加密標(biāo)準(zhǔn)DES數(shù)據(jù)加密標(biāo)準(zhǔn)DES屬于常規(guī)密鑰密碼體98DES
的保密性DES
的保密性僅取決于對密鑰的保密,而算法是公開的。盡管人們在破譯DES方面取得了許多進(jìn)展,但至今仍未能找到比窮舉搜索密鑰更有效的方法。DES是世界上第一個(gè)公認(rèn)的實(shí)用密碼算法標(biāo)準(zhǔn),它曾對密碼學(xué)的發(fā)展做出了重大貢獻(xiàn)。目前較為嚴(yán)重的問題是DES的密鑰的長度。現(xiàn)在已經(jīng)設(shè)計(jì)出來搜索DES密鑰的專用芯片。國際數(shù)據(jù)加密算法IDEA使用128bit密鑰,更不容易被攻破。
DES的保密性DES的保密性僅取決于對密鑰的保密,而算法997.2.2公鑰密碼體制公鑰密碼體制使用不同的加密密鑰與解密密鑰,是一種“由已知加密密鑰推導(dǎo)出解密密鑰在計(jì)算上是不可行的”密碼體制。公鑰密碼體制的產(chǎn)生主要是因?yàn)閮蓚€(gè)方面的原因,一是由于常規(guī)密鑰密碼體制的密鑰分配問題,另一是由于對數(shù)字簽名的需求?,F(xiàn)有最著名的公鑰密碼體制是RSA體制,它基于數(shù)論中大數(shù)分解問題的體制,由美國三位科學(xué)家Rivest,Shamir和Adleman于1976年提出并在1978年正式發(fā)表的。7.2.2公鑰密碼體制公鑰密碼體制使用不同的加密密鑰與解100加密密鑰與解密密鑰在公鑰密碼體制中,加密密鑰(即公鑰)PK是公開信息,而解密密鑰(即私鑰或秘鑰)SK是需要保密的。加密算法E和解密算法D也都是公開的。雖然秘鑰SK是由公鑰PK決定的,但卻不能根據(jù)PK計(jì)算出SK。加密密鑰與解密密鑰在公鑰密碼體制中,加密密鑰(即公鑰)P101應(yīng)當(dāng)注意任何加密方法的安全性取決于密鑰的長度,以及攻破密文所需的計(jì)算量。在這方面,公鑰密碼體制并不具有比傳統(tǒng)加密體制更加優(yōu)越之處。由于目前公鑰加密算法的開銷較大,在可見的將來還看不出來要放棄傳統(tǒng)的加密方法。公鑰還需要密鑰分配協(xié)議,具體的分配過程并不比采用傳統(tǒng)加密方法時(shí)更簡單。應(yīng)當(dāng)注意任何加密方法的安全性取決于密鑰的長度,以及攻破密文102公鑰算法的特點(diǎn)發(fā)送者A用B的公鑰PKB對明文X加密(E運(yùn)算)后,在接收者B用自己的私鑰SKB解密(D運(yùn)算),即可恢復(fù)出明文:(7-4)解密密鑰是接收者專用的秘鑰,對其他人都保密。加密密鑰是公開的,但不能用它來解密,即
(7-5)公鑰算法的特點(diǎn)發(fā)送者A用B的公鑰PKB對明文103公鑰算法的特點(diǎn)(續(xù))加密和解密的運(yùn)算可以對調(diào),即
在計(jì)算機(jī)上可容易地產(chǎn)生成對的PK和SK。從已知的PK實(shí)際上不可能推導(dǎo)出SK,即從PK到SK是“計(jì)算上不可能的”。加密和解密算法都是公開的。(7-6)公鑰算法的特點(diǎn)(續(xù))加密和解密的運(yùn)算可以對調(diào),即(7-6)104公鑰密碼體制密文Y
E運(yùn)算加密算法D運(yùn)算解密算法加密解密明文X明文X
ABB的私鑰SKB密文Y
因特網(wǎng)B的公鑰PKB公鑰密碼體制密文YE運(yùn)算D運(yùn)算加密解密明文X明文1057.3數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):(1)報(bào)文鑒別——接收者能夠核實(shí)發(fā)送者對報(bào)文的簽名;(2)報(bào)文的完整性——發(fā)送者事后不能抵賴對報(bào)文的簽名;(3)不可否認(rèn)——接收者不能偽造對報(bào)文的簽名?,F(xiàn)在已有多種實(shí)現(xiàn)各種數(shù)字簽名的方法。但采用公鑰算法更容易實(shí)現(xiàn)。7.3數(shù)字簽名數(shù)字簽名必須保證以下三點(diǎn):106密文數(shù)字簽名的實(shí)現(xiàn)D運(yùn)算明文X明文X
ABA的私鑰SKA因特網(wǎng)簽名核實(shí)簽名E運(yùn)算密文A的公鑰PKA密文數(shù)字簽名的實(shí)現(xiàn)D明文X明文XABA的私鑰S107數(shù)字簽名的實(shí)現(xiàn)因?yàn)槌鼳外沒有別人能具有A的私鑰,所以除A外沒有別人能產(chǎn)生這個(gè)密文。因此B相信報(bào)文X是A簽名發(fā)送的。若A要抵賴曾發(fā)送報(bào)文給B,B可將明文和對應(yīng)的密文出示給第三者。第三者很容易用A的公鑰去證實(shí)A確實(shí)發(fā)送X給B。反之,若B將X偽造成X‘,則B不能在第三者前出示對應(yīng)的密文。這樣就證明了B偽造了報(bào)文。數(shù)字簽名的實(shí)現(xiàn)因?yàn)槌鼳外沒有別人能具有A的私鑰,所以108具有保密性的數(shù)字簽名核實(shí)簽名解密加密簽名E運(yùn)算D運(yùn)算明文X明文X
ABA的私鑰SKA因特網(wǎng)E運(yùn)算B的私鑰SKBD運(yùn)算加密與解密簽名與核實(shí)簽名B的公鑰PKBA的公鑰PKA密文具有保密性的數(shù)字簽名核實(shí)簽名解密加密簽名E運(yùn)算D1097.4鑒別在信息的安全領(lǐng)域中,對付被動攻擊的重要措施是加密,而對付主動攻擊中的篡改和偽造則要用鑒別(authentication)
。報(bào)文鑒別使得通信的接收方能夠驗(yàn)證所收到的報(bào)文(發(fā)送者和報(bào)文內(nèi)容、發(fā)送時(shí)間、序列等)的真?zhèn)?。使用加密就可達(dá)到報(bào)文鑒別的目的。但在網(wǎng)絡(luò)的應(yīng)用中,許多報(bào)文并不需要加密。應(yīng)當(dāng)使接收者能用很簡單的方法鑒別報(bào)文的真?zhèn)巍?.4鑒別在信息的安全領(lǐng)域中,對付被動攻擊的重要措施是加110鑒別與授權(quán)不同鑒別與授權(quán)(authorization)是不同的概念。授權(quán)涉及到的問題是:所進(jìn)行的過程是否被允許(如是否可以對某文件進(jìn)行讀或?qū)懀?。鑒別與授權(quán)不同鑒別與授權(quán)(authorization)是不同1117.4.1報(bào)文鑒別許多報(bào)文并不需要加密但卻需要數(shù)字簽名,以便讓報(bào)文的接收者能夠鑒別報(bào)文的真?zhèn)巍H欢鴮荛L的報(bào)文進(jìn)行數(shù)字簽名會使計(jì)算機(jī)增加很大的負(fù)擔(dān)(需要進(jìn)行很長時(shí)間的運(yùn)算。當(dāng)我們傳送不需要加密的報(bào)文時(shí),應(yīng)當(dāng)使接收者能用很簡單的方法鑒別報(bào)文的真?zhèn)巍?.4.1報(bào)文鑒別許多報(bào)文并不需要加密但卻需要數(shù)字簽名112報(bào)文摘要MD
(MessageDigest)A將報(bào)文X經(jīng)過報(bào)文摘要算法運(yùn)算后得出很短的報(bào)文摘要H。然后然后用自己的私鑰對H進(jìn)行D運(yùn)算,即進(jìn)行數(shù)字簽名。得出已簽名的報(bào)文摘要D(H)后,并將其追加在報(bào)文X后面發(fā)送給B。
B收到報(bào)文后首先把已簽名的D(H)和報(bào)文X分離。然后再做兩件事。用A的公鑰對D(H)進(jìn)行E運(yùn)算,得出報(bào)文摘要H。對報(bào)文X進(jìn)行報(bào)文摘要運(yùn)算,看是否能夠得出同樣的報(bào)文摘要H。如一樣,就能以極高的概率斷定收到的報(bào)文是A產(chǎn)生的。否則就不是。報(bào)文摘要MD
(MessageDigest)A將報(bào)文113報(bào)文摘要的優(yōu)點(diǎn)僅對短得多的定長報(bào)文摘要H進(jìn)行數(shù)字簽名要比對整個(gè)長報(bào)文進(jìn)行數(shù)字簽名要簡單得多,所耗費(fèi)的計(jì)算資源也小得多。但對鑒別報(bào)文X來說,效果是一樣的。也就是說,報(bào)文X和已簽名的報(bào)文摘要D(H)合在一起是不可偽造的,是可檢驗(yàn)的和不可否認(rèn)的。報(bào)文摘要的優(yōu)點(diǎn)僅對短得多的定長報(bào)文摘要H進(jìn)行數(shù)字簽名要比114報(bào)文摘要算法報(bào)文摘要算法就是一種散列函數(shù)。這種散列函數(shù)也叫做密碼編碼的檢驗(yàn)和。報(bào)文摘要算法是防止報(bào)文被人惡意篡改。報(bào)文摘要算法是精心選擇的一種單向函數(shù)。可以很容易地計(jì)算出一個(gè)長報(bào)文X的報(bào)文摘要H,但要想從報(bào)文摘要H反過來找到原始的報(bào)文X,則實(shí)際上是不可能的。若想找到任意兩個(gè)報(bào)文,使得它們具有相同的報(bào)文摘要,那么實(shí)際上也是不可能的。報(bào)文摘要算法報(bào)文摘要算法就是一種散列函數(shù)。這種散列函數(shù)也叫做115報(bào)文摘要算法MD5把任意長的報(bào)文按模264計(jì)算其余數(shù)(64bit),追加在報(bào)文的后面。在報(bào)文和余數(shù)之間填充1~512bit的數(shù)據(jù)塊,使的填充后的總長度是512的整數(shù)倍。填充的首位是1,后面都是0。把追加和填充后的報(bào)文分割成一個(gè)個(gè)512bit的數(shù)據(jù)塊,每個(gè)512bit的報(bào)文數(shù)據(jù)再分成4個(gè)128bit的數(shù)據(jù)塊依次送到不同的散列函數(shù)進(jìn)行4輪計(jì)算。每一輪又都按32bit的小數(shù)據(jù)塊進(jìn)行復(fù)雜的運(yùn)算。一直到最后計(jì)算出128bit的MD5報(bào)文摘要代碼。報(bào)文摘要算法MD5把任意長的報(bào)文按模264計(jì)算其余數(shù)(6116報(bào)文摘要算法MD5MD5算法可以對任意長的報(bào)文進(jìn)行運(yùn)算,最后得出128bit的報(bào)文摘要代碼。MD5報(bào)文摘要代碼中的每一位都與原來報(bào)文中的每一位有關(guān)。安全散列算法SHA和MD5相似,但碼長為160位,比MD5更安全,但慢一些。報(bào)文摘要算法MD5MD5算法可以對任意長的報(bào)文進(jìn)行運(yùn)算,最后117報(bào)文摘要的實(shí)現(xiàn)A比較簽名核實(shí)簽名報(bào)文XHD運(yùn)算D(H)A的私鑰報(bào)文XD(H)B報(bào)文摘要報(bào)文XD(H)發(fā)送E運(yùn)算H簽名的報(bào)文摘要H報(bào)文摘要運(yùn)算A的公鑰報(bào)文摘要運(yùn)算報(bào)文摘要報(bào)文摘要因特網(wǎng)報(bào)文摘要的實(shí)現(xiàn)A比較簽名核實(shí)簽名報(bào)文XHD運(yùn)算D(1187.4.2實(shí)體鑒別實(shí)體鑒別和報(bào)文鑒別不同。報(bào)文鑒別是對每一個(gè)收到的報(bào)文都要鑒別報(bào)文的發(fā)送者,而實(shí)體鑒別是在系統(tǒng)接入的全部持續(xù)時(shí)間內(nèi)對和自己通信的對方實(shí)體只需驗(yàn)證一次。7.4.2實(shí)體鑒別實(shí)體鑒別和報(bào)文鑒別不同。119最簡單的實(shí)體鑒別過程A發(fā)送給B的報(bào)文的被加密,使用的是對稱密鑰KAB。B收到此報(bào)文后,用共享對稱密鑰KAB進(jìn)行解密,因而鑒別了實(shí)體A的身份。ABA,口令KAB最簡單的實(shí)體鑒別過程A發(fā)送給B的報(bào)文的被加密,使用的120明顯的漏洞入侵者C可以從網(wǎng)絡(luò)上截獲A發(fā)給B的報(bào)文。C并不需要破譯這個(gè)報(bào)文(因?yàn)檫@可能花很多時(shí)間)而可以直接把這個(gè)由A加密的報(bào)文發(fā)送給B,使B誤認(rèn)為C就是A。然后B就向偽裝是A的C發(fā)送應(yīng)發(fā)給A的報(bào)文。這就叫做重放攻擊(replayattack)。C甚至還可以截獲A的IP地址,然后把A的IP地址冒充為自己的IP地址(這叫做IP欺騙),使B更加容易受騙。明顯的漏洞入侵者C可以從網(wǎng)絡(luò)上截獲A發(fā)給B的報(bào)文121使用不重?cái)?shù)為了對付重放攻擊,可以使用不重?cái)?shù)(nonce)。不重?cái)?shù)就是一個(gè)不重復(fù)使用的大隨機(jī)數(shù),即“一次一數(shù)”。在鑒別過程中不重?cái)?shù)可以使B能夠把重復(fù)的鑒別請求和新的鑒別請求區(qū)分開。使用不重?cái)?shù)為了對付重放攻擊,可以使用不重?cái)?shù)(nonce)。不122使用不重?cái)?shù)進(jìn)行鑒別ABA,RARBKABRARBKAB,時(shí)間使用不重?cái)?shù)進(jìn)行鑒別ABA,RARBKABRARBKAB,123使用不重?cái)?shù)進(jìn)行鑒別A首先用明文發(fā)送自己的身份A和一個(gè)不重?cái)?shù)RA給B。B響應(yīng)A的查問,用共享的密鑰KAB對RA加密后發(fā)給A,同時(shí)也給出自己的不重?cái)?shù)RB。最后A再響應(yīng)B的查問,用共享的密鑰KAB對RB加密后發(fā)回給B。使用不重?cái)?shù)進(jìn)行鑒別A首先用明文發(fā)送自己的身份A和一個(gè)不重?cái)?shù)R124中間人攻擊AB我是A中間人C我是ARBRBSKC請把公鑰發(fā)來PKCRBRBSKA請把公鑰發(fā)來PKADATAPKCDATAPKA時(shí)間中間人攻擊AB我是A中間人C我是ARBRBSKC請把125中間人攻擊說明A向B發(fā)送“我是A”的報(bào)文,并給出了自己的身份。此報(bào)文被“中間人”C截獲,C把此報(bào)文原封不動地轉(zhuǎn)發(fā)給B。B選擇一個(gè)不重?cái)?shù)RB發(fā)送給A,但同樣被C截獲后也照樣轉(zhuǎn)發(fā)給A。中間人C用自己的私鑰SKC對RB加密后發(fā)回給B,使B誤以為是A發(fā)來的。A收到RB后也用自己的私鑰SKA對RB加密后發(fā)回給B,中途被C截獲并丟棄。B向A索取其公鑰,此報(bào)文被C截獲后轉(zhuǎn)發(fā)給A。C把自己的公鑰PKC冒充是A的發(fā)送給B,而C也截獲到A發(fā)送給B的公鑰PKA。B用收到的公鑰PKC(以為是A的)對數(shù)據(jù)加密發(fā)送給A。C截獲后用自己的私鑰SKC解密,復(fù)制一份留下,再用A的公鑰PKA對數(shù)據(jù)加密后發(fā)送給A。A收到數(shù)據(jù)后,用自己的私鑰SKA解密,以為和B進(jìn)行了保密通信。其實(shí),B發(fā)送給A的加密數(shù)據(jù)已被中間人C截獲并解密了一份。但A和B卻都不知道。中間人攻擊說明A向B發(fā)送“我是A”的報(bào)文,并給出了自1267.5密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分配、注入、驗(yàn)證和使用。本節(jié)只討論密鑰的分配。密鑰分配是密鑰管理中最大的問題。密鑰必須通過最安全的通路進(jìn)行分配。目前常用的密鑰分配方式是設(shè)立密鑰分配中心KDC(KeyDistribution),通過KDC來分配密鑰。7.5密鑰分配密鑰管理包括:密鑰的產(chǎn)生、分配、注入、1277.5.1對稱密鑰的分配目前常用的密鑰分配方式是設(shè)立密鑰分配中心KDC(KeyDistributionCenter)。KDC是大家都信任的機(jī)構(gòu),其任務(wù)就是給需要進(jìn)行秘密通信的用戶臨時(shí)分配一個(gè)會話密鑰(僅使用一次)。用戶A和B都是KDC的登記用戶,并已經(jīng)在KDC的服務(wù)器上安裝了各自和KDC進(jìn)行通信的主密鑰(masterkey)KA和KB?!爸髅荑€”可簡稱為“密鑰”。7.5.1對稱密鑰的分配目前常用的密鑰分配方式是設(shè)立密鑰128對稱密鑰的分配AB密鑰分配中心KDCA,B,KABKB……用戶專用主密鑰用戶主密鑰A
KAB
KB
A,B,KABKABKBKA,時(shí)間A,B對稱密鑰的分配AB密鑰A,B,KABKB……用戶專用主129對稱密鑰的分配在網(wǎng)絡(luò)上傳送密鑰時(shí),都是經(jīng)過加密的。解密用的密鑰都不在網(wǎng)絡(luò)上傳送。會話密鑰KAB都是用隨機(jī)數(shù)產(chǎn)生的“一次一密”,是一次性的。KDC分配給用戶的密鑰KA和KB都應(yīng)定期的更換。KDC還可以加入時(shí)間戳,以防止報(bào)文的截獲者利用以前已記錄下來的報(bào)文進(jìn)行重放攻擊。目前最出名的密鑰分配協(xié)議是KerberosV5。對稱密鑰的分配在網(wǎng)絡(luò)上傳送密鑰時(shí),都是經(jīng)過加密的。解密用的密130KerberosV5KerberosV5是麻省理工學(xué)院MIT開發(fā)的。KerberosV5既是鑒別協(xié)議,也是KDC。KerberosV5使用比DES更安全的先進(jìn)的加密標(biāo)準(zhǔn)AES(AdvancedEncryptionStandard)進(jìn)行加密。Kerberos使用兩個(gè)服務(wù)器:鑒別服務(wù)器AS(AuthenticationServer)、票據(jù)授予服務(wù)器TGS(Ticket-GrantingServer)。Kerberos只用于客戶與服務(wù)器之間的鑒別,而不用于人對人的鑒別。在下圖中,A是請求服務(wù)的客戶,B是服務(wù)器。KerberosV5KerberosV5是麻省理工學(xué)院M131ABKerberosAASTGSTKAB,A,KABKBT+1KABA,KSTKS,B,KTGA,KABKB,B,KABKSKTGKAA,KSKS,ABKerberosAASTGSTKAB,A,KAB132KerberosA用明文向鑒別服務(wù)器AS表明自己的身份。AS就是KDC,掌握各實(shí)體登記的身份和相應(yīng)的口令。AS對A的身份進(jìn)行驗(yàn)證,只有驗(yàn)證結(jié)果正確,才允許A和票據(jù)授予服務(wù)器TGS進(jìn)行聯(lián)系。AS向A發(fā)送用A的對稱密鑰KA加密的報(bào)文,這個(gè)報(bào)文包含A和TGS通信的會話密鑰KS以及AS要發(fā)送給TGS的票據(jù)(用TGS的對稱密鑰KTG加密)。A并未保存密鑰KA,當(dāng)這個(gè)報(bào)文到達(dá)A時(shí),A就鍵入其口令。若口令正確,則該口令和適當(dāng)?shù)乃惴ㄒ黄鹁湍苌擅荑€KA。這個(gè)口令隨即被銷毀。密鑰KA用來對AS發(fā)送過來的報(bào)文進(jìn)行解密,提取出會話密鑰KS和要轉(zhuǎn)發(fā)給TGS的票據(jù)。KerberosA用明文向鑒別服務(wù)器AS表明自己的身份。AS133KerberosA向TGS發(fā)送三個(gè)項(xiàng)目:轉(zhuǎn)發(fā)AS發(fā)來的票據(jù)。服務(wù)器B的名字。這表明A請求B的服務(wù)。注意,A向TGS證明自己的身份并非通過鍵入口令(因?yàn)槿肭终吣軓木W(wǎng)上截獲明文口令),而是通過轉(zhuǎn)發(fā)AS發(fā)出的票據(jù)(因?yàn)橹挥蠥才能取出)。票據(jù)是加密的,入侵者偽造不了。用KS加密的時(shí)間戳T,它用來防止入侵者的重放攻擊。KerberosA向TGS發(fā)送三個(gè)項(xiàng)目:134KerberosTGS發(fā)送兩個(gè)票據(jù),每一個(gè)都包含A和B通信的會話密鑰KAB。給A的票據(jù)用KS加密;給B的票據(jù)用B的密鑰KB加密?,F(xiàn)在入侵者不能提取KAB,因?yàn)椴恢繩S和KB。入侵者也不能重放步驟3,因?yàn)槿肭终卟荒馨褧r(shí)間戳更換為一個(gè)新的(因?yàn)椴恢繩S)。如果入侵者在時(shí)間戳到期之前,非常迅速的發(fā)送步驟3的報(bào)文,那么對TGS發(fā)送過來的兩個(gè)票據(jù)仍然不能解密。A向B轉(zhuǎn)發(fā)TGS發(fā)來的票據(jù),同時(shí)發(fā)送用KAB加密的時(shí)間戳T。B把時(shí)間戳T加1來證實(shí)收到了票據(jù)。B向A發(fā)送的報(bào)文用密鑰KAB加密。KerberosTGS發(fā)送兩個(gè)票據(jù),每一個(gè)都包含A和B通信的135Kerberos以后A和B就使用KAB進(jìn)行通信。Kerberos要求所有使用Kerberos的主機(jī)及必須在時(shí)鐘上進(jìn)行“松散的”同步,這是為了防止重放攻擊。所謂的“松散的”同步是要求所有主機(jī)的時(shí)鐘誤差不能太大。Kerberos以后A和B就使用KAB進(jìn)行通信。1367.5.2公鑰的分配需要有一個(gè)值得信賴的機(jī)構(gòu)——即認(rèn)證中心CA(CertificationAuthority),將公鑰與其對應(yīng)的實(shí)體(人或機(jī)器)進(jìn)行綁定(binding)。認(rèn)證中心一般由政府出資建立。每個(gè)實(shí)體都有CA發(fā)來的證書(certificate),里面有公鑰及其擁有者的標(biāo)識信息。此證書被CA進(jìn)行了數(shù)字簽名。任何用戶都可從可信的地方獲得認(rèn)證中心CA的公鑰,此公鑰用來驗(yàn)證某個(gè)公鑰是否為某個(gè)實(shí)體所擁有。有的大公司也提供認(rèn)證中心服務(wù)。為了使CA具有統(tǒng)一的格式,ITU-T指定了X.509協(xié)議標(biāo)準(zhǔn),用來描述證書的結(jié)構(gòu)。在X.509中規(guī)定要使用ASN.1。IETF接受了X.509,并在RFC3280中給出了因特網(wǎng)X.509公鑰基礎(chǔ)結(jié)構(gòu)PKI。7.5.2公鑰的分配需要有一個(gè)值得信賴的機(jī)構(gòu)——即認(rèn)證中1377.6因特網(wǎng)使用的
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度建筑木工環(huán)保建材研發(fā)與應(yīng)用合同
- 2025年度城市更新工程款支付保證委托擔(dān)保合同
- 邵陽2024年湖南邵陽市隆回縣部分事業(yè)單位招聘20人筆試歷年參考題庫附帶答案詳解
- 綏化2024年黑龍江綏化市北林區(qū)事業(yè)單位招聘77人筆試歷年參考題庫附帶答案詳解
- 深圳2024年廣東深圳市環(huán)境科學(xué)研究院招聘(第二批)筆試歷年參考題庫附帶答案詳解
- 棗莊2025年山東棗莊市商務(wù)發(fā)展促進(jìn)中心高層次急需緊缺人才招聘2人筆試歷年參考題庫附帶答案詳解
- 2025年中國復(fù)合材料籃球板市場調(diào)查研究報(bào)告
- 2025年中國全自動鍋爐軟化水裝置市場調(diào)查研究報(bào)告
- 2025年車門總成項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國遙信電源浪涌保護(hù)器行業(yè)投資前景及策略咨詢研究報(bào)告
- 項(xiàng)目部、公司成本管理流程圖
- CCAA 基于風(fēng)險(xiǎn)的認(rèn)證合規(guī)管理-認(rèn)證檔案質(zhì)量管理的風(fēng)險(xiǎn)控制
- 高中英語選擇性必修二 Unit 1 Period 1 Reading and thinking(課件)(共38張)
- 小學(xué)生電子小報(bào)通用模板-A4電子小報(bào)15
- CAS云計(jì)算軟件平臺深入介紹
- 課堂教學(xué)方法與手段(課堂PPT)課件(PPT 16頁)
- 固定資產(chǎn)投資統(tǒng)計(jì)培訓(xùn)PPT課件
- 一年級上冊必背古詩
- 平頂山第四屆名師名班主任名校長培養(yǎng)方案
- 2.通信光纜線路(管道)工程施工及驗(yàn)收技術(shù)規(guī)程要點(diǎn)
- 蒸壓加氣混凝土砌塊作業(yè)指導(dǎo)書(共14頁)
評論
0/150
提交評論