身份認(rèn)證協(xié)議課件_第1頁(yè)
身份認(rèn)證協(xié)議課件_第2頁(yè)
身份認(rèn)證協(xié)議課件_第3頁(yè)
身份認(rèn)證協(xié)議課件_第4頁(yè)
身份認(rèn)證協(xié)議課件_第5頁(yè)
已閱讀5頁(yè),還剩65頁(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)介

第八章身份認(rèn)證1/3/20231第八章身份認(rèn)證12/12/20221本章重點(diǎn):1、身份認(rèn)證的理論基礎(chǔ):物理基礎(chǔ),數(shù)學(xué)基礎(chǔ),協(xié)議基礎(chǔ)2、身份認(rèn)證協(xié)議:雙向認(rèn)證協(xié)議(基于對(duì)稱密鑰,基于公鑰體制),單向認(rèn)證協(xié)議(基于第三方,基于公鑰體制)3、身份認(rèn)證協(xié)議的實(shí)現(xiàn):Kerberos協(xié)議1/3/20232本章重點(diǎn):1、身份認(rèn)證的理論基礎(chǔ):物理基礎(chǔ),數(shù)學(xué)基礎(chǔ),協(xié)議基

8.1身份認(rèn)證基礎(chǔ)身份認(rèn)證是指證實(shí)主體的真實(shí)身份與其所聲稱的身份是否相符的過(guò)程。8.1.1物理基礎(chǔ)

身份認(rèn)證的物理基礎(chǔ)可以分為三種:用戶所知道的(somethingtheuserknows);如:密碼和口令等用戶擁有的(somethingtheuserpossesses);如:身份證、護(hù)照、密鑰盤,數(shù)字證書等用戶的特征(somethingtheuserisorhowhe/shebehaves)。如:指紋、紅膜、DNA、聲紋1/3/202338.1身份認(rèn)證基礎(chǔ)身份認(rèn)證是指證

示證者P和驗(yàn)證者V未曾見面,如何只能通過(guò)開放的網(wǎng)絡(luò)讓其證明自己的身份而不泄露所使用的知識(shí)?

最小泄露證明:P幾乎不可能欺騙V;V幾乎不可能知道證明的知識(shí),特別是他不可能向別人重復(fù)證明過(guò)程;

零知識(shí)證明:除了要滿足以上兩個(gè)條件之外,還要滿足第三個(gè)條件:V無(wú)法從P那里得到任何有關(guān)證明的知識(shí).8.1.2數(shù)學(xué)基礎(chǔ)(零知識(shí)證明)1/3/20234示證者P和驗(yàn)證者V未曾見面,如何只能通過(guò)開放的圖8.1零知識(shí)問(wèn)題

零知識(shí)證明最通俗的例子是圖8.1中的山洞問(wèn)題。P知道打開門的咒語(yǔ),按照下面的協(xié)議P就可以向V證明:他知道咒語(yǔ)但是不需要告訴V咒語(yǔ)的內(nèi)容。1/3/20235圖8.1零知識(shí)問(wèn)題零知識(shí)證明最通俗的例子是圖

①V站在A點(diǎn);②P進(jìn)入山洞,走到C點(diǎn)或D點(diǎn);③當(dāng)P消失后,V進(jìn)入到B點(diǎn);④V指定P從左邊或者右邊出來(lái);⑤P按照要求出洞(如果需要通過(guò)門,則使用咒語(yǔ))⑥P和V重復(fù)①-⑤步驟n次。如果P知道咒語(yǔ),他一定可以按照V的要求正確地走出山洞n次;如果P不知道咒語(yǔ),并想使V相信他直到咒語(yǔ),就必須每次都事先猜對(duì)V會(huì)要求他從哪一邊出來(lái)。1/3/20236①V站在A點(diǎn);12/12/202261、分類根據(jù)是否依賴第三方分為:基于可信第三方認(rèn)證協(xié)議和雙方認(rèn)證協(xié)議;根據(jù)認(rèn)證使用密碼體制分為基于對(duì)稱密鑰的認(rèn)證協(xié)議和基于公鑰密碼體制的認(rèn)證協(xié)議;根據(jù)認(rèn)證實(shí)體的個(gè)數(shù)分為:?jiǎn)蜗蛘J(rèn)證協(xié)議和雙向認(rèn)證協(xié)議;8.1.3協(xié)議基礎(chǔ)1/3/202371、分類8.1.3協(xié)議基礎(chǔ)12/12/20227

