20[1]密鑰管理與證書ppt_第1頁
已閱讀1頁,還剩42頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第十三講. Kerberos認證協(xié)議與X.509,上海交通大學計算機科學系,1. 密鑰管理,所有的密碼系統(tǒng)都存在:如何安全\可靠地分配密鑰許多情況下, 出現(xiàn)的安全問題不是因為密碼算法被破,而是密鑰分配系統(tǒng)被破 理想的情況是,密鑰分配協(xié)議應得到形式化驗證,目前已有這方面的結(jié)果,2. Physical Delivery,傳統(tǒng)的物理方法秘密傳送,3. 認證密鑰服務器,第三方可信的在線服務器服務器與每個客戶有個公享秘密鑰向客戶分發(fā)密鑰

2、 可以利用對稱密鑰算法 Kerberos,4. Kerberos認證服務協(xié)議,是一項鑒別協(xié)議解決的問題:在一個公開的分布式環(huán)境中,工作站上的用戶希望訪問分布在網(wǎng)絡中的服務器上的服務服務器希望能夠限制授權(quán)用戶的訪問,并能對服務請求進行鑒別。,5.Kerberos使用的加密體制,Kerberos不是為每一個服務器構(gòu)造一個身份認證協(xié)議,而是提供一個中心認證服務器,提供用戶到服務器和服務器到用戶的認證服務。Kerberos采用傳統(tǒng)加

3、密算法(無公鑰體制)常用版本:Kerberos Version4和Version5 (RFC1510),6. Kerberos的解決方案,在一個分布式的client/server體系機構(gòu)中采用一個或多個Kerberos服務器提供一個認證服務??傮w方案是提供一個可信第三方的認證服務。,7. Kerberos系統(tǒng)滿足的要求,安全。網(wǎng)絡竊聽者不能獲得必要信息以假冒其它用戶;Kerberos應足夠強壯以至于潛在的敵人無法找到它的弱點連接。

4、可靠。Kerberos應高度可靠,并且應借助于一 個分布式服務器體系結(jié)構(gòu),使得一個系統(tǒng)能夠備份另一個系統(tǒng)。透明。理想情況下,用戶除了要求輸入口令以外應感覺不到認證的發(fā)生??缮炜s。系統(tǒng)應能夠支持大數(shù)量的客戶和服務器,8. Kerberos Version4,引入一個信任的第三方認證服務,采用一個基于Needham & Schroeder協(xié)議。采用DES,精心設計協(xié)議,提供認證服務。,9.一個簡單的認證對話,引入認證服務器(A

5、S),它知道所有用戶的口令并將它們存儲在一個中央數(shù)據(jù)庫中。另外,AS與每一個服務器共有一個唯一的保密密鑰。這些密鑰已經(jīng)通過物理上或以更安全的手段分發(fā),,,考慮以下假定的對話:,(1) C ? AS: IDC || PC || IDV(2) AS ? C: Ticket(3) C ? V : IDC || TicketTicket = EKV[IDC || ADC || IDV],IDV: identifier of

6、VPC: password of user on CADC: network address of CKV: AS與V共有的保密密鑰,C,V,AS,,,,(1),(2),(3),ADC防止何種攻擊?,,,考慮以下假定的對話:,(1) C ? AS: IDC || PC || IDV(2) AS ? C: Ticket(3) C ? V : IDC || TicketTicket = EKV[IDC || A

7、DC || IDV],IDV: identifier of VPC: password of user on CADC: network address of CKV: AS與V共有的保密密鑰,C,V,AS,,,,(1),(2),(3),ADC防止何種攻擊?,其中: C: client AS : Authentication Server V

