26
密密密密密密密密 密密密密密密密密 14 14 密 密密密密密 密 密密密密密

密碼學與網路安全 第 14 章 認證的應用

Embed Size (px)

DESCRIPTION

密碼學與網路安全 第 14 章 認證的應用. 認證的應用. 認證的功能 支援應用層的認證與數位簽章 Kerberos - 私密金鑰的認證服務 X.509 - 目錄認證服務. Kerberos. 源自麻省理工學院的可信任金鑰伺服器系統 在分散式網路系統由第三方提供中央控管的私密金鑰認證: 允許使用者透過網路存取分散式服務 不需要信任所有的工作站 將認證的工作集中到一台特定的伺服器上 目前使用的有兩個主要版本: Kerberos 4 、 Kerberos 5. Kerberos. 第一份針對 Kerberos 的報告指出 Kerberos 系統必須符合以下條件: - PowerPoint PPT Presentation

Citation preview

Page 1: 密碼學與網路安全 第 14 章 認證的應用

密碼學與網路安全密碼學與網路安全

第第 1414 章 認證的應用章 認證的應用

Page 2: 密碼學與網路安全 第 14 章 認證的應用

認證的應用認證的應用 認證的功能認證的功能 支援應用層的認證與數位簽章支援應用層的認證與數位簽章 Kerberos Kerberos - 私密金鑰的認證服務- 私密金鑰的認證服務 X.509 X.509 - 目錄認證服務- 目錄認證服務

Page 3: 密碼學與網路安全 第 14 章 認證的應用

KerberosKerberos 源自麻省理工學院的可信任金鑰伺服器系源自麻省理工學院的可信任金鑰伺服器系統統 在分散式網路系統由第三方提供中央控管在分散式網路系統由第三方提供中央控管的私密金鑰認證:的私密金鑰認證:

允許使用者透過網路存取分散式服務允許使用者透過網路存取分散式服務 不需要信任所有的工作站不需要信任所有的工作站 將認證的工作集中到一台特定的伺服器上將認證的工作集中到一台特定的伺服器上

目前使用的有兩個主要版本:目前使用的有兩個主要版本: Kerberos 4Kerberos 4 、、Kerberos 5Kerberos 5

Page 4: 密碼學與網路安全 第 14 章 認證的應用

KerberosKerberos 第一份針對第一份針對 KerberosKerberos 的報告指出的報告指出 KerberosKerberos系統必須符合以下條件:系統必須符合以下條件:

安全性安全性 可靠性可靠性 透明性透明性 可塑性可塑性

以以 Needham-SchroederNeedham-Schroeder 認證協定為基礎而認證協定為基礎而加以實作加以實作

Page 5: 密碼學與網路安全 第 14 章 認證的應用

Kerberos 4Kerberos 4 基本的第三方認證方式基本的第三方認證方式 認證伺服器認證伺服器 (AS)(AS)

使用者先向使用者先向 ASAS 證明自己的身份證明自己的身份 ASAS 發出有效的認證憑據 發出有效的認證憑據 (( 通行授與票,通行授與票, TGTTGT))

通行授與伺服器通行授與伺服器 (TGS)(TGS) 使用者接著再以使用者接著再以 TGTTGT 向向 TGSTGS 要求存取其他服要求存取其他服務務

Page 6: 密碼學與網路安全 第 14 章 認證的應用

KerberosKerberos 驗證流程驗證流程1.1. 用戶端代表使用者向用戶端代表使用者向 ASAS 申請通往通行授與伺服器的票申請通往通行授與伺服器的票2.2. ASAS 收到用戶端的請求後,利用使用者的收到用戶端的請求後,利用使用者的 IDID 查詢資料庫得查詢資料庫得到使用者的密碼,並且利用這個密碼產生一把金鑰,將通到使用者的密碼,並且利用這個密碼產生一把金鑰,將通

往往 TGSTGS 的票加密起來傳送給用戶端的票加密起來傳送給用戶端3.3. 用戶端以使用者的身份向用戶端以使用者的身份向 TGSTGS 申請通往某個伺服器的通申請通往某個伺服器的通行票。用戶端傳送一個訊息給行票。用戶端傳送一個訊息給 TGSTGS ,內容包含使用者的,內容包含使用者的

IDID ,欲存取的伺服器,欲存取的伺服器 IDID ,以及從,以及從 ASAS 所得到的通行授與票所得到的通行授與票4.4. TGSTGS 將收到的通行授與票解密,並且核對解密後所得的將收到的通行授與票解密,並且核對解密後所得的

TGS IDTGS ID 是否與自己的是否與自己的 IDID 相同,以判別解密的過程是否正相同,以判別解密的過程是否正確確5.5. 用戶端代表使用者向伺服器請求服務。用戶端傳送一個訊用戶端代表使用者向伺服器請求服務。用戶端傳送一個訊息給伺服器,其內容包含使用者的息給伺服器,其內容包含使用者的 IDID 以及從以及從 TGSTGS 所得到所得到的服務授與通行票。伺服器利用這張票的內容來做認證的服務授與通行票。伺服器利用這張票的內容來做認證