協(xié)議的設(shè)計(jì)假設(shè)是攻擊者可以完全控制網(wǎng)絡(luò)上的通信,也可以作為合法用戶參與協(xié)議。攻擊方式多種多樣,最常用的兩種:消息重放攻擊:使用以前截獲的合法信息,在以后的協(xié)議執(zhí)行過(guò)程中使用,可以造成:①使雙方建立一個(gè)以前使用過(guò)的會(huì)話密鑰。②攻擊者可以冒充他人。中間人攻擊:攻擊者同時(shí)參與多個(gè)協(xié)議,利用從一個(gè)協(xié)議中得到的信息攻擊另一個(gè)協(xié)議。(國(guó)際象棋特級(jí)大師問(wèn)題)2、攻擊1/3/20238協(xié)議的設(shè)計(jì)假設(shè)是攻擊者可以完全控制網(wǎng)絡(luò)上的通時(shí)間戳:A接收一個(gè)新消息當(dāng)且僅當(dāng)該消息包含一個(gè)時(shí)間戳,并且該時(shí)間戳在A看來(lái)是足夠接近A所知道的當(dāng)前時(shí)間。提問(wèn)/應(yīng)答方式:A期望從B獲得一個(gè)新消息,首先發(fā)給B一個(gè)臨時(shí)值,并要求后續(xù)從B收到的消息中都包含這個(gè)臨時(shí)值或是由這個(gè)臨時(shí)值進(jìn)行某種事先約定的計(jì)算后的正確結(jié)果。這個(gè)臨時(shí)值往往是一個(gè)隨機(jī)數(shù),稱為現(xiàn)時(shí)。3、防止攻擊的方法

1/3/20239時(shí)間戳:A接收一個(gè)新消息當(dāng)且僅當(dāng)該消息包含一個(gè)時(shí)間戳,并且該8.2身份認(rèn)證協(xié)議8.2.1雙向認(rèn)證協(xié)議1、基于對(duì)稱密碼的雙向認(rèn)證協(xié)議應(yīng)用環(huán)境和目標(biāo):

擁有一個(gè)可信的第三方:密鑰分發(fā)中心KDC,攻擊者M(jìn)alice,用戶Alice和Bob。KDC和所有用戶都擁有一個(gè)對(duì)稱密鑰(如和Alice的共享密鑰Ka),該協(xié)議使得通信各方互相認(rèn)證鑒別各自的身份,然后交換會(huì)話密鑰。1/3/2023108.2身份認(rèn)證協(xié)議8.2.1雙向認(rèn)證協(xié)議12第一次方案:Alice→KDC:IDa,IDbKDC→Alice:EKa[ks],EKb[ks]Alice→Bob:EKb[ks]Bob→Alice:Eks[M]說(shuō)明:ks是KDC為Alice和Bob本次通話生成的一次性會(huì)話密鑰,EKa[ks]代表用Ka對(duì)數(shù)據(jù)ks進(jìn)行加密。1/3/202311第一次方案:12/12/202211

