無線電通信網絡中的防克隆相互鑑權的製作方法
2023-05-19 01:19:21
專利名稱:無線電通信網絡中的防克隆相互鑑權的製作方法
無線電通信網絡中的防克隆相互鑑權
優先權要求
本申請要求2004年12月17日提交的美國臨時申請No.60/636906 的權益,通過引用將其完整公開結合到本文中。
背景
本發明涉及用戶鑑權。非限制性地更具體來說,本發明針對利用 基於SIM的鑑權來防止用戶身傷"漠塊(SIM)的克隆以及增強針對蜂窩 無線電通信網絡中或者其它服務中的克隆SIM的保護的方法。
在現有的第二代(2G)和第三代(3G)標準中,安全性基於在歸屬運 營商的鑑權中心(AuC)中以及在諸如全球移動通信系統(GSM)用戶身 份模塊(SM)、通用行動電話服務(UMTS)SIM(即USIM)或者網際網路協 議多媒體子系統(IMS)SIM(即ISIM)之類的用戶的"身份模塊"中存儲 的共享保密密鑰K。用戶根據其身份、國際移動臺標識符(IMSI)以及 在其中用戶證明他知道共享保密密鑰K的詢問-應答協議淨皮鑑權(和計 費)。
圖l是消息流程圖,說明在通過引用結合到本文中的第三代合作 項目技術規範3GPP TS 33.102, V6.2.0中詳細描述的現有鑑權規程中 的消息流程。所涉及的實體是USIM1、用作中間件的來訪位置寄存器 (VLR)2以及生成鑑權向量的歸屬環境鑑權中心(HE/AuC)3。在以下描 述中,參照網絡表明VLR以及HE/AuC。所使用的機制基於在USIM 與HE/AuC之間共享的保密密鑰K。各USIM被分配隨機的唯一 K。 為了實現(相互)鑑權,USIM和HE/AuC向另 一方證明了解保密密鑰。
USIM 1向VLR 2發送鑑權請求4,並且在請求中包含標識符、如 IMSI。 VLR向HE/AuC3轉發鑑權請求。當HE/AuC接收鑑權請求時,
HE/AuC更新序列號(SQNhe),選擇隨機值RAND,以及通過對K、 RAND、 sqnhe和消息欄位(AMF)應用函數fl來計算加密鑰消息鑑權 碼(MAC)。預期響應(XRES)採用由運營商定義的函數f2來計算,並且 可保密,但是無疑是USIM和HE/AuC已知的。HE/AuC還計算加密鑰 值Ck=f3(K,RAND); lk=f4(K,RAND); AK=f5(K,RAND);以及稱作 AUTN=SQN XOR AK||AMF||MAC的鑑權消息,它們均在3GPP TS 33.102中定義。在5, HE/AuC向VLR發送RAND、 XRES、 AUTN、 Ck和lk。在6, VLR向USIM發送RAND和包含SQNnE(保密保護)、 AMF和MAC的消息AUTN。
USIM l檢驗MAC,它證實發送實體、即網絡知道共享密鑰K。 在這種檢驗之後,USIM知道詢問來自其HE/AuC3。但是要注意,這 沒有證明,詢問從合法網絡發送到USIM,因為RAND和AUTN消息 可能已經被詐騙實體截取並且在以後重放。為了防止這類重放攻擊, USIM相對它自己的值SQNMS來檢驗SQNhe的新鮮度。如果USIM判 定呈現的SQNhe是失序的,則它返回出錯代碼和消息AUTS。 AUTS 包含由USIM保持的序列號(SEQMs)(保密保護)和MAC。如果SQN朋 是最新的,則它先前未被使用,以及由於RAND由已檢驗MAC綁定 到序列號,所以它表示RAND也是最新的。USIM則計算響應 RES=f2(K,RAND),並在7把RES返回給VLR 2。 VLR則檢驗 RES-XRES。如果這種檢驗是成功的,則用戶被認為已鑑權,並且密 鑰Ck和lk可用於數據保護(保密性和完整性)。
但是,現有標準不提供任何方式來檢測採用相同K/MSI的多個副 本的克隆。針對"克隆,,的保護只依靠逆向工程設計身份模塊、如USIM 的假定困難或者了解共享密鑰K的困難。但是要注意,這些假定困難 可能不會那麼大。首先,由於共享密鑰K在身份才莫塊與HE/AuC之間 共享,所以,在某個點,K必須被傳遞給AuC。這種傳遞是黑客或不 誠實的內部人員可能了解K的一個弱點。其次,如果黑客/內部人員危 及HE/AuC,則不僅對於單個目標用戶,而且更可能對於與該HE/AuC
關聯的全部用戶,安全性完全失效。第三,某些AKA算法(例如GSM AKA的COMP128版本)是脆弱的,並且對SIM的訪問通過觀察 RAND/RES對而允許K的輕易的逆向工程設計。第四,SIM製造環境 中的過程可能展現"K洩漏"的風險。
觀察到的網絡行為表明,現有標準不提供任何方式來檢測採用相 同K/IMSI的多個副本的克隆。相同的USIM可同時使用而沒有問題或 者任何種類的失效。現有網絡和USIM不能夠檢測釆用相同K/IMSI 編程的克隆。
因此,本領域所需的是用於防止SIM、 USIM和ISIM的克隆以及 增強克隆保護、克服了先有技術的缺點的解決方案。本發明提供這樣 一種解決方案。
發明內容
在一個方面,本發明針對一種防止身份模塊(IM)的未經授權複製 的方法。該方法包括在IM中內部生成至少第一密鑰(K1)和不同的第二 密鑰(K2),其中,生成步驟包括確保K1無法從K2中得出,以及在一 些實施例中還確保K2無法從K1中得出。IM則把K2和標識符(ID)導 出到鑑權伺服器(AS),同時使Kl在IM中內部保密。Kl和K2可構成 用於不對稱密碼術的保密/公開密鑰對,在這種情況中,公開密鑰K2 在AS中保密。用於生成K1和K2的IM中的內部信息可被擦除,以 便確保K1無法從K2中得出或者K2無法從K1中得出。
由於密鑰Kl和K2是不同的,所以對AS的損害/闖入不會公開從 中可推斷K1的信息,因而阻止IM的克隆。類似地,K2從IM到AS 的傳遞不需要極大地保護。大家會看到,本發明仍然能夠保持現有鑑 權協議的信令流程,但是在處理中釆用不對稱密碼術而不是對稱密碼 術。下面描述採用不同類型的不對稱密碼術(例如加密、籤名等)的各 種詳細實施例。還描述了根據散列鏈的一個實施例。
稍後進行描述,在另一個方面,還說明如何使K1不可用於得出
K2。這具有以下作用即使M受到損害(在這種情況中將有可能克隆 IM),也仍然不可能克隆AS(即,製造可與IM互配的AS)。
在本發明的鑑權階段,第三方對IM鑑權。鑑權階段包括通過 從IM向第三方提供至少包含ID的信息來發起鑑權;把信息從第三方 轉發給AS;由AS根據從第三方接收的ID來檢索K2;以及由AS至 少根據K2生成至少第一值(R)和第二值(X)。鑑權階段還包括把R和 X從AS返回給第三方;把R從第三方轉發給M;由EM至少根據K1 和R生成響應(RES);把RES從IM返回給第三方;以及由第三方根 據X來檢驗RES。
在另一個方面,本發明針對防複製IM。 IM包括用於在M中 內部生成至少第一密鑰(K1)和第二密鑰(K2)、同時確保K1無法從K2 中得出以及K2無法從Kl中得出的部件;以及用於把K2和標識符(ID) 從M導出到鑑權伺服器(AS)、同時使K1在IM中內部保密的部件。 IM可在包含根據IM執行支付的電子商務應用的終端中實現。
在又一個方面,本發明針對一種用於對訪問身傷^莫塊(IM)進行鑑 權、同時防止訪問IM的未經授權複製的鑑權伺服器。鑑權伺服器包 括用於從訪問IM接收訪問請求的部件;用於釆用鑑權伺服器中但 不是訪問M中存儲的信息來生成詢問的部件,其中,鑑權伺服器中 存儲的信息不足以創建IM克隆;以及用於生成從有效IM預期的預期 響應的部件。鑑4又伺服器還包括用於向訪問IM發送詢問的部件,其 中,詢問對於各訪問嘗試改變。
在又一個方面,本發明針對一種用於為有效M提供對網絡的訪 問、同時防止由未經^i受權的IM克隆對網絡的訪問的系統。該系統包 括鑑權伺服器,用於從訪問M接收訪問請求,釆用鑑權伺服器中但 不是訪問IM中存儲的信息來生成詢問,生成從有效IM預期的預期響 應,以及向訪問IM發送詢問,其中,詢問對於各訪問嘗試改變,以 及在鑑權伺服器中存儲或者由其生成的信息不足以創建能夠作為有效 IM進行響應的IM克隆。系統還包括訪問IM中用於接收詢問並根
據詢問中的信息和訪問IM中但不是鑑權伺服器中存儲的信息來預備 和發送響應的部件;以及用於l又在訪問IM預備的響應等於鑑權服務 器生成的預期響應時才為訪問IM提供對網絡的訪問的部件。
系統還可包括中間節點,它適合於從鑑權伺服器接收詢問和預期 響應,把詢問轉發給訪問M,從訪問IM接收響應,以及確定訪問M 預備的響應是否等於鑑權伺服器生成的預期響應。
在又一個方面,本發明針對一種用於為有效IM提供對網絡的訪 問、同時防止由未經授權的IM克隆對網絡的訪問的方法,其中,訪 問IM向鑑權伺服器發送訪問請求。該方法在鑑權伺服器中包括以下 步驟選擇隨機值y;利用RAND=gy計算隨機值(RAND);計算值 R-g^,其中的x是訪問IM已知的Diffie-Hellman私有密鑰;利用 K^KDF(R,.,.)計算共享保密密鑰(K),其中的KDF是密鑰推導函數;更 新序列號(SQNhe);利用MAC-fl(K,RANDIISQNHAMF...)計算加密鑰 消息鑑權碼(MAC);利用XRES-f2(K,RAND)計算預期響應(XRES); 利用Cl^f3(K,RAND)計算Ck;利用lk-f4(K,RAND)計算lk;利用 AK-f5(K,RAND)計算AK;利用AUTN=SQN XOR AK||AMF||MAC柄 成消息AUTN;以及向服務於訪問IM的來訪位置寄存器(VLR)發送 RAND、 XRES、 AUTN、 Ck和lk。
VLR向訪問IM轉發RAND和包含保密保護的SQNre、消息欄位 (AMF)和MAC的AUTN。該方法則在訪問IM中包括以下步驟利用 R-RANDX確定R,其中的x是Diffie-Hellman私有密鑰;利用密鑰推 導函數計算共享保密密鑰K-KDF(R,...);利用AK-f5(K,RAND)計算 AK;提取和檢驗SQNnE、 AMF和MAC;利用RES-f2(K,RAND)計算 響應(RES);以及向VLR發送RES。VLR則確定從訪問IM接收的RES 是否等於從鑑權伺服器接收的XRES。訪問IM僅在從訪問IM接收的 RES等於從鑑權伺服器接收的XRES時才被提供對網絡的訪問權。
在又一個方面,本發明針對一種用於對訪問身份;溪塊(IM)進行鑑 權、同時防止利用具有消息恢復的籤名方案的網絡中的訪問IM的未
經授權複製的方法。公開密鑰U一EK在訪問IM中內部生成,並且在 鑑權伺服器(AS)上登記。當訪問IM向AS發送至少包括M標識符的 訪問請求時,AS檢索訪問IM的/>開密鑰U一EK。 AS預備詢問CHAL, 它包含隨機值(RAND)、序列號(SEQ)和附加數據(DATA)中的至少一 個。AS向中間節點發送詢問和訪問IM的7>開密鑰U一EK,中間節點 把詢問從中間節點轉發給訪問IM。然後,訪問IM預備詢問的數字籤 名U一SIGN(CHAL),並把數字籤名U—SIGN(CHAL)發送給中間節點作 為對詢問的響應RES。中間節點通過確定詢問(CHAL)是否等於^^開密 鑰U—EK(RES)來檢驗響應。
在以下部分,將參照通過附圖所述的示範實施例來描述本發明, 附圖包括
圖l(先有技術)是消息流程圖,說明現有第三代合作項目(3GPP) 鑑權規程中的消息的流程;
圖2是消息流程圖,說明本發明的第一實施例中的消息的流程;
圖3是消息流程圖,說明採用明文詢問系統的本發明的一個實施 例中的消息的流程;
圖4是消息流程圖,說明採用加密詢問系統的本發明的一個實施 例中的消息的流程;
圖5是消息流程圖,說明採用加密詢問系統的本發明的一個備選 實施例中的消息的流程;以及
圖6是消息流程圖,說明採用公開密鑰分發系統的本發明的一個 備選實施例中的消息的流程。
具體實施例方式
本發明採用不對稱密碼術系統來防止申SIM(即SIM、USIM和ISIM) 的克隆以及增強針對克隆身份才莫塊(IM)的保護。與先有技術配置(在
*SIM和HE/AuC中存儲相同信息)截然相反,本發明在HE/AuC中存 儲與fSIM中的信息不同的信息,並且即使在HE/AuC中的信息洩漏 時,也不足以克隆—SIM。在一個實施例中,*SIM內部生成其保密(私 有)公開密鑰對,並且安全地把公開密鑰傳遞給HE/AuC。在另一個實 施例中,置信第三方生成保密(私有)公開密鑰對。置信第三方把保密 密鑰輸入fSIM,並且把公開密鑰傳遞給HE/AuC。注意,系統不依靠 如標準GSM/UMTS鑑權和密鑰協議(AKA)程序中那樣的共享密鑰。
本發明中的不對稱方案可基於公開密鑰加密或者基於Diffie-Hellman公開密鑰分發系統。在第一種情況中,保密密鑰U—SK等於公 開密鑰加密系統中的私有密鑰,以及U一PK表示對應公開密鑰。在第 二種情況中,IT一SK表示保密值(x),以及U—PK表示對應公共值f。
本發明設計成防止具有通過下列三種方式的任一種獲得的信息的 攻擊者進行fSIM克隆。
1. 保存在HLR/AuC中的信息被洩露給攻擊者。這表示攻擊者可生 成可信詢問。但是,不一定表示攻擊者可生成克隆USM。
2. 保存在VLR中的信息被洩露給攻擊者。這不應當使攻擊者能夠 生成新的有效詢問或者給予所保存詢問的正確響應。攻擊者也不應當 能夠得出從AKA程序產生的密鑰。
3. 編程到USM中的信息/參數被洩露給攻擊者。這不應當使攻擊 者能夠生成有效詢問。注意,在USIM中內部生成的信息被假定為不 是攻擊者可得到的。通常,這是公開密鑰系統中的私有密鑰,以及如 果它是可得到的,則攻擊者顯然能夠克隆USIM。但是,在一個實施 例中,即使私有密鑰變為可用,但它仍然不會使攻擊者能夠發出有效 鑑權詢問、即創建偽造的鑑權伺服器。
還假定攻擊者可監測所有所涉及實體之間的全部信令,直到執行 攻擊的時刻為止。
本發明所考慮的攻擊是標準攻擊(1)冒充用戶;(2)冒充系統; (3)重定向攻擊(即把鑑權請求從一個服務重定向到用於另一個服務的
USIM); (4)重放攻擊;(5)中間人攻擊以便影響密鑰;以及(6)從截 取的業務和知識'中得出密鑰。
圖2是消息流程圖,說明本發明的第一實施例中、諸如USMll 之類的*811\4、來訪位置寄存器(VLR)12與HE/AuC 13之間的消息的流 程。USIM 了解保密密鑰(SK),以及HE/AuC 了解與SK對應的公開密 鑰(PK)。在一個示範實施例中,採取RSA公開密鑰系統,但是容易看 到,可採用任何公開密鑰系統。雖然RSA具有某些特殊優點(稍後論 述),但是,從效率/帶寬的角度來看,諸如基於橢圓曲線之類的其它系 統的使用也可能是有益的。USIM向VLR發送鑑權請求14,並且在請 求中包含標識符、如IMSI。 VLR向HE/AuC轉發鑑權請求。當HE/AuC 接收鑑權請求時,HE/AuC選擇隨機值R,並計算RAND=E(PK,R), 其中的E是RSA加密。可選地,HE/AuC可例如根據PKCS弁lvl.5或 RSA-OAEP標準在這裡對R添加冗餘度/填充。HE/AuC還採用 K^KDF(R,.,.)來計算得出的共享保密密鑰K,其中的KDF是密鑰推導 函數(例如基於AES或HMAC)。 HE/AuC則更新序列號SQNhe,利用 fl(K,RANDIISQNIIAMF…)計算MAC,利用f2(K,RAND)計算XRES, 利用f3(K,RAND)計算Ck,利用f4(K,RAND)計算lk,利用f5(K,RAND) 計算AK,以及構造消息AUTN=SQN XOR AK||AMF||MAC,如3GPP TS 33.102中所述。在15, HE/AuC向VLR發送RAND、 XRES、 AUTN、 Ck和lk。在16, VLR向USIM轉發RAND和包含SQNHE(保密保護)、 AMF和MAC的'AUTN。
在接收到RAND和AUTN時,USIM 11確定R=D(SK,RAND), 其中D是RSA解密。如果HE/AuC對R添加冗餘度/填充,則USIM 在這裡檢驗冗餘度/填充。USM還釆用密鑰推導函數來計算共享保密 密鑰K二KDF(R,...)。 USIM則如3GPPTS 33.102中那樣繼續進行,以 便預備響應RES。在17, USIM向VLR發送RES,它確定從USIM接 收的RES是否等於從HE/AuC接收的XRES。如果採用基於RSA的公 開密鑰方案,在其中僅在USM中存儲公開密鑰的模數,但不是形成 公開密鑰的素數,並且在其中在公開密鑰已經分發給HE/AuC之後被 擦除,則USIM中的信息不足以生成有效詢問。
因此,本發明應用公開密鑰密碼術(或散列鏈,下面進行描述)以 便保護用戶鑑權。公開密鑰解決方案與標準UMTS AKA程序的消息交 換一致,並且採用相同的置信模型,其中略微修改消息格式和處理。 散列鏈解決方案可能需要少量額外信令,除了在ISM情況中之外,其 中解決方案僅影響歸屬網絡內部信令。
或者,本發明可採用明文詢問方法而不是如上所述的加密詢問方 法。兩種方法均首先假定USIM生成私有/公開密鑰對(內部),並且以 安全方式向HE/AuC登記公開密鑰。"安全"在此表示經過鑑權但不 一定經過加密。無法被克隆並且實現攻擊檢測的USM操作將執行涉 及私有密鑰的操作以便生成數字籤名,或者檢索明文信息。明文詢問 還假定USIM和HE/AuC共享秘密,但是作為備選,這個假定可採用 HE/AuC具有私有/公開密鑰的假定來替代。
通過明確地使AKA輸出與USIM的IMSI相關,本發明對標準 UMTS AKA系統以及對下面描述的新AKA解決方案增加整體改進。 這使得無法採用給定用戶的密鑰K對用於標準UMTS AKA程序的 USIM進行編程,並生成正確響應。
本發明還使標準UMTS AKA輸出與詢問的序列號相關。在響應 計算中包含序列號的操作防止輸出參數從先前使用的輸入參數計算。
明文詢問系統
圖3是消息流程圖,說明採用明文詢問系統的本發明的一個實施 例中的USIM 11、 VLR 12與HE/AuC 13之間的消息的流程。在這個 實施例中,假定USM已經在HE/AuC上生成和登記其公開密鑰 CU一EIQ。 USM向VLR發送鑑權請求14,並且在請求中包含標識符、 如IMSI。 VLR向HE/AuC轉發筌權請求。當HE/AuC接收鑑權請求時, HE/AuC檢索USIM的公開密鑰U一EK,並預備詢問(CHAL)。如同標 準UMTSAKA中那樣,HE/AuC為各USIM維護各個序列計數器。由
於USIM無法被克隆的事實,序列號的生成以及USM使用的SNAP 可適應系統需要和總系統解決方案。詢問包括RAND和SEQ以及可 能的附加數據(DATA)其中的至少一個。優選地,RAND和SEQ均為 詢問的一部分,它優選地在DATA部分中包含服務標識符。服務指示 符使得無法重定向來自 一個服務的詢問,並為另 一個服務使用結果。
在18, HE/AuC向VLR 12發送詢問(CHAL)以及USM的公開密 鑰(U—EK),VLR 12在19把CHAL轉發給USIM。 USM預備詢問的數 字籤名U一SIGN(CHAL),並將其作為響應(RES)20發送給VLR, VLR 則通過確定詢問(CHAL)是否等於公開密鑰U一EK(RES)來檢驗該籤 名。
在圖3的實施例中, -底定採用消息恢復的籤名方案。如果釆用具 有附錄的籤名,則檢驗CHAL- U—EK(RES)由hash(CHAL)= U一EK(RES)替代。為了防止拒絕服務攻擊以及檢驗詢問是否來自已鑑 權源,詢問以及用戶的公開密鑰可受到採用共享密鑰MAC的完整性 保護。HE/AuC或者可採用所有用戶的公用公開/私有密鑰對或者USIM 特有公開/私有密鑰對來數字籤署詢問。在後一種情況中,公開密鑰可 在USIM向HE/AuC登記其公開密鑰的同時分發給USM。通過以這 種方式對詢問進行完整性保護,攻擊者無法產生用於所有情況的有效 ,問,除非他具有與HE/AuC同樣的知識。因此,攻擊者無法發送詢 問以阻塞有效序列號。
共享密鑰還可如同標準UMTS AKA系統中那樣用來推導共享密 鑰、如Ck和lk。在這個導出的實施例中,密鑰優選地取決於完整的 詢問而不只是RAND部分。這保證密鑰還將取決於序列號和DATA部 分。如果終端或USIM例如可檢驗數據部分中的服務描述符是正確 的,則重定向攻擊淨支阻塞。注意,得出的共享密鑰必須從HE/AuC發 送給VLR。
隱藏標準UMTS AKA系統提供的序列號的方法也適用於這個解 決方案。
還要注意,如果USIM中的共享密鑰被洩露,則攻擊者可生成有 效詢問,因為USIM的公開密鑰必須被認為是公開已知的,因為它以 明文發送給VLR。如果詢問採用HE/AuC私有密鑰來籤署,則情況不 是這樣。攻擊者在這種情況中還可能能夠在實際USIM已經鑑權之後 "攔截"連接,因為攻擊者可能能夠得出相同的會話密鑰。為了防止 這種情況,密鑰應當是僅在具有USIM中的保密(非共享)密鑰時才可得 出。這可通過讓HE/AuC向USIM發送"密鑰籽",如先前描述的加 密詢問解決方案中執行的那樣通過USIM的公開密鑰加密來完成。 備選加密詢問系統
圖4是消息流程圖,說明採用加密詢問系統的本發明的一個備選 實施例中的USIM 11、 VLR 12與HE/AuC 13之間的消息的流程。在 這個實施例與以上所述的加密詢問實施例之間存在兩個主要差別。首 先,在這個實施例中,完整性保護通過讓USIM和HE/AuC共享保密 密鑰來提供。其次,在這個實施例中,使USIM公開密鑰可供VLR使 用。在這個實施例中,假定USIM已經生成和在HE/AuC上登記其公 開密鑰(U一EK)。正如以上所述,HE/AuC或者可採用公開/私有密鑰對 來數字籤署詢問。
USIM向VLR發送鑑權請求14,並且在請求中包含標識符、如 IMSI。 VLR向HE/AuC轉發鑑4又請求。當HE/AuC接收鑑權請求時, HE/AuC檢索USIM的公開密鑰U_EK,並預備和加密詢問(E一CHAL)。 在21,HE/AuC向VLR 12發送E—CHAL以及USIM的公開密鑰(U一EK) 和MAC, VLR 12在22把E—CHAL和MAC轉發給USIM。大家注意, 對VLR傳遞公開密鑰U_EK的步驟是與先前所述的加密詢問實施例的 第二主要差別。USIM通過應用公開已知的函數HR來修改已加密詢問 E_CHAL。 USIM數字籤署得到的結杲,以及在23,籤名作為響應(RES) 發送給VLR。 VLR 了解HR函數和USIM的公開密鑰,因而它可檢驗 所接收的籤名。
共享密鑰可通過對明文詢問CHAL—D應用HASH(PRG)函數從詢 問中得出。同樣在這裡,得出的共享密鑰必須從HE/AuC發送給VLR。 還要注意,如果USIM中的共享密鑰被洩露,則攻擊者在這種情 況中還可生成有效詢問。如果詢問釆用HE/AuC私有密鑰來籤署,則 情況不是這樣,並且AKA密鑰可能從明文詢問中得出。
圖5是消息流程圖,說明採用加密詢問系統的本發明的第三備選 實施例中的USIM 11、 VLR 12與HE/AuC 13之間的消息的流程。在 這個實施例中,USM的公開密鑰沒有如前一個實施例中那樣被發送 給VLR。 USIM向VLR發送鑑4又請求14,並且在請求中包含標識符、 如IMSI。 VLR向HE/AuC轉發鑑權請求。當HE/AuC接收鑑權請求時, HE/AuC檢索USIM的公開密鑰U—EK,並預備和加密詢問(E—CHAL)。 HE/AuC還得出將與VLR12共享的S—KEY。在24,HE/AuC向VLR 12 發送E一CHAL以及預期響應(XRES)、 SJCEY和MAC, VLR 12在25 把E一CHAL和MAC轉發給USIM。 USIM預備響應(RES)作為明文詢 問CHAL—D的HASH或偽隨機生成者(PRG)、 HA(CHAL—D)。在26, RES被發送給VLR , VLR確定從USM接收的RES是否等於從HE/AuC 接收的XRES。
為了保持由VLR保存的信息不足以生成對詢問的有效響應的特 徵,應用掩碼技術。相同類型的掩碼技術可用於使得出的共享密鑰與 USM生成的響應相關。這個方法也適用於以上所述的兩種解決方案。
還要注意,在這個實施例中沒有共享密鑰。如果採用基於RSA的 公開密鑰方案,在其中僅在USIM中存儲公開密鑰的才莫數但不是形成 公開密鑰的素數,並且在其中公開密鑰在已經分發給HE/AuC之後被 擦除,則USM中的信息不足以生成有效詢問。
基於散列鏈的解決方案
基於散列的解決方案的好處是效率,但是信令和維護略微地更復 雜。數字籤名的原理在於,籤署者揭示只有籤署者才可產生的、但任 何人都能夠檢驗正確性的值。相同的結果原則上可釆用單向散列函數 取得。以易於計算但難以逆轉的函數h開始,"籤署者,,A選擇隨機x,
並公布y—h(x))作為"公開密鑰"。隨後,籤署者A揭示x,以及任何 人可應用h並檢驗該值是否正確。為了能夠"籤署,,不止一次,可使 用鏈
formula see original document page 21
問題在於,這樣一種鏈無論如何始終具有有限長度,並且可以用完X 值。但是,在USIM的情況中,通常存在所定義的最大數量的允許鑑 權(大約20000-50000),因此始終可使鏈足夠長。或者,存在從舊鏈 "引導"新鏈的方法。這通過讓笫一散列鏈的第二個至最後一個值用 作消息完整性密鑰來進行,這個密鑰完整性保護第二散列鏈的最後一 個值。
因此,USIM生成散列鏈(XJ)作為以上簽署者A,以及最後一個 "錨,,值X-N在AuC中登記。為了減小存儲要求,USIM可例如僅存 儲每第r個值,並根據需要得出中間值。原則上,在各鑑權時,USIM 揭示"下一個"XJ(它是鏈中的前一個X值)。但是,這具有一些同步 問題,因為歸屬網絡需要知道已經發生多少次鑑權,以便提供正確的 X值。這不一定是輕鬆的,因為歸屬網絡可能在"跟蹤"漫遊用戶時 有困難。
一種解決方案是讓USM至少以給定間隔經由VLR"報告歸屬,,。 AuC存儲作為最近報告的散列鏈值的(j,XJ)。(或者,由於j將通過 j-N-SQN與N和SQN對應,所以N和SQN可用來推導j,參見下文)。 歸屬網絡始終知道什麼SQN與特定詢問-響應(AKA向量)結合使用。 因此,每當VLR向回報告特定XJ時,AuC可相應地更新它的值。下 一次,當VLR請求AKA參數時,AuC查找最近的(j,XJ)值。AuC產 生AKA向量,並且包括XJ和整數T-SQN-j。這個值T是VLR需要 把h應用於USM揭示的X—k值以便獲得XJ的次數。
應當注意,VLR可立即對不止一個AKA向量排序,並存儲它們 供以後使用。例如假定VLR對IV^1個向量排序。"惡意"VLR則可
能取這些向量的最後 一個(而不是如通常預期的取第 一個),並發送給
USIM。當USM揭示對應的X一n時,如果VLR也有權訪問K,則將 能夠產生對於M個連續鑑權是良好的克隆USIM。 一般來說,如果有 人能夠同時危及VLR和USIM的安全(以得到K),這種告誡存在。在 IP多々某體子系統(IMS)中,鑑權在歸屬網絡中進行。因此,解決方案在 那裡更適合(於ISM),因為"報告歸屬"功能基本上已經到位。 基於Di傷e-Hellman的解決方案
圖6是消息流程圖,說明採用公開密鑰分發系統而不是公開密鑰 加密的本發明的一個實施例中的USIM 11、 VLR 12與HE/AuC 13之 間的消息的流程。該解決方案可釆用標準Di伍e-Hellman方法來說明。 USIM 了解Diffie-Hellman保密密鑰(x),以及HE/AuC 了解Di傷e-Hdlman公開密鑰(力。注意,f可易於從x中計算,但是相反的則被 認為在計算上不可行。USIM向VLR發送鑑權請求14,並且在請求中 包含標識符、如IMSI。 VLR向HE/AuC轉發鑑權請求。當HE/AuC接 收到鑑權請求時,HE/AuC選擇隨機值y,並計算RAND-gy。 HE/AuC 則根據公開密鑰^來計算值R-g^,其中的值x是Diffie-Hellman私有 密鑰。HE/AuC還釆用K-KDF(R,...)來計算共享保密密鑰K,其中的 KDF是密鑰推導函數。HE/AuC則更新序列號SQNhe ,利用 fl(K,RANDllSQNIIAMF...)計算MAC,利用f2(K,RAND)計算XRES, 利用fi(K,RAND)計算Ck,利用f4(K,RAND)計算lk,利用f5(K,RAND) 計算AK,以及構造消息AUTN=SQN XOR AK||AMF||MAC,如3GPP TS 33.102中所述。在27, HE/AuC向VLR發送RAND、 XRES、 AUTN、 Ck和lk。在28, VLR向USM 11轉發RAND和包含SQNhe(保密保 護)、AMF和MAC的AUTN。
在接收到RAND和AUTN時,USIM 11確定R=RANDX,其中的 x是Diffie-Hellman私有密鑰。這個步驟可表示為 D(SK,RAND)=D(x,RAND)=RANDx。
USIM還採用密鑰推導函數來計算共享保密密鑰K=KDF(R,...)。
USIM則如3GPP TS 33.102中那樣繼續進行,以便預備響應RES。在 29, USIM向VLR發送RES,它確定從USM接收的RES是否等於從 HE/AuC接收的XRES。
在一個實施例中,關於公開密鑰或Diffie-Hellman的情況,保密信 息存儲在IM中並且受到密碼保護,使得它僅可通過初始化IM、例如 通過輸入適當的初始化信息來使用。保密信息可包括保密密鑰、公開 密鑰或者這兩者。適當的初始化信息可用於發起保密信息的生成,以 及例如輸出進一步導出到AuC的公開密鑰。這個初始化信息不是普通 用戶已知的,因此公開密鑰不是普通用戶已知的。其它適當的初始化 信息可在用戶執行需要使用私有密鑰的鑑權時使用。通過應用適當的 初始化信息,實現先前創建的私有密鑰的使用,或者信息發起根據預 先存儲的籽數的密鑰的重新創建。在後一種情況中,應當注意,在應 用初始化信息之前,沒有密鑰在行動裝置上可用。在國際專利申請 PCT/SE03/01660中公開了實現這些特徵的電子電路,通過引用結合到 本文中。
本領域的技術人員會理解,本申請所描述的創造性概念可在大範 圍的應用中進行修改和變更。因此,專利主題的範圍不應當局限於以 上所述的具體示範理論的任一個,而是由以下權利要求來定義。
權利要求
1.一種防止身份模塊(IM)的未經授權複製的方法,所述方法包括在所述IM中內部生成至少第一密鑰(K1)和不同的第二密鑰(K2),其中,所述生成步驟包括確保K1無法從K2中得出以及K2無法從K1中得出;以及把K2和標識符(ID)從所述IM導出到鑑權伺服器(AS),同時使K1在所述IM中內部保密。
2. 如權利要求l所述的方法,其特徵在於,K1和K2構成用於不 對稱密碼術的保密/公開密鑰對,以及所述方法還包括使所述公開密鑰 K2在所述AS中保密。
3. 如權利要求2所述的方法,其特徵在於,確保K2無法從Kl中得出的所述步驟包括擦除所迷IM中用於生成Kl和K2的內部信 臺o
4. 如權利要求l所述的方法,其特徵在於,所述導出步驟包括初 始化所述IM以在輸出端接收K2,用於導出到所述AS,同時使K1在 所述IM中內部保密。
5. 如權利要求4所述的方法,其特徵在於,所述初始化步驟包括 把初始化代碼應用於所述M的輸入埠 。
6. 如權利要求l所述的方法,其特徵在於,還包括鑑權階段,其 中,笫三方對所述IM進行鑑權,所述鑑權階段包括從所述IM向第三方提供發起鑑權的信息,所述信息至少包含所 述ID;把所述信息從第三方轉發給所述AS;由所述AS根據從笫三方接收的所述ID來檢索K2;由所述AS至少根據K2生成至少第一值(R)和第二值(X);把R和X從所述AS返回給第三方; 把R從第三方轉發給所述IM; 由所述IM至少根據Kl和R生成響應(RES); 把RES從所述IM返回給第三方;以及 由第三方根據X檢驗所述RES。
7. 如權利要求6所述的方法,其特徵在於 所述生成R的步驟包括採用K2對值V加密,其中,V包含用於得出X的信息;所述生成RES的步驟包括對R解密以及檢驗從R的解密中得出的 信息;以及所述由第三方根據X檢驗RES的步驟是RES等於X的比較。
8. 如權利要求1所述的方法,其特徵在於,Kl是用於公開密鑰 交換系統的第一秘密,以及K2是對應的公開參數。
9. 一種抗複製的身份才莫塊(IM),包括用於在所述M中內部生成至少第一密鑰(K1)和第二密鑰(K2)、同 時確保K1無法從K2中得出以及K2無法從K1中得出的部件;以及用於把K2和標識符(ID)從所述M導出到鑑權伺服器(AS)、同時 使K1在所述IM中內部保密的部件。
10. 如權利要求9所述的身份模塊,其特徵在於,所述M在包舍 電子商務應用的終端中實現,所述電子商務應用根據所述M執行支 付。
11. 一種鑑權伺服器,用於對訪問身份模塊(IM)進行鑑權,同時 防止所述訪問IM的未經授權複製,所述鑑權伺服器包括用於接收來自所述訪問IM的訪問請求的部件;用於採用所述鑑權伺服器中但不是所述訪問IM中存儲的信息生 成詢問的部件,其中,所述鑑;k伺服器中存儲的所述信息不足以生成 能夠作為有效IM進行響應的IM克隆;用於生成從有效IM預期的預期響應的部件;以及用於向所述訪問IM發送所述詢問的部件,其中,所述詢問對於 各個訪問嘗試改變。
12. —種用於為有效身份;溪塊(IM)提供對網絡的訪問、同時防止 由未經授權的IM克隆對網絡的訪問的系統,所述系統包括鑑權伺服器,用於從訪問IM接收訪問請求,釆用所述鑑權服務 器中但不是所述訪問IM中存儲的信息來生成詢問,生成從有效M預 期的預期響應,以及向所述訪問M發送所述詢問,其中,所述詢問 對於各個訪問嘗試改變,以及在所述鑑權伺服器中存儲或者由其生成 的所述信息不足以創建能夠作為有效IM進行響應的IM克隆;在所述訪問IM中用於接收所述詢問、以及根據所述詢問中的信 息和所述訪問IM中但不是所迷鑑權伺服器中存儲的信息來預備和發 送響應的部件;以及用於僅在所述訪問IM預備的響應等於所述鑑權伺服器生成的預 期響應時才為所述訪問IM提供^J"網絡的訪問的部件。
13. 如權利要求12所述的系統,其特徵在於,所述訪問IM還包 括用於確定從所述鑑權伺服器接收的序列號是否最新的部件。
14. 如權利要求12所述的系統,其特徵在於,還包括中間節點, 所述中間節點適合於從所述鑑^U良務器接收所述詢問和預期響應,把 所述詢問轉發給所述訪問M, /人所述訪問M接收所述響應,以及確 定所述訪問IM預備的所述響應是否等於所述鑑權伺服器生成的所述 預期響應。
15. —種為有效身份;f莫塊(IM)提供對網絡的訪問、同時防止由未 經授權的IM克隆對網絡的訪問的方法,其中,訪問IM向鑑權伺服器 發送訪問請求,所述方法包括在所述鑑權伺服器中 選擇隨機值y;利用RAND-gy計算隨機值(RAND);計算值R-g^,其中,x是所述訪問IM已知的Diffie-Hellmaii私有 密鑰,以及^是所述鑑權伺服器已知的; 利用K二KDF(R,...)計算共享保密密鑰(K),其中,KDF是密鑰推 導函數;向中間節點發送所述RAND和預期響應(XRES);以及 把所述RAND從所述中間節點轉發給所述訪問IM;以及 在所述訪問IM中利用R二RANDX來確定R,其中x是Di傷e-Hellman私有密鑰; 利用所述密鑰推導函數計算所述共享保密密鑰K^KDF(R,…); 利用RES-f2(K,RAND)計算響應(RES);以及 向所述中間節點發送所述RES;由所述中間節點確定從所述訪問IM接收的所述RES是否等於從 所述鑑權伺服器接收的所述XRES;以及僅在從所述訪問M接收的所述RES等於從所述鑑權伺服器接收 的所述XRES時才為所述訪問IM提供對網絡的訪問。
16.如權利要求15所述的方法,其特徵在於,還包括在所述鑑權伺服器中更新序列號(SQNhe);利用MAC-fl(K,RANDUSQNIIAMF...)計算加密鑰消息鑑權碼 (MAC);利用XRES-f2(K,RAND)計算所述XRES; 利用Ck-f3(K,RAND)計算密鑰Ck; 利用lk-f4(K,RAND)計算密鑰lk; 利用AK-f5(K,RAND)計算AK;利用AUTN=SQN XOR AK||AMF||MAC來構造鑑權消息AUTN;以及在所述中間節點中向所述訪問IM轉發所述AUTN以及所述RAND;以及 在所述訪問IM中釆用AK^f5(K,RAND)計算AK;以及從所述AUTN中提取和檢驗所述SQNhe、 AMF和MAC。
17. —種對訪問身份才莫塊(IM)進行鑑權、同時防止所述訪問IM的 未經授權複製的方法,所述方法包括在所述訪問IM中內部生成至少第一密鑰(K1)和不同的第二密鑰 (K2);以及把K2和標識符(ED)從所述訪問IM導出到鑑權伺服器(AS),同時 使Kl在所述訪問IM中內部保密;從所述訪問M向第三方發送至少包含所述ID的信息; 把所述信息從第三方轉發給所述AS; 由所述AS根據從第三方接收的所述ID來檢索K2; 由所述AS選擇隨機數R;由所述AS至少根據所述數R生成至少一個值(RAND);由所述AS至少根據所述數R生成密鑰K;由所述AS至少根據所述值(RAND)和所述密鑰K生成值(X);從所述AS向第三方返回所述值RAND和X;把所述值RAND從第三方轉發給所述訪問IM;由第三方從所述訪問M接收響應RES;以及由第三方根據X檢驗所述RES。
18. 如權利要求17所述的方法,其特徵在於,在從所述訪問IM 接收所述RES的所述步驟之前還包括以下步驟由所述訪問IM至少根據所述密鑰Kl和所述值(RAND)來計算所 述隨機數R;由所述訪問IM至少根據所述值R來計算所述密鑰K;以及 由所述訪問IM至少根據所述密鑰K和所述值RAND來計算所迷 響應RES。
19. 如權利要求18所述的方法,其特徵在於 所述訪問IM利用Rl = RANDK1來計算值Rl;所述訪問IM利用K-KDF(Rl,...)來計算密鑰K;以及 所述訪問IM利用RES-f2(K,RAND)來計算所述響應RES。
20. 如權利要求17所述的方法,其特徵在於,還包括由所述AS 利用所述隨機數R來確定隨機數R1=(K2)R;其中,所述AS根據RAND-^來生成所述值RAND; 其中,所述AS利用K^KDF(R1,…)來生成所述密鑰K,其中,KDF 是密鑰推導函數;以及其中,所述AS利用釆用函數f2的X-f2(K,RAND)來生成所述值X。
21. —種對訪問身份衝莫塊(IM)進行鑑權、同時防止利用具有消息 恢復的籤名方案的網絡中的所述訪問IM的未經授權複製的方法,所 述方法包括在所述訪問IM中內部生成/>開密鑰U—EK;在鑑權伺服器(AS)上登記.所述公開密鑰U_EK;從所述訪問IM向所述AS發送訪問請求,所述訪問請求至少包括 用於所述訪問IM的標識符;由所述AS檢索所述訪問IM的公開密鑰U—EK;由所述AS預備詢問CHAL,所述詢問包含隨機值(RAND)、序列 號(SEQ)和附加數據(DATA)中的至少一個;從所述AS向中間節點發送所述詢問和所述訪問IM的公開密鑰 U—EK;把所述詢問從所述中間節點轉發給所述訪問IM;由所述訪問IM預備所述詢問的數字籤名U—SIGN(CHAL);從所述訪問IM向所述中間節點發送所述數字籤名 U—SIGN(CHAL),作為對所述詢問的響應RES;以及由所述中間節點通過確定所述詢問(CHAL)是否等於所述公開密 鑰U—EK(RES)來檢驗所述響應。
22. 如權利要求21所述的方法,其特徵在於,所述詢問(CHAL)包含RAND以及SEQ。
23. 如權利要求22所述的方法,其特徵在於,所述詢問(CHAL) 還包含所述DATA部分,其中,所述DATA部分包括服務標識符。
24. —種對訪問身份模塊(IM)進行鑑權、同時防止利用具有附錄 的籤名的網絡中的所述訪問IM的未經授權複製的方法,所述方法包 括在所述訪問IM中內部生成公開密鑰U一EK;在鑑權伺服器(AS)上登記所述公開密鑰U_EK;從所述訪問IM向所述AS發送訪問請求,所述訪問請求至少包括 用於所述訪問IM的標識符;由所述AS檢索所述訪問IM的公開密鑰U_EK;由所述AS預備詢問CHAL,所述詢問包含隨機值(RAND)、序列 號(SEQ)和附加數據(DATA)中的至少 一個;從所述AS向中間節點發送所述詢問和所述訪問IM的/>開密鑰 U—EK;把所述詢問從所述中間節點轉發給所述訪問IM;由所述訪問M預備所述詢問的數字籤名U_SIGN(hash(CHAL》;從所迷訪問M向所述中間節點發送所迷數字籤名 U_SIGN(hash(CHAL)),作為對所述詢問的響應RES;以及由所述中間節點通過確定所述詢問的散列hash(CHAL)是否等於 所述公開密鑰U—EK(RES)來檢驗所述響應。
全文摘要
用於防止身份模塊IM(11)的未經授權複製並對有效IM進行鑑權的系統及方法。不同的信息存儲在IM和鑑權中心AuC(13),如果AuC中的信息被洩露,則它不足以克隆IM。IM生成第一密鑰K1和第二密鑰K2,同時確保K1無法從K2中得出,以及可選地K2無法從K1中得出。IM則把K2和標識符導出到AuC,同時使K1在IM中保密。在鑑權期間,IM向第三方、如VLR(12)提供包含標識符的信息。VLR把信息轉發給AuC,它根據標識符檢索K2,以及至少根據K2來生成第一值R和第二值X。AuC則向VLR返回R和X,VLR把R轉發給IM。IM則至少根據K1和R來生成響應RES,並把RES發送給VLR。VLR則根據X來檢驗RES。
文檔編號H04W12/06GK101116284SQ200580042851
公開日2008年1月30日 申請日期2005年12月16日 優先權日2004年12月17日
發明者M·納斯倫德, R·J·布洛姆 申請人:艾利森電話股份有限公司