專利名稱:生成用戶私鑰的方法、系統(tǒng)及用戶設(shè)備、密鑰生成中心的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種生成用戶私鑰的方法、系統(tǒng)、 用戶設(shè)備及密鑰生成中心。
背景技術(shù):
基于用戶身份的密碼機制(IBC, Identity-Based Cryptograph )是一種非對 稱密鑰機制,其使用用戶的身份標識(ID, identification)作為公鑰,通過一 定的數(shù)學(xué)算法,從用戶的ID衍生出私鑰。
由于在IBC中用戶公鑰就是用戶的ID,不需要對用戶ID和用戶公鑰進 行綁定,避免了針對公鑰有效性的一系列復(fù)雜操作,因此IBC漸漸成為現(xiàn)今 密鑰機制的重要發(fā)展方向。
在需要由用戶ID生成私鑰時,通常由用戶將自己的ID和希望使用的算 法的ID發(fā)送給密鑰生成中心(KGC, Key Generate Center), KGC生成私鑰 后,將該私鑰返回給用戶,其流程如圖l所示
步驟101 、建立傳輸層安全協(xié)議(TLS, Transport Layer Security Protocol)連接。
用戶設(shè)備(UE, User Equipment)和KGC之間使用TLS建立連接。
步驟102、 UE向KGC發(fā)送私鑰生成請求,該私鑰生成請求中攜帶有用 戶ID (UserID)和希望使用的的算法的ID。
步驟103、 KGC根據(jù)UE發(fā)送來的算法ID去選擇算法,使用該已經(jīng)選擇 的算法根據(jù)User ID計算出用戶私鑰。
步驟104、 KGC向UE返回應(yīng)答消息,該應(yīng)答消息可以是成功應(yīng)答,也 可以是失敗應(yīng)答,是成功應(yīng)答時攜帶有生成的用戶私鑰,是失敗應(yīng)答時攜帶 有失敗類型。
在步驟101中,KGC和UE需要進行相互間的認證才能建立安全的連接。
10而使用TLS建立連接,也就是UE和KGC首先通過TLS進行認證和加密密 鑰協(xié)商后才能建立安全連接,后續(xù)流程均在該安全連接中進行。
在對現(xiàn)有技術(shù)的研究和實踐過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)存在以下問題
目前,TLS使用的認證和密鑰協(xié)商通常需要進行基于證書的操作,通過 為用戶簽發(fā)證書將用戶ID和公鑰綁定,使用證書前,需向簽發(fā)證書的數(shù)字證 書認證中心(CA, Certificate Authority)驗證證書的有效性,該驗證包括驗 證CA簽名,驗證CA簽名的過程可能涉及到與證書鏈及CA的交叉認證;驗 證是否被加入證書撤回目錄(CRL, Certificate Revocation List);驗證是否在 有效期內(nèi)。這一系列的驗證操作需要耗費很多存儲和處理器資源,尤其是對 于移動終端有限的處理器能力以及移動網(wǎng)絡(luò)有限的傳輸速度,問題會更加突 出
進一步,由于IBC通常有加密、簽名和密鑰協(xié)商三種主要應(yīng)用,根據(jù)不 同的應(yīng)用,用戶私鑰的生成算法也會有所不同,而且,即使對于一種應(yīng)用, 也有多個不同算法,因此,UE在請求生成私鑰時,要向KGC指定密鑰生成 算法ID,以使KGC可以根據(jù)用戶指定的算法生成用戶私鑰。而普通用戶通 常不理解密鑰生成算法的含義,也很難理解應(yīng)當選擇用哪種算法生成希望的 私鑰,因此現(xiàn)有技術(shù)對于普通用戶來說使用難度非常的大。
發(fā)明內(nèi)容
本發(fā)明實施例要解決的技術(shù)問題是提供一種生成用戶私鑰的方法、系統(tǒng)、 用戶設(shè)備及密鑰生成中心,以優(yōu)化生成用戶私鑰的過程。
為解決上述技術(shù)問題,本發(fā)明實施例一方面,提供了一種生成用戶私鑰 的方法,所述方法包括
用戶設(shè)備通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元短期共享密鑰 及密鑰生成中心的標識生成用戶設(shè)備與密鑰生成中心之間的共享密鑰;
所述用戶設(shè)備發(fā)送私鑰生成請求消息至所述密鑰生成中心,以使所述密 鑰生成中心收到所述私鑰生成請求消息后向所述引導(dǎo)服務(wù)器功能單元發(fā)起認 證請求,并在認證通過后返回所述共享密鑰,所述密鑰生成中心根據(jù)所述私 鑰生成請求消息生成用戶私鑰,用所述共享密鑰加密后返回用戶設(shè)備;所述用戶設(shè)備接收所述加密的用戶私鑰并解密,獲得所述用戶私鑰。
另一方面,提供了一種生成用戶私鑰的方法,所述方法包括
密鑰生成中心接收用戶設(shè)備發(fā)送的私鑰生成請求消息;
所述密鑰生成中心根據(jù)所述私鑰生成請求消息向引導(dǎo)服務(wù)器功能單元發(fā) 送認證請求消息,以使所述引導(dǎo)服務(wù)器功能單元根據(jù)認證請求消息對所述密 鑰生成中心認證通過后返回認證響應(yīng)消息給所述密鑰生成中心,所述iU正響 應(yīng)消息包括共享密鑰;
所述密鑰生成中心接收所述認證響應(yīng)消息,根據(jù)所述私鑰生成請求消息 生成用戶私鑰,并使用所述共享密鑰加密后返回給用戶設(shè)備。
另一方面,提供了一種生成用戶私鑰的系統(tǒng),所述系統(tǒng)包括用戶設(shè)備、 密鑰生成中心、引導(dǎo)服務(wù)器功能單元;
所述用戶設(shè)備,用于通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元短 期共享密鑰及密鑰生成中心的標識獲得用戶設(shè)備與密鑰生成中心之間的共享 密鑰;發(fā)送私鑰生成請求消息至所述密鑰生成中心;接收所述密鑰生成中心 返回的加密的用戶私鑰并解密,獲得所述用戶私鑰;
所述密鑰生成中心,用于接收所述私鑰生成請求消息;根據(jù)所述共享密 鑰的標識向所述引導(dǎo)服務(wù)器功能單元發(fā)送認證請求消息;接收所述引導(dǎo)服務(wù) 器功能單元返回的包含共享密鑰的認證響應(yīng)消息;根據(jù)所述私鑰需求參數(shù)生 成用戶私鑰,并使用所述共享密鑰加密后返回給用戶設(shè)備;
所述引導(dǎo)服務(wù)器功能單元,用于接收所述認證請求消息,根據(jù)所述認證 請求消息攜帶的共享密鑰的標識獲得所述共享密鑰,并返回到密鑰生成中心。
另一方面,提供了一種用戶設(shè)備,所述用戶設(shè)備包括
共享密鑰單元,用于通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元之
間的短期共享密鑰及密鑰生成中心的標識生成用戶設(shè)備與密鑰生成中心之間
的共享密鑰;
私鑰生成請求單元,用于發(fā)送私鑰生成請求消息至所述密鑰生成中心, 以使所述密鑰生成中心收到所述私鑰生成請求消息后向所述引導(dǎo)服務(wù)器功能
12單元發(fā)起認證請求,并在認證通過后返回所述共享密鑰,所述密鑰生成中心 根據(jù)所述私鑰生成請求消息生成用戶私鑰,用所'述共享密鑰加密后返回用戶
設(shè)備;
解密單元,用于接收所述加密的用戶私鑰并解密,獲得所述用戶私鑰。
另一方面,提供了一種密鑰生成中心,所述密鑰生成中心包括
私鑰生成請求單元,用于接收用戶設(shè)備發(fā)送的私鑰生成請求消息;
認證請求單元,用于根據(jù)所述私鑰生成請求消息向引導(dǎo)服務(wù)器功能單元 發(fā)送認證請求消息,以使所述引導(dǎo)服務(wù)器功能單元根據(jù)認證請求消息對所述 密鑰生成中心認證通過后返回認證響應(yīng)消息給所述密鑰生成中心,所述認證 響應(yīng)消息包括共享密鑰;
認證響應(yīng)消息單元,用于接收所述認證響應(yīng)消息;
用戶私鑰單元,用于根據(jù)所述私鑰生成請求消息生成用戶私鑰,并使用 所述共享密鑰加密后返回給用戶設(shè)備。
由以上技術(shù)方案可以看出,本發(fā)明實施例由于使用GBA進行KGC和UE 之間的認證和安全保護,不再需要進行基于證書的一系列復(fù)雜操作,有效減 輕了系統(tǒng)的負擔,使KGC和UE之間的認證和用戶私鑰的安全傳輸對用戶終 端的存儲和處理時間消耗大量減少,尤其在UE為移動終端時,由于移動終端 的處理器能力以及移動網(wǎng)絡(luò)的傳輸速度都非常有限,效果更加明顯。
本發(fā)明實施例另一方面,提供了一種生成用戶私鑰的方法,所述方法包
括
發(fā)送私鑰生成請求消息至所述密鑰生成中心,所述私鑰生成請求消息攜 帶有私鑰應(yīng)用類型;以使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇合適 的算法,生成用戶私鑰,并返回給用戶設(shè)備;
接收所述密鑰生成中心返回的用戶私鑰。
另一方面,提供了一種生成用戶私鑰的方法,所述方法包括
接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰生成請求消息;
根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并將所述用戶私鑰向所述用戶設(shè)備發(fā)送。
另一方面,提供了一種生成用戶私鑰的系統(tǒng),所述系統(tǒng)包括
用戶設(shè)備,用于發(fā)送私鑰生成請求消息,所述私鑰生成請求消息攜帶有
私鑰應(yīng)用類型;接收用戶私鑰;
密鑰生成中心,用于接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰生成 請求消息;根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并向所 述用戶私鑰給所述用戶設(shè)備返回。
另一方面,提供了一種用戶設(shè)備,所述用戶設(shè)備包括
私鑰生成請求單元,用于發(fā)送私鑰生成請求消息至所述密鑰生成中心, 所述私鑰生成請求消息攜帶有私鑰應(yīng)用類型;以使所述密鑰生成中心根據(jù)所 述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并返回給用戶設(shè)備;
接收單元,用于接收所述密鑰生成中心返回的用戶私鑰。
另一方面,提供了一種密鑰生成中心,所述密鑰生成中心包括
私鑰生成請求單元,用于接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰 生成請求消息;
用戶私鑰單元,用于根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶 私鑰,并向所述用戶私鑰給所述用戶設(shè)備返回。
由以上技術(shù)方案可以看出,在本發(fā)明實施例中,用戶只需指定私鑰應(yīng)用 類型,KGC即可選擇符合的算法生成私鑰,而私鑰應(yīng)用類型對于普通用戶來 說比算法ID更容易理解,也更容易選擇,降低了普通用戶的使用難度
圖1為現(xiàn)有的生成用戶私鑰的流程圖; 圖2為GBA的構(gòu)架示意圖3為本發(fā)明實施例提供的生成用戶私鑰的方法實施例一流程圖4為本發(fā)明實施例提供的生成用戶私鑰的系統(tǒng)實施例一結(jié)構(gòu)示意圖5為本發(fā)明實施例提供的用戶設(shè)備實施例一結(jié)構(gòu)14圖6為本發(fā)明實施例提供的密鑰生成中心實施例一結(jié)構(gòu)圖; 圖7為本發(fā)明實施例提供的生成用戶私鑰的方法實施例二流程圖; 圖8為本發(fā)明實施例提供的生成用戶私鑰的系統(tǒng)實施例二結(jié)構(gòu)示意圖。
具體實施例方式
本發(fā)明實施例提供了一種生成用戶私鑰的方法、系統(tǒng)、用戶設(shè)備及密鑰 生成中心,優(yōu)化了 IBC中生成用戶私鑰的過程。
為了使IBC中生成用戶私鑰的過程不需要依賴證書,簡化生成用戶私鑰 的流程,本發(fā)明實施例使用了通用引導(dǎo)架構(gòu)(GBA, General Bootstrap Architecture)進行KGC和UE之間的認證和安全保護,GBA是一種由3GPP (3rd Generation Partnership Project,第三代合作伙伴計劃)制定的業(yè)務(wù)通用 鑒權(quán)架構(gòu),GBA的常見構(gòu)架如圖2所示,其具體包括
歸屬用戶系統(tǒng)(HSS, Home Subscriber System) 201, 3GPP中統(tǒng)一維護 用戶訂購信息的系統(tǒng),為UE203的歸屬用戶服務(wù)器,其中保存了用戶的GBA 用戶安全參數(shù)集(GUSS, GBAUser Security Settings )。所述GUSS包括網(wǎng)絡(luò) 接入的基本認證信息如用戶根密鑰,也包括特定于應(yīng)用的用戶安全相關(guān)的信 息如用戶安全參數(shù)集(USS, User Security Settings )。
引導(dǎo)服務(wù)器功能單元(BSF, Bootstrapping Server Function) 202,其與UE 203基于認證和密鑰協(xié)商(AKA, Authentication and Key Agreement)協(xié)議進 行相互iU正,并產(chǎn)生BSF 202和UE 203之間的短期共享密鑰和該短期共享密 銅的才示i只(B-TID, Bootstrapping Transaction identifier Bootstrapping )。該"i人i正 過程一般發(fā)生在UE開機接入網(wǎng)絡(luò)時,或者短期共享密鑰過期需重新生成時。
網(wǎng)絡(luò)應(yīng)用服務(wù)器(NAF, Network Application Function) 204,代表網(wǎng)絡(luò)中 的任何業(yè)務(wù)提供者,如在本實施例中即可體現(xiàn)為KGC。
BSF 202和HSS 201 —般都位于同 一運營商的核心網(wǎng)絡(luò)中。
當UE 203和NAF 204之間交換的應(yīng)用數(shù)據(jù)需要進行保護時,所使用的密 鑰即短期共享密鑰由UE和BSF通過AKA才幾制產(chǎn)生。
本發(fā)明實施例提供的生成用戶私鑰的方法實施例一流程如圖3所示
15步驟301 、UE和引導(dǎo)服務(wù)器功能單元(BSF, Bootstrapping Server Function) 相互認證并生成密鑰。
在本步驟中,UE和BSF通過AKA完成相互iU正,并得到UE和BSF的 短期共享密鑰和該短期共享密鑰的標識,該短期共享密鑰可以被記作Ks, Ks 的標識B-TID的常見示例如下
base64encode(RAND)@BSF_servers_domain—name
B-TID可以唯一標識一個Ks,因為對于每個Ks, BSF都為其生成不同的 隨機數(shù),在上文所述示例中,該隨機數(shù)可以被記RAND。上文所述示例中的 "BSF_servers_domain_name,,為BSF的標識, 一般為BSF的完全資格域名 (FQDN, Full Qualified Domain Name )。
本步驟一般發(fā)生在UE開機接入網(wǎng)絡(luò)時,或者短期共享密鑰Ks已過期需 重新生成時。
步驟302、 UE通過Ks和KGC的標識NAF—ID,計算得到UE與KGC之 間的共享密鑰(Ks—NAF)。
在本實施例中,NAF由KGC擔任,因此,UE可以通過Ks和KGC的標 識NAF—ID計算得到UE和NAF之間的共享密鑰Ks—NAF。
NAF_ID為NAF的標識, 一般為其完全資格域名FQDN,本實施例中即 為密鑰生成中心KGC的完全資格域名FQDN。
步驟303、 UE發(fā)送私鑰生成請求消息給KGC。
該私鑰生成請求消息包含B-TID、用戶ID、私鑰需求參數(shù)以及該私鑰生 成i青求消息的消息鑒4又石馬(MAC, message authentication code)值。
該私鑰生成請求消息的MAC值是UE以Ks_NAF為密鑰計算獲得的, KGC收到該消息后可以通過驗證MAC值,來驗證用戶ID和私鑰需求參數(shù)是 否^皮篡改過。
由于IBC通常有加密、簽名和密鑰協(xié)商三種主要類型的應(yīng)用,根據(jù)不同 的應(yīng)用,用戶私鑰生成時使用的算法也會有所不同。而且,即使對于同一類 型的應(yīng)用,也有多個不同的算法,因此,UE在請求生成私鑰時,應(yīng)向KGC提供私鑰用途相關(guān)信息,以使KGC可以根據(jù)UE的需求選擇生成私鑰所使用 的算法。私鑰需求參數(shù)即為UE制定的對私鑰的需求佶息,攜帶有私鑰用途等 信息。
本實施例提供了以下兩種私鑰需求參數(shù)的實現(xiàn)方式
第一種、在私鑰需求參數(shù)中指定私鑰應(yīng)用類型,使KGC可以根據(jù)該私鑰 應(yīng)用類型選擇合適的算法為用戶生成私鑰。
私鑰應(yīng)用類型包括加密、簽名和密鑰協(xié)商,舉例來說,若用戶指定私鑰 應(yīng)用類型為加密,則KGC就可以選擇可以生成加密用私鑰的算法為用戶生成 私鑰。
對于普通用戶來說指定私鑰應(yīng)用類型將更容易理解,也便于用戶選擇, 降低了用戶使用的難度,因為相對于現(xiàn)有技術(shù)中讓用戶在私鑰需求參數(shù)中指 定密鑰生成算法,KGC直接按照該算法生成私鑰來說,普通用戶更容易理解 私鑰的應(yīng)用類型,因為用戶通常不理解密鑰生成所使用的算法的含義,也就 很難選《^用哪種算法生成希望的私鑰。
第二種、在私鑰需求參數(shù)中指定強度要求,使KGC可以根據(jù)該強度要求 決定生成的密鑰長度。
對于同一種算法,安全強度的不同,其生成的私鑰長度也會不同,所以 本發(fā)明實施例提供了在私鑰需求參數(shù)中指定強度要求的實施方式,可以在私 鑰需求參數(shù)中指定強度要求,使KGC可以根據(jù)該強度要求決定生成的密鑰的 長度。
在用戶了解算法的含義時,本方面實施例也可以在私鑰需求參數(shù)中加入 現(xiàn)有技術(shù)提供的方法一起使用,如第二種方法可以和第一種方法或現(xiàn)有技術(shù) 提供的方法一起使用,即在私鑰需求參數(shù)中指定密鑰生成算法或私鑰應(yīng)用類 型的同時,在私鑰需求參數(shù)中指定強度要求,滿足用戶對密鑰安全強度的需 求。
UE和KGC之間的交互信息可以通過超文本傳輸協(xié)議(HTTP, Hypertext Transfer Protocol)承載,本步驟中私鑰生成請求消息可以是可擴展標記語言 (XML, Extensible Markup Language)格式,也可以是文本格式的,下面以
17XML格式為例進行說明
<ibc:request xmlns:ibc=" *******"> <ibc:header>
<ibc:client version="clientID7> </ibc:header> <ibc:body〉 <ibc:keyRequest>
<ibc :requirement> <ibc:keyusage> <oid>usageOID</oid> </ibc:keyusage>
</ibc :requirement〉
<ibc:id>
ibcldentitylnfo
</ibc:id> </ibc:keyRequest> </ibc:body> </ibc:request>
其中,<ibc:request xmlns:ibc="*******">中"xmlns"為命名空間; 〈ibc:requirement〉為用戶私鑰需求參數(shù);<oid>usageOID</oid> 〃usageOID為私 鑰用途,如果其值等于SignOID,表示用于簽名;等于EncrypOID,則表示加 密;〈ibc:id〉為用戶ID; ibcldentitylnfo為用戶的身份信息。
步驟304、 KGC向BSF發(fā)送認證請求消息。
KGC收到私鑰生成請求消息后,要向BSF請求B-TID對應(yīng)的共享密鑰, 也即在步驟301中生成的短期共享密鑰Ks。 KGC通過B-TID可以知道BSF
18的地址FQDN, KGC通過BSF的地址FQDN向BSF發(fā)送認證請求消息。
該認證請求消息包含B-TID, NAF—ID, KGC—USS( User Security Settings, 用戶安全參數(shù)集)請求。其中NAFJD為KGC的標識, 一般為KGC的FQDN; B-TID為步驟303中UE發(fā)送過來的Ks標識;KGCJJSS請求用于向BSF請 求特定于該KGC的用戶USS參數(shù),KGC—USS請求是一個可選的參數(shù),可以 有也可以沒有。
USS是用戶的特定于KGC的安全參數(shù),通常保存于BSF上,KGC在處 理UE的應(yīng)用請求時可能會用到。如果需要用到,則KGC在發(fā)給BSF的認證 請求中帶上KGCJJSS請求,如果BSF本地沒有最新的該用戶的GBA用戶安 全參數(shù)集(GUSS, GBA User Security Settings ),貝'J BSF向HSS獲取相應(yīng)的 GUSS并在認證KGC通過后返回給KGC。
步驟305、在認證請求消息攜帶有KGCJJSS請求,且BSF本地沒有最 新的該用戶的GUSS時,發(fā)送獲取GUSS消息至HSS。
BSF收到KGC發(fā)送的認證請求消息,如果該請求中包含KGC—USS請求, BSF首先通過本地存^fj者的GUSS中的時間戳(timestamp)判斷本地4諸存的 GUSS是否超過有效期。本地存儲的GUSS可能是上次進行AKA或GBA過 程時向HSS獲取的,如果其超過有效期,或者本地沒有保存該用戶的GUSS, 則進行步驟305發(fā)送獲取GUSS消息至HSS,向HSS請求最新的GUSS;如 果本地保存有該用戶的GUSS,且未超期,則不需要進行步驟305, BSF在認 證KGC通過后將該用戶的KGCJJSS返回給KGC。
步驟306、 HSS收到獲取GUSS消息的并對KGC認證通過后,返回GUSS 給BSF。
其中GUSS可以以XML格式表示,現(xiàn)舉例如下 <guss id="358500004836551@ims.mnc050.mcc358.3gppnetwork.org"> 〃其中id為用戶標識 <bsflnfo>
<lifeTime>86400</lifeTime> 〃表示該USS的有效期限,以秒為單位
</bsflnfo>
<ussList> 〃可以包含多個USS,不同的USS以id表示
<uss id="l" type="n"> 〃type表示該USS是KGC特定的,n為具體數(shù)字 <uids>
<uid>tel:358504836551</uid> 〃用戶ID ... 〃可以有多個用戶ID,可以是用戶在業(yè)務(wù)中使用的ID </uids>
<flags>〃該部分為USS公共部分,已經(jīng)定義
<flag>l</flag> //表示需要對用戶做鑒權(quán)(flag^)才能提供服務(wù)
</flags〉
<extension>
<ibcusage> 〃表示關(guān)于ibc應(yīng)用類型的用戶授權(quán) <ibcencrypt>l</ibcencrypt> 〃力口密應(yīng)用#皮4受4又 </ibcusage>
... 〃可以定義其他擴展,如算法ID和安全強度
</extension>
</uss>
</ussList> </guss>
步驟307、 BSF根據(jù)KGC的標識NAF—ID和B-TID對應(yīng)的Ks按規(guī)定算 法計算得到Ks_NAF。如果步驟304的認證請求消息攜帶有KGC—USS請求, 則BSF從GUSS中提取KGC特定的安全參數(shù)USS,所述安全參數(shù)USS通常
20包括用戶獲得授權(quán)的私鑰生成類型,其還可以包括私鑰強度參數(shù)和私鑰生成 算法參數(shù)等。 '
該所述授權(quán)的私鑰生成類型一般是用戶在申請開通KGC業(yè)務(wù)時,根據(jù)用 戶的實際需求和/或付費類型進行選擇的,之后作為用戶在使用KGC業(yè)務(wù)時的 一項參數(shù)保存在GUSS中。如用戶被授權(quán)生成用于加密的私鑰,或被授權(quán)生 成用于加密和簽名的私鑰,KGC在為用戶生成私鑰時,檢查該類型參數(shù),判 斷用戶是否被授權(quán)生成加密或加密和簽名類型的私鑰。
在進行步驟305、 306、 307之前,BSF需要對KGC進行認證,以確認 KGC有權(quán)限獲得BSF的這些服務(wù)。
步驟308、 BSF返回認證響應(yīng)消息給KGC,該認證響應(yīng)消息包含的數(shù)據(jù) 有Ks—NAF,在認證請求消息攜帶有KGCJUSS請求時,還包含有KGC特定 的USS。
此時,KGC獲得Ks—NAF,該Ks_NAF與步驟301中UE獲得的相同, 為UE和KGC之間的共享密鑰。
步驟309、 KGC選擇算法生成私鑰。
KGC使用Ks—NAF驗證私鑰生成請求消息中的MAC值,驗證通過,則 i兌明UE的私鑰生成i青求消息未凈皮篡改。
若步驟303發(fā)送的私鑰生成請求消息中的私鑰需求參數(shù)指定了密鑰生成 算法,則在本步驟中比對私鑰生成請求消息中攜帶的算法ID是否在USS包含 的算法ID中,判斷客戶端是否被授權(quán)申請其指定的私鑰類型,若在USS包含 的算法ID中被授權(quán),則使用用戶指定的算法生成用戶私鑰;若不在USS包含 的算法ID中即未被授權(quán),則用戶私鑰生成失敗。若私鑰需求參數(shù)中同時指定 了強度要求,則還需判斷生成的用戶私鑰是否滿足安全強度要求,若不滿足, 則用戶私鑰生成失敗。
若步驟303發(fā)送的私鑰生成請求消息中的私鑰需求參數(shù)指定了私鑰應(yīng)用 類型,則直接檢查USS中的用戶授權(quán)私鑰類型是否包含該應(yīng)用類型,選擇符 合要求的算法生成用戶私鑰;若沒有符合要求的算法,則用戶私鑰生成失敗。 若私鑰需求參數(shù)中同時指定了強度要求,則在挑選私鑰生成算法時,還須考慮該算法是否符合安全強度要求,選擇即符合要求又符合安全強度要求的算
法生成用戶私鑰;若浚有符合要求的算法,則用戶私鑰生成失敗。
在不需要判斷用戶指定的私鑰應(yīng)用類型是否被授權(quán)時,可以直接使用可 以生成用戶指定的私鑰應(yīng)用類型的算法生成私鑰。
步驟310、 KGC返回應(yīng)答消息到UE。
若KGC在步驟309中生成用戶私鑰成功,則使用Ks—NAF對生成的用戶 私鑰加密,將加密后的用戶私鑰攜帶在成功應(yīng)答消息中發(fā)送到UE,在該應(yīng)答 消息中還可以攜帶該用戶私鑰的有效期。用戶私鑰的結(jié)構(gòu)實例如下
<ibe:responseType value=" 1007〉 <ibe:body>
〈ibe:privateKey withEnciypted=GBA> 〃用GBA協(xié)商密鑰加
密的用戶私鑰
encryptedPrivateKey 〃Base64編碼的加密的私鑰數(shù)據(jù)
</ibe:privateKey>
</ibe:body>
</ibe:response>
其中,encryptedPrivateKey為加密后的用戶私鑰數(shù)據(jù),用戶私鑰數(shù)據(jù)為一 個結(jié)構(gòu),該結(jié)構(gòu)可定義如下
IBEPrivateKeyReply ::= SEQUENCE {
pkgldentity IBCIdentitylnfo, 〃用戶標識ID
pgkAlgorithmOBJECT IDENTIFIER 〃生成私鑰的算法標識
pkgKeyData OCTET STRING 〃私鑰
pkgOptions SEQUENCE OF Extensions 其他參數(shù).UE收到該成功應(yīng)答消息后,提取該消息中加密后的用戶私鑰數(shù)據(jù),使用 Ks—NAF對加密后的用戶私鑰解密,即可獲得用戶私鑰。若該應(yīng)答消息中攜帶 有該用戶私鑰的有效期,此時也可一并獲得。
若KGC在步驟309中生成用戶私鑰失敗,則返回失敗應(yīng)答消息到UE, 并在該失敗應(yīng)答消息中攜帶失敗原因。
舉例來說,若原因是用戶未被授權(quán)獲得其所請求的私鑰類型,則響應(yīng)消 息如下
<ibe:response xmlns:ibc="***">
〈ibe:responseType value="3057> 〃響應(yīng)碼305表示用戶無權(quán)限申
請該類型私鑰
<ibe:body>
<ibe:permission> userPermissionType〃可選的,包含用戶被授權(quán)的私鑰類型 </ibe:permission> </ibe:body> </ibe:response>
以上即為對本發(fā)明實施例提供的生成用戶私鑰的方法實施例的詳細描 述,在本發(fā)明實施例提供的生成用戶私鑰的方法實施例中,由于使用GBA進 行KGC和UE之間的認證和安全保護,不再需要進行基于證書的一系列復(fù)雜 操作,有效減輕了系統(tǒng)的負擔,使KGC和UE之間的認證和用戶私鑰的安全 傳輸對用戶終端的存儲和處理時間消耗大量減少,尤其對于UE為移動終端的 情況,由于移動終端的處理器能力以及移動網(wǎng)絡(luò)的傳輸速度都非常有限,效 果更加明顯。
進一步的,針對現(xiàn)有技術(shù)中,需要用戶指定用戶非常難以理解的密鑰生 成算法,而給用戶使用帶來的困難,本發(fā)明實施例提供的生成用戶私鑰的方 法實施例,提供了在私鑰需求參數(shù)中指定私鑰應(yīng)用類型的技術(shù)方案,指定私 鑰應(yīng)用類型,對于普通用戶來說將更容易理解,便于用戶選擇,降低了用戶使用的難度。并且采用該方案后,KGC可以根據(jù)用戶授權(quán)情況靈活控制私鑰 生成,這樣當有新的算法被KGC采用后,不需要對協(xié)議消息做任何改變,只 需在KGC內(nèi)部增加對新算法的支持即可,從而使協(xié)議不受算法的影響,具有 更好的實用性。本發(fā)明實施例提供的生成用戶私鑰的方法實施例,還提供了 在私鑰需求參數(shù)中指定強度要求的技術(shù)方案,使KGC可以在生成私鑰時參考 用戶對私鑰的安全強度要求來生成私鑰,提高了用戶滿意度,及用戶對安全 性的需求。
更進一步的,現(xiàn)有技術(shù)中,用戶的安全參數(shù)和用戶權(quán)限參數(shù)均由KGC獨 立管理,而同一個用戶可能分屬于不同的KGC,造成相同的數(shù)據(jù)被重復(fù)保存, 且管理也較為復(fù)雜,本發(fā)明實施例提供的生成用戶私鑰的方法實施例,提供 了用戶的安全參數(shù)由HSS以USS的方式統(tǒng)一管理的技術(shù)方案,從而避免由 KGC獨立管理帶來的重復(fù)建設(shè),管理復(fù)雜的問題,使KGC很好的融合到3GPP 網(wǎng)絡(luò)下。
本發(fā)明實施例提供的生成用戶私鑰的系統(tǒng)實施例一如圖4所示,包括 用戶設(shè)備403、密鑰生成中心404、引導(dǎo)服務(wù)器功能單元402、和歸屬用戶系 統(tǒng)401。
其中用戶設(shè)備403,用于通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元 短期共享密鑰及密鑰生成中心的標識獲得用戶設(shè)備與密鑰生成中心之間的共 享密鑰;發(fā)送私鑰生成請求消息至所述密鑰生成中心404;接收所述密鑰生成 中心404返回的加密的用戶私鑰并解密,獲得所述用戶私鑰。
密鑰生成中心404,用于接收所述私鑰生成請求消息;根據(jù)所述共享密鑰 的標識向所述引導(dǎo)服務(wù)器功能單元402發(fā)送認證請求消息;接收所述引導(dǎo)服 務(wù)器功能單元402返回的包含共享密鑰的認證響應(yīng)消息;根據(jù)所述私鑰需求 參數(shù)生成用戶私鑰,并使用所述共享密鑰加密后返回給用戶設(shè)備403。
所述引導(dǎo)服務(wù)器功能單元402,用于接收所述認證請求消息,根據(jù)所述認 證請求消息攜帶的共享密鑰的標識獲得所述共享密鑰,并返回到密鑰生成中 心404。
歸屬用戶系統(tǒng)401,用于保存用戶的GUSS。本發(fā)明實施例提供的生成用戶私鑰的系統(tǒng)實施例一的工作方式與本發(fā)明 實施例提供的生成用戶私鑰的方法基本一致,在此不再重復(fù)描速。
本發(fā)明實施例提供的用戶設(shè)備實施例一結(jié)構(gòu)如圖5所示,用戶設(shè)備500 包括
共享密鑰單元550,用于通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元 之間的短期共享密鑰及密鑰生成中心的標識生成用戶設(shè)備與密鑰生成中心之 間的共享密鑰;
私鑰生成請求單元530,用于發(fā)送私鑰生成請求消息至所述密鑰生成中 心,以使所述密鑰生成中心收到所述私鑰生成請求消息后向所述引導(dǎo)服務(wù)器 功能單元發(fā)起認證請求,并在認證通過后返回所述共享密鑰,所述密鑰生成 中心根據(jù)所述私鑰生成請求消息生成用戶私鑰,用所述共享密鑰加密后返回 用戶設(shè)備;
解密單元560,用于接收所述加密的用戶私鑰并解密,獲得所述用戶私鑰。
短期共享密鑰標識單元540,用于在所述私鑰生成請求消息中攜帶所述短 期共享密鑰的標識;
私鑰需求參數(shù)單元510,用于在所述私鑰生成請求消息中攜帶私鑰需求參
數(shù);
消息鑒權(quán)碼單元520,用于在所述私鑰生成請求消息中攜帶使用所述用戶 設(shè)備與密鑰生成中心之間的共享密鑰生成的消息鑒權(quán)碼。
其中,私鑰需求參數(shù)單元510包括
私鑰應(yīng)用類型單元511,用于在所述私鑰需求參數(shù)中攜帶私鑰應(yīng)用類型, 使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇生成用戶私鑰的算法;
或密鑰生成算法單元512,用于在所述私鑰需求參數(shù)中攜帶密鑰生成算 法,使所述密鑰生成中心使用所述密鑰生成算法生成所述用戶私鑰。
或強度要求單元513,用于在所述私鑰需求參數(shù)中攜帶強度要求,使所述 密鑰生成中心根據(jù)所述強度要求決定生成所述用戶私鑰的長度。
本發(fā)明實施例提供的密鑰生成中心實施例一結(jié)構(gòu)如圖6所示,密鑰生成中心600包括
私鑰生成請求單元620,用于接收用戶設(shè)備發(fā)送的私鑰生成請求消息;
認證請求單元650,用于根據(jù)所述私鑰生成請求消息向引導(dǎo)服務(wù)器功能單 元發(fā)送認證請求消息,以使所述引導(dǎo)服務(wù)器功能單元根據(jù)認證請求消息對所 述密鑰生成中心認證通過后返回認證響應(yīng)消息給所述密鑰生成中心,所述認 寸正響應(yīng)消息包括共享密鑰;
認證響應(yīng)消息單元660,用于接收所述認證響應(yīng)消息;
用戶私鑰單元630,用于根據(jù)所述私鑰生成請求消息生成用戶私鑰,并使 用所述共享密鑰加密后返回給用戶設(shè)備。
驗證單元610,用于使用所述網(wǎng)絡(luò)服務(wù)器共享密鑰驗證所述私鑰生成請求 消息攜帶的消息鑒權(quán)碼。
用戶安全參數(shù)單元640,用于在所述認證請求消息中攜帶特定于所述密鑰 生成中心的用戶安全參數(shù);以使所述引導(dǎo)服務(wù)器功能單元在對所述密鑰生成 中心認證通過后,獲取所述特定于所述密鑰生成中心的用戶安全參數(shù),并攜 帶在認證響應(yīng)消息中返回給所述用戶私鑰單元,以使所述用戶私鑰單元根據(jù) 所述認證響應(yīng)消息中的用戶安全參數(shù)及所述私鑰需求參數(shù)生成用戶私鑰。
其中,用戶私鑰單元630又包括私鑰應(yīng)用類型單元,用于根據(jù)所述私鑰應(yīng)用類型選擇生成用戶私鑰的算
法;
或密鑰生成算法單元,用于使用所述密鑰生成算法生成所述用戶私鑰。
強度要求單元,用于根據(jù)所述私鑰需求參數(shù)攜帶的強度要求決定生成所 述用戶私鑰的長度。
本發(fā)明實施例提供的生成用戶私鑰的方法實施例二流程如圖7所示
步驟701 、 UE和KGC建立連接后,發(fā)送私鑰生成請求消息給KGC。
該私鑰生成請求消息攜帶有用戶ID、私鑰需求參數(shù)。
該私鑰需求參數(shù)攜帶有私鑰應(yīng)用類型,使KGC可以根據(jù)該類型選擇合適的算法為用戶生成私鑰。
私鑰應(yīng)用類型包括加密、簽名等等不同類型,舉例來說,若用戶指定 私鑰應(yīng)用類型為加密,則KGC就可以選^^可以生成加密用私鑰的算法為用戶 生成私鑰。
這是由于,在現(xiàn)有技術(shù)中,需要用戶指定密鑰生成算法ID,而普通用戶 通常不理解密鑰生成算法的含義,也很難理解應(yīng)當選擇用哪種算法生成希望 的私鑰,指定私鑰應(yīng)用類型,對于普通用戶來說將更容易理解,便于用戶選 擇,降低了用戶使用的難度。
在私鑰需求參數(shù)中還可以攜帶強度要求,使KGC可以根據(jù)該強度要求決 定生成的密鑰長度。
這是由于,對于同一種算法,根據(jù)安全強度的要求,其生成的私鑰長度 也會不同,所以本發(fā)明實施例提供了在私鑰需求參數(shù)中指定強度要求的實施 方式,可以在私鑰生成需求參數(shù)中指定強度要求,使KGC可以根據(jù)該強度要 求決定生成的密鑰長度。
UE和KGC之間的交互信息可以通過超文本傳輸協(xié)議(HTTP, Hypertext Transfer Protocol)承載,本步驟中私鑰生成請求消息可以是可擴展置標語言 (XML, Extensible Markup Language )格式,也可以是文本格式的,下面以 XML格式為例進行說明
<ibc :request xm lns: ibc=" ******* ">
<ibc:header>
<ibc:client version="clientID7〉 </ibc:header> <ibc:body> <ibc:keyRequest>
<ibc:requirement> <ibc:keyusage>
27<oid>usageOID</oid> </ibc :keyusage>
</ibc :requirement>
<ibc:id>
ibcldentitylnfo
</ibc:id> </ibc :key Request> </ibc:body〉 </ibc:request>
其中,〈ibc:request xmlns:ibc="*******">中 "xmlns"為命名空間; 〈ibc:requirement〉為用戶私鑰需求參數(shù);<oid>usageOID</oid> 〃usageOID為私 鑰用途,如果其值等于SignOID,表示用于簽名;等于EncrypOID,則表示加 密;〈ibc:id〉為用戶ID; ibcldentitylnfo為用戶的身份信息。
步驟702、 KGC根據(jù)私鑰生成請求消息中的用戶ID,獲取該用戶的私鑰 類型授權(quán)信息。
獲取用戶的私鑰類型授權(quán)信息是為了判斷用戶指定的私鑰應(yīng)用類型是否 被授權(quán),如果不需要判斷判斷用戶指定的私鑰應(yīng)用類型是否被授權(quán),則不需 要進行此步驟。
在KGC上保存有用戶的私鑰類型授權(quán)信息時,可以從KGC本地獲取, 在KGC上沒有保存用戶的私鑰類型授權(quán)信息時,可以從歸屬用戶系統(tǒng)(HSS, Home Subscriber System)獲取。步驟203、 KGC選擇算法生成私鑰。
在不需要判斷用戶指定的私鑰應(yīng)用類型是否被授權(quán)時,直接使用可以生 成用戶指定的私鑰應(yīng)用類型的算法生成私鑰。
在需要判斷用戶指定的私鑰應(yīng)用類型是否被授權(quán)時,檢查該用戶的私鑰 類型授權(quán)信息中是否包含用戶指定的私鑰應(yīng)用類型,選擇符合要求的算法生 成用戶私鑰;若沒有符合要求的算法,則用戶私鑰生成失敗。進一步,若私鑰需求參數(shù)中同時指定了強度要求,則在挑選私鑰生成算 法時,還須考慮該算法是否符合安全強度要求,選擇即符合要求又符合安全
強度要求的算法生成用戶私鑰;若沒有符合要求的算法,則用戶私鑰生成失敗。
步驟704 、 KGC返回應(yīng)答消息到UE 。
若KGC在步驟203中生成用戶私鑰成功,則將用戶私鑰攜帶在成功應(yīng)答 消息中發(fā)送到UE,在該應(yīng)答消息中還可以攜帶該用戶私鑰的有效期。
若KGC在步驟203中生成用戶私鑰失敗,則返回失敗應(yīng)答消息到UE, 并在該失敗應(yīng)答消息中攜帶失敗原因。
舉例來說,若原因是用戶未被授權(quán)獲得其所請求的私鑰類型,則響應(yīng)消 息如下
<ibe:response xmlns:ibc="***"〉
<ibe:responseType value="3057> 〃響應(yīng)碼305表示用戶無權(quán)限申
〃請該類型私鑰
<ibe:body>
<ibe:permission> userPermissionType〃可選的,包含用戶被授權(quán)的私鑰類型. </ibe:permission〉 </ibe:body> </ibe:response>
以上即為對本發(fā)明實施例提供的生成用戶私鑰的方法實施例的詳細描 述,針對現(xiàn)有技術(shù)中,需要用戶指定用戶非常難以理解的密鑰生成算法,而 給用戶使用帶來的困難,本發(fā)明實施例提供的生成用戶私鑰的方法實施例, 提供了在私鑰需求參數(shù)中指定私鑰應(yīng)用類型的技術(shù)方案,指定私鑰應(yīng)用類型, 對于普通用戶來說將更容易理解,便于用戶選擇,降低了用戶使用的難度。 并且采用該方案后,KGC可以根據(jù)用戶授權(quán)情況靈活控制私鑰生成,這樣當
29有新的算法被KGC采用后,不需要對協(xié)議消息做任何改變,只需在KGC內(nèi)
部增加對新算法的支持即可,從而使協(xié)議不受算法的影響,具有更好的實用 性。本發(fā)明實施例提供的生成用戶私鑰的方法實施例,還提供了在私鑰需求
參數(shù)中指定強度要求的技術(shù)方案,使KGC可以在生成私鑰時參考用戶對私鑰 的安全強度要求來生成私鑰,提高了用戶滿意度,及用戶對安全性的需求。
本發(fā)明實施例提供的生成用戶私鑰的系統(tǒng)實施例二結(jié)構(gòu)如圖8所示,包
括
用戶設(shè)備810,用于發(fā)送私鑰生成請求消息,所述私鑰生成請求消息攜帶 有私鑰應(yīng)用類型;接收用戶私鑰;
密鑰生成中心820,用于接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰生 成請求消息;根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并向 所述用戶私鑰給所述用戶設(shè)備返回。
本發(fā)明實施例提供的用戶設(shè)備實施例二結(jié)構(gòu)如圖8的所示用戶設(shè)備810, 包括
私鑰生成請求單元811,用于發(fā)送私鑰生成請求消息至所述密鑰生成中 心,所述私鑰生成請求消息攜帶有私鑰應(yīng)用類型;以使所述密鑰生成中心根 據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并返回給用戶設(shè)備;
接收單元812,用于接收所述密鑰生成中心返回的用戶私鑰。
強度要求單元813,用于在所述私鑰生成請求消息中攜帶強度要求,使所 述密鑰生成中心根據(jù)所述強度要求決定生成所述用戶私鑰的長度。
本發(fā)明實施例提供的密鑰生成中心實施例二包括
私鑰生成請求單元821,用于接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私 鑰生成請求消息;
用戶私鑰單元822,用于#4居所述私鑰應(yīng)用類型選4奪合適的算法,生成用 戶私鑰,并向所述用戶私鑰給所述用戶設(shè)備返回。
強度要求單元823,用于使所述用戶私鑰單元根據(jù)所述私鑰生成請求攜帶 的強度要求決定生成的所述用戶私鑰長度。
30其中,用戶私鑰單元822包括
生成單元,用于根據(jù)所述私鑰生成請求消息攜帶的用戶標識獲取該用戶 的私鑰類型授權(quán)信息,根據(jù)所述私鑰應(yīng)用類型從所述私鑰類型授權(quán)信息中選 擇合適的算法,生成用戶私鑰;
發(fā)送單元,用于將所述用戶私鑰向所述用戶設(shè)備發(fā)送。
本發(fā)明實施例提供的用戶設(shè)備、及本發(fā)明實施例提供的密鑰生成中心的 工作方式與本發(fā)明實施例提供的生成用戶私鑰的方法基本一致,在此不再重 復(fù)描述。
領(lǐng)i或晉通4支本人貝可以理解頭J見上迷頭施例萬^ 是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計算機 可讀存儲介質(zhì)中,該程序在執(zhí)行時,包括如下步驟
用戶設(shè)備通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元短期共享密鑰 及密鑰生成中心的標識生成用戶設(shè)備與密鑰生成中心之間的共享密鑰;
所述用戶設(shè)備發(fā)送私鑰生成請求消息至所述密鑰生成中心,以使所述密 鑰生成中心收到所述私鑰生成請求消息后向所述引導(dǎo)服務(wù)器功能單元發(fā)起認 證請求,并在認證通過后返回所述共享密鑰,所述密鑰生成中心根據(jù)所述私 鑰生成請求消息生成用戶私鑰,用所述共享密鑰加密后返回給用戶設(shè)備;
所述用戶設(shè)備接收所述加密的用戶私鑰并解密,獲得所述用戶私鑰。
或者包括
密鑰生成中心接收用戶設(shè)備發(fā)送的私鑰生成請求消息;
所述密鑰生成中心根據(jù)所述私鑰生成請求消息向引導(dǎo)服務(wù)器功能單元發(fā) 送認證請求消息,以使所述引導(dǎo)服務(wù)器功能單元根據(jù)認證請求消息對所述密 鑰生成中心認證通過后返回認證響應(yīng)消息給所述密鑰生成中心,所述認證響 應(yīng)消息包括共享密鑰;
所述密鑰生成中心接收所述認證響應(yīng)消息,根據(jù)所述私鑰生成請求消息 生成用戶私鑰,并使用所述共享密鑰加密后返回給用戶設(shè)備。
或者包括發(fā)送私鑰生成請求消息至所述密鑰生成中心,所述私鑰生成請求消息攜 帶有私鑰應(yīng)用類型;以使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇合適
的算法,生成用戶私鑰,并返回給用戶設(shè)備; 接收所述密鑰生成中心返回的用戶私鑰。 或者包括
接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰生成請求消息;
根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并將所述用戶 私鑰向所述用戶設(shè)備發(fā)送。
上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
以上對本發(fā)明所提供的一種生成用戶私鑰的方法、系統(tǒng)、及用戶設(shè)備、 密鑰生成中心進行了詳細介紹,本文中應(yīng)用了具體個例對本發(fā)明的原理及實
核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體 實施方式及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解 為對本發(fā)明的限制。
3權(quán)利要求
1、一種生成用戶私鑰的方法,其特征在于所述方法包括用戶設(shè)備通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元短期共享密鑰及密鑰生成中心的標識生成用戶設(shè)備與密鑰生成中心之間的共享密鑰;所述用戶設(shè)備發(fā)送私鑰生成請求消息至所述密鑰生成中心,以使所述密鑰生成中心收到所述私鑰生成請求消息后向所述引導(dǎo)服務(wù)器功能單元發(fā)起認證請求,并在認證通過后返回所述共享密鑰,所述密鑰生成中心根據(jù)所述私鑰生成請求消息生成用戶私鑰,用所述共享密鑰加密后返回給用戶設(shè)備;所述用戶設(shè)備接收所述加密的用戶私鑰并解密,獲得所述用戶私鑰。
2. 如權(quán)利要求1所述的生成用戶私鑰的方法,其特征在于所述私鑰生成請求消息攜帶有用戶標識、所述短期共享密鑰的標識、私鑰需求參數(shù)、以及所述請求消息鑒權(quán)碼;所述認證請求消息中攜帶有短期共享密鑰的標識和密鑰生成中心的標識,所述引導(dǎo)服務(wù)器功能單元根據(jù)所述認證請求消息對密鑰生成中心認證通過返回認證響應(yīng)消息,所述認證響應(yīng)消息攜帶有所述共享密鑰;所述密鑰生成中心根據(jù)所述共享密鑰驗證所述消息鑒權(quán)碼,驗證通過后,根據(jù)所述私鑰需求參數(shù)生成用戶私鑰,并使用所述共享密鑰加密后返回給用戶設(shè)備。
3. 如權(quán)利要求2所述的生成用戶私鑰的方法,其特征在于所述認證請求消息中進一步攜帶有特定于所述密鑰生成中心的用戶安全參數(shù);所述引導(dǎo)服務(wù)器功能單元在對所述密鑰生成中心認證通過后,獲取所述特定于所述密鑰生成中心的用戶安全參數(shù),并攜帶在認證響應(yīng)消息中返回給所述密鑰生成中心;所述密鑰生成中心根據(jù)所述認證響應(yīng)消息中的用戶安全參數(shù)及所述私鑰需求參數(shù)生成用戶私鑰。
4、 如權(quán)利要求1或2所述的生成用戶私鑰的方法,其特征在于所述私鑰需求參數(shù)包括私鑰應(yīng)用類型,以使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇生成用戶私鑰的算法;或密鑰生成算法,以使所述密鑰生成中心-使用所述密鑰生成算法生成所述用戶私鑰。
5、 如權(quán)利要求4所述的生成用戶私鑰的方法,其特征在于所述私鑰需求參數(shù)還包括強度要求,以使所述密鑰生成中心根據(jù)所述強度要求決定生成所述用戶私鑰的長度。
6、 如權(quán)利要求1或2所述的生成用戶私鑰的方法,其特征在于所述方法還包括接收所述密鑰生成中心返回的所述用戶私鑰有效期。
7、 一種生成用戶私鑰的方法,其特征在于所述方法包括密鑰生成中心接收用戶設(shè)備發(fā)送的私鑰生成請求消息;所述密鑰生成中心根據(jù)所述私鑰生成請求消息向引導(dǎo)服務(wù)器功能單元發(fā)送認證請求消息,以使所述引導(dǎo)服務(wù)器功能單元根據(jù)認證請求消息對所述密鑰生成中心認證通過后返回認證響應(yīng)消息給所述密鑰生成中心,所述認證響應(yīng)消息包括共享密鑰;所述密鑰生成中心接收所述認證響應(yīng)消息,根據(jù)所述私鑰生成請求消息生成用戶私鑰,并使用所述共享密鑰加密后返回給用戶設(shè)備。
8、 如權(quán)利要求7所述的生成用戶私鑰的方法,其特征在于所述私鑰生成請求消息攜帶有用戶標識、所述用戶設(shè)備與引導(dǎo)服務(wù)器功能單元之間的短期共享密鑰的標識、私鑰需求參數(shù)、以及消息鑒權(quán)碼;所述認證請求消息包含所述短期共享密鑰的標識和所述密鑰生成中心的標識,以使所述引導(dǎo)服務(wù)器功能單元根據(jù)所述短期共享密鑰的標識和所述密鑰生成中心的標識對所述密鑰生成中心進行認證并返回認證響應(yīng)消息;所述密鑰生成中心根據(jù)所述共享密鑰驗證所述消息鑒權(quán)碼,驗證通過后,根據(jù)所述私鑰需求參數(shù)生成用戶私鑰。 '
9、 如權(quán)利要求8所述的生成用戶私鑰的方法,其特征在于所述認證請求消息中進一步攜帶有特定于所述密鑰生成中心的用戶安全參數(shù);以使所述引導(dǎo)服務(wù)器功能單元在對所述密鑰生成中心認證通過后,獲取所述特定于所述密鑰生成中心的用戶安全參數(shù),并攜帶在認證響應(yīng)消息中返回給所述密鑰生成中心;所述密鑰生成中心根據(jù)所述認證響應(yīng)消息中的用戶安全參數(shù)及所述私鑰需求參數(shù)生成用戶私鑰。
10、 如權(quán)利要求8或9所述的生成用戶私鑰的方法,其特征在于所述私鑰需求參數(shù)包括私鑰應(yīng)用類型,以使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇生成用戶私鑰的算法;或密鑰生成算法,以使所述密鑰生成中心使用所述密鑰生成算法生成所述用戶私鑰。
11、 如權(quán)利要求IO所述的生成用戶私鑰的方法,其特征在于所述私鑰需求參數(shù)還包括強度要求,以使所述密鑰生成中心根據(jù)所述強度要求決定生成所述用戶私鑰的長度。
12、 一種生成用戶私鑰的系統(tǒng),其特征在于所述系統(tǒng)包括用戶設(shè)備、密鑰生成中心和引導(dǎo)服務(wù)器功能單元;所述用戶設(shè)備,用于通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元短期共享密鑰及密鑰生成中心的標識獲得用戶設(shè)備與密鑰生成中心之間的共享密鑰;發(fā)送私鑰生成請求消息至所述密鑰生成中心;接收所述密鑰生成中心返回的使用所述共享密鑰加密的用戶私鑰并解密,獲得所述用戶私鑰;所述密鑰生成中心,用于接收所述私鑰生成請求消息;根據(jù)所述私鑰生成請求消息向所述引導(dǎo)服務(wù)器功能單元發(fā)送認證請求消息;接收所述引導(dǎo)服務(wù)器功能單元返回的包含共享密鑰的認證響應(yīng)消息;根據(jù)所述私鑰生成請求消息生成用戶私鑰,并使用所述共享密'鑰加密后返回給用戶設(shè)備;所述引導(dǎo)服務(wù)器功能單元,用于接收所述認證請求消息,對所述密鑰生成中心認證通過后返回包含所述共享密鑰的認證響應(yīng)消息給密鑰生成中心。
13、 一種用戶設(shè)備,其特征在于所述用戶設(shè)備包括共享密鑰單元,用于通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元之間的短期共享密鑰及密鑰生成中心的標識生成用戶設(shè)備與密鑰生成中心之間的共享密鑰;私鑰生成請求單元,用于發(fā)送私鑰生成請求消息至所述密鑰生成中心,以使所述密鑰生成中心收到所述私鑰生成請求消息后向所述引導(dǎo)服務(wù)器功能單元發(fā)起認證請求,并在認證通過后返回所述共享密鑰,所述密鑰生成中心根據(jù)所述私鑰生成請求消息生成用戶私鑰,用所述共享密鑰加密后返回用戶設(shè)備;解密單元,用于接收所述加密的用戶私鑰并解密,獲得所述用戶私鑰。
14、 如權(quán)利要求13所述的用戶設(shè)備,其特征在于所述用戶設(shè)備還包括短期共享密鑰標識單元,用于在所述私鑰生成請求消息中攜帶所述短期共享密鑰的標識;私鑰需求參數(shù)單元,用于在所述私鑰生成請求消息中攜帶私鑰需求參數(shù);消息鑒權(quán)碼單元,用于在所述私鑰生成請求消息中攜帶使用所述用戶設(shè)備與密鑰生成中心之間的共享密鑰生成的消息鑒權(quán)碼。
15、 如權(quán)利要求14所述的用戶設(shè)備,其特征在于所述私鑰需求參數(shù)單元包括私鑰應(yīng)用類型單元,用于在所述私鑰需求參數(shù)中攜帶私鑰應(yīng)用類型,使所述密鑰生成中心4艮據(jù)所述私鑰應(yīng)用類型選擇生成用戶私鑰的算法;或密鑰生成算法單元,用于在所述私鑰需求參數(shù)中攜帶密鑰生成算法,使所述密鑰生成中心使用所述密鑰生成算法生成所述用戶私鑰。
16、 如權(quán)利要求15所述的用戶設(shè)備,其特征在于所述私鑰需求參數(shù)單元'還包括強度要求單元,用于在所述私鑰需求參數(shù)中攜帶強度要求,使所述密鑰生成中心根據(jù)所述強度要求決定生成所述用戶私鑰的長度。
17、 一種密鑰生成中心,其特征在于所述密鑰生成中心包括私鑰生成請求單元,用于接收用戶設(shè)備發(fā)送的私鑰生成請求消息;認證請求單元,用于根據(jù)所述私鑰生成請求消息向引導(dǎo)服務(wù)器功能單元發(fā)送認證請求消息,以使所述引導(dǎo)服務(wù)器功能單元根據(jù)認證請求消息對所述密鑰生成中心認證通過后返回認證響應(yīng)消息給所述密鑰生成中心,所述認證響應(yīng)消息包括共享密鑰;認證響應(yīng)消息單元,用于接收所述認證響應(yīng)消息;用戶私鑰單元,用于根據(jù)所述私鑰生成請求消息生成用戶私鑰,并使用所述共享密鑰加密后返回給用戶設(shè)備。
18、 如權(quán)利要求17所述的密鑰生成中心,其特征在于所述密鑰生成中心還包括驗證單元,用于使用所述共享密鑰驗證所述私鑰生成請求消息攜帶的消息鑒權(quán)碼,并在驗證通過后所述用戶私鑰單元根據(jù)所述私鑰生成請求消息生成用戶私鑰。
19、 如權(quán)利要求17所述的密鑰生成中心,其特征在于所述密鑰生成中心還包括用戶安全參數(shù)單元,用于在所述認證請求消息中攜帶特定于所述密鑰生成中心的用戶安全參數(shù);以使所述引導(dǎo)服務(wù)器功能單元在對所述密鑰生成中心認證通過后,獲取所述特定于所述密鑰生成中心的用戶安全參數(shù),并攜帶在認證響應(yīng)消息中返回給所述用戶私鑰單元,以使所述用戶私鑰單元根據(jù)所述認證響應(yīng)消息中的用戶安全參數(shù)及所述私鑰需求參數(shù)生成用戶私鑰。
20、 如權(quán)利要求19所述的密鑰生成中心,其特征在于所述用戶私鑰單元包括私鑰應(yīng)用類型單元,用于#4居所述私鑰應(yīng)用類型選^^生成用戶私鑰的算法;或密鑰生成算法單元,用于使用所述密鑰生成算法生成所述用戶私鑰。
21、 如權(quán)利要求20所述的密鑰生成中心,其特征在于所述用戶私鑰單元還包括強度要求單元,用于根據(jù)所述私鑰需求參數(shù)攜帶的強度要求決定生成所述用戶私鑰的長度。
22、 一種生成用戶私鑰的方法,其特征在于,所述方法包括發(fā)送私鑰生成請求消息至所述密鑰生成中心,所述私鑰生成請求消息攜帶有私鑰應(yīng)用類型;以使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并返回給用戶設(shè)備;接收所述密鑰生成中心返回的用戶私鑰。
23、 如權(quán)利要求22所述的生成用戶私鑰的方法,其特征在于,所述私鑰生成請求消息還包括強度要求,以使所述密鑰生成中心根據(jù)所述強度要求決定生成所述用戶私鑰的長度。
24、 如權(quán)利要求22或23所述的生成用戶私鑰的方法,其特征在于,所述方法還包括接收所述密鑰生成中心返回的所述用戶私鑰有效期。
25、 一種生成用戶私鑰的方法,其特征在于,所述方法包括接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰生成請求消息;根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并將所述用戶私鑰向所述用戶設(shè)備發(fā)送。
26、 如權(quán)利要求25所述的生成用戶私鑰的方法,其特征在于,所述根據(jù)所述私鑰應(yīng)用類型選擇合適的算法包括根據(jù)所述私鑰生成請求消息攜帶的用戶標識獲取該用戶的私鑰類型授權(quán)信息,根據(jù)所述私鑰應(yīng)用類型從所述私鑰類型授權(quán)信息中選擇合適的算法。
27、 如權(quán)利要求26所述的生成用戶私鑰的方法,其特征在于,所述方法還包括根據(jù)所述私鑰生成請求消息攜帶的強度要求決定生成的所述用戶私鑰長度。
28、 如^l利要求25、 26或27所述的生成用戶私鑰的方法,其特;f正在于,所述方法還包括發(fā)送所述用戶私鑰有效期至用戶設(shè)備。
29、 一種生成用戶私鑰的系統(tǒng),其特征在于,所述系統(tǒng)包括用戶設(shè)備,用于發(fā)送私鑰生成請求消息,所述私鑰生成請求消息攜帶有私鑰應(yīng)用類型;接收用戶私鑰;密鑰生成中心,用于接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰生成請求消息;根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并向所述用戶私鑰給所述用戶設(shè)備返回。
30、 一種用戶設(shè)備,其特征在于,所述用戶設(shè)備包括私鑰生成請求單元,用于發(fā)送私鑰生成請求消息至所述密鑰生成中心,所述私鑰生成請求消息攜帶有私鑰應(yīng)用類型;以使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并返回給用戶設(shè)備;接收單元,用于接收所述密鑰生成中心返回的用戶私鑰。
31、 如權(quán)利要求30所述的用戶設(shè)備,其特征在于,所述用戶設(shè)備還包括強度要求單元,用于在所述私鑰生成請求消息中攜帶強度要求,使所述密鑰生成中心根據(jù)所述強度要求決定生成所述用戶私鑰的長度。
32、 一種密鑰生成中心,其特征在于,所述密鑰生成中心包括私鑰生成請求單元,用于接收用戶設(shè)備發(fā)送的帶有私鑰應(yīng)用類型的私鑰生成請求消息;用戶私鑰單元,用于根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并向所述用戶私鑰給所述用戶設(shè)備返回。
33、 如權(quán)利要求32所述的密鑰生成中心,其特征在于,所述用戶私鑰單 元包括生成單元,用于根據(jù)所述私鑰生成請求消息攜帶的用戶標識獲取該用戶 的私鑰類型授權(quán)信息,根據(jù)所述私鑰應(yīng)用類型從所述私鑰類型授權(quán)信息中選 擇合適的算法,生成用戶私鑰;發(fā)送單元,用于將所述用戶私鑰向所述用戶設(shè)備發(fā)送。
34、 如權(quán)利要求33所述的密鑰生成中心,其特征在于,所述密鑰生成中 心還包括強度要求單元,用于使所述用戶私鑰單元根據(jù)所述私鑰生成請求攜帶的 強度要求決定生成的所述用戶私鑰長度。
全文摘要
本發(fā)明公開了一種生成用戶私鑰的方法,包括用戶設(shè)備通過預(yù)先生成的用戶設(shè)備和引導(dǎo)服務(wù)器功能單元短期共享密鑰及密鑰生成中心的標識生成用戶設(shè)備與密鑰生成中心之間的共享密鑰;所述用戶設(shè)備發(fā)送私鑰生成請求消息至所述密鑰生成中心;所述用戶設(shè)備接收所述加密的用戶私鑰并解密,獲得所述用戶私鑰。本發(fā)明還公開了另一種生成用戶私鑰的方法,包括發(fā)送私鑰生成請求消息至所述密鑰生成中心,所述私鑰生成請求消息攜帶有私鑰應(yīng)用類型;以使所述密鑰生成中心根據(jù)所述私鑰應(yīng)用類型選擇合適的算法,生成用戶私鑰,并返回給用戶設(shè)備;接收所述密鑰生成中心返回的用戶私鑰。本發(fā)明還公開了相應(yīng)的系統(tǒng)和設(shè)備。本發(fā)明可以有效優(yōu)化生成用戶私鑰的過程。
文檔編號H04L9/08GK101459505SQ200710199580
公開日2009年6月17日 申請日期2007年12月14日 優(yōu)先權(quán)日2007年12月14日
發(fā)明者高洪濤 申請人:華為技術(shù)有限公司