缺陷:消息沒(méi)有和用戶身份綁定(缺少對(duì)實(shí)體認(rèn)證的信息),如在第二步KDC→Alice:EKa[ks],EKb[ks]中,Alice收到消息后不能保證該消息就是KDC為她和Bob生成的。如下攻擊:在第一步,Malice截獲消息并修改為:Malice(Alice)→KDC:IDa,IDm即Malice冒充Alice向KDC發(fā)送請(qǐng)求。那么第二步Alice收到的消息KDC→Alice:EKa[ks],EKm[ks]這樣,Malice就可以冒充Bob和Alice會(huì)話了。1/3/202312缺陷:消息沒(méi)有和用戶身份綁定(缺少對(duì)實(shí)體認(rèn)證12/1第二次方案:Alice→KDC:IDa,IDbKDC→Alice:EKa[IDb,ks],EKb[IDa,ks]Alice→Bob:EKb[IDa,ks]Bob→Alice:Eks[M]Malice無(wú)法再冒充Bob來(lái)欺騙Alice,說(shuō)明在示證信息中,一定要包含示證者身份標(biāo)識(shí)信息來(lái)抵抗偽造攻擊!但是本方案還有重大缺陷!!!1/3/202313第二次方案:12/12/202213

缺陷:消息的數(shù)據(jù)源認(rèn)證中缺少了對(duì)消息新鮮性的認(rèn)證,如在第二步KDC→Alice:EKa[IDb,ks],EKb[IDa,ks]中,Alice收到消息后不能保證該消息就是KDC為她和Bob本次通話生成的,如下攻擊: Malice(KDC)→Alice:EKa[IDb,ks’],EKb[IDa,ks’] Ks’是以前某次KDC為Alice和Bob創(chuàng)建的會(huì)話密鑰,這樣會(huì)話密鑰的新鮮性不能保證! Malice這種行為是哪一種攻擊方式?1/3/202314缺陷:消息的數(shù)據(jù)源認(rèn)證中缺少了對(duì)

改進(jìn):在與每一個(gè)實(shí)體進(jìn)行的對(duì)話中,都要對(duì)對(duì)方實(shí)體的活現(xiàn)性進(jìn)行測(cè)試,對(duì)返回的信息的新鮮性進(jìn)行驗(yàn)證,使用提問(wèn)/應(yīng)答機(jī)制來(lái)修改協(xié)議:第三次方案:Alice→KDC:IDa,IDb,NaKDC→Alice:EKa[IDb,ks,Na,EKb[IDa,ks]]Alice→Bob:EKb[IDa,ks]Bob→Alice:Eks[Nb]Alice→Bob:Eks[f(Nb)]1/3/202315改進(jìn):在與每一個(gè)實(shí)體進(jìn)行的對(duì)話中,都要對(duì)對(duì)12/12

該協(xié)議是著名的Needham-Schroeder協(xié)議,該協(xié)議在1978年發(fā)表,在1981年被發(fā)現(xiàn)存在重大的缺陷。而對(duì)于Needham-Schroeder公鑰認(rèn)證協(xié)議來(lái)說(shuō),自公布到被發(fā)現(xiàn)重大缺陷是在17年后。

請(qǐng)思考第三次方案中,Malice使用以前Alice和Bob建立的會(huì)話密鑰,冒充Alice和Bob建立會(huì)話的過(guò)程?對(duì)于這種缺陷,Denning結(jié)合了時(shí)間戳的方法進(jìn)行了改進(jìn),請(qǐng)寫出改進(jìn)后的協(xié)議。1/3/202316 該協(xié)議是著名的Needham-Schroeder協(xié)議,Denning方法Alice→KDC:IDa,IDbKDC→Alice:EKa[Ks,IDb,T,EKb[IDa,ks,T]]Alice→Bob:EKb[Ks,IDa,T]Bob→Alice:Eks[N1]Alice→Bob:Eks[f(N1)]|Clock-T|<Δt1+Δt2

其中,T是時(shí)間戳,Δt1是KDC時(shí)鐘與本地時(shí)鐘之間差異的估計(jì)值;Δt2是預(yù)期的網(wǎng)絡(luò)延遲時(shí)間。1/3/202317Denning方法12/12/202217Denning協(xié)議的缺陷:必須依靠時(shí)鐘同步。如果發(fā)送者的時(shí)鐘比接收者的時(shí)鐘要快,攻擊者可以從發(fā)送者處竊聽到消息,并等待對(duì)時(shí)間戳接收者來(lái)說(shuō)成為當(dāng)時(shí)時(shí)刻時(shí)重放給接收者,這種重放攻擊稱為抑制重放攻擊。1/3/202318Denning協(xié)議的缺陷:12/12/2022182、基于公鑰密碼的雙向認(rèn)證協(xié)議WOO92b協(xié)議:基于公鑰算法和可靠第三方的認(rèn)證協(xié)議

①A→KDC:IDa||IDb②KDC→A:EKRauth[IDb||KUb]③A→B:EKUb[Na||IDa]④B→KDC:IDb||IDa||EkUauth[Na]⑤KDC→B:EKRauth[IDa||KUa]||EKUb

[EKRauth[Na||

Ks||IDa||IDb]]⑥B→A:EKUa[EKRauth[Na||

Ks||

IDa||IDb]||Nb]⑦A→B:EKs[Nb]1/3/2023192、基于公鑰密碼的雙向認(rèn)證協(xié)議WOO92b協(xié)議:基于公鑰算法8.2.2單向認(rèn)證協(xié)議

單向認(rèn)證的應(yīng)用不需要雙方同時(shí)在線。一方在向?qū)Ψ阶C明自己身份的同時(shí),即可發(fā)送數(shù)據(jù),另一方收到后,首先驗(yàn)證發(fā)送方的身份,如果身份有效,就可以接受數(shù)據(jù)。無(wú)第三方的基于對(duì)稱密碼的單向認(rèn)證協(xié)議

(1)A→B:IDA||N1(2)B→A:EKab[Ks||IDB||f(N1)||N2]

(3)A→B:EKs[f(N2)],即f(x)=x+1雙方必須等待對(duì)方的回答,不適用于雙方不同時(shí)在線的情況。1/3/2023208.2.2單向認(rèn)證協(xié)議單向認(rèn)證的應(yīng)用不需要雙方同時(shí)基于對(duì)稱密碼與第三方的單向認(rèn)證協(xié)議(1)A→KDC:IDA||IDB||N1(2)KDC→A:EKa[Ks||IDB||N1||EKb[Ks||IDA]]

(3)A→B:EKb[Ks||IDA]||EKs[M]基于公鑰密碼的單項(xiàng)身份認(rèn)證A→B:EKUb[Ks]||EKs[M||EKRa[H(M)]]1/3/202321基于對(duì)稱密碼與第三方的單向認(rèn)證協(xié)議12/12/2022218.3身份認(rèn)證的實(shí)現(xiàn)8.3.1Kerberos認(rèn)證協(xié)議簡(jiǎn)介麻省理工大學(xué)(MIT)開發(fā)的一種網(wǎng)絡(luò)安全解決方案應(yīng)用背景:用戶在不同網(wǎng)絡(luò)域中使用各種信息服務(wù)時(shí),可能需要維護(hù)多種不同的密碼證件。Kerberos作為網(wǎng)絡(luò)認(rèn)證解決方案,基本思想是使用可信的第三方把某個(gè)用戶引見給某個(gè)服務(wù)器,方法是在用戶和服務(wù)器之間分發(fā)會(huì)話密鑰建立安全信道。1/3/2023228.3身份認(rèn)證的實(shí)現(xiàn)8.3.1Kerbero主要介紹Kerberos的認(rèn)證功能以Needham-Schroeder認(rèn)證協(xié)議為基礎(chǔ),增加了時(shí)間戳機(jī)制Kerberos的應(yīng)用:Window2000使用Kerberos認(rèn)證協(xié)議作為給系統(tǒng)網(wǎng)絡(luò)認(rèn)證的基礎(chǔ)。優(yōu)點(diǎn):安全,可靠,對(duì)用戶透明,良好擴(kuò)展性1/3/202323主要介紹Kerberos的認(rèn)證功能12/12/2022238.3.2Kerberos協(xié)議中的5個(gè)主體

