无线电通信网络中的防克隆相互鉴权的制作方法

文档序号:7950091阅读:171来源:国知局
专利名称:无线电通信网络中的防克隆相互鉴权的制作方法
无线电通信网络中的防克隆相互鉴权
优先权要求
本申请要求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>formula see original document page 21</formula>
问题在于,这样一种链无论如何始终具有有限长度,并且可以用完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·布洛姆 申请人:艾利森电话股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1