1 / 26

802.16 PKM 協定

802.16 PKM 協定. PKM 協定提供憑證交換、認證、密鑰的管理 ( 產生、傳遞、生命週期參數等 ) , MS/SS 透過 PKM 協定通過 BS 的授權,同時從 BS 取得密鑰和加密相關資料。 MS/SS 和 BS 也利用 PKM 協定進行週期性重新授權以及密鑰更新的動作。 PKM 協定包含 授權訊息交換:授權狀態機 (Authorization state machine) 金鑰訊息交換: TEK 狀態機 (TEK state machine) 授權狀態機與 TEK 狀態機之間有主從關係

bruno
Download Presentation

802.16 PKM 協定

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 802.16 PKM協定 • PKM協定提供憑證交換、認證、密鑰的管理(產生、傳遞、生命週期參數等),MS/SS透過PKM協定通過BS的授權,同時從BS取得密鑰和加密相關資料。MS/SS和BS也利用PKM協定進行週期性重新授權以及密鑰更新的動作。 • PKM協定包含 授權訊息交換:授權狀態機(Authorization state machine) 金鑰訊息交換:TEK狀態機(TEKstate machine) • 授權狀態機與TEK狀態機之間有主從關係 TEK狀態機由授權狀態機來啟動。在運作上一(授權狀態機)對多(TEK狀態機),必須經過授權成功後才會進行TEK金鑰,所以當授權狀態機更換AK時,即使TEK狀態機的密鑰尚未過期,也須進行更換。

  2. 802.16 PKM協定 • 802.16d安全認證機制命名為PKMv1,其支援RSA協定。‰只提供設備單向認證。即由基地台(BS)檢驗設備(SS),設備無法檢驗基地台,這是安全上的漏洞,在安全上會出現連上假基地台的問題。 • 802.16e安全認證機制命名為PKMv2,其支援RSA協定以及EAP協定。提供基地台(BS)和設備(MS)相互認證(Mutual Authenication)功能。

  3. 802.16 PKM協定 PKMv1提供 • 設備單向認證,即由基地台(BS)檢驗設備(SS)。 設備無法檢驗基地台,這是安全上的漏洞,在安全上會出現連上假基地台的問題。 PKMv2提供 • Single EAP認證設備認證或使用者認證 • Double EAP認證 設備和使用者同時認證 • 結合EAP協定,提供多種EAP認證方法 如:EAP-TLS、EAP-TTLS、EAP-SIM、EAP-AKA…..等 • 由於行動性的問題,加入認證金鑰轉移(AK-transfer)  處理基地台換手的問題

  4. PKM RSA/EAP 認證協定 PKMv1支援RSA協定,而PKMv2支援RSA協定及EAP協定 PKM RSA/EAP 認證協定 • PKM RSA認證協定使用X.509數位憑證來做認證。X.509數位憑證內含用戶台的公鑰(Public Key)以及用戶台的MAC位址(憑證持有者的身分)。 • 使用RSA認證的用戶台持有兩張憑證,  用戶台製造商的憑證  用戶台本身的憑證。由製造商出廠時設定,以製造商的私鑰簽署。用戶台憑證產生時,會配發一組公鑰(載於數位憑證)與私鑰(存放用戶台)

  5. PKM RSA/EAP 認證協定 PKM EAP 認證協定 • PKM EAP利用IETF RFC 3748(ExtensibleAuthentication Protocol )所定義的EAP認證協定來提供用戶端(使用者和設備)的認證 • 802.16e並沒有限制EAP方法以及憑證型態。  營運者可以自己選擇不同的EAP方法和憑證型態。若EAP方法選擇EAP-TLS,則憑證型態可以使用X.509數位憑證。

  6. PKMv1 協定 • 金鑰功能介紹: 1. AK:用來產生KEK和HMAC-digest 2. KEK(金鑰加密金鑰):用來加密BS傳送給SS的TEK金鑰 以避免TEK金鑰在傳輸過程中被惡意擷取 3. HMAC-digest(訊息驗證金鑰):經由SHA演算法對整個訊息封包做計算。   如此BS與SS可確認連線兩端是否擁有正確的AK值    =>是否為合法的SS或BS

  7. PKMv1 程序 PKMv1授權訊息交換的程序如下: • 1. SS傳送認證訊息給BS => 驗證SS的身分 • 2. SS傳送授權請求訊息給BS =>BS取得的SS公鑰 • 3. 憑證驗證成功後,BS產生AK,並用SS公鑰將AK加密後,回傳SS授權回覆封包 • 4. SS收到授權回復後,利用本身的私鑰解密取得AK,並且對每個SAID啟動一個TEK狀態機進行金鑰訊息交換。 目的在為每一個連線產生個別的TEK加密金鑰並且定期更新TEK金鑰 • 5. BS確認金鑰請求封包無誤後,BS產生兩把TEK金鑰(新鑰和舊鑰,而新的TEK比舊的TEK序號大1。兩把TEK金鑰的生命週期有重疊的部分),用KEK將兩把TEK加密後,連同AK序號、SAID、TEK生命週期、序號、提供DES CBC mode加密使用之64bits CBC-IV值,利用金鑰回覆(Key Reply)封包回覆給SS

  8. 授權回覆封包內容包括 a.加密後AK、AK生命週期及序號 b.同意SS採用之加密認證技術(SAID) c.PKM相關設定 (主要為認證階段的Timer與更新Key階段等待與逾時時間參數設定),可用來確保在認證與換Key的過程中,兩端等待時間週期的一致 P.S. 通過授權後,SS的授權狀態機定期向BS要求重新授權以便在AK生命週期結束前更新AK。 同時,SS會為每個SAID啟動各別的TEK狀態機。BS會提供兩把TEK密鑰給SS,而TEK狀態機將定期向BS更新TEK密鑰。

  9. AK管理 • AK金鑰較不常更換。其生命週期最短為一天,最長為七十天,而預設值則為七天。 • 為避免在重新授權期間造成服務中斷,SS須在AK的生命週期結束前的期限(Grace Time)內,向BS提出授權申請。  以便在舊的AK過期前SS能獲得新的AK • 在過渡期間內,BS可根據SS送來的KeyRequest訊息內的AK序號判斷SS使用哪一把AK來計算HMAC-digest。  情境1:SS使用舊AK來計算Key Request訊息內的HMAC-digest  =>BS也會使用舊的AK來驗證計算Key Request訊息。  同時利用舊的AK來產生KEK以及計算KEY Reply訊息內的HMAC-digest。 • 情境2:SS使用新AK來計算Key Request訊息內的HMAC-digest  =>BS知道SS已經取得新的AK,BS也會使用新的AK來驗證計算Key Request訊息。同時利用新的AK來產生KEK以及計算KEYReply訊息內的HMAC-digest。

  10. BS和SS之間的AK管理示意圖

  11. TEK管理 • TEK因直接對資料加密,為避免被破解,須經常更換。其生命週期設定最短為30分鐘,最長為七天,預設值則為12小時。 • BS選擇TEK的原則如下: 1. BS可以使用新舊兩把TEK密鑰來解密資料。 根據GenericMAC Header內的encryption key sequence來判斷SS用哪把TEK加密。 2. BS使用兩把有效TEK金鑰中的舊TEK來加密資料。 • SS選擇TEK的原則如下: 1. SS可以使用新舊兩把TEK密鑰來解密資料 根據GenericMAC Header內的encryption key sequence來判斷BS用哪把TEK加密。 2. SS使用兩把有效TEK金鑰中的新TEK來加密資料。

  12. BS和SS之間的AK管理示意圖

  13. 備註 • SAID: 一個在SS和BS之間共同使用的ID,用來識別兩者之間的安全關係 • 對於每個SAID,BS必須維持兩把有效的TEK金鑰,新TEK比舊TEK的序號多1,而兩把TEK金鑰的生命週期有重疊的部分 • PKMv1協定運作時,用來解開基地台傳來的授權金鑰(Authorization Key;AK) • PKMv2協定運作時,用來解開基地台傳來的授權金鑰 pre-PAK(Primary Authorization Key)

  14. PKMv2 協定 • PMKv2的認證機制採用基於RSA以及EAP兩種認證方法,PKMv1只定義BS對SS設備做認證,PKMv2協定則略作補強,PKMv2 RSA定義了SS和BS相互認證。 • 802.16e加進了移動與漫遊功能,因此除了原先對裝置(Device)的認證外,亦須增加對使用者(Subscriber)的認證,PKMv2 EAP結合AAA提供了一個更為彈性的架構,可對裝置做認證,亦可對使用者做認證,或對兩者同時做認證,以適用於不同的商業模式需求。 • PKMv2協定同樣由PKMv2授權狀態機與TEK狀態機來控制授權訊息交換與金鑰訊息交換兩部分

  15. 基於RSA雙向授權認證機制 SS和BS的雙向認證模式有兩種,一種是只進行雙向認證,另一種是進行雙向認證後再進行EAP認證。 相互認證是由PKMv2授權狀態機所控制,程序如下: • 1. BS驗證SS的身分 • 2. SS驗證BS的身分 • 3. BS產生AK,並將AK傳送給SS,AK將用來產生金鑰加密金鑰(Key Encryption Key;KEK)和訊息驗證金鑰(HMAC-digest) • 4. BS提供SA和SAID給SS。

  16. RSA簽章流程 • SigSS(SigBS):用SS(BS)私鑰簽署RSA簽章,驗證訊息完整性

  17. 基於RSA雙向授權認證機制流程 1. SS傳送認證訊息給BS(SS製造商的X.509憑證) 2. SS傳送PKMv2 RSA-Request給BS,內容包含: • SS產生的亂數(MS_Random) • 製造商發給SS的X.509憑證,內含SS的公鑰 • Primary SAID 3. BS收到PKMv2 RSA-Request後 • 驗證SS的憑證 • 驗證PKMv2 RSA-Request封包的完整性(SigSS) • 回覆PKMv2 RSA-Reply給SS,內容包含: • MS_Random:此數值為PKMv2 RSA-Request內的MS_Random。 • BS產生的亂數(BS_Random) • 利用SS公鑰加密的pre-PAK(Primary Authorization Key) ,PAK生命週期和PAK序號。pre-PAK將用來產生AK、KEK、MAC訊息認証金鑰以及EIK。 • BS的X.509憑證,內含BS的公鑰。 • SigBS 4. SS收到PKMv2 RSA-Reply後 • 驗證BS的憑證 • 驗證PKMv2 RSA-Reply封包的完整性(SigBS) • BS進行3方SA-TEK交握 • 確認彼此擁有相同的AK以及協商加密方法 • 在進行3方SA-TEK交握前,SS和BS皆已利用pre-PAK得到AK、KEK、HMAC金鑰或CMAC金鑰 5. 進行TEK金鑰的請求

  18. 基於EAP認證機制 • 􀂉 在EAP的架構下,MS為請求者(Supplicant),BS只扮演中繼 • 者的角色,將EAP訊息轉送給認證者(Authenticator) • 􀂉 認證者為AAA client,負責將EAP封包利用RADIUS協定轉送 • 給AAA伺服器 • 􀂉 EAP訊息交換的動作只在MS和AAA伺服器內交換 • 􀂉 IEEE只定義MS和BS之間的PKM協定,BS和Authenticator以 • 及Authenticator和AAA伺服器之間的議題由WiMAX論壇定義 • 􀂉 當只須對使用者做認證或只須對裝置做認證時,須使用標準 • 的EAP,即單層EAP;但當兩者都要做認證,且分別用不同 • 的認證伺服器時(如兩個認證伺服器分別位於不同的CSN), • 就要用到雙層EAP(Double EAP),即Authenticated-EAPafter- • EAP機制

  19. 在EAP的架構下,MS為請求者(Supplicant),BS只扮演中繼者的角色,將EAP訊息轉送給認證者(Authenticator)在EAP的架構下,MS為請求者(Supplicant),BS只扮演中繼者的角色,將EAP訊息轉送給認證者(Authenticator) • 認證者為AAA client,負責將EAP封包利用RADIUS協定轉送給AAA伺服器 • EAP訊息交換的動作只在MS和AAA伺服器內交換 • IEEE只定義MS和BS之間的PKM協定,BS和Authenticator以及Authenticator和AAA伺服器之間的議題由WiMAX論壇定義 • 當只須對使用者做認證或只須對裝置做認證時,須使用標準的EAP,即單層EAP;但當兩者都要做認證,且分別用不同的認證伺服器時(如兩個認證伺服器分別位於不同的CSN),就要用到雙層EAP(Double EAP),即Authenticated-EAPafter-EAP機制

  20. 雙層EAP認證流程 • 1. MS與BS間透過SBC請求與回覆來協商使用PKMv1或PKMv2、認證政 • 策、MAC模式以及PKMv2中是使用單層EAP或雙層EAP。 • 2. MS發出PKMv2 EAP start訊息,此訊息內沒有任何參數,BS收到後進 • 入EAP交換程序。 • 3. MS和AAA伺服器進行第一次EAP認證,此時BS為中繼角色,MS和BS • 的EAP訊息利用放在PKMv2 EAP Transfer內,此時由於尚未獲得AK, • 所以PKMv2 EAP Transfer沒有CMAC digest的保護。

  21. 雙層EAP認證流程 • 4. 若步驟3 EAP認證成功,BS將EAP-Success訊息透過PKMv2 EAPComplete內送給MS,同時等待MS送來PKMv2 Authenticated EAP • start訊息。 • 5. 當MS收到PKMv2 EAP Complete時,MS和AAA伺服器各自從EAP交換的訊息中,產出相同的MSK,做為將來產出其他金鑰的基礎。 • 􀂾 由於之前認證者都只扮演中繼者的角色,並未檢查EAP封包的內容,故須依賴AAA伺服器將產出的MSK傳送給認證者(BS)。 • 􀂾 MS與認證者再各自由MSK來產生PMK和EAP Integrity Key(EIK)。

  22. 雙層EAP認證流程 • 6. MS收到PKMv2 EAP Complete後,發出PKMv2 Authenticated EAP • start訊息進行第二次EAP認證。 • 􀂾 此訊息由CMAC digest提供完整性確認 • 􀂾 CMAC_KEY_*由第一次EAP認證過程中得到的EIK提供 • 􀂾 BS收到PKMv2 Authenticated EAP start後利用CMAC_KEY_*進行訊息完整性確認,確認成功後BS啟動第二次EAP認證。

  23. 雙層EAP認證流程 • 7. MS和AAA伺服器進行第二次EAP認證,BS為中繼角色,MS和BS的EAP訊息利用放在PKMv2 Authenticated EAP Transfer內,由CMAC提供訊息完整性的保護。 • 8. 若步驟7 第二次EAP認證成功,BS將EAP-Success訊息透過PKMv2 Authenticated EAP Complete內送給MS,結束第二次EAP認證。 • 9. 第二次EAP認證成功後,MS和AAA伺服器各自從第二次EAP交換的訊息中,產出相同的第二把MSK2,AAA伺服器將產出的MSK2傳送給認證者(BS),MS和認證者(BS)再各自由MSK2來產生成第二把對主金鑰PMK2。MS和認證者(BS)利用PMK和PMK2各自產生相同的AK。

  24. 雙層EAP認證流程 • 10. ~12.MS和BS進行3方SA-TEK交握,確認彼此擁有相同的AK以及協商加密方法。 • 13. ~14.MS和BS進行TEK金鑰的請求。 • 認證成功後,MS和BS會根據PMK和PMK2的生命週期進行重新認證的程序。重新認證的程序與初始認證程序一樣,不同的是重新認證程序的第一次EAP認證的PKMv2封包會利用前一個雙層EAP認證得到的AK來提供訊息完整性的保護

More Related