U:用戶(人類):通過(guò)客戶端(進(jìn)程)來(lái)表達(dá)其行為,每個(gè)用戶都有某個(gè)口令作為單點(diǎn)登錄的密碼證件。C:客戶端(進(jìn)程):代理用戶實(shí)際使用網(wǎng)絡(luò)服務(wù)。S:應(yīng)用服務(wù)器(進(jìn)程):根據(jù)用戶提供的請(qǐng)求許可票據(jù),向客戶端C提供應(yīng)用資源服務(wù)。4.AS:鑒別服務(wù)器,它知道所有用戶的口令并將它們存儲(chǔ)在一個(gè)中央數(shù)據(jù)庫(kù)中。AS與每一個(gè)票證許可服務(wù)器共有一個(gè)唯一的保密密鑰。用于鑒別用戶身份,頒發(fā)票據(jù)許可票據(jù)。5.TGS:票證許可服務(wù)器,與每一個(gè)域中的應(yīng)用服務(wù)器共有一個(gè)唯一的保密密鑰。根據(jù)用戶提供的票據(jù)許可票據(jù),向用戶頒發(fā)請(qǐng)求許可票據(jù)。1/3/2023248.3.2Kerberos協(xié)議中的5個(gè)主體

U:用戶(人類8.3.3Kerberos模型Kerberos的認(rèn)證功能可以分為三個(gè)子服務(wù)來(lái)描述:客戶C和認(rèn)證服務(wù)器AS之間的消息傳輸(認(rèn)證服務(wù)) AS驗(yàn)證客戶C的身份,向C頒發(fā)票據(jù)許可票據(jù)TGT客戶C和票據(jù)許可服務(wù)器TGS之間的消息傳輸(票據(jù)授權(quán)服務(wù)) 客戶C使用TGT向票據(jù)許可服務(wù)器TGS申請(qǐng)請(qǐng)求服務(wù)許可票據(jù)Tc,s

客戶C和應(yīng)用服務(wù)器S之間的消息傳輸(應(yīng)用服務(wù)) 客戶C使用Tc,s向服務(wù)器S申請(qǐng)相應(yīng)的服務(wù)1/3/2023258.3.3Kerberos模型Kerberos的認(rèn)證功能可KDC分為兩個(gè)子服務(wù)器AS和TGS的原因:

把KDC分為作用相同的兩部分,是考慮該系統(tǒng)可能會(huì)在一個(gè)相當(dāng)大的網(wǎng)絡(luò)中運(yùn)行,該領(lǐng)域中的應(yīng)用服務(wù)器分屬不同的網(wǎng)絡(luò)域,應(yīng)用服務(wù)器在不同的網(wǎng)絡(luò)域中由不同的TGS管理,因此,即使某個(gè)固定的用戶只有某個(gè)固定的單點(diǎn)登錄AS,他也可以得到多個(gè)TGS提供的服務(wù),進(jìn)而得到更多的應(yīng)用服務(wù)器提供的服務(wù)。1/3/202326KDC分為兩個(gè)子服務(wù)器AS和TGS的原因:TGSASCS3.TGS_REQ1.AS_REQ5.AP_REQ2.TGT4.TKT6.AP_REP圖8.2Kerberos認(rèn)證功能的三個(gè)子服務(wù)1/3/202327TGSASCS3.TGS_REQ1.AS_REQ5.A認(rèn)證服務(wù):客戶C向AS驗(yàn)證身份并申請(qǐng)票據(jù)1.AS_REQC→AS:c,tgs2.TGTAS→C:其中:tgs是票據(jù)許可服務(wù)器名是客戶的秘密密鑰,是c和TGS的會(huì)話密鑰,是TGS的秘密密鑰。是鑒別服務(wù)器為客戶生成的一個(gè)票據(jù)許可票據(jù)。1/3/202328認(rèn)證服務(wù):客戶C向AS驗(yàn)證身份并申請(qǐng)票據(jù)1.AS_REQ3.TGS_REQC→TGS:4.TKTTGS→C:其中:AC,S是客戶自己產(chǎn)生的鑒別碼,使用時(shí)間戳來(lái)防止重放攻擊。AC,S={C,Client_time,KC,TGS};是c和s的會(huì)話密鑰。

TC,S是服務(wù)許可票據(jù),用于用戶C在以后向應(yīng)用服務(wù)器S證明其身份和得到的授權(quán)。TC,S=S||Eks{U,C,KC,S,Time_srart,Time_expire}

票據(jù)授予服務(wù)1/3/2023293.TGS_REQC→TGS:票據(jù)授予服務(wù)12/1

應(yīng)用服務(wù)

在應(yīng)用服務(wù)中,客戶C使用新獲得的應(yīng)用會(huì)話密鑰從應(yīng)用服務(wù)器S那里獲得應(yīng)用服務(wù)。

5.AP_REQC→S:6.AP_REPS→C:AS,C其中:AC,S=KC,S[C,Client_time] AS,C=KC,S[Client_time1]1/3/202330應(yīng)用服務(wù)在應(yīng)用服務(wù)中,客戶C使用新獲得的應(yīng)圖8.3Kerberos認(rèn)證過(guò)程1/3/202331圖8.3Kerberos認(rèn)證過(guò)程12/12/2022318.3.4X.509認(rèn)證協(xié)議單向認(rèn)證

用戶A和用戶B發(fā)送一條消息,證明自己的身份。消息如下:

只認(rèn)證A的身份,由于使用了時(shí)間戳,需要時(shí)鐘同步。

1/3/2023328.3.4X.509認(rèn)證協(xié)議單向認(rèn)證12/12/20223雙向認(rèn)證

(1)

(2)

消息中增加了現(xiàn)時(shí)的回應(yīng),要由B簽名。也需要時(shí)鐘同步。1/3/202333雙向認(rèn)證(1)12/12/202233

三向認(rèn)證(1)(2)(3)

最后一條消息包含現(xiàn)時(shí)的簽名備份,無(wú)需檢查時(shí)間戳,因?yàn)槊恳欢硕伎梢酝ㄟ^(guò)檢查返回的現(xiàn)時(shí)來(lái)探測(cè)重放攻擊。所以三向認(rèn)證不需要時(shí)鐘同步,在沒(méi)有時(shí)鐘同步條件時(shí),必須采用這種方法。1/3/202334三向認(rèn)證(1)12/12/202234本章小結(jié):介紹了身份認(rèn)證的概念和理論基礎(chǔ)通過(guò)認(rèn)證方案的設(shè)計(jì)了解認(rèn)證協(xié)議設(shè)計(jì)的特點(diǎn),攻擊的方式介紹了認(rèn)證協(xié)議的實(shí)現(xiàn)-Kerberos中的認(rèn)證過(guò)程1/3/202335本章小結(jié):12/12/202235

