專利名稱:用戶鑒權(quán)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于在移動通信系統(tǒng)中的用戶鑒權(quán)的算法,尤其涉及用于用戶鑒權(quán)的鑒權(quán)響應(yīng)。
背景技術(shù):
移動通信系統(tǒng)一般涉及用戶在系統(tǒng)服務(wù)區(qū)內(nèi)漫游時能實現(xiàn)無線通信的任何電信系統(tǒng)。公眾陸地移動網(wǎng)PLMN就是移動通信系統(tǒng)的典型實例。
在移動通信系統(tǒng)中,移動臺和實際網(wǎng)絡(luò)通常借助無線電路徑通信。無線電路徑在物理上是開放的,這將造成安全風(fēng)險,因此用戶和運營商應(yīng)防止第三方的侵入,而不管侵入是不是非故意的。例如,禁止非法接入網(wǎng)絡(luò),這樣在移動臺向網(wǎng)絡(luò)注冊時網(wǎng)絡(luò)將鑒權(quán)移動臺。通過利用加密降低了被竊聽的風(fēng)險。
鑒權(quán)是一方根據(jù)協(xié)定程序鑒權(quán)另一方的程序。在泛-歐移動通信系統(tǒng)GSM(全球移動通信系統(tǒng))中,例如,用于鑒權(quán)的算法和用戶密鑰Ki均存儲于用戶識別模塊SIM和鑒權(quán)中心中用于鑒權(quán)。在GSM系統(tǒng)中,在鑒權(quán)中將使用的鑒權(quán)響應(yīng)SRES利用算法A3計算,而在加密通過無線電路徑發(fā)送的信息時使用的密鑰Ks利用算法A8計算。典型地,這些算法組合在一起以便在鑒權(quán)期間計算鑒權(quán)響應(yīng)SRES和加密密鑰Kc。算法A3和A8為運營商特定的、專用的而且通常是保密的。鑒權(quán)中心的隨機數(shù)生成器生成查詢RAND,該查詢在鑒權(quán)期間通過無線電路徑被發(fā)送到移動臺。查詢RAND和用戶密鑰Ki用于同時在鑒權(quán)中心和移動臺計算鑒權(quán)響應(yīng)SRES和加密密鑰Kc。在鑒權(quán)期間,移動臺發(fā)送由其計算的鑒權(quán)響應(yīng)SRES返回網(wǎng)絡(luò),在此它與鑒權(quán)中心計算的鑒權(quán)響應(yīng)相比較。如果響應(yīng)相同,則移動臺通過鑒權(quán),之后將在無線電路徑上發(fā)送的信息通常利用加密密鑰Kc加密。
與上述的鑒權(quán)程序有關(guān)的問題在于不可能進行運營商特定的定制。不能向不同運營商透露這些算法,例如不會同時給予運營商干擾另一運營商的鑒權(quán)系統(tǒng)的機會。因此,系統(tǒng)的安全性也無法得到保證。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種方法和實現(xiàn)該方法的裝置以消除上述問題。本發(fā)明的目的是由獨立權(quán)利要求公開的特征表征的方法、系統(tǒng)、鑒權(quán)中心以及用戶識別模塊實現(xiàn)的。本發(fā)明的優(yōu)選實施例在附屬權(quán)利要求中描述。
本發(fā)明基于這樣一種構(gòu)思,為運營商定義參數(shù),而且用單向函數(shù)從用戶密鑰Ki和運營商參數(shù)計算密碼信息。密碼信息和查詢(公眾信息)用于用單向函數(shù)計算至少一個鑒權(quán)響應(yīng),如果想要的話也可同時計算加密密鑰Kc。‘密鑰’是加密信息的通稱,即密碼。本發(fā)明的優(yōu)點在于它能實現(xiàn)鑒權(quán)的運營商特定的定制。另一優(yōu)點在于本發(fā)明的安全性并不基于保密算法而是基于密鑰,因此可以向運營商透露算法。
在本發(fā)明的優(yōu)選實施例中,根據(jù)用戶密鑰和運營商參數(shù)計算的一條密碼(或多條密碼)存儲于用戶識別模塊。本實施例的優(yōu)點在于在用戶識別模塊中很容易實現(xiàn)鑒權(quán)響應(yīng)的計算。當(dāng)使用預(yù)先計算的信息時鑒權(quán)還將變快。本實施例的另一優(yōu)點在于,即使包含在識別模塊中的信息能被解碼也無法推導(dǎo)出運營商參數(shù)。
下面借助優(yōu)先實施例參考附圖詳細(xì)描述本發(fā)明,其中圖1是GSM系統(tǒng)的網(wǎng)絡(luò)體系結(jié)構(gòu);圖2是根據(jù)本發(fā)明第一個優(yōu)選實施例的鑒權(quán)算法的流程圖;圖3是根據(jù)本發(fā)明第一個優(yōu)選實施例的信令;以及圖4是根據(jù)本發(fā)明第二個優(yōu)選實施例的鑒權(quán)算法的流程圖;具體實施方式
本發(fā)明可應(yīng)用于對用戶進行鑒權(quán)的任何電信系統(tǒng)。這包括GSM系統(tǒng),稱為GSM 2+的其下一代系統(tǒng),以及類似系統(tǒng),如PCS(個人通信系統(tǒng))和DCS 1800(1800MHz的數(shù)字蜂窩系統(tǒng))。本發(fā)明也可應(yīng)用于第三代移動通信系統(tǒng),如UMTS(通用移動電信系統(tǒng))和IS-41(暫定標(biāo)準(zhǔn))。下面以GSM系統(tǒng)為例描述本發(fā)明,但并不限制本發(fā)明為這種特定系統(tǒng)。
圖1是GSM系統(tǒng)的通用網(wǎng)絡(luò)體系結(jié)構(gòu),因為系統(tǒng)的具體結(jié)構(gòu)與本發(fā)明無關(guān)。
根據(jù)GSM系統(tǒng)1的網(wǎng)絡(luò)GSM的結(jié)構(gòu)由兩部分組成基站分系統(tǒng)BSS和網(wǎng)絡(luò)分系統(tǒng)NSS。BSS和移動臺MS通過無線電連接通信?;痉窒到y(tǒng)連接網(wǎng)絡(luò)分系統(tǒng)NSS的移動交換中心MSC。移動交換中心的作用是切換涉及至少一個移動臺MS的呼叫。某些移動交換中心與其他電信網(wǎng)絡(luò)連接,如PSTN(公眾交換電話網(wǎng)),而且包括交換功能,用于交換往返這些網(wǎng)絡(luò)的呼叫。這些移動交換中心稱為網(wǎng)關(guān)中心。
網(wǎng)絡(luò)分系統(tǒng)NSS包括兩種類型的數(shù)據(jù)庫。有關(guān)網(wǎng)絡(luò)的所有用戶的用戶信息永久或半永久地存儲于歸屬位置寄存器HLR,用戶信息與用戶的標(biāo)識符IMSI相聯(lián)系。另一類型的寄存器為來訪位置寄存器VLR。當(dāng)移動臺MS有效時(注冊到網(wǎng)絡(luò)而且能撥打或接聽呼叫),歸屬位置寄存器HLR中包含的有關(guān)移動臺MS的大部分用戶信息被加載(拷貝)到移動臺MS所處區(qū)域的移動交換中心MSC的來訪位置寄存器。實際上,移動交換中心MSC和來訪位置檢測器VLR是關(guān)于移動性管理、控制和信令的中心網(wǎng)絡(luò)單元。
網(wǎng)絡(luò)分系統(tǒng)也包括鑒權(quán)中心AuC。鑒權(quán)中心AuC典型地為用戶的歸屬位置檢測器HLR的一部分。鑒權(quán)中心AuC包括隨機數(shù)生成器(未示出)用于生成查詢,即隨機數(shù)參數(shù)RAND。鑒權(quán)中心還擁有存儲器,用于存儲有關(guān)用戶和鑒權(quán)算法的鑒權(quán)信息。根據(jù)本發(fā)明第一和第二個優(yōu)選實施例存儲的用戶的鑒權(quán)信息包括用戶密鑰Ki和運營商參數(shù)T。如果運營商有不只一個參數(shù),鑒權(quán)中心可通過存儲運營商參數(shù)或識別運營商參數(shù)的標(biāo)識符到用戶信息中組合用戶密鑰Ki與正確運營商的參數(shù)。鑒權(quán)中心優(yōu)選利用圖2、3和4所示的其中一種鑒權(quán)算法根據(jù)用戶密鑰、運營商參數(shù)以及隨機數(shù)計算鑒權(quán)響應(yīng)SRES和加密密鑰,并形成‘鑒權(quán)三元組’,即由隨機數(shù)RAND、鑒權(quán)響應(yīng)SRES和加密密鑰Kc組成的實體。運營商參數(shù)優(yōu)選為二元參數(shù),由運營商的標(biāo)識符和運營商的密碼組成。運營商參數(shù)不需要保密。運營商參數(shù)T將聯(lián)系圖2作詳細(xì)描述。
在此申請中,‘移動臺’MS一般是指由移動用戶和實際終端構(gòu)成的實體。終端可以是能在移動通信系統(tǒng)中通信的任何設(shè)備或幾種設(shè)備的組合,例如安裝有諾基亞生產(chǎn)的卡式電話以提供移動連接的多媒體計算機。根據(jù)與終端可拆卸連接的用戶識別模塊SIM可識別用戶。SIM是一種插入移動臺的智能卡,包括有關(guān)用戶識別的信息,如國際移動用戶身份IMSI,以及用于鑒權(quán)用戶的裝置。換言之,SIM包括鑒權(quán)所需的算法和密碼。典型地,SIM還包括位置區(qū)域的臨時移動用戶身份TMSI,借助TMSI可避免通過無線電路徑發(fā)送IMSI。
實現(xiàn)根據(jù)本發(fā)明的功能的電信系統(tǒng)、鑒權(quán)中心和移動臺除了包括鑒權(quán)所需的現(xiàn)有技術(shù)設(shè)備外,還包括用于在鑒權(quán)時考慮運營商參數(shù)的裝置。現(xiàn)有網(wǎng)絡(luò)節(jié)點包括可用于根據(jù)本發(fā)明的功能的處理器和存儲器。實現(xiàn)本發(fā)明所需的所有改變可借助添加或更新軟件程序和/或應(yīng)用電路(ASIC)實現(xiàn)。移動臺和/或鑒權(quán)中心也需要附加的存儲器。
圖2是在本發(fā)明的第一個優(yōu)選實施例使用的算法A3/A8,而且其中如同GSM系統(tǒng)的慣例那樣將兩種不同算法組合在一起。對于本發(fā)明的算法來說,定義至少一個運營商參數(shù)T和每個用戶的獨立密鑰Ki是必要的。用戶特定的密鑰Ki是根據(jù)現(xiàn)有技術(shù)定義的,根據(jù)GSM標(biāo)準(zhǔn)其長度為128位。在本發(fā)明的第一個優(yōu)選實施例中,該算法由本領(lǐng)域的技術(shù)人員熟知的兩種不同的加密函數(shù)組成國際標(biāo)準(zhǔn)化的哈什(hash)函數(shù)RIPEMD-128和根據(jù)DES標(biāo)準(zhǔn)(數(shù)字加密標(biāo)準(zhǔn))的加密算法。這使得能結(jié)合這些函數(shù)的最佳性能。在本發(fā)明的第一個優(yōu)選實施例中使用的算法因此為一個消息鑒權(quán)碼MAC。哈什算法本身是不可逆的,而且數(shù)值有效。另一方面,加密算法更適合于智能卡,大部分智能卡支持DES算法。當(dāng)保密輸入用作加密算法的密鑰時加密函數(shù)是單向函數(shù)。通過利用廣泛使用并測試的單向函數(shù)我們能確保為網(wǎng)絡(luò)設(shè)置的安全需求得到滿足。開放性使得能保證算法不包含故意的陷門或其他弱點。完全破解算法,即通過分析算法找到運營商參數(shù)和用戶密鑰是極不可能的,因為這將需要破解相應(yīng)的國際標(biāo)準(zhǔn)。
在第一個優(yōu)選實施例中,運營商參數(shù)T為384位參數(shù),由運營商碼CC和運營商密碼CS組成。換言之,T為CC‖CS。還應(yīng)強調(diào)的是,下述僅僅是定義運營商參數(shù)的一個例子。本發(fā)明無論如何都不限制定義運營商參數(shù)的方式。
運營商代CC在本發(fā)明的第一個優(yōu)選實施例中為128位的哈什碼,它是在用例如運營商名稱和空格取代27個X時,用例如哈什函數(shù)RIPEMD-128從下述文本中得到的,之后,用ASCII編碼該文本NOKIA NETWORKS GSM A3A8 FORXXXXXXXXXXXXXXXXXXXXXXXXXXX。因此,不同運營商具有不同的參數(shù)。如果運營商在其名稱后面添加不同字母或數(shù)字,那么同一運營商也可擁有若干參數(shù)。即使一個X的值不同也會產(chǎn)生不同的運營商碼CC。
運營商密碼CS在本發(fā)明的第一個優(yōu)選實施例中是由256位組成的字符串。運營商可自由選擇這種字符串。然而,推薦為運營商密碼生成唯一值,這樣就無法預(yù)測。這就能確保運營商的值彼此之間差別很大。當(dāng)運營商參數(shù)不想保密時,運營商參數(shù)的值也可以是0字符串。一個運營商可擁有若干不同的密碼CS,因此具有不同的運營商參數(shù)。
在根據(jù)本發(fā)明第一個優(yōu)選實施例的鑒權(quán)算法中,在步驟201生成隨機數(shù)到查詢RAND中,根據(jù)GSM標(biāo)準(zhǔn)該隨機數(shù)的長度為128位。在步驟202檢索用戶密鑰Ki而在步驟203檢索運營商參數(shù)T。次值也稱為分密鑰。在步驟203和204中,為擴展密鑰計算次值KE1和KE2。每個次值由128位組成。次值的計算獨立于運營商參數(shù)T和用戶密鑰Ki。為計算次值,掩碼運營商參數(shù)T和用戶密鑰Ki,掩碼之后用哈什函數(shù)RIPEMD-128一個周期(round)從二者計算次值。在計算時使用標(biāo)準(zhǔn)初始值但不執(zhí)行填充和長度附加,因為輸入具有標(biāo)準(zhǔn)長度。利用由64個八位字節(jié)00110110組成的字符串的掩碼IPAD計算次值KE1。利用由64個八位字節(jié)01011100組成的字符串的掩碼OPAD計算次值KE2。計算完畢次值KE1和KE2后,在步驟206利用三周(round)的Feistel網(wǎng)絡(luò)F從次值KE1和查詢RAND計算128位的中間輸出,在Feistel網(wǎng)絡(luò)F中,DES算法用作周期函數(shù)。下面詳細(xì)描述該計算過程。在步驟207,利用三周的Feistel網(wǎng)絡(luò)F從次值KE2和中間結(jié)果計算128位的輸出,在Feistel網(wǎng)絡(luò)F中,DES算法用作周期函數(shù)。在步驟208從輸出中提取出最左邊的32位以形成鑒權(quán)響應(yīng)SRES,而接下來的64位用于形成加密密鑰Kc。
根據(jù)HMAC標(biāo)準(zhǔn)上述計算可由下述公式表示(用于消息鑒權(quán)的鍵控哈什)H(({Ki‖T}OPAD)‖H(({Ki‖T}IPAD)‖RAND))式中本發(fā)明的新專有哈什函數(shù)H是通過借助下面描述的密鑰調(diào)度(key-scheduling)操作組合標(biāo)準(zhǔn)化的RIPEMD-128和三周Feistel網(wǎng)絡(luò)得到的。密鑰調(diào)度是指算法使用密鑰參數(shù)的方式。在大部分情況下,可推導(dǎo)出不止一個分密鑰。它們用在算法計算的不同階段。
三周Feistel網(wǎng)絡(luò)F接收兩個輸入,在本發(fā)明的第一個優(yōu)選實施例中,這兩個輸入為128位的密鑰KEj和128位的數(shù)據(jù)輸入DIj。128位的輸出DOj(DOj=F(KEj;DIj))是在兩個階段計算的。
在第一階段執(zhí)行密鑰調(diào)度。在本發(fā)明的第一個優(yōu)選實施例中,以一種新的方式從密鑰KEj中推導(dǎo)出3個64位的DES密鑰。首先,密鑰KEj被分為16個8位字節(jié)KEj
...KEj[15]。這些8位字節(jié)如下所述被轉(zhuǎn)換為32個8位字節(jié)Mj
...Mj[31]。
Mj[k]=KEj[k],k=0,...,15;Mj[k]=KEj[(k-10)mod 8], k=16,...,23;Mj[k]=KEj[((k-20)mod 8)+8],k=24,...,31.
因此,密鑰KEj的每個8位字節(jié)以下述順序在數(shù)組Mj中出現(xiàn)兩次012 3 4 5 6 789101112131415670 1 2 3 4 5
12131415891011頭64位DES密鑰Kj1是通過改變頭一行中每個8位字節(jié)的一半以及對該改變所得到的8位字節(jié)和第二行的8位字節(jié)執(zhí)行XOR操作得到的。第二輪的密鑰是通過對第二和第三行的8位字節(jié)重復(fù)同一過程得到的。相應(yīng)地,第三密鑰是通過對第三和第四行的8位字節(jié)重復(fù)該過程得到的。從數(shù)組Mj
推導(dǎo)出的DES密鑰Kj1、Kj2和Kj3可表述如下Kjr[n]=(swap Mj[n+8(r-1)])Mj[n+8r],n=0,...,7;r=1,2,3;式中‘swap’如下改變字節(jié)B=B
的一半swap B=B[4,5,6,7,0,1,2,3]。
在第二階段,數(shù)據(jù)輸入DIj
被分為兩個部分,即左部分DIjL=DIj
以及右部分DIjR=DIj[64,..,127]。128位的輸出如下生成兩部分,左輸出部分DOjL=DOj
和右輸出部分DOjR=DOj[64,..,127]DOjR=DIjLDES(Kj2;DIjRDES(Kj1;DIjL))DOjL=DIjRDES(Kj1;DIjLDES(Kj3;DOjR))。
在圖2的步驟206,由隨機數(shù)構(gòu)成的查詢用作數(shù)據(jù)輸入,而在圖2的步驟207,中間輸出DO1用作數(shù)據(jù)輸入。步驟206和207可由下述公式表示D12=DO1=F(KE1;RAND),(步驟206)DO2=F(KE2;DI2)=F(KE1;RAND))(步驟207)。
可以兩種方式使用根據(jù)本發(fā)明第一個優(yōu)選實施例的算法預(yù)先計算模式和直接模式。在預(yù)先計算模式中,預(yù)先計算(即,步驟202至205已經(jīng)執(zhí)行)并存儲分密鑰KE1和KE2。在預(yù)先計算模式中,除查詢生成外,在鑒權(quán)期間還執(zhí)行步驟206至208。當(dāng)具有DES周期的上述Feistel網(wǎng)絡(luò)F用于步驟206至208時,在預(yù)先計算模式中在實際鑒權(quán)期間執(zhí)行的算法與128位的DES算法DEAL相同。
圖3示意了當(dāng)移動臺注冊到網(wǎng)絡(luò)時根據(jù)本發(fā)明第一個優(yōu)選實施例的鑒權(quán)。在鑒權(quán)中心AuC和預(yù)先計算模式的用戶識別模塊SIM中,本發(fā)明的第一個優(yōu)選實施例利用根據(jù)圖2描述的算法。這意味著除了整個算法外,用戶密鑰Ki和運營商參數(shù)T存儲于鑒權(quán)中心,而只有部分算法以及擴展密鑰的分密鑰KE1和KE2存儲于用戶識別模塊SIM。分密鑰以用戶密鑰Ki的相同方式被處理和保密。在圖3的例子中,假設(shè)為清晰起見移動交換中心和來訪位置寄存器結(jié)合到同一單元MSC/VLR。
在鑒權(quán)之初,移動臺MS在消息3-1中發(fā)送識別數(shù)據(jù),基于此識別數(shù)據(jù)SIM和用戶被識別至移動交換中心MSC/VLR。通常識別信息為IMSI或TMSI。移動交換中心MSC/VLR在消息3-2中發(fā)送鑒權(quán)請求至鑒權(quán)中心AuC。消息3-2包括用戶身份IMSI。來訪位置檢測器可改變TSMI為IMSI。在步驟3-3,鑒權(quán)中心AuC基于鑒權(quán)請求中包含的用戶身份IMSI選擇用戶特定的鑒權(quán)密鑰Ki和運營商參數(shù)T。鑒權(quán)中心AuC根據(jù)聯(lián)系圖2描述的運營商參數(shù)T和用戶密鑰Ki計算分密鑰KE1和KE2。此外,隨機數(shù)生成器生成例如5個隨機數(shù)參數(shù)RAND到查詢中。校驗參數(shù)SRES和加密密鑰Kc是由具有分密鑰KE1和KE2的每個查詢構(gòu)成的,這在圖2中有描述。換言之,當(dāng)一次計算不止一個鑒權(quán)三元組時,利用第一個三元組足以只計算分密鑰KE1和KE2,接著存儲瞬態(tài)分密鑰到存儲器中用于計算下面的三元組。鑒權(quán)中心AuC發(fā)送在消息3-4中計算的這5個鑒權(quán)三元組RAND、SRES、Kc至來訪位置檢測器MSC/VLR,在步驟3-5存儲這些三元組于此。
來訪位置檢測器MSC/VLR從用戶的RAND/SRES/Kc表中為參數(shù)選擇RAND值,并在消息3-6中發(fā)送其至移動臺MS,另外再發(fā)送到用戶識別模塊SIM。在本發(fā)明的第一個優(yōu)選實施例中,SIM包括分密鑰KE1和KE2,這兩個密鑰是根據(jù)用戶密鑰Ki和運營商參數(shù)T計算的。SIM還包括圖2所示的鑒權(quán)算法A3的步驟206至208。在步驟3-7,SIM借助接收的RAND參數(shù)和密鑰KE1和KE2利用上述的具有DES周期的Feistel網(wǎng)絡(luò)F計算SRES參數(shù)和加密密鑰Kc。移動臺發(fā)送SRES參數(shù)返回來訪位置檢測器MSC/VLR。在步驟3-9,來訪位置寄存器MSC/VLR比較移動臺發(fā)送的SRES值與存儲的SRES值,并在消息3-10中通知移動臺MS鑒權(quán)是否成功。如果移動臺發(fā)送的SRES值與存儲的SRES值相同則鑒權(quán)成功,而且可在無線電路徑上開始用加密密鑰Kc加密。
當(dāng)來訪位置檢測器MSC/VLR再一次鑒權(quán)用戶時,它從用戶的RAND/SRES/Kc表中選擇參數(shù)RAND的下一值并發(fā)送其到移動臺,另外再發(fā)送到用戶識別模塊SIM。
本發(fā)明的第一個優(yōu)選實施例在用戶識別模塊SIM利用本發(fā)明的算法預(yù)先計算模式,而在鑒權(quán)中心利用算法的直接計算模式這一事實,提供了結(jié)合兩種單向函數(shù)的最佳特性,而且以定制方式保證最佳性能和安全性的優(yōu)點。RIPEMD-128是相當(dāng)有效的單向函數(shù),但用戶識別模塊SIM所使用的8位處理器并沒有合理使用它。DES不象RIPEMD-128那樣有效,但據(jù)說是最佳的,而且它也能在用戶識別模塊SIM中安全和有效地實現(xiàn)。
每當(dāng)鑒權(quán)中心AuC在網(wǎng)絡(luò)中使用運營商參數(shù)T時,它還檢查是否已利用所討論的運營商參數(shù)確實推導(dǎo)出用戶識別模塊SIM中包含的分密鑰KE1和KE2。通常一個運營商使用若干用戶識別模塊SIM生產(chǎn)商,他們自身也形成用戶密鑰Ki。運營商很可能也給予他們運營商參數(shù)以形成分密鑰KE1和KE2。運營商例如通過利用生產(chǎn)商特定的密碼部分CS和/或改變運營商碼CC中的運營商名稱,可為每個生產(chǎn)商提供一個不同的運營商參數(shù)。運營商也可自己形成用戶密鑰Ki和有關(guān)的分密鑰KE1和KE2,并將它們提供給用戶識別模塊SIM的生產(chǎn)商以便它們能存儲在識別模塊中。
上述的單向函數(shù)、掩碼和密鑰調(diào)度只是用于描述如何實現(xiàn)本發(fā)明,無論如何不限制本發(fā)明。上述的掩碼和密鑰調(diào)度只是例子,不是必要的。有可能使用其他單向函數(shù),它們不必為公眾函數(shù)。此外,在每個階段也可使用相同的單向函數(shù)。另一方面,在每個階段可使用不同的函數(shù),這樣同一函數(shù)就不會兩次用于計算。另外,第一個函數(shù)可使用一次而第二個函數(shù)可使用例如三次。
在本發(fā)明的其他優(yōu)選實施例中,預(yù)先計算模式也可應(yīng)用于鑒權(quán)中心AuC。在此情況下,分密鑰KE1和KE2必須存儲于用戶的鑒權(quán)中心AuC。另一方面,直接模式也可應(yīng)用于用戶識別模塊SIM,在此情況下,整個算法、用戶密鑰Ki和運營商參數(shù)T都存儲于用戶識別模塊中,但不包括分密鑰KE1和KE2。
圖4是本發(fā)明的第二個優(yōu)選實施例。在此,以最簡單的形式描述根據(jù)本發(fā)明的算法,而對函數(shù)沒有作任何詳細(xì)描述,對輸出和輸入的長度也沒有說明。用戶密鑰Ki和運營商參數(shù)T在本發(fā)明的第二個優(yōu)選實施例中也有定義。
根據(jù)本發(fā)明第二個優(yōu)選實施例的算法是以步驟401生成查詢RAND開始的。在步驟402檢索用戶密鑰Ki,而在步驟403檢索運營商參數(shù)T。之后,在步驟404用單向函數(shù)從用戶密鑰Ki和運營商參數(shù)T計算密鑰KE。在步驟405,用單向函數(shù)從密鑰KE和查詢RAND計算輸出,以及在步驟406從輸出中提取鑒權(quán)響應(yīng)SRES。
根據(jù)本發(fā)明第二個優(yōu)選實施例的計算可由下述公式表示H2(H1(Ki‖T)‖RAND)在本發(fā)明的第二個優(yōu)選實施例中可能使用同一單向函數(shù),例如RIPEMD-128函數(shù)。也可使用兩種不同的單向函數(shù),例如在步驟404用RIPEMD-128函數(shù),而在步驟405用DES用作周期函數(shù)的六周Feistel網(wǎng)絡(luò)。
第二個優(yōu)選實施例也可采用預(yù)先計算模式和直接模式。在預(yù)先計算模式中,預(yù)先計算密鑰KE并存儲于例如用戶識別模塊SIM中。
圖2、3和4所示的步驟不是按絕對的時間順序,某些步驟可同時或以不同于所示順序的順序執(zhí)行。此外,在這些步驟之間也可出現(xiàn)其他一些函數(shù)。另一方面,某些步驟也可省略。重要的是,運營商參數(shù)也用作鑒權(quán)輸入。上面聯(lián)系圖3描述的信令消息只是起參考作用,可包含用于發(fā)送同一信息的若干獨立消息。該消息也可包含其他種類的信息。依賴于運營商和系統(tǒng),之間已劃分了不同功能的其他網(wǎng)絡(luò)單元也可參與數(shù)據(jù)傳輸和信令。此外,有可能安排用戶識別模塊生成查詢,并將其發(fā)送到與鑒權(quán)有關(guān)的鑒權(quán)中心。
即使上面是連同移動通信系統(tǒng)描述本發(fā)明的,但本發(fā)明的鑒權(quán)算法也可應(yīng)用于借助識別模塊鑒權(quán)用戶的固定網(wǎng)絡(luò)。
應(yīng)理解的是,前面的說明和相關(guān)附圖只是為了示意本發(fā)明。本領(lǐng)域的技術(shù)人員知道,不用偏離所附權(quán)利要求書定義的本發(fā)明的范圍和精神就可改變和修改本發(fā)明。
權(quán)利要求
1.一種用于在電信系統(tǒng)中安排用戶鑒權(quán)的方法,該方法包括步驟為用戶定義密鑰;生成(401)將在鑒權(quán)中使用的查詢;其特征在于為用戶的運營商定義參數(shù);利用第一單向函數(shù),根據(jù)該密鑰和參數(shù)計算(404)第一密碼;利用第二單向函數(shù),根據(jù)該查詢和第一密碼計算(405)輸出;從輸出中提取(406)鑒權(quán)響應(yīng);以及用鑒權(quán)響應(yīng)鑒權(quán)用戶。
2.根據(jù)權(quán)利要求1的方法,其特征在于,該方法還包括下述步驟存儲第一密碼到用戶識別模塊中;以及在鑒權(quán)期間,利用第二單向函數(shù),根據(jù)用戶識別模塊中的第一密碼和查詢計算(405)輸出。
3.根據(jù)權(quán)利要求1或2的方法,其特征在于第一單向函數(shù)為哈什函數(shù);而第二單向函數(shù)為加密算法。
4.一種用于在電信系統(tǒng)中安排用戶鑒權(quán)的方法,該方法包括步驟為用戶定義密鑰;生成(201)將在鑒權(quán)中使用的查詢;其特征在于為用戶的運營商定義參數(shù);利用第一單向函數(shù),根據(jù)該密鑰和參數(shù)計算(204)第一密碼;利用第二單向函數(shù),根據(jù)該密鑰和參數(shù)計算(205)第二密碼;利用第三單向函數(shù),根據(jù)該查詢和第一密碼計算(206)中間輸出;利用第四單向函數(shù),根據(jù)該中間輸出和第二密碼計算(207)輸出;從輸出中提取(208)鑒權(quán)響應(yīng);以及利用鑒權(quán)響應(yīng)鑒權(quán)用戶。
5.根據(jù)權(quán)利要求4的方法,其特征在于,該方法還包括下述步驟在計算第一密碼之前用第一掩碼來掩碼密鑰和參數(shù);根據(jù)掩碼后的密鑰和參數(shù)中計算(204)第一密碼;在計算第二密碼之前用第二掩碼掩碼密鑰和參數(shù);以及根據(jù)掩碼后的密鑰和參數(shù)中計算(205)第二密碼。
6.根據(jù)權(quán)利要求4或5的方法,其特征在于該方法還包括下述步驟存儲第一和第二密碼至用戶識別模塊;以及在鑒權(quán)期間,利用第三單向函數(shù),根據(jù)用戶識別模塊中的第一密碼和查詢計算中間輸出,以及利用第四單向函數(shù),根據(jù)該中間輸出和第二密碼計算輸出。
7.根據(jù)權(quán)利要求4、5或6的方法,其特征在于第一和第二單向函數(shù)為哈什函數(shù);而第三和第四單向函數(shù)為加密算法。
8.根據(jù)權(quán)利要求3或7的方法,其特征在于哈什函數(shù)為RIPEMD-128函數(shù);而加密算法使用DES加密算法。
9.根據(jù)前述任何一項權(quán)利要求的方法,其特征在于,用戶的運營商參數(shù)包括運營商代碼和運營商密碼。
10.根據(jù)前述任何一項權(quán)利要求的方法,其特征在于,該方法還包括從輸出中另提取加密密鑰的步驟。
11.一種電信系統(tǒng)(GSM),包括用戶識別模塊(SIM),用于參與用戶鑒權(quán);鑒權(quán)中心(AuC),用于存儲有關(guān)用戶的鑒權(quán)信息,該信息包括至少一個用戶密鑰;以及系統(tǒng)(GSM),用于利用查詢作為鑒權(quán)參數(shù),以及通過比較用戶識別模塊計算的鑒權(quán)響應(yīng)與鑒權(quán)中心計算的鑒權(quán)響應(yīng)來鑒權(quán)用戶;其特征在于為用戶的運營商定義至少一個運營商參數(shù)(T);鑒權(quán)中心(AuC)被設(shè)置成存儲運營商參數(shù),利用第一單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第一密碼;利用第二單向函數(shù),根據(jù)該第一密碼和查詢計算輸出;以及從輸出中提取鑒權(quán)響應(yīng);用戶識別模塊(SIM)包括第一密碼,而且被設(shè)置成利用第二單向函數(shù),根據(jù)該第一密碼和查詢計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)。
12.一種電信系統(tǒng)(GSM),包括用戶識別模塊(SIM),用于參與用戶鑒權(quán);鑒權(quán)中心(AuC),用于存儲有關(guān)用戶的鑒權(quán)信息,該信息包括至少一個用戶密鑰;以及系統(tǒng)(GSM),用于利用查詢作為鑒權(quán)參數(shù),以及通過比較用戶識別模塊計算的鑒權(quán)響應(yīng)與鑒權(quán)中心計算的鑒權(quán)響應(yīng)來鑒權(quán)用戶;其特征在于為用戶的運營商定義至少一個運營商參數(shù)(T);鑒權(quán)中心(AuC)被設(shè)置成存儲運營商參數(shù),利用第一單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第一密碼;利用第二單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第二密碼,利用第三單向函數(shù),根據(jù)該第一密碼和查詢中計算中間輸出,利用第四單向函數(shù),根據(jù)第二密碼和中間輸出計算輸出,以及從輸出中提取鑒權(quán)響應(yīng);用戶識別模塊(SIM)包括第一和第二密碼,而且被設(shè)置成利用第三單向函數(shù)計算中間輸出,利用第四單向函數(shù),根據(jù)該第二密碼和中間輸出計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)。
13.一種電信系統(tǒng)中的鑒權(quán)中心(AuC),電信系統(tǒng)包括至少一個用戶,而且其中查詢用作鑒權(quán)參數(shù),鑒權(quán)中心用于存儲有關(guān)用戶的鑒權(quán)信息,該信息包括至少一個用戶密鑰,其特征在于鑒權(quán)中心(AuC)被設(shè)置成存儲為用戶的運營商定義的運營商參數(shù),利用第一單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第一密碼,利用第二單向函數(shù),根據(jù)該第一密碼和查詢中計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)以用于鑒權(quán)。
14.一種電信系統(tǒng)中的鑒權(quán)中心(AuC),電信系統(tǒng)包括至少一個用戶,為該用戶定義用戶密鑰作為鑒權(quán)信息,而且在該系統(tǒng)中查詢用作鑒權(quán)參數(shù),其特征在于鑒權(quán)中心(AuC)被設(shè)置成存儲利用第一單向函數(shù),根據(jù)用戶密鑰和為用戶的運營商定義的運營商參數(shù)計算的第一密碼,利用第二單向函數(shù),根據(jù)該第一密碼和查詢中計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)以用于鑒權(quán)。
15.一種電信系統(tǒng)中的鑒權(quán)中心(AuC),電信系統(tǒng)包括至少一個用戶,而且其中查詢用作鑒權(quán)參數(shù),鑒權(quán)中心用于存儲有關(guān)用戶的鑒權(quán)信息,該信息包括至少一個用戶密鑰,其特征在于,鑒權(quán)中心(AuC)被設(shè)置成存儲為用戶的運營商定義的運營商參數(shù),利用第一單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第一密碼;利用第二單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第二密碼,利用第三單向函數(shù),根據(jù)該第一密碼和查詢計算中間輸出,利用第四單向函數(shù),根據(jù)該第二密碼和中間輸出計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)。
16.一種電信系統(tǒng)中的鑒權(quán)中心(AuC),電信系統(tǒng)包括至少一個用戶,為該用戶定義用戶密鑰作為鑒權(quán)信息,而且在該系統(tǒng)中查詢用作鑒權(quán)參數(shù),其特征在于鑒權(quán)中心(AuC)被設(shè)置成存儲用第一單向函數(shù),根據(jù)該用戶密鑰和為該用戶的運營商定義的運營商參數(shù)計算的第一密碼,以及利用第二單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算的第二密碼,利用第三單向函數(shù),根據(jù)第一密碼和查詢計算中間輸出,利用第四單向函數(shù),根據(jù)該第二密碼和中間輸出計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)。
17.一種用戶識別模塊(SIM),可連接到電信系統(tǒng)中的用戶所使用的終端,在該電信系統(tǒng)中查詢用作鑒權(quán)參數(shù),該識別模塊包含用戶密鑰,其特征在于,用戶識別模塊(SIM)還包括為該用戶的運營商定義的運營商參數(shù);以及被設(shè)置成利用第一單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第一密碼,利用第二單向函數(shù),根據(jù)該第一密碼和詢問中計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)以用于鑒權(quán)。
18.一種用戶識別模塊(SIM),可連接到電信系統(tǒng)中的用戶所使用的終端,電信系統(tǒng)使用用戶密鑰和查詢作為鑒權(quán)參數(shù),其特征在于,用戶識別模塊(SIM);包括利用第一單向函數(shù),根據(jù)該用戶密鑰和為該用戶的運營商定義的運營商參數(shù)計算的第一密碼;以及被設(shè)置成利用第二單向函數(shù),根據(jù)第一密碼和查詢中計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)以用于鑒權(quán)。
19.一種用戶識別模塊(SIM),可連接到電信系統(tǒng)中的用戶所使用的終端,在該電信系統(tǒng)中查詢用作鑒權(quán)參數(shù),該識別模塊包含用戶密鑰,其特征在于,用戶識別模塊(SIM)還包括為該用戶的運營商定義的運營商參數(shù);以及被設(shè)置成利用第一單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第一密碼,利用第二單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算第二密碼,利用第三單向函數(shù),根據(jù)該第一密碼和查詢計算中間輸出,利用第四單向函數(shù),根據(jù)該第二密碼和中間輸出計算輸出,以及從輸出中提取鑒權(quán)響應(yīng)以用于鑒權(quán)。
20.一種用戶識別模塊(SIM),可連接到電信系統(tǒng)中的用戶所使用的終端,電信系統(tǒng)利用用戶密鑰和查詢作為鑒權(quán)參數(shù),其特征在于,用戶識別模塊(SIM)包括利用第一單向函數(shù),根據(jù)該用戶密鑰和為該用戶的運營商定義的運營商參數(shù)計算的第一密碼,以及利用第二單向函數(shù),根據(jù)該用戶密鑰和運營商參數(shù)計算的第二密碼,以及被設(shè)置成利用第三單向函數(shù),根據(jù)用戶的查詢和第一密碼計算中間輸出,利用第四單向函數(shù),根據(jù)該中間輸出和第二密碼計算輸出,以及從該輸出中提取鑒權(quán)響應(yīng)。
全文摘要
為提供可靠的和定制的鑒權(quán),為運營商定義將在鑒權(quán)中使用的參數(shù)。從該運營商參數(shù)和用戶密鑰中計算(404)可存儲于例如用戶識別模塊中的密碼。用單向函數(shù)從該密碼和查詢中計算(405)鑒權(quán)響應(yīng)以用于鑒權(quán)。
文檔編號H04L9/32GK1419793SQ01807255
公開日2003年5月21日 申請日期2001年3月26日 優(yōu)先權(quán)日2000年3月30日
發(fā)明者凱薩·尼伯格 申請人:諾基亞公司