Page 7: 密碼學與網路安全 第 14 章 認證的應用

Kerberos 4Kerberos 4

Page 8: 密碼學與網路安全 第 14 章 認證的應用

KerberosKerberos 實境實境 KerberosKerberos 環境包含:環境包含:

一台一台 KerberosKerberos 伺服器伺服器 數個都已向數個都已向 KerberosKerberos 伺服器註冊的用戶端伺服器註冊的用戶端 與與 KerberosKerberos 伺服器共用金鑰的應用伺服器伺服器共用金鑰的應用伺服器

這樣的環境稱為「實境」這樣的環境稱為「實境」 這通常是一個單一的管理範圍這通常是一個單一的管理範圍

若有多個實境,這些若有多個實境,這些 KerberosKerberos 伺服器必須伺服器必須共用一把秘密金鑰,並且要彼此註冊共用一把秘密金鑰,並且要彼此註冊

Page 9: 密碼學與網路安全 第 14 章 認證的應用

向另一個實境要求服務向另一個實境要求服務

Page 10: 密碼學與網路安全 第 14 章 認證的應用

Kerberos 5Kerberos 5 自自 19901990 年中開始發展年中開始發展 針對針對 Kerberos 4Kerberos 4 提供改進提供改進

改進環境缺陷改進環境缺陷• 加密演算法、網路協定、訊息的位元順序、通行票加密演算法、網路協定、訊息的位元順序、通行票的有效期限、認證的轉移實境間的認證的有效期限、認證的轉移實境間的認證

改進技術缺點改進技術缺點• 雙重加密、非標準的加密方式、連線金鑰、密碼攻雙重加密、非標準的加密方式、連線金鑰、密碼攻擊擊

Kerberos 5Kerberos 5 定義在定義在 RFC 1510RFC 1510

Page 11: 密碼學與網路安全 第 14 章 認證的應用

X.509 X.509 認證服務認證服務 CCITT X.500CCITT X.500 目錄服務標準的一部份目錄服務標準的一部份

維護使用者相關資料庫的分散式伺服器維護使用者相關資料庫的分散式伺服器 定義了供使用者認證服務的框架定義了供使用者認證服務的框架

目錄儲存了使用者的公開金鑰憑證目錄儲存了使用者的公開金鑰憑證 且憑證已經且憑證已經 CACA 背書背書

X.509X.509 也定義了認證協定也定義了認證協定 使用公開金鑰加密和數位簽章使用公開金鑰加密和數位簽章

並無明確指定演算法,但推薦使用並無明確指定演算法,但推薦使用 RSARSA

Page 12: 密碼學與網路安全 第 14 章 認證的應用

X.509X.509 憑證憑證 X.509X.509 的公開金鑰憑證是由的公開金鑰憑證是由 CACA 發行,包含:發行,包含:

版本版本 (1(1 、、 2 2 或或 3) 3) 獨一無二的序列號碼獨一無二的序列號碼 數位簽章演算法的識別號數位簽章演算法的識別號 發行者名稱發行者名稱 有效期間有效期間 對象名稱對象名稱 對象公開金鑰的資訊對象公開金鑰的資訊 發行者的單一識別號發行者的單一識別號 對象的單一識別號對象的單一識別號 擴充部分擴充部分 簽章簽章

CACA 以以 CA<<A>> CA<<A>> 符號表示憑證符號表示憑證

Page 13: 密碼學與網路安全 第 14 章 認證的應用

X.509X.509 憑證憑證

Page 14: 密碼學與網路安全 第 14 章 認證的應用

取得憑證取得憑證 任何使用者皆可向任何使用者皆可向 CACA 取得任何憑證取得任何憑證只有只有 CACA 可以修改憑證可以修改憑證因為無法被偽造,因此可以將憑證放在公因為無法被偽造,因此可以將憑證放在公開的目錄開的目錄

Page 15: 密碼學與網路安全 第 14 章 認證的應用

CACA 的階層式架構的階層式架構 若兩位使用者共用相同的若兩位使用者共用相同的 CACA ,那麼他們能,那麼他們能知道其公開金鑰知道其公開金鑰 否則必須以階層式架構來安排否則必須以階層式架構來安排 CACA子層都信任父層的憑證子層都信任父層的憑證 以階層連結成員的憑證來確認其他的以階層連結成員的憑證來確認其他的 CACA ::

每個每個 CACA 都包含子層(往前)和父層(往後)都包含子層(往前)和父層(往後)的憑證的憑證階層架構中所有階層架構中所有 CACA 的使用者都能確認其他的使用者都能確認其他