第八章身份認(rèn)證1/3/202336第八章身份認(rèn)證12/12/20221本章重點(diǎn):1、身份認(rèn)證的理論基礎(chǔ):物理基礎(chǔ),數(shù)學(xué)基礎(chǔ),協(xié)議基礎(chǔ)2、身份認(rèn)證協(xié)議:雙向認(rèn)證協(xié)議(基于對(duì)稱密鑰,基于公鑰體制),單向認(rèn)證協(xié)議(基于第三方,基于公鑰體制)3、身份認(rèn)證協(xié)議的實(shí)現(xiàn):Kerberos協(xié)議1/3/202337本章重點(diǎn):1、身份認(rèn)證的理論基礎(chǔ):物理基礎(chǔ),數(shù)學(xué)基礎(chǔ),協(xié)議基

8.1身份認(rèn)證基礎(chǔ)身份認(rèn)證是指證實(shí)主體的真實(shí)身份與其所聲稱的身份是否相符的過(guò)程。8.1.1物理基礎(chǔ)

身份認(rèn)證的物理基礎(chǔ)可以分為三種:用戶所知道的(somethingtheuserknows);如:密碼和口令等用戶擁有的(somethingtheuserpossesses);如:身份證、護(hù)照、密鑰盤,數(shù)字證書等用戶的特征(somethingtheuserisorhowhe/shebehaves)。如:指紋、紅膜、DNA、聲紋1/3/2023388.1身份認(rèn)證基礎(chǔ)身份認(rèn)證是指證

示證者P和驗(yàn)證者V未曾見面,如何只能通過(guò)開放的網(wǎng)絡(luò)讓其證明自己的身份而不泄露所使用的知識(shí)?

最小泄露證明:P幾乎不可能欺騙V;V幾乎不可能知道證明的知識(shí),特別是他不可能向別人重復(fù)證明過(guò)程;

零知識(shí)證明:除了要滿足以上兩個(gè)條件之外,還要滿足第三個(gè)條件:V無(wú)法從P那里得到任何有關(guān)證明的知識(shí).8.1.2數(shù)學(xué)基礎(chǔ)(零知識(shí)證明)1/3/202339示證者P和驗(yàn)證者V未曾見面,如何只能通過(guò)開放的圖8.1零知識(shí)問(wèn)題

零知識(shí)證明最通俗的例子是圖8.1中的山洞問(wèn)題。P知道打開門的咒語(yǔ),按照下面的協(xié)議P就可以向V證明:他知道咒語(yǔ)但是不需要告訴V咒語(yǔ)的內(nèi)容。1/3/202340圖8.1零知識(shí)問(wèn)題零知識(shí)證明最通俗的例子是圖

