密碼協(xié)議書稿中文第5章_第1頁(yè)
密碼協(xié)議書稿中文第5章_第2頁(yè)
密碼協(xié)議書稿中文第5章_第3頁(yè)
密碼協(xié)議書稿中文第5章_第4頁(yè)
密碼協(xié)議書稿中文第5章_第5頁(yè)
已閱讀5頁(yè),還剩46頁(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)介

析。這將有助讀者深度理解可信任新鮮性方法,并應(yīng)用該方法對(duì)實(shí)際的協(xié)議進(jìn)行安全I(xiàn)(OI模型級(jí),從分為:應(yīng)層,示,會(huì)話層傳輸層網(wǎng)絡(luò)層數(shù)據(jù)鏈 net/ftp:ssh, net/ftp:ssh,http:https,(IPSec,IKE)(IEEE802.1x/IEEE(Spread-Spectrum,quantumcrypto,圖5.1時(shí)應(yīng)該保持系統(tǒng)向后兼容性,協(xié)議的改變應(yīng)該對(duì)系統(tǒng)影響盡量的小[13]。例如:SSL協(xié)議避免了修改”TCP?!鼻覍?duì)應(yīng)用只要做最小的改變,因此被認(rèn)證服務(wù)器所廣泛使用。IPSec在本章,討論網(wǎng)絡(luò)工業(yè)標(biāo)準(zhǔn)(或事實(shí)的標(biāo)準(zhǔn))中幾個(gè)常用的協(xié)議,包括SSL協(xié)議[2]以及它的變體TLS協(xié)議[3](IKE)[4,5],Kerberos認(rèn)證協(xié)議[6,7]看到中,要設(shè)計(jì)出一個(gè)好的協(xié)議,既適合應(yīng)用又具有強(qiáng)安全屬性是非常有性的工SSLTLS接協(xié)議L(cueocetayr)網(wǎng)公司(eap)研發(fā)技術(shù)通過(guò)在T層之上數(shù)據(jù)加,以?;ヂ?lián)網(wǎng)應(yīng)用數(shù)據(jù)的傳安全。L的一重要應(yīng)用就是在Hp和L相結(jié)合為瀏覽提供數(shù)性和整性服,例如在網(wǎng)上購(gòu)物網(wǎng)上銀等敏感用的場(chǎng),選擇L保其安全是普遍用的做,最近的一個(gè)版是L3.0,于196年推[2。1999,聯(lián)網(wǎng)工程務(wù)組ET(IneretEnginerngak )對(duì)L3.0行標(biāo)準(zhǔn),推傳輸層安協(xié)議TL1.版(ansportLaercury,成為絡(luò)端到加密工業(yè)標(biāo)(C2246)[3。在此后,ET又對(duì)TL作了修完善,別在 年和 年推TL1.1(4346,TL1.(C5246SSL協(xié)議的主要目的是為兩個(gè)互相通信的應(yīng)用提供安全連接。除了學(xué)的安全考慮,SSL還有考慮互操作性,可擴(kuò)展性以及相關(guān)的效率等。SSL協(xié)議允許客戶端/服務(wù)器端在一定的方式下通信,能夠防范、竄改、等。SSL握手協(xié)議可以被認(rèn)為是警協(xié)議,以及記錄協(xié)議。較低的那層協(xié)議位于TCP協(xié)議之上,被稱作SSL記錄協(xié)議。SSL記錄協(xié)議為通信信道提供安全的加密封裝,供上層的應(yīng)用協(xié)議使用。SSL協(xié)議在較上一層個(gè)密鑰交換協(xié)議,能夠在兩個(gè)應(yīng)用端初始化密鑰,并同步其狀態(tài)。在執(zhí)行完密鑰交換協(xié)議可以被透明地在SSL協(xié)議之上執(zhí)行,無(wú)需用戶參與。用來(lái)加密以及SSL記錄完整性的操作,是通過(guò)一個(gè)套件所決定。一個(gè)典型的例子是,使用DES算法加密數(shù)據(jù),8 8 8 16 16384字對(duì)于SL3.0TS對(duì)SL3.TS1.0SL31TS1.1SL3,TS1.2記錄長(zhǎng)度用字節(jié)表示,最大過(guò)214(16384)。如果對(duì)數(shù)據(jù)進(jìn)行壓縮,可以允許SSL握手協(xié)議是SSL記錄協(xié)議之上的一個(gè)高端協(xié)議。SSL握手協(xié)議允許服務(wù)器和客戶出相應(yīng)的密鑰,從而為應(yīng)用協(xié)議建立一個(gè)安全的通信連接。SSL握手協(xié)議的結(jié)構(gòu)如下所示:8 245.1SSL5.2所示步驟展開。圖5.2完整的SSL(Server)是C(或S)的書,且對(duì)應(yīng)的公鑰KC(或KS)由一可 消息1(o消息連接失敗。客戶端也有可能重啟一個(gè)已經(jīng)存在的會(huì)話。o消息包含如下數(shù)據(jù):32位的UNIX格式的時(shí)間戳和一個(gè)由客戶端生成的28字節(jié)隨機(jī)數(shù)套件,o.cipher_suites是一系列客戶端支持的選項(xiàng),這些選項(xiàng)按照客戶端最想用的順序排列。每一個(gè)套件為密鑰交換定義了算法,包含一個(gè)套件實(shí)際上定義了加密規(guī)范。這些結(jié)構(gòu)是SSL會(huì)話狀態(tài)的一部分,enum{stream,block}CipherType;enum{true,false}I enum{null,rc4,rc2,des,3des,des40,fortezza}enum{null,md5,sha}MACAlgorithm;struct{BulkCipherAlgorithmbulkcipheralgorithm;MACAlgorithmmacalgorithm;CipherTypecipher portableisexportable;uint8hashsize;uint8keymaterial;uint8IVsize;}消息 o消息服務(wù)器使用Servero消息回復(fù)o消息。Servero消息可能有以下的新的SessionID來(lái)會(huì)話沒(méi)有被因此也不能被恢復(fù)。服務(wù)器選擇的套件,服務(wù)器為每一個(gè)必要的操作選擇一個(gè)單一的算如果服務(wù)器不能找到一個(gè)可接受的(1)Server消息:如果密鑰交換方法不是的,當(dāng)服務(wù)器需要被認(rèn)證時(shí)(通常情況是這樣),服務(wù)器在發(fā)送出Servero后馬上發(fā)送一個(gè)。通常是一個(gè)X.509中包含了足夠的關(guān)于、所有者的公鑰以及簽發(fā)機(jī)構(gòu)的信息。服務(wù)器發(fā)送系列是為了方便客戶選擇客戶端計(jì)算機(jī)支持的相應(yīng),并使用規(guī)定的公鑰算法。這意味著,服務(wù)器發(fā)送的系列當(dāng)中需要至少包含一個(gè)能被客戶所完全相信的一個(gè)。這些的排列是有順序的,每一個(gè)應(yīng)能保證它前面的那個(gè)有效。ServerKeyExchange ⑶Request消 Request消息給客戶,向客戶端要求一個(gè)。這條消息將直接接在Server 消息之后,或者在ServerKeyExchange消息。 o階段消息的數(shù)據(jù)傳送,客戶端應(yīng)該立即核實(shí)已經(jīng)收到的和諸如此類的東西。消息3(消息如果用戶曾接收到“Request”消息,那么在收到“Server KeyExchange man,此時(shí)將會(huì)送出公鑰參數(shù)⑵Verify消在大多數(shù)的例子中,如果客戶端發(fā)送出了一個(gè),則它在此時(shí)也將發(fā)送一個(gè)VerifyServerKeyMessage消息中格式相同的簽名,ChangeCipherSpecFinished至此,用戶端和服務(wù)器已經(jīng)協(xié)商好一個(gè)只有他們雙方知道的信息。這是一個(gè)48字master_secret。master_secretMD5(pre_master_secret+SHA(‘A’++o.random+Servero.random))+MD5(pre_master_secret+SHA(‘BB’+pre_master_secret+o.random+Servero.random))+MD5(pre_master_secret+SHA(‘CCC’+pre_master_secret+o.random+Server(d)4(ChangeCipherSpec&Finished消息ChangeCipherSpecFinished消息,以便允許客戶端確認(rèn)服出現(xiàn)的警報(bào)值如表5.2所示。5.2SSLSSL中使用主密鑰可用來(lái)生成加密和MAC計(jì)算的密鑰和值。要生成密鑰材料,需要計(jì)算key_block值,直到足夠多的輸出值生成。KeyMD5(mastersecret+SHA(‘A’+mastersecret+Servero.random++MD5(mastersecret+SHA(‘BB’+mastersecret+ o.random++MD5(mastersecret+SHA(‘CCC’+mastersecret+ o.random++[.._write_IV[CipherSpec.IV_size]/*non-exportciphers*/server_write_IV[CipherSpec.IV_size]/*non-exportciphers*/SLSLL給出針SL協(xié)的另外針對(duì)TS再協(xié)協(xié)議的也作要介。例5.1(完整的帶雙方認(rèn)證的SSL握手協(xié)議)。當(dāng)一個(gè)新的會(huì)話開始后,SSL中的加5.3給出SSL握手協(xié)議中與認(rèn)證及密鑰建立相關(guān)的圖5.3完整的帶雙方認(rèn)證的SSL握手協(xié)C表示一個(gè)客戶端(例如客戶端的Web瀏覽器),S表示一個(gè)WebVerC戶端發(fā)送的o消息中所要求的協(xié)議版本VerS表示被使用的協(xié)議版(即服務(wù)器所絕對(duì)時(shí)間相關(guān)的時(shí)間戳,在這里時(shí)鐘并不需要由基本的SSL協(xié)議來(lái)設(shè)定正確,但是協(xié)不對(duì)pre_master_secret,master_secret和其他的為加密和MAC計(jì)算所設(shè)置的密鑰和信息進(jìn)SC別是S的公鑰和私鑰,KCK1分別是C的公鑰和私鑰。SC鑰對(duì),即C擁有KCK1S擁有KSK1 CNS,并發(fā)送C,NC,NSK1C

SSCC,NC,NSK1C

k S,生成的隨機(jī)數(shù)NC和NS一并加密,并將密文S,NS,NCkk 密文S,NS,NC k由于只有C能使用它的私鑰K1對(duì)消息進(jìn)行簽名N,N,且C S明確

K1后,由引理4.1KCSC認(rèn)為NS是新鮮的。由引理4,由于只有SK1從密文S

CSKSK

kCS,且S的在消息4中被明確地了,將相信、S、kCS和主體S是相關(guān)聯(lián)表 鑰kCS是的、新鮮的,并與主體C相關(guān)聯(lián)的。例5.2(1-對(duì)完整的帶雙方認(rèn)證的SSL握手協(xié)議的)從S的角度看,kCS與S主體之間缺乏關(guān)聯(lián)性,因此可以構(gòu)造如圖5.4所示的1。圖5.4對(duì)完整的帶雙方認(rèn)證的SSL握手協(xié)議的用來(lái)II表示者,I(C)表示成C的者I。CertI表示I的,對(duì)應(yīng)的公鑰是KI,它們由機(jī)構(gòu)CAKIK1分別是ISSL握手協(xié)議完I 在消息1中,客戶端C與I一起開始運(yùn)行一個(gè)協(xié)議。在消息1’中,者I(C)將向S重放消息1,并成C與S開始在(的)C和S之間運(yùn)行協(xié)議。代CertS,并將消息2即VerS,TSNSSIDS,CertI發(fā)送給C。后,

,N

C是真正的C,并發(fā)送了消息C,NC,NSK1C

SII加密kCS,生成了消息3’kCSK,CertC,NCNSK1和C,NC,NSK1

C在收到消息3’后,SK1得到了kCS,并且在驗(yàn)證完NNS認(rèn)為與 S新的會(huì)話密鑰的通信方一定是CI將正常地完成它與C之間的協(xié)議在這整個(gè)結(jié)束后,者I使得S產(chǎn)生了錯(cuò)誤的信任:S錯(cuò)誤的認(rèn)為自己與C完成了一次成功的協(xié)議運(yùn)行,且與C共享了一個(gè)新的會(huì)話密鑰kCSC對(duì)于I(C)和S之間的這次密鑰建立一無(wú)所知,C只知道自己和I新協(xié)商了一個(gè)會(huì)話密鑰kCS。自此,S錯(cuò)誤例5.3(針對(duì)完整的帶雙方認(rèn)證的SSL握手協(xié)議的)從C的角度來(lái)看,kCS與C圖5.5對(duì)完整的帶雙方認(rèn)證的SSL握手協(xié)議的用來(lái)II表示者,I(C),I(S)分別表示成C或S的者I。CertI表示I的,對(duì)應(yīng)的公鑰是KI,它們都由機(jī)構(gòu)CA簽發(fā)。KI和K1分別是I的公鑰和私鑰。其他的符號(hào)和I知道它自己的密鑰對(duì),如C知道KCK1,S知道KSK1,I知道KIK1 在消息1中,客戶端C發(fā)起了一個(gè)C和S之間的協(xié)議運(yùn)行。者I截獲了消息1,并把在收到消息1’后,S回復(fù)包含S的消息2’給I(C)。收到消息2’后,I把消息2’中的CertS替換成CertI,并把消息2VerS,TSNSSIDS,CertI發(fā)送給了C。K ,CertC,NCNSK1,C,NCNSK1K II在這個(gè)對(duì)于完整的帶有雙邊認(rèn)證的SSL握手協(xié)議進(jìn)行以C完成后,者I使得S和CC和S均認(rèn)為他們和對(duì)方成功地完成了協(xié)議運(yùn)行,并與對(duì)方了新的會(huì)話密鑰kCS,然而,事實(shí)上C和S之間的共享密鑰kCS已經(jīng)被I所掌握。在SSL握手協(xié)議的一次運(yùn)行中,客戶端可能會(huì)選擇,從而客戶端不需要被服務(wù)器端認(rèn)證。因此,服務(wù)器單方面的被客戶端所驗(yàn)證(即客戶端驗(yàn)證了服務(wù)器的身的通道。這是基于互聯(lián)網(wǎng)的電子商務(wù)應(yīng)用上使用SSL協(xié)議的典型方式,例如,從一個(gè)書店購(gòu)書,這個(gè)信道保證只有被認(rèn)證的服務(wù)器才能收到客戶端發(fā)出的相針對(duì)SSLSSL會(huì)話,恢復(fù)一個(gè)已找匹配的ID。如果一個(gè)相應(yīng)的匹配被找到了,則服務(wù)器將會(huì)使用相應(yīng)的會(huì)話狀態(tài)建立一個(gè)新的連接,服務(wù)器將會(huì)向客戶端回復(fù)相同的ID,即與客戶端o消息中提供的ID相同。這表明會(huì)話恢復(fù)正在進(jìn)行中,并會(huì)話雙方必須直接運(yùn)行接下來(lái)的finished消息,且忽略所有的可選消息及KeyExchange消息。SSL握手協(xié)議再協(xié)商過(guò)程的消息交圖5.6SSL再協(xié)商握手中的消息交換應(yīng)的會(huì)話狀態(tài)重建連接,并且將同樣的會(huì)話ID附在Servero中發(fā)送給客戶端。否kS,然后將之前發(fā)送的握手信息用kCS加密即C,NC,NS kSSkCNCNS kk在消息4中,將它 與隨機(jī)數(shù)、S一起加密,并發(fā)送S,NS,NC kk S,NS,NC k協(xié)議的成功運(yùn)行將會(huì)使得C和S相信:kCS在消息1中,由引理4.2和引理4.3C認(rèn)為隨機(jī)數(shù)NC是新鮮的,且C也認(rèn)為NC是不SS

CSKSK中得到kCS,且S的在消息4中被明確地了,S認(rèn)為NC,NS,kCS與S是相關(guān)聯(lián)的。 在協(xié)議運(yùn)行結(jié)束后,C認(rèn)為S是真實(shí)參與通信的,且新的會(huì)話密鑰kCS是的和新鮮的,并與S相關(guān)聯(lián)。然而S只能相信新會(huì)話密鑰kCS是的和新鮮的,但是S并不知道kCS是例5.4(針對(duì)SSL再協(xié)商協(xié)議的)從S的角度來(lái)看,C通信的真實(shí)性是缺失的,因此可圖5.7對(duì)SSL再協(xié)商協(xié)議的用來(lái)在消息1中,者I通過(guò)成C開始了SSL再協(xié)商的過(guò)程,它想要恢復(fù)一個(gè)與C的已在收到消息后,()為實(shí)際上I)和間重建的話隨機(jī)成了新會(huì)話密鑰kkS用SS。()k加密后發(fā)送給S。在收到消息3后,S使用它的私鑰K1得到新的會(huì)話密鑰kCS,并驗(yàn)證C,N,N S

S在這個(gè)對(duì)于SSL再協(xié)商協(xié)議的結(jié)束后,者I使得S產(chǎn)生了錯(cuò)誤的信任:S與完成了一次成功的協(xié)議運(yùn)行,且與C了一個(gè)新的會(huì)話密鑰kCS。事實(shí)上,C對(duì)于此(建立C和S之間的會(huì)話密鑰)一無(wú)所知,只是S是與I了新會(huì)話密鑰kCS。此外,S認(rèn)為以上的可以由者I直接成合法客戶端C所啟動(dòng),甚至并不需要C。這個(gè)例子對(duì)于者來(lái)說(shuō)或許很有,因?yàn)樗试S者在任何時(shí)間發(fā)起一次,TLS(包含RFC5246以及之前版本,SSLV3以及之前的版本)在現(xiàn)實(shí)世界中容易與再協(xié)商相關(guān)的中間人[14]。TLS標(biāo)準(zhǔn)允許通信的任意一方在任何時(shí)候請(qǐng)求再協(xié)商TLS會(huì)話。與再協(xié)商相關(guān)的中間人很普遍,不僅在HTTPS中,而且存在于其他在TLS之上的有三種針對(duì)HTTPS協(xié)議再協(xié)商的一般,這三種之間有細(xì)微的不同。但這三種攻擊都能達(dá)成一個(gè)結(jié)果:者有能力執(zhí)行一個(gè)HTTP,并被合法的用戶(即中間人攻例5.5(針對(duì)客戶端認(rèn)證的再協(xié)商)服務(wù)器無(wú)法確定客戶端是否提供了一個(gè)有效的認(rèn)證,除非它收到了客戶端的請(qǐng)求,并且通過(guò)它的認(rèn)證規(guī)則將其過(guò)濾。對(duì)于需要客戶端認(rèn)證的請(qǐng)求,HTTPS服務(wù)器必須通過(guò)重建TLS信道來(lái)獲取客戶端的并使其生效。不幸的是,由于HTTPS缺乏特定的回復(fù)代碼來(lái)告知客戶端重發(fā)一個(gè)帶有新的擊的主要弱點(diǎn)。大部分依賴于客戶端認(rèn)證的設(shè)施容易遭到這種客戶端認(rèn)證再協(xié)商例5.6(針對(duì)不同服務(wù)器需求差異的再協(xié)商)管理資源的HTTPS服務(wù)器有不同的套件需求,可能在另一種再協(xié)商下很脆弱。由于對(duì)套件安全強(qiáng)度的需求不同,Web服務(wù)器常常在協(xié)商TLS連接時(shí)選擇支持一個(gè)最基本的強(qiáng)度。只有在看到客戶端的URL請(qǐng)求后,服務(wù)器才能準(zhǔn)確的決定采用哪一種套件。如果當(dāng)前的套件并不行為,將導(dǎo)致與客戶端再協(xié)商例子中相同的缺陷,即服務(wù)器被強(qiáng)制要求重放緩沖區(qū)的請(qǐng)求,在這個(gè)例子中包含可能者進(jìn)行選擇性明文的內(nèi)容。這個(gè)行為將會(huì)例(針對(duì)戶端發(fā)再協(xié)商)L同樣許連接的戶端發(fā)一個(gè)協(xié)的再協(xié)haerHTT請(qǐng)求的開部分,騙得所供的認(rèn)和息注意,這不需要道一直在或者HTTTT協(xié)商”。據(jù)認(rèn)證,數(shù)據(jù)完整性和密鑰管理。IPSec提供了網(wǎng)絡(luò)的層,即TCP/IP層的安全通信,因此將地址信息和內(nèi)容一起保護(hù)是非常有效率的。通常來(lái)說(shuō),IP層的安全可以為更的擬私有網(wǎng)絡(luò)()中,都采用對(duì)密鑰的自動(dòng)管理,IPSec已經(jīng)成為了世界上絕大多數(shù)基于IP的技術(shù)的默認(rèn)標(biāo)準(zhǔn)。,,(ESP,EncapsulatingSeurityPayload,RFC2406[18])和互聯(lián)網(wǎng)密鑰交換協(xié)議(IKE,InternetKeyExchangeProtocol,RFC2409[19])。AH提供完整性保護(hù),ESP提供性服務(wù)和可選的認(rèn)證頭作“認(rèn)證頭”(AH)的附加域[17,20]。認(rèn)證保護(hù)(事實(shí)上是指帶有源的數(shù)據(jù)完整數(shù)據(jù)包中,(見圖5.8和圖5.9)AH的長(zhǎng)度是可變的,但必須是32位數(shù)據(jù)報(bào)長(zhǎng)的倍數(shù)。AH域細(xì)分為圖5.8AH的結(jié)構(gòu)及其在傳輸模式下在IP圖5.9AH的結(jié)構(gòu)及其在隧道模式下在IPAHS)2數(shù)據(jù)包的認(rèn)證務(wù)所使的法。而名為“序號(hào)”的域能夠來(lái)防止AHV)包含了由息發(fā)送為消息收成的認(rèn)數(shù),能夠用接收方證數(shù)據(jù)整性。SV(KE封裝安全載荷圖5.10ESP及其在傳輸模式下在IP圖5.11ESP及其在隧道模式下在IP圖5.12封裝安全載荷ESPESP中被稱之為“安全參數(shù)索引”(SecurityParametersIndex,SPI)的子域是32位長(zhǎng)的某個(gè)任意值,它指定了這個(gè)IP數(shù)據(jù)包性服務(wù)所使用的加密算法。第二個(gè)子域被稱作“序列號(hào)”(SequenceNumber),它可以用于防止對(duì)IP包的重放。(v6)3(adng)其中,‘xy’是16進(jìn)制的數(shù)值,且‘01’<‘xy<‘FF’。因此,填充字節(jié)的最大數(shù)值為‘FF’,即255(10)。填充數(shù)據(jù)的字節(jié)長(zhǎng)度稱為“填充長(zhǎng)度”(PadLength)。HESHSSP中的密文ES)如圖和圖5.11),A數(shù)據(jù)包提互聯(lián)網(wǎng)密鑰交換(nenetKeyExcane,KE(KE)IKEIPsec(SecurityAssociation,SA),而且可以為SNMPv3、RIPv2、OSPFv2等任何要求的協(xié)議協(xié)商安全參數(shù)。(SAKM)AKEYSME組成。K創(chuàng)建在AKMAKEYSEE建立和管理安全關(guān)聯(lián)(SecurityAssociation,SA,包括密鑰、算法和參數(shù)),認(rèn)證證了。為了有能力進(jìn)行簽名的驗(yàn)證,公鑰(即)應(yīng)該是受到信任的和可核實(shí)的。SA注釋1安全關(guān)聯(lián),)ASASSAA(S)(當(dāng)前的或過(guò)期的SA個(gè)S網(wǎng)安全關(guān)聯(lián)和密鑰交換協(xié)議”(InternetSecurityAssociationandKeyManagementProtocol,ISAKMP)[RFC2408][21],“Oakley密鑰確定協(xié)議”(OakleyKeyDeterminationProtocol,OAKLEY[RFC(VersatileMechanismforInternet,SKEME)[23]。密鑰材料。OAKLEY協(xié)議支持完善前向、在管理安全關(guān)聯(lián)上與ISAKMP協(xié)議兼容,支鑰。其中最基本的是Diffie-man密鑰交換算法。SKEME描述了認(rèn)證的密鑰交換技術(shù),該技術(shù)支持通信各方對(duì)于連接的可特性和快K交換特,KE中的多數(shù)協(xié)都使Dfe-an鑰交體制。KE參與雙方提供許多選,允許方通過(guò)的方協(xié)和達(dá)成認(rèn)會(huì)話密。IKEIKE階段鑰。對(duì)于IKE階段1,IKE有幾種密鑰交換模式,包括主模式、進(jìn)取模式、基本模式和新組階段1假設(shè)參與密鑰交換的雙方中的任意一方都能夠驗(yàn)證另一方的能力,這種能力在對(duì)稱體制下可以通過(guò)預(yù)共享密鑰獲得,在公鑰體制下可以通過(guò)與可信公鑰IKE階段樣能夠讓用戶建立多個(gè)具有不同安全屬性的連接,分別用于“僅數(shù)據(jù)完整性”、“僅性”、“用短密鑰加密”或“用強(qiáng)密鑰加密”等不同安全需求。5.2(IKE密鑰材料)SKEYID是一個(gè)字符串,它來(lái)源于消息交換中僅被活現(xiàn)的參與是生成其他密鑰的密鑰,也就是這里所說(shuō)的密鑰材料。對(duì)于簽名公鑰:SKEYIDprf(noncesgxymod對(duì)于加密公鑰:SKEYID=prf 對(duì)于預(yù)共享的密鑰:SKEYIDprf(pre-sharedsecretkey對(duì)于生成其他密鑰的:SKEYID_d=prf(SKEYID,gxy∣ 對(duì)于完整性密鑰:SKEYID_a=prf(SKEYID, 對(duì)于加密密鑰:SKEYID_e=prf(SKEYID, IKE對(duì)于每種密鑰類型,在IKE階段1都有兩種密鑰交換模式:主模式和進(jìn)取模式,因此IKE階,IKE階段1IKE階段1被用于執(zhí)行交互認(rèn)證,交換關(guān)于的提案,特定信息和。IKE階段1的結(jié)果可以有多種稱謂:Phase-1SA,ISAKMPSA,IKESA等。他們都意味著同樣的東西。圖5.13IKE階段1別支持的安全屬性。密鑰交換(KeyExchange,KE)負(fù)載是Diffie-man公共值,它用于交換Diffie-man公鑰發(fā)起者和響應(yīng)者的隨機(jī)數(shù)負(fù)載NONCE都用于在IKE中計(jì)算Phase-1SA中的數(shù)據(jù)。CR負(fù)載表示請(qǐng)求,它包含了CA(機(jī)構(gòu))的名字。ID負(fù)載是用而且可能用來(lái)發(fā)送撤銷表CRL簽名負(fù)載SIG是其他方必須驗(yàn)證的數(shù)字簽名*表示該內(nèi)在消息1發(fā)起者發(fā)了一個(gè)含發(fā)起者的D。D一個(gè)SAM頭,其換模式定義了KE的模。一個(gè)AKM頭含了發(fā)者,響應(yīng)者和消息D。在階段1協(xié)商期間發(fā)起者響應(yīng)者的決了SAMPA。消息D一個(gè)獨(dú)的消息識(shí),在KE階段22DSA負(fù)載是強(qiáng)制性的,它用于列出發(fā)起者所支持的安全屬性。它包括、哈希算法、在消息2 在消息3IKE協(xié)議基于Diffie-man密鑰交換算法,這是最早的公鑰算法(1976年)。消3用于在密鑰交換(KE)負(fù)載內(nèi)交換Diffie-man公鑰。每當(dāng)階段1的協(xié)商執(zhí)行時(shí),Diffie-man公鑰將自動(dòng)被創(chuàng)建,且在Phase-1SA銷毀后自動(dòng)銷毀。信息一起)用于在IKE計(jì)算Phase-1SA中的數(shù)據(jù)。隨機(jī)數(shù)NONCE負(fù)載包含由隨機(jī)數(shù)生CR負(fù)載包含CA的名稱,這個(gè)CA將能簽發(fā)它想要接收到的終端實(shí)體的(通信對(duì)手的)。如果CR負(fù)載是空的,這意味著它請(qǐng)求來(lái)自任意CA的任意(即對(duì)CA和在消息4在消息5書。ID可以是IP地址,完全合格(FQDN)、郵件地址,或者其他類似的東西。發(fā)起者可以發(fā)送零(0)或者負(fù)載(CERT),且每個(gè)都包含了一個(gè)(或負(fù)載中發(fā)送CRL。CERT負(fù)載是可選的,因?yàn)榻K端很可能已將公鑰在本地進(jìn)行了,因此它并不需要在協(xié)商中接收CERT負(fù)載。通常情況下,公鑰并不會(huì)在本地,所以未能發(fā)送CERT負(fù)載也會(huì)導(dǎo)致IKE協(xié)商。簽名負(fù)載S)是其他參方必須實(shí)的數(shù)簽。S負(fù)載包含私所計(jì)算的數(shù)字簽名這個(gè)私所對(duì)應(yīng)公鑰通在ET負(fù)中發(fā)送S負(fù)載為其他參者提供了認(rèn)證。當(dāng)有的參方都成地驗(yàn)證其它參方S負(fù)載,則他們互相被證的。他們用中的公來(lái)核實(shí)名,這公鑰通從T負(fù)載中收,也可來(lái)自其途徑(如本,量 協(xié)議等)。核簽名之前他們也實(shí)遠(yuǎn)端,即核實(shí)的(機(jī)構(gòu),A)是可,也核實(shí)是否效(并被撤銷的),等。在消息6注意消息5和消息6是被完全加密的,因?yàn)樵谙?和消息4之后Phase-1SA即被建立, 1as-1KE1圖5.14IKE階段1在消息1 數(shù)據(jù),并表明它的。在消息2man公共值和交換中所需的附屬數(shù)據(jù),并表明它的。除此之外,消息2還認(rèn)證響應(yīng)在消息3階段2也提供了一個(gè)關(guān)于技術(shù)的提案,這個(gè)提案定義了實(shí)際使用的,HMAC,哈希算法和其他能保護(hù)IP通信的安全屬性。階段1的提案僅僅只是為了保護(hù)Phase-1SA圖5.15IKE階段2HASH負(fù)載表示交換的密鑰材料。SA負(fù)載是階段2中關(guān)于技術(shù)的提案列表,這個(gè)提案指在消息1發(fā)起者將SAHASHNONCE和ID負(fù)載發(fā)送給響應(yīng)者,以便為IP通信生成新會(huì)話密鑰。ID負(fù)載,標(biāo)記為IDI和IDR,分別表示發(fā)起者的ID和響應(yīng)者的ID。ID負(fù)載在階段2中是可者類似的東西,IDR是響應(yīng)者的ID,通常是IP地址,IP范圍或者IP子網(wǎng)。無(wú)論是發(fā)起者還是為“人ID”(ID),“偽ID”(pseudoID)或其他類似稱呼,因?yàn)樗麄儾⒉灰欢ㄔ谙?響應(yīng)者從階段2有關(guān)技術(shù)的提案列表中選擇加密技術(shù),并將HASH,NONCE(在在消息3在發(fā)送完最后一個(gè)數(shù)據(jù)包消息3后,IKE階段2就完成了,階段2的運(yùn)行結(jié)果是形成了例5.8(IKE階段1主模式)IKE階段1主模式中與認(rèn)證和密鑰建立圖5.16基于公鑰簽名的IKE階段1,分別是,x和y分別是由發(fā)起者A和響應(yīng)者B隨機(jī)選擇的私有值。gx,gy分別表示A和B的IDA和IDB分別是A和B的終端。HASHA=prf1HASHB=prf1SKEYID是A和B之間的新會(huì)話密鑰,可以通過(guò)SKEYID=prf2(NA∣NB∣gxy)計(jì)算得到。CA和CB分別是發(fā)起者和響應(yīng)者的,B通過(guò)CA來(lái)A的會(huì)話狀態(tài)信息,CB的作用亦A和B都信任CertA和CertB的機(jī)構(gòu)CA,而且他們能夠核實(shí)是否有效(如是否是撤銷的等等)。這意味著他們知道CA的公鑰,即都能得到A的KA和B的KB。每一, 消息ID和發(fā)起者的CA;SAA詳細(xì)列出了所建議使用的安全屬性,包括加密算在消息2中,響應(yīng)者B將一個(gè)包括響應(yīng)者回應(yīng)CB和發(fā)起者CA的HDRB發(fā)送回給A。響應(yīng)者同時(shí)也將一個(gè)SAB包含在它的回復(fù)中,用于B選擇的某一種安全屬在消息4中,B也隨機(jī)選擇了一個(gè)Diffie-man私有值y和一個(gè)隨機(jī)數(shù)NB。然后B計(jì)算隨機(jī)數(shù))。此時(shí),A和B都能計(jì)算出新會(huì)話密鑰。SKEYID=prf2(NA∣NB∣gxy)。在消息5A計(jì)算整個(gè)ID負(fù)載的哈希值:HASHAprf1AA

prfSKEYIDgxgy

CSAIDKA K

中, 隨機(jī)數(shù)NA的新鮮性,且A也認(rèn)為x是的而NA是不的。 私有值y的性和新鮮性,并確信隨機(jī)數(shù)NB是新鮮的和不的。此時(shí),B還計(jì)算了新會(huì)話密鑰SKEYID=prf2(NA∣NB∣gxy),由引理4.2和引理4.3可得,B能確信SKEYID的性和新鮮性。新會(huì)話密鑰SKEYIDprf2(NA∣NB∣gxy),且由引理4.2和引理4.3可得,A能確信SKEYID的性和新鮮性。在收到消息5后,由引理4.1可得,基于NB和SKEYID=prf2(NA∣NB∣gxy)的可信任新鮮性,由于只有A能使用A的私鑰對(duì)新鮮的哈希值HASHAprf1(SKEYID∣gx∣gy∣CA∣CB的了,B能確信新會(huì)話密鑰SKEYID與A之間有關(guān)聯(lián)性。在這整個(gè)協(xié)議運(yùn)行結(jié)束后,A相信主體B是活現(xiàn)的,新的會(huì)話密鑰SKEYID是的,表5.5對(duì)IKE階段1例5.9(針對(duì)基于簽名的IKE階段1主模式的)。從B的角度來(lái)看,新會(huì)話密鑰SKEYID和B之間缺乏關(guān)聯(lián)性,從而存在針對(duì)IKE階段1主模式的以B[5,24,25],如圖5.17所圖5.17針對(duì)基于簽名的IKE階段1主模式的在這個(gè)對(duì)于IKE階段1主模式的結(jié)束后,者I使得B產(chǎn)生了錯(cuò)誤的信任:B認(rèn)為自己和A一起成功執(zhí)行了一次IKE協(xié)議,并與A共享了一個(gè)新的會(huì)話密鑰SKEYIDA事實(shí)上對(duì)于和B建立密鑰的事情一無(wú)所知,A只是認(rèn)為它和I之間的協(xié)議運(yùn)行因?yàn)槟撤N原因的這一會(huì)話狀態(tài)信息,以便在IKE階段2的通信時(shí)使用這個(gè)會(huì)話密鑰SKEYID。者I可以利用這個(gè)與其同伙一道同時(shí)對(duì)某個(gè)服務(wù)器展開,從而能有效地啟動(dòng)服務(wù)例5.10(IKE階段1進(jìn)取模式)IKE階段1主模式的一個(gè)簡(jiǎn)化版,最開始的兩條信息用來(lái)協(xié)商策略,交換Diffie-man密鑰交換所需的成分和必要的附圖5.18基于簽名的IKE階段1是的,而NA是不的。NBBSKEYIDprf2NA|NB|gxy,在收到消息2后,由于A知道NA和SKEYID=prf2(NA∣NB∣gxy)都具有可信任的新鮮性,且類似的,在收到消息3后,由于B知道NB和SKEYID=prf2(NA∣NB∣gxy)都有可信任的新鮮性,且只有A能夠用其私鑰對(duì)哈希值HASHA=prf1(SKEYID|gx|gy|CA|CB|SAA|IDA)進(jìn)4.1B能夠確信A的主體活現(xiàn)性。再由引理4.4,由于只有A能夠在協(xié)議成功的運(yùn)行完成后,A認(rèn)為B是主體活現(xiàn)的,即B真實(shí)參與了通信,且新會(huì)話密鑰SKEYID是的、新鮮的,并與主體B相關(guān)聯(lián)。而B也相信A是主體活現(xiàn)的,即A真實(shí)參與了通信,且新會(huì)話密鑰SKEYID是的、新鮮的,并與主體A相關(guān)聯(lián)。對(duì)IKE階段1進(jìn)取模表 注意HASHA和HASHB都采用新會(huì)話密鑰SKEYID作為它們的偽隨機(jī)函數(shù)的,因此這兩個(gè)哈希值的簽名不可能被,而且這些簽名只有掌握了新會(huì)話密鑰的主體才能進(jìn)行驗(yàn)證。不幸的是,針對(duì)IKE主模式的(例5.9-1)對(duì)IKE進(jìn)取模式仍然有效。例5.11(公鑰簽名,IKE階段2快速模式)每一個(gè)快速模式的實(shí)例都使用一個(gè)唯一的初始化向量(例如,消息ID),因此,基于單一的ISAKMPSA,多個(gè)階段2快速模式能夠同進(jìn)行重放?;究焖倌J剑ú话↘E負(fù)載)更新了由階段1取冪得到的密鑰材料。與圖5.19基于簽名的IKE階段2 kprfSKEYID_d,gxy|protocol|SPI|N| gxy是雙方共享的信息,來(lái)自快速模式中的 HASH1=prf(SKEYID_a,IDAB∣SAA∣NA[∣gx][∣IDA∣IDB])HASH2=prf(SKEYID_a,IDAB∣NA∣SAB∣NBHASH3=prf(SKEYID_a,IDAB是消息ID,用于標(biāo)志對(duì)于一個(gè)特定的ISAKMPSA正在運(yùn)行的快速模式,這個(gè)特定 man交換,它在快速模式中是的。假設(shè)來(lái)自在消息1中,由引理4.2和引理4.3A能夠確信隨機(jī)數(shù)NA的新鮮性以及值x的類似的,在消息2中,由引理4.2和引理4.3B能夠確信隨機(jī)數(shù)NB的新鮮性,也能SKEYID_a,所以B能夠確信NB,y和k是與A和B關(guān)聯(lián)。B能使用共享密鑰SKEYID_a來(lái)生成新鮮的哈希值HASH2=prf(SKEYID_a,IDAB∣NA∣SAB類似的,在收到消息3后,基于B信任的新鮮性標(biāo)識(shí)符NB,由引理4.1,因?yàn)镠ASH3prf(SKEYID_a0∣IDAB∣NA∣NB),所以B能夠確信A表5.7對(duì)IKE階段2表5.7給出了K階段2KE階段模式中的提下,議達(dá)成如安全目標(biāo)A相信體B是在的,且新會(huì)話密k是的、鮮的,與主體和B聯(lián);B相主體A存在的且新會(huì)話密鑰k的新鮮的并與A關(guān)聯(lián)。此KE段2快速模達(dá)成了原本所置的安全目標(biāo)擊者獲得,則者可以假裝主體A或B在任何時(shí)間發(fā)起運(yùn)行一個(gè)快速模式,并與被的受害者共享新會(huì)話密鑰,即者將能獲得新會(huì)話密鑰。Kerberos機(jī)文件服務(wù)器服務(wù)或其他的互聯(lián)網(wǎng)服務(wù)當(dāng)一個(gè)用戶請(qǐng)求使用某項(xiàng)網(wǎng)絡(luò)服務(wù)時(shí),面對(duì)一個(gè)非物理安全的網(wǎng)絡(luò),服務(wù)提供者通常要求用戶提供證明其的。然而,要求用戶多種不同的來(lái)證明比如記住各種不同的口令或者持有多個(gè)智能卡,令的。因此,麻省理工學(xué)院研究人員提出了Kerberos系統(tǒng),以作為開放網(wǎng)絡(luò)環(huán)境下安全問(wèn)題的解決方案:Kerberos系統(tǒng)借助一個(gè)位于用戶和資源服務(wù)器之間的可信任第,透明地所需的各種網(wǎng)絡(luò)資源。也就是,每當(dāng)合法用戶想要某個(gè)信息資源,例如從終端服務(wù)器接收一個(gè)文件,Kerberos將不再需要與用戶直接進(jìn)行交互操作, 強(qiáng)大的認(rèn)證,客戶端可以在非安全的分布式環(huán)境中證明自己的。當(dāng)客戶端通過(guò):在基礎(chǔ)ereroereros進(jìn)行交互??蛻舳撕蚭rers管理主體之間的初始認(rèn)證一般是基于用服務(wù)進(jìn)行認(rèn)例如服器文件服務(wù)器打印服器等實(shí)現(xiàn)rbrosAKebrosAuenaonSrvr獲取一TTTice-ranngkeTTTSTice-anngSrerS(ervecet)S是一個(gè)該是客戶用來(lái)讓自己和用服務(wù)之間進(jìn)行證S和TS一起組成DCKeyDsrbuonne)。:。網(wǎng)絡(luò)服務(wù)的有效用戶,即基于用戶的認(rèn)證、用戶要求的服務(wù)和當(dāng)前的系統(tǒng)狀態(tài),給予用戶指定類型的服務(wù)。計(jì)費(fèi),即用戶的網(wǎng)絡(luò)資源消費(fèi)情況。。在Windows2000中,56位的DES和128位的RC4在Kerberos中是最常用的;在WindowsServer2003中,普遍使用RC4-HMAC,DES-CBC-CRCDES-CBC-MD5;在WindowsXP中,常用RC4,其他的加密算法也被允許,尤其是使用DESWindowsVista中,常常使用256位的AES,3DES,SHA2等。Kerberos服務(wù)器,是一個(gè)可信第,或者用Kerberos術(shù)語(yǔ)來(lái)說(shuō),是一個(gè)密鑰分發(fā)中(KC)。DC本身由兩個(gè)子服務(wù)組成:認(rèn)證服務(wù)和票據(jù)授予服務(wù)。在Wndows200和WndowsSrvr2003DKrbros實(shí)現(xiàn)中,(S(T采用S和TSereoTSAS所有客戶端都應(yīng)該在Kerberos服務(wù)器KDC上,以便使用網(wǎng)絡(luò)中的信息資源和服務(wù)注釋5.3密鑰分發(fā)中心KDC(KeyDistributionCenter)由認(rèn)證服務(wù)器(AS)和票據(jù)授予及他們?cè)诮o定域上的密鑰。例如,KerberosKDC運(yùn)行在每一個(gè)Windows2000域控務(wù)器和Windows2003域控務(wù)器上。注釋5.4認(rèn)證服務(wù)器AS(AuthenticationServer)對(duì)客戶端的登錄進(jìn)行認(rèn)證,并為對(duì)客戶注釋5.5票據(jù)授予服務(wù)器TGS(TicketGrantingServer)負(fù)責(zé)受理和核實(shí)客戶端從AS獲得注釋5.6應(yīng)用服務(wù)器S(ApplicationServer)負(fù)責(zé)接收和驗(yàn)證從TGS得來(lái)的服務(wù)票據(jù)ST,注釋5.7客戶端C()是一個(gè)客戶端(一個(gè)用戶進(jìn)程),它代表用戶U來(lái)使用網(wǎng)絡(luò)的服務(wù)當(dāng)客戶端C提示用戶輸入時(shí)用戶就把用戶的證件提供給客戶端C請(qǐng)注意,注釋5.8票據(jù)(或者Kerberos票據(jù))是協(xié)議中的加密消息,它用來(lái)確定終端參與者的身5.9認(rèn)證元(或認(rèn)證符)認(rèn)證元是包含有時(shí)間戳的認(rèn)證憑證,其中時(shí)間戳被客戶端和AS之間、或者客戶端和應(yīng)用服務(wù)器之間的共享會(huì)話密鑰加密。認(rèn)證元在使用時(shí),過(guò)注釋5.10票據(jù)授予票據(jù)TGT(TicketGrantingTicket)由認(rèn)證服務(wù)器(AS),其注釋5.11屬性PAC(PrivilegeAttribute)在Windows2000注釋5.12服務(wù)票據(jù)ST(ServiceTicket)由票據(jù)授予服務(wù)器(TGS),它可為特定的注釋圖5.20Kerberos協(xié)議I階段1消息2:S在據(jù)庫(kù)查找在S_Q請(qǐng)中客戶端和務(wù)器的體,分提kctg),TS之間通STTTS部分。TTkctgTTTSkctg是用S和TSII階段2(以檢測(cè)消息的重放)并恢復(fù)會(huì)話密鑰kc,tgskc,tgs創(chuàng)建一個(gè)認(rèn)證元,這個(gè)認(rèn)TGS,請(qǐng)求對(duì)應(yīng)用服務(wù)器S的權(quán)限。消息4:T對(duì)TT進(jìn)行,然使用TT內(nèi)的kcg來(lái)驗(yàn)證認(rèn)元內(nèi)的戶名、TSkc。ereroTS創(chuàng)建一STIII階段3客戶端/至此,應(yīng)用服務(wù)器S和客戶端C已經(jīng)認(rèn)證了對(duì)宣稱的,并且完成了新加密密鑰所有主流的操作系統(tǒng):微軟的Windows2000,微軟的WindowsServer2003,和許多UNIX和類UNIXBSDMacOSXRedHatEnterpriseLinux4Sun的Solaris,準(zhǔn)的基礎(chǔ)上。Kerberosv5認(rèn)證過(guò)程中的消息交換如圖5.21所示。圖5.21基于Kerberos Realmc,Realmtgs和Rea:分別指客戶端用戶所在域,TGS服務(wù)器所在域和應(yīng)用服務(wù)from:期望的票據(jù)啟動(dòng)時(shí)間till:請(qǐng)求的票據(jù)到期時(shí)間rtimeNonce2的加密回復(fù)中包含了與之相同的隨機(jī)數(shù)則證明KDC的回復(fù)是新鮮的而不是來(lái)自者的[]可能的序列號(hào)空間內(nèi),因此者無(wú)法猜到這個(gè)序列號(hào)。例5.12基于可信任新鮮性對(duì)Kerberosv5協(xié)議的安全性分析如圖5.22所示。為便于對(duì)Kerberos圖5.22KerberosCAS表示認(rèn)證服務(wù)器,TGS表示票據(jù)授予服務(wù)器,S表示應(yīng)用服務(wù)器。T和_time表示客戶端為票據(jù)選擇的時(shí)間戳。Kas,tgs和Ks,tgs分別是AS和TGS之間,以及S和TGS之間的長(zhǎng)期共享密鑰。kc,s是一個(gè)新的會(huì)話密鑰,由票據(jù)授予服務(wù)器TGS為客戶C和應(yīng)用服務(wù)器SCCAS和票據(jù)授予服務(wù)器TGS知道;Ks,tgs是的,且只有應(yīng)用服務(wù)器S和票據(jù)授予服務(wù)器TGS知道;N1和N2是一次隨機(jī)數(shù),kc,tgs和kc,s是為這個(gè)協(xié)議的運(yùn)行隨機(jī)生成的臨時(shí)密鑰。在消息1中,客戶端C通過(guò)發(fā)送客戶端C和票據(jù)授予服務(wù)器TGS,時(shí)間戳T和一在消息2中,認(rèn)證服務(wù)器AS為C和TGS之間隨后的通信隨機(jī)生成一個(gè)新的密鑰kc,tgs,然密鑰Kas,tgsTGS證明這個(gè)TGT票據(jù)是由ASAS也將臨時(shí)密鑰kc,tgs發(fā)K密TGSkc,tgs,TN1,驗(yàn)證N1的正確性,并得到臨時(shí)密鑰kc,tgsKk在消息3中客戶端C生成了認(rèn)證元 t_k

t K Kk證時(shí)間戳T的正確性,并得到了臨時(shí)密鑰kc,tgs。TGS同時(shí)還會(huì)驗(yàn)證認(rèn)證元Ct_kKSkc,sC,T,TGS使用長(zhǎng)期密鑰Ks,tgs來(lái)加密這個(gè)服務(wù)票據(jù),用于向S證明這個(gè)STKk在收到消息4后,C使用kc,tgskc,s,T,N2, k在消息5中,客戶端C生成了新的認(rèn)證元

_ KC也將消息4中收到的服務(wù)票據(jù)S,kc,s, KK在收到消息5后,應(yīng)用服務(wù)器S使用長(zhǎng)期密鑰Ks,tgsS,kc,s, ,同時(shí)驗(yàn)證時(shí)間戳K的正確性,并得到新的會(huì)話密鑰kc,sS也會(huì)驗(yàn)證認(rèn)證元

_

_ 在收到消息2后,由引理4.2可得,C認(rèn)為kc,tgs的性是有保障的。由引理4.3可得,由于kc,tgs是和C信任的新鮮性標(biāo)識(shí)符N1一并發(fā)出的,因此C認(rèn)為臨時(shí)密鑰kc,tgs的新鮮性KKKKK 只能由認(rèn)證服務(wù)器使用長(zhǎng)期共享密鑰Kas,tgs生成因此KTGS認(rèn)為kc,tgs與TGS和C的關(guān)聯(lián)性都是有保障的?;跁r(shí)間戳_time,由引理4.1可k元 t_ kkc,s是與C信任的新鮮性標(biāo)識(shí)符N2一并發(fā)送給C的,因此,C認(rèn)為臨時(shí)密鑰kc,s的新鮮性是k中被明確 了且加密包kc,s,T,N2, 是由C和TGS之間的共享臨時(shí)密鑰kc,tgs生kk的由引理4.1可得基于可信任新鮮性標(biāo)識(shí)符N2,C認(rèn)為TGS的主體活現(xiàn)性是有保障的,因?yàn)橹挥蠺GS能使用kc,tgs生成加密包kc,s,T,N2,S kKC和S的都在消息5中被明確地了,且加密包S,kc,s, 只能由TGS使用長(zhǎng)Kk密鑰Ks,tgs來(lái)生成?;跁r(shí)間戳_time,由引理4.1可得,S認(rèn)為C的主體活現(xiàn)性是有保障的,因?yàn)橹荒苁荂使用共享會(huì)話密鑰kc,s來(lái)生成認(rèn)證元C t_time k 對(duì)Kerberosv5協(xié)議的安全性分析

_ 新鮮的,并與客戶C和應(yīng)用服務(wù)器S相關(guān)聯(lián);而C相信S是存在的,且新的會(huì)話密鑰kc,s是公鑰并被授予。在這種新模式下,用戶和KDC顯然都需要信任相同的CA。公鑰Kerberos即PKINIT[26,它包含在Windows2000和WindowsServer2003中,是在傳統(tǒng)的Kerberosv5協(xié)議中,認(rèn)證服務(wù)交換的長(zhǎng)期共享密鑰通常由口令派生而得,這(pubc-eyfasrcue)已到位,KNT將借助K管理個(gè)系統(tǒng)用戶公Krerosebros卻是非稱加密數(shù)字簽和相應(yīng)。KNT旨在通過(guò)引公鑰加來(lái) 和CertS用來(lái)證明每個(gè)主體和他所擁有的公鑰之間是綁定的。此時(shí),C或AS只需要PKI中在微軟的類Kerberos系統(tǒng)中都支持PKINIT,包括Windows2000專業(yè)版和Windowsserver2000版,WindowsXP,和WindowsServer2003[29],另外支持PKINIT還有包括Heimdal系統(tǒng)[30]。需要的是,PKINIT至今尚未被MIT的相關(guān)應(yīng)用所支持。I階段1消息1C,TGS,T,N1Kerberosv5客戶想從中獲取TGT的TGSCertC,tcn2由KKK CertC和基于時(shí)間戳tc的客戶端的簽名tc,n2和另K消息2比基本的Kerberos2 C,TGSkc,tgs ,TGSkc,tgs,TN1與AS在基本的Kerberos中的消息 K K,K隨機(jī)數(shù)N1C處得到k,PKINIT在消息2中加上了消息部分CertAS,kn2KKK這個(gè)加密包是由Kc加密的,它包含AS CertAS和AS的簽名k,n2,因此只有CK例5.13這里給出針對(duì)公鑰版Kerberos,即PKINIT的基于可信任新鮮性的安全性分析。圖5.23公鑰加密PKINIT模式下KerberosKcK1分別是C的公鑰和私鑰,KasK1分別是AS CertC和CertAS分別指客戶端的和認(rèn)證服務(wù)器的每個(gè)主體都知道可信任機(jī)構(gòu)CA的公鑰,并能用其從CertC或CertAS處得到KcKas。每個(gè)主體知道自己的公私鑰對(duì),即C知道KcK1AS知道KasK1 ccK名,然后C將C CertC,簽名tc,n2,,C和TGS ,時(shí)間戳T和N1一并發(fā)出KK K ,以找到CertC對(duì)應(yīng)后TGS和C之間的通信,ASK1將k和n2簽名。AS用C的公鑰Kc加密后的密文KCertAS,k,n2KK

在消息14.2和引理4.3C認(rèn)為隨機(jī)選擇的一次隨機(jī)數(shù)N1和n2的新鮮性是有保障的,C也認(rèn)為N1和n2是不的。TGS不能從消息1中得到任何有用的安全性用C的私鑰K

,k,n

2Kkk是和n2于kctg是與的可信任新鮮性標(biāo)識(shí)符一并發(fā)送給C的,C也認(rèn)為臨時(shí)密鑰kctg的新鮮性是有保障的。由引理4.4可得,k和n2與AASK關(guān)聯(lián),因?yàn)槿绻粋€(gè)者是一個(gè)合法用戶,它將能C并使用Kc生成加密包KCertAS,k,n2KK

鑰,因此C不能確定新鮮消息

_ 是來(lái)自S5.9公鑰加密PKINIT模式下Kerberos表5.9是公鑰加密PKINIT模式下Kerberos協(xié)議的安全性分析結(jié)果。在協(xié)議運(yùn)行結(jié)束后,S是的和新鮮的,但C不能確定kc,s是否與C和S都相關(guān)聯(lián)。 存在如圖5.24的[31]。圖5.24對(duì)公鑰加密PKINIT模式下KerberosiiKTGTTGSkc,tgsI K在消息1中,客戶端C開始運(yùn)行一個(gè)新的協(xié)議。者I消息1,將CertC用CertI替KKK在消息2中,I使用C的公鑰構(gòu)建了CertAS,k,n2KK

,并將I的替換成了C在消息3中,C照?;貜?fù)。I消息3,并將{C,time}中C的替換為I,然后 _ k在消息4中,I將消息4’中I的替換為C,然后轉(zhuǎn)發(fā)消息4在這個(gè)針對(duì)公鑰加密PKINIT模式下Kerberos的結(jié)束后,者I使得C產(chǎn)生錯(cuò)誤的信任:C與S成功地完成了協(xié)議的運(yùn)行,并且與S共享了新的會(huì)話密鑰kc,s。然而事實(shí)上,S對(duì)于在隨后發(fā)送敏感信息時(shí),C將使用kc,s加密信息,然而這是者I也知道的密鑰kc,s,因而I能PKINITDiffie-man模 者可參閱文獻(xiàn)[26]。簡(jiǎn)化的Diffie manPKINIT-26認(rèn)證服務(wù)的消息交換如下:例 圖5.25KerberosPKINITDiffie 表5.10是KerberosPKINITDiffie-man的安全性分析結(jié)果,有的讀者可給出分析TanenbaumAS(2001)ComputerNetworks,3rdedn.PrenticeHall,NewFreierAO,KarltonP,KocherPC(1996)TheSSLProtocolVersion.Accessed9JulyDierksT,AllenC(1999)theTLSProtocolVersion1.0,RFC.Accessed9JulyKaufmanC(2005)InternetKeyExchange(IKEv2)Protocol,RFC.Accessed9JulyMeadowsC(1999) ysisoftheInternetKeyExchangeProtocolUsingtheNRLProtocolyzer.In:Proceedingsof1999IEEESymposiumonSecurityandPrivacy,Oakland,9–12MayanC(1993)TheKerberosNetworkAuthenticationService(V5),RFC.Accessed9JulyanBC,Ts’oT(1994)Kerberos:anAuthenticationServiceforComputerIEEECommunicationsMagazine32(9):33–YlonenT(1995)TheSSH(secures)RemoteLoginProtocol,Int

溫馨提示

  • 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)論