CACA 的憑證的憑證

Page 16: 密碼學與網路安全 第 14 章 認證的應用

假設的假設的 X.509 CAX.509 CA 階層結構範例階層結構範例

Page 17: 密碼學與網路安全 第 14 章 認證的應用

憑證的廢除憑證的廢除 憑證都有期限憑證都有期限 有時會希望廢止尚未過期的憑證,例如:有時會希望廢止尚未過期的憑證,例如:

1.1. 使用者的私密金鑰被洩漏使用者的私密金鑰被洩漏2.2. 使用者不再使用此使用者不再使用此 CACA 的憑證的憑證3.3. CACA 的憑證被洩漏的憑證被洩漏

CACA 會記錄廢除的憑證名冊會記錄廢除的憑證名冊 稱為「已廢止憑證名冊」稱為「已廢止憑證名冊」 (CRL)(CRL)

使用者應該以使用者應該以 CACA 的的 CRLCRL檢查憑證是否被檢查憑證是否被廢除廢除

Page 18: 密碼學與網路安全 第 14 章 認證的應用

認證程序認證程序 X.509X.509 包含三種不同的認證程序:包含三種不同的認證程序:

單向認證單向認證 雙向認證雙向認證 三方認證三方認證

這些程序都使用公開金鑰的數位簽章這些程序都使用公開金鑰的數位簽章

Page 19: 密碼學與網路安全 第 14 章 認證的應用

認證程序認證程序

Page 20: 密碼學與網路安全 第 14 章 認證的應用

單向認證單向認證 傳送單一資訊(傳送單一資訊( A→BA→B ):):

AA 的識別號以及訊息是由的識別號以及訊息是由 AA 所產生所產生 訊息是要傳送給訊息是要傳送給 BB 訊息是完整且原始訊息是完整且原始

訊息最少要包含一個時間戳記、隨意值以訊息最少要包含一個時間戳記、隨意值以及及 BB 的識別號的識別號

整個訊息會以整個訊息會以 AA 的公開金鑰來加密的公開金鑰來加密

Page 21: 密碼學與網路安全 第 14 章 認證的應用

雙向認證雙向認證 傳送兩個訊息(傳送兩個訊息( A→BA→B 、、 B→AB→A ),除上述),除上述三點又再包括:三點又再包括:

BB 的身份以及回應的訊息是由的身份以及回應的訊息是由 BB 所產生所產生 訊息是要傳送給訊息是要傳送給 AA 訊息是完整且原始訊息是完整且原始

回應的訊息包含從回應的訊息包含從 AA 所取得的原始隨意值,所取得的原始隨意值,以及時間戳記和由以及時間戳記和由 BB 所產生的隨意值所產生的隨意值

Page 22: 密碼學與網路安全 第 14 章 認證的應用

三方認證三方認證 傳送傳送 33 個訊息(個訊息( A→BA→B 、、 B→AB→A 、、 A→BA→B ),),讓雙方認證不需要同步時脈讓雙方認證不需要同步時脈 從從 AA 回覆給回覆給 BB 的訊息包含的訊息包含 BB 的簽署過的隨的簽署過的隨意值副本意值副本 這表示不需要檢查時間戳記這表示不需要檢查時間戳記

Page 23: 密碼學與網路安全 第 14 章 認證的應用

X.509 X.509 第三版第三版 憑證所包含的資訊已經不敷所需,還需要以憑證所包含的資訊已經不敷所需,還需要以下的資訊:下的資訊:

email/URLemail/URL 、安全策略細節、使用限制、安全策略細節、使用限制 X.509 X.509 第三版包含了許多選擇性的擴充欄位第三版包含了許多選擇性的擴充欄位每一個擴充欄位包含:每一個擴充欄位包含:

擴充的識別號擴充的識別號 是否必要的指示子是否必要的指示子 擴充值擴充值

Page 24: 密碼學與網路安全 第 14 章 認證的應用

憑證的擴充欄位憑證的擴充欄位 金鑰與策略資訊金鑰與策略資訊

表達有關於接收對象與發行者的金鑰資訊,以表達有關於接收對象與發行者的金鑰資訊,以及指示使用何種憑證策略及指示使用何種憑證策略 憑證接收對象與發行者屬性憑證接收對象與發行者屬性

讓憑證接收者或憑證發行者有不同的名稱,具讓憑證接收者或憑證發行者有不同的名稱,具有不同的格式有不同的格式 憑證途徑的限制憑證途徑的限制

讓讓 CACA 發行給其他發行給其他 CACA 的憑證能指定限制的憑證能指定限制

Page 25: 密碼學與網路安全 第 14 章 認證的應用

PKIX架構模型PKIX架構模型

Page 26: 密碼學與網路安全 第 14 章 認證的應用

總結總結 KerberosKerberos 認證機制認證機制 X.509 X.509 認證服務認證服務 PKIPKI