①V站在A點(diǎn);②P進(jìn)入山洞,走到C點(diǎn)或D點(diǎn);③當(dāng)P消失后,V進(jìn)入到B點(diǎn);④V指定P從左邊或者右邊出來(lái);⑤P按照要求出洞(如果需要通過(guò)門,則使用咒語(yǔ))⑥P和V重復(fù)①-⑤步驟n次。如果P知道咒語(yǔ),他一定可以按照V的要求正確地走出山洞n次;如果P不知道咒語(yǔ),并想使V相信他直到咒語(yǔ),就必須每次都事先猜對(duì)V會(huì)要求他從哪一邊出來(lái)。1/3/202341①V站在A點(diǎn);12/12/202261、分類根據(jù)是否依賴第三方分為:基于可信第三方認(rèn)證協(xié)議和雙方認(rèn)證協(xié)議;根據(jù)認(rèn)證使用密碼體制分為基于對(duì)稱密鑰的認(rèn)證協(xié)議和基于公鑰密碼體制的認(rèn)證協(xié)議;根據(jù)認(rèn)證實(shí)體的個(gè)數(shù)分為:?jiǎn)蜗蛘J(rèn)證協(xié)議和雙向認(rèn)證協(xié)議;8.1.3協(xié)議基礎(chǔ)1/3/2023421、分類8.1.3協(xié)議基礎(chǔ)12/12/20227

協(xié)議的設(shè)計(jì)假設(shè)是攻擊者可以完全控制網(wǎng)絡(luò)上的通信,也可以作為合法用戶參與協(xié)議。攻擊方式多種多樣,最常用的兩種:消息重放攻擊:使用以前截獲的合法信息,在以后的協(xié)議執(zhí)行過(guò)程中使用,可以造成:①使雙方建立一個(gè)以前使用過(guò)的會(huì)話密鑰。②攻擊者可以冒充他人。中間人攻擊:攻擊者同時(shí)參與多個(gè)協(xié)議,利用從一個(gè)協(xié)議中得到的信息攻擊另一個(gè)協(xié)議。(國(guó)際象棋特級(jí)大師問(wèn)題)2、攻擊1/3/202343協(xié)議的設(shè)計(jì)假設(shè)是攻擊者可以完全控制網(wǎng)絡(luò)上的通時(shí)間戳:A接收一個(gè)新消息當(dāng)且僅當(dāng)該消息包含一個(gè)時(shí)間戳,并且該時(shí)間戳在A看來(lái)是足夠接近A所知道的當(dāng)前時(shí)間。提問(wèn)/應(yīng)答方式:A期望從B獲得一個(gè)新消息,首先發(fā)給B一個(gè)臨時(shí)值,并要求后續(xù)從B收到的消息中都包含這個(gè)臨時(shí)值或是由這個(gè)臨時(shí)值進(jìn)行某種事先約定的計(jì)算后的正確結(jié)果。這個(gè)臨時(shí)值往往是一個(gè)隨機(jī)數(shù),稱為現(xiàn)時(shí)。3、防止攻擊的方法

1/3/202344時(shí)間戳:A接收一個(gè)新消息當(dāng)且僅當(dāng)該消息包含一個(gè)時(shí)間戳,并且該8.2身份認(rèn)證協(xié)議8.2.1雙向認(rèn)證協(xié)議1、基于對(duì)稱密碼的雙向認(rèn)證協(xié)議應(yīng)用環(huán)境和目標(biāo):

擁有一個(gè)可信的第三方:密鑰分發(fā)中心KDC,攻擊者M(jìn)alice,用戶Alice和Bob。KDC和所有用戶都擁有一個(gè)對(duì)稱密鑰(如和Alice的共享密鑰Ka),該協(xié)議使得通信各方互相認(rèn)證鑒別各自的身份,然后交換會(huì)話密鑰。1/3/2023458.2身份認(rèn)證協(xié)議8.2.1雙向認(rèn)證協(xié)議12第一次方案:Alice→KDC:IDa,IDbKDC→Alice:EKa[ks],EKb[ks]Alice→Bob:EKb[ks]Bob→Alice:Eks[M]說(shuō)明:ks是KDC為Alice和Bob本次通話生成的一次性會(huì)話密鑰,EKa[ks]代表用Ka對(duì)數(shù)據(jù)ks進(jìn)行加密。1/3/202346第一次方案:12/12/202211