8、 : server IDC: identifier of user on C,10.上述對話存在的問題,兩個主要問題希望用戶輸入口令的次數(shù)最少??诹钜悦魑膫魉蜁桓`聽。解決辦法票據(jù)重用(ticket reusable)票據(jù)需可服務器(ticket-granting server,TGS),,改進后的假想的對話:,用戶登錄的每次對話:(1) C ? AS : IDC || IDtgs(2) AS ? C

9、: EKC[Tickettgs]每種服務類型一次:(3) C ? TGS : IDC || IDv || Tickettgs(4) TGS ? C : TicketV每種服務會話一次:(5) C ? V : IDC || TicketVTickettgs = EKtgs[IDC||ADC||IDtgs||TS1||Lifetime1]TicketV = EKV[IDC||ADC||IDV||TS2||Lifetim

10、e2],C,V,AS,,,,(1),(2),(3),TGS,,,(4),(5),Kerberos,11.方案的詳細描述,用戶向AS請求代表該用戶的票據(jù)許可票據(jù)。 AS發(fā)回加密的票據(jù),密鑰由口令導出(Why?)票據(jù)許可票據(jù)包含用戶ID、網(wǎng)絡地址、TGS的ID、時戳與生存期(Why?)。用戶請求服務許可票據(jù)。TGS驗證,如通過則發(fā)服務許可票據(jù)。用戶使用服務許可票據(jù)請求服務。,改進方案仍存在的問題與TGS相關(guān)的生存期問題;太

11、長則?太短則?如何應付票據(jù)的過期使用?需要服務器向客戶進行認證其本身;假的服務器,12. Kerberos V4 的認證對話,解決方案會話密鑰(session key)AS用安全方式向用戶和TGS各自提供一塊秘密信息,然后用戶也以安全方式向TGS出示該秘密來證明自己的身份。這個秘密就是會話密鑰,13.Kerberos V4報文交換總結(jié)(1),認證服務交換:獲得票據(jù)許可票據(jù)(1) C ? AS : IDC || IDtgs

12、 || TS1(2) AS ? C : EKC[Kc,tgs || IDtgs || TS2 || Lifetime2 || Tickettgs]Tickettgs = EKtgs [Kc,tgs || IDC || ADC || IDtgs || TS2 || Lifetime2],Kerberos V4報文交換總結(jié)(2),票據(jù)許可服務交換:獲得服務許可票據(jù)(3) C ? TGS : IDV || Tickettgs || A

13、uthenticatorc(4) TGS ? C : EKc,tgs[Kc,v || IDV || TS4 || Ticketv]Tickettgs = EKtgs[Kc,tgs|| IDC|| ADC|| IDtgs || TS2 || Lifetime2]Ticketv = EKV[Kc,v||IDC||ADC|| IDv||TS4||Lifetime4]Authenticatorc = EKc,tgs[IDc||

14、ADc||TS3],Kerberos V4報文交換總結(jié)(3),客戶/服務器認證交換:獲得服務(5) C ? V : Ticketv || Authenticatorc(6) V ? C : EKc,v[TS5+1] ( for mutual authentication)Ticketv = EKV[Kc,v||IDc||ADc||IDv||TS4||Lifetime4]Authenticatorc = EKc,v[IDc|

15、|ADc||TS5],14. 公開公證或證書機構(gòu),可信的離線服務器 server 有個公開的公鑰 server 對每個用戶簽名公鑰證書利用公鑰加密,15. 要素與基本原理,(a) 認證服務交換Message(1)Client 請求 ticket-granting ticket IDC :告訴AS本client端的用戶標識; IDtgs :告訴AS用戶請求訪問TGS; TS1 :讓AS驗證

16、client端的時鐘是與AS的時鐘同步的;Message(2)AS返回ticket-granting ticket EKC :基于用戶口令的加密,使得AS和client可以驗證口令,并保護Message(2)。 Kc,tgs :session key的副本,由AS產(chǎn)生,client可用于在AS與client之間信息的安全交換,而不必共用一個永久的key。 IDtgs :確認這個tick

17、et是為TGS制作的。 TS2 :告訴client該ticket簽發(fā)的時間。 Lifetime2:告訴client該ticket的有效期; Tickettgs:client用來訪問TGS的ticket。,16. 基本原理(續(xù)),(b) 票據(jù)許可服務交換Message(3)client 請求service-granting ticket IDv:告訴TGS用戶要訪問服務器V; Ti

18、ckettgs :向TGS證實該用戶已被AS認證;Authenticatorc:由client生成,用于驗證ticket;Message(4)TGS返回service-granting ticket EKc,tgs :僅由C和TGS共享的密鑰;用以保護Message(4); Kc,tgs:session key的副本,由TGS生成,供client和server之間信息的安全交換,而無須共用一個永久密鑰。

19、 IDv :確認該ticket是為server V簽發(fā)的; TS4 :告訴client該ticket簽發(fā)的時間; TicketV :client用以訪問服務器V的ticket; Tickettgs:可重用,從而用戶不必重新輸入口令; EKtgs :ticket用只有AS和TGS才知道的密鑰加密,以預防篡改; Kc,tgs :TGS可用的session key副本,用于解密au

20、thenticator,從而認證ticket; IDc :指明該ticket的正確主人;,17 基本原理,客戶/服務器鑒別交換:Message(5)client 請求服務 Ticketv :向服務器證實該用戶已被AS認證; Authenticatorc:由客戶生成,用于驗證ticket有效;Message(6)客戶對服務器的可選認證 Ekc,v :使C確認報文來自V; TS5

21、+1: 使C確信這不使報文重放; TicketV :client用以訪問服務器V的ticket; EKv :用只有AS和TGS才知道的密鑰加密的票據(jù),以預 防篡改; Kc,v: 用戶的會話密鑰副本; IDc : 票據(jù)的合法用戶; ADc: 防止非法使用; IDv:

22、 使服務器確信解密正確;,18.Kerberos領(lǐng)域和多個域服務,一個完整的Kerberos環(huán)境(域)包括一個Kerberos服務器,一組工作站,和一組應用服務器,滿足下列要求:Kerberos服務器必須在其數(shù)據(jù)庫中擁有所有參與用戶的ID(UID)和口令散列表。所有用戶均在Kerberos服務器上注冊。Kerberos服務器必須與每一個服務器之間共享一個保密密鑰。所有服務器均在Kerberos服務器上注冊。,19.不同域間的鑒別

23、機制,條件:每一個轄區(qū)的Kerberos 服務器與其它轄區(qū)內(nèi)的Kerberos服務器之間共享一個保密密鑰。兩個Kerberos服務器互相注冊。,20.獲得另一領(lǐng)域中的認證服務,分三步驟:(1)獲得本地TGS的訪問權(quán);(2)請求一張遠程TGS的票據(jù)許可票據(jù);(3)向遠程TGS申請其領(lǐng)域內(nèi)的服務許可票據(jù),細節(jié)描述:(1) C ? AS :IDC || IDtgs || TS1 (2) AS ? C :EKC[Kc,tgs

24、|| IDtgs || TS2 || Lifetime2 || Tickettgs](3) C ? TGS:IDtgsrem || Tickettgs || Authenticatorc(4) TGS ? C: EKc,tgs[Kc,tgsrem || IDtgsrem || TS4 || Tickettgsrem](5) C ? TGSrem: IDvrem || Tickettgsrem || Authenticatorc

25、(6) TGS ? C: EKc,tgsrem[Kc,vrem || IDvrem || TSb || Ticketvrem](7) C ? Vrem:Ticketvrem || Authenticatorc,C,AS,TGS,TGSrem,,,,,,,Vrem,,(1),(2),(3),(4),(5),(6),(7),21. Kerberos Version 5,改進version 4 的環(huán)境缺陷加密系統(tǒng)依賴性,需DESInt

26、ernet協(xié)議依賴性,需IP地址消息字節(jié)次序(不明確字節(jié)順序)Ticket的時效性(可能太短)認證轉(zhuǎn)發(fā),用戶的認證不能轉(zhuǎn)發(fā)到其它主機或用戶。域間認證,,22. 公鑰證書,公鑰管理包括公鑰證書的使用證書將用戶身份與公鑰綁定也包括其他信息:有效期、使用權(quán)限所有內(nèi)容有可信中心簽名 (CA) 假設任何人可以得到或已知CA的公鑰,并驗證證書,23. X.509 鑒別服務,CCITT X.500 一部分,目錄服務標準X.509 定

27、義了認證服務框架 這種目錄可以存儲證書 定義了利用證書的認證協(xié)議使用公鑰密碼與數(shù)字簽名 推薦使用RSA (不是標準),24. X.509 證書,由證書授權(quán) (CA) 機構(gòu)發(fā)送:each certificate contains: version (1, 2, or 3) serial number (unique within CA) identifying certificate signature algorithm

28、 identifier issuer X.500 name (CA) period of validity (from - to dates) subject X.500 name (name of owner) subject public-key info (algorithm, parameters, key) issuer unique identifier (v2+),25. X.509 證書(續(xù)),subject

29、unique identifier (v2+) extension fields (v3) signature (of hash of all fields in certificate) notation: CA> means CA has signed certificate details for User,26. 證書 擴展項,證書中,其它信息是有必要的如: email address/URL, policy d

30、etails, usage constraints etc 參見 SSL的使用,27. 證書性質(zhì),任何能夠訪問CA的用戶,可以得到CA上的任何證書只有 CA 能夠修改證書 因為證書不能偽造,證書可以放在目錄中,28. CA 分層結(jié)構(gòu),如果兩個用戶享有一個共同的CA,他們可以得到CA的一個相同的公鑰若不是一個CA,則需要CA分層利用證書鏈驗證其它CA 每個 CA 有對客戶的證書和其上一級CA的證書 每個用戶相信更高層的CA’

31、S 能夠使得任何CA的用戶驗證其它CA簽發(fā)的任何證書,29. CA 分層,A acquires B certificate following chain: X>W>V>Y>Z> B acquires A certificate following chain: Z>Y>V>W>X>,,30. 認證流程,X.509 包括三種認證形式: 單向認證(One-Way Aut

32、hentication )雙向認證(Two-Way Authentication )三向認證(Three-Way Authentication ),31. 單向認證,1 個消息 ( A->B): A{tA, rA, B, sgnData, EkUb[Kab] } 驗證A的身份及消息來源于 發(fā)送到 B 包括內(nèi)容: timestamp, nonce, B's identity signed by A,3

33、2. 雙向認證,2 消息 (A->B, B->A) A{tA, rA, B, sgnData, EkUb[Kab] }B{tB, rB, A, rA, sgnData, EkUa[Kba] },33. 三向認證,3 messages (A->B, B->A, A->B) A{tA, rA, B, sgnData, EkUb[Kab] }B{tB, rB, A, rA, sgnData, EkUa[K

溫馨提示

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

評論

0/150

提交評論