缺陷:消息沒(méi)有和用戶身份綁定(缺少對(duì)實(shí)體認(rèn)證的信息),如在第二步KDC→Alice:EKa[ks],EKb[ks]中,Alice收到消息后不能保證該消息就是KDC為她和Bob生成的。如下攻擊:在第一步,Malice截獲消息并修改為:Malice(Alice)→KDC:IDa,IDm即Malice冒充Alice向KDC發(fā)送請(qǐng)求。那么第二步Alice收到的消息KDC→Alice:EKa[ks],EKm[ks]這樣,Malice就可以冒充Bob和Alice會(huì)話了。1/3/202347缺陷:消息沒(méi)有和用戶身份綁定(缺少對(duì)實(shí)體認(rèn)證12/1第二次方案:Alice→KDC:IDa,IDbKDC→Alice:EKa[IDb,ks],EKb[IDa,ks]Alice→Bob:EKb[IDa,ks]Bob→Alice:Eks[M]Malice無(wú)法再冒充Bob來(lái)欺騙Alice,說(shuō)明在示證信息中,一定要包含示證者身份標(biāo)識(shí)信息來(lái)抵抗偽造攻擊!但是本方案還有重大缺陷?。?!1/3/202348第二次方案:12/12/202213

缺陷:消息的數(shù)據(jù)源認(rèn)證中缺少了對(duì)消息新鮮性的認(rèn)證,如在第二步KDC→Alice:EKa[IDb,ks],EKb[IDa,ks]中,Alice收到消息后不能保證該消息就是KDC為她和Bob本次通話生成的,如下攻擊: Malice(KDC)→Alice:EKa[IDb,ks’],EKb[IDa,ks’] Ks’是以前某次KDC為Alice和Bob創(chuàng)建的會(huì)話密鑰,這樣會(huì)話密鑰的新鮮性不能保證! Malice這種行為是哪一種攻擊方式?1/3/202349缺陷:消息的數(shù)據(jù)源認(rèn)證中缺少了對(duì)

改進(jìn):在與每一個(gè)實(shí)體進(jìn)行的對(duì)話中,都要對(duì)對(duì)方實(shí)體的活現(xiàn)性進(jìn)行測(cè)試,對(duì)返回的信息的新鮮性進(jìn)行驗(yàn)證,使用提問(wèn)/應(yīng)答機(jī)制來(lái)修改協(xié)議:第三次方案:Alice→KDC:IDa,IDb,NaKDC→Alice:EKa[IDb,ks,Na,EKb[IDa,ks]]Alice→Bob:EKb[IDa,ks]Bob→Alice:Eks[Nb]Alice→Bob:Eks[f(Nb)]1/3/202350改進(jìn):在與每一個(gè)實(shí)體進(jìn)行的對(duì)話中,都要對(duì)對(duì)12/12

該協(xié)議是著名的Needham-Schroeder協(xié)議,該協(xié)議在1978年發(fā)表,在1981年被發(fā)現(xiàn)存在重大的缺陷。而對(duì)于Needham-Schroeder公鑰認(rèn)證協(xié)議來(lái)說(shuō),自公布到被發(fā)現(xiàn)重大缺陷是在17年后。

請(qǐng)思考第三次方案中,Malice使用以前Alice和Bob建立的會(huì)話密鑰,冒充Alice和Bob建立會(huì)話的過(guò)程?對(duì)于這種缺陷,Denning結(jié)合了時(shí)間戳的方法進(jìn)行了改進(jìn),請(qǐng)寫出改進(jìn)后的協(xié)議。1/3/202351 該協(xié)議是著名的Needham-Schroeder協(xié)議,Denning方法Alice→KDC:IDa,IDbKDC→Alice:EKa[Ks,IDb,T,EKb[IDa,ks,T]]Alice→Bob:EKb[Ks,IDa,T]Bob→Alice:Eks[N1]Alice→Bob:Eks[f(N1)]|Clock-T|<Δt1+Δt2

其中,T是時(shí)間戳,Δt1是KDC時(shí)鐘與本地時(shí)鐘之間差異的估計(jì)值;Δt2是預(yù)期的網(wǎng)絡(luò)延遲時(shí)間。1/3/202352Denning方法12/12/202217Denning協(xié)議的缺陷:必須依靠時(shí)鐘同步。如果發(fā)送者的時(shí)鐘比接收者的時(shí)鐘要快,攻擊者可以從發(fā)送者處竊聽到消息,并等待對(duì)時(shí)間戳接收者來(lái)說(shuō)成為當(dāng)時(shí)時(shí)刻時(shí)重放給接收者,這種重放攻擊稱為抑制重放攻擊。1/3/202353Denning協(xié)議的缺陷:12/12/2022182、基于公鑰密碼的雙向認(rèn)證協(xié)議WOO92b協(xié)議:基于公鑰算法和可靠第三方的認(rèn)證協(xié)議

①A→KDC:IDa||IDb②KDC→A:EKRauth[IDb||KUb]③A→B:EKUb[Na||IDa]④B→KDC:IDb||IDa||EkUauth[Na]⑤KDC→B:EKRauth[IDa||KUa]||EKUb

[EKRauth[Na||

Ks||IDa||IDb]]⑥B→A:EKUa[EKRauth[Na||

Ks||

IDa||IDb]||Nb]⑦A→B:EKs[Nb]1/3/2023542、基于公鑰密碼的雙向認(rèn)證協(xié)議WOO92b協(xié)議:基于公鑰算法8.2.2單向認(rèn)證協(xié)議

單向認(rèn)證的應(yīng)用不需要雙方同時(shí)在線。一方在向?qū)Ψ阶C明自己身份的同時(shí),即可發(fā)送數(shù)據(jù),另一方收到后,首先驗(yàn)證發(fā)送方的身份,如果身份有效,就可以接受數(shù)據(jù)。無(wú)第三方的基于對(duì)稱密碼的單向認(rèn)證協(xié)議

(1)A→B:IDA||N1(2)B→A:EKab[Ks||IDB||f(N1)||N2]

(3)A→B:EKs[f(N2)],即f(x)=x+1雙方必須等待對(duì)方的回答,不適用于雙方不同時(shí)在線的情況。1/3/2023558.2.2單向認(rèn)證協(xié)議單向認(rèn)證的應(yīng)用不需要雙方同時(shí)基于對(duì)稱密碼與第三方的單向認(rèn)證協(xié)議(1)A→KDC:IDA||IDB||N1(2)KDC→A:EKa[Ks||IDB||N1||EKb[Ks||IDA]]

(3)A→B:EKb[Ks||IDA]||EKs[M]基于公鑰密碼的單項(xiàng)身份認(rèn)證A→B:EKUb[Ks]||EKs[M||EKRa[H(M)]]1/3/202356基于對(duì)稱密碼與第三方的單向認(rèn)證協(xié)議12/12/2022218.3身份認(rèn)證的實(shí)現(xiàn)8.3.1Kerberos認(rèn)證協(xié)議簡(jiǎn)介麻省理工大學(xué)(MIT)開發(fā)的一種網(wǎng)絡(luò)安全解決方案應(yīng)用背景:用戶在不同網(wǎng)絡(luò)域中使用各種信息服務(wù)時(shí),可能需要維護(hù)多種不同的密碼證件。Kerberos作為網(wǎng)絡(luò)認(rèn)證解決方案,基本思想是使用可信的第三方把某個(gè)用戶引見給某個(gè)服務(wù)器,方法是在用戶和服務(wù)器之間分發(fā)會(huì)話密鑰建立安全信道。1/3/2023578.3身份認(rèn)證的實(shí)現(xiàn)8.3.1Kerbero主要介紹Kerberos的認(rèn)證功能以Needham-Schroeder認(rèn)證協(xié)議為基礎(chǔ),增加了時(shí)間戳機(jī)制Kerberos的應(yīng)用:Window2000使用Kerberos認(rèn)證協(xié)議作為給系統(tǒng)網(wǎng)絡(luò)認(rèn)證的基礎(chǔ)。優(yōu)點(diǎn):安全,可靠,對(duì)用戶透明,良好擴(kuò)展性1/3/202358主要介紹Kerberos的認(rèn)證功能12/12/2022238.3.2Kerberos協(xié)議中的5個(gè)主體

U:用戶(人類):通過(guò)客戶端(進(jìn)程)來(lái)表達(dá)其行為,每個(gè)用戶都有某個(gè)口令作為單點(diǎn)登錄的密碼證件。C:客戶端(進(jìn)程):代理用戶實(shí)際使用網(wǎng)絡(luò)服務(wù)。S:應(yīng)用服務(wù)器(進(jìn)程):根據(jù)用戶提供的請(qǐng)求許可票據(jù),向客戶端C提供應(yīng)用資源服務(wù)。4.AS:鑒別服務(wù)器,它知道所有用戶的口令并將它們存儲(chǔ)在一個(gè)中央數(shù)據(jù)庫(kù)中。AS與每一個(gè)票證許可服務(wù)器共有一個(gè)唯一的保密密鑰。用于鑒別用戶身份,頒發(fā)票據(jù)許可票據(jù)。5.TGS:票證許可服務(wù)器,與每一個(gè)域中的應(yīng)用服務(wù)器共有一個(gè)唯一的保密密鑰。根據(jù)用戶提供的票據(jù)許可票據(jù),向用戶頒發(fā)請(qǐng)求許可票據(jù)。1/3/2023598.3.2Kerberos協(xié)議中的5個(gè)主體

U:用戶(人類8.3.3Kerberos模型Kerberos的認(rèn)證功能可以分為三個(gè)子服務(wù)來(lái)描述:客戶C和認(rèn)證服務(wù)器AS之間的消息傳輸(認(rèn)證服務(wù)) AS驗(yàn)證客戶C的身份,向C頒發(fā)票據(jù)許可票據(jù)TGT客戶C和票據(jù)許可服務(wù)器TGS之間的消息傳輸(票據(jù)授權(quán)服務(wù)) 客戶C使用TGT向票據(jù)許可服務(wù)器TGS申請(qǐng)請(qǐng)求服務(wù)許可票據(jù)Tc,s

客戶C和應(yīng)用服務(wù)器S之間的消息傳輸(應(yīng)用服務(wù)) 客戶C使用Tc,s向服務(wù)器S申請(qǐng)相應(yīng)的服務(wù)1/3/2023608.3.3Kerberos模型Kerberos的認(rèn)證功能可KDC分為兩個(gè)子服務(wù)器AS和TGS的原因:

把KDC分為作用相同的兩部分,是考慮該系統(tǒng)可能會(huì)在一個(gè)相當(dāng)大的網(wǎng)絡(luò)中運(yùn)行,該領(lǐng)域中的應(yīng)用服務(wù)器分屬不同的網(wǎng)絡(luò)域,應(yīng)用服務(wù)器在不同的網(wǎng)絡(luò)域中由不同的TGS管理,因此,即使某個(gè)固定的用戶只有某個(gè)固定的單點(diǎn)登錄AS,他也可以得到多個(gè)TGS提供的服務(wù),進(jìn)而得到更多的應(yīng)用服務(wù)器提供的服務(wù)。1/3/202361KDC分為兩個(gè)子服務(wù)器AS和TGS的原因:

溫馨提示

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