利用刷新密钥执行密钥刷新的方法和装置的制作方法

文档序号:7617541阅读:129来源:国知局
专利名称:利用刷新密钥执行密钥刷新的方法和装置的制作方法
技术领域
本发明涉及通信领域,尤其是涉及刷新通信方所使用的密钥或其它信息。
典型的无线通信系统在一个地理区域内向无线设备提供无线通信业务。移动交换中心(MSC)的其中一个任务是负责建立和维持无线设备之间的呼叫,以及无线设备和有线设备之间的呼叫。由此,MSC在其地理区域内互连该无线设备与一个公众交换电话网。由MSC服务的地理区域被分成称为“小区”的不同空间区域。每个小区在原理上由蜂窝模型中的一个六边形表示;然而,实际上每个小区都有不规则的形状,它依赖于围绕该小区的区域地形。典型的,每个小区包含一个基站,基站包括用来与该小区的无线设备通信的无线电设备和天线。基站还包括用来与该地理区域内的MSC通信的发射设备。
MSC利用一个信令网络,该信令网络使得能交换相应地理业务区域内的无线设备的信息,用于位置验证,以及将呼叫发送到在其它地理业务区域内漫游的无线设备。当某个无线设备试图与无线通信系统通信时,该无线通信系统在允许该无线设备接入到该系统之前,要鉴定或验证该无线设备的身份。

图1描绘了一个典型的无线通信系统5的一部分,它通过基站10向地理区域12,如与基站10相关的一个小区或扇区,提供无线通信业务。当小区12内的无线设备14首次注册或试图与基站10通信时,在允许无线设备14接入该无线通信系统之前,无线设备14被鉴定或该无线设备的身份被验证。无线设备14的归属网路或归属通信系统可以是,形成无线设备14所归属的蜂窝地理业务区域的一群小区,并且典型地是,与该无线设备的所有人签定协议以提供无线通信业务的业务提供者所控制的网络。当无线设备14位于一个非归属网络时,就称为位于来访通信网络或系统。如果无线设备14工作于该来访通信系统,那么,基站10对该无线设备的鉴定将涉及与该无线设备的归属通信系统的归属鉴定中心16通信。归属鉴定中心16可为一个独立的中心,或与与该归属通信系统相关的MSC(归属MSC)连接、相关、结合和/或共址,而且来访鉴定中心18也可为一个独立的中心,或与和该来访通信系统相关的MSC(受访MSC)连接、相关、结合和/或共址。
在图1的例子中,无线设备14为一个来访通信系统。因此,无线设备14的鉴定涉及与该无线设备的归属通信系统的归属鉴定中心16的通信。当无线设备14试图接入该来访通信系统时,基站10与该来访通信系统的来访鉴定中心18通信。来访鉴定中心18根据一个无线设备或终端识别符,如无线设备14的电话号码,确定无线设备14已注册到一个使用归属鉴定中心16的系统中。来访鉴定中心18接着通过一个网络与归属鉴定中心16通信。该网路可以是,在名称为“蜂窝无线电通信系统间操作”的TIA/EIA-41-D标准(1997.12)(”IS-41”)下的信令网络20。
归属鉴定中心16接着接入一个包含无线设备14注册入口的归属位置寄存器(HLR)22。归属位置寄存器22可通过一个诸如该无线设备的电话号码的标识符,与该无线设备相关。包含在归属位置寄存器22中的信息可包括和成用于生成鉴定和/或加密密钥,如用于进一步确保该无线设备与该通信系统之间的通信安全的共用加密数据(SSD)或通信密钥。在一个典型的无线通信系统中,无线设备和无线通信系统均具有一个称为A-KEY的加密值。无线通信系统利用该A-KEY和一个随机生成的序列RANDSSD,生成一个共用加密数据(SSD)值或通信密钥。该通信密钥SSD可分成具有不同功能的通信密钥,例如鉴定密钥SSD-A(共用加密数据A)和加密密钥SSD-B(共用加密数据B)。SSD-A值用于鉴定过程,而SSD-B值用于密钥生成和加密过程。
为鉴定试图接入该来访通信系统的无线设备14,归属通信系统向发送随机数RAND到无线设备14的来访通信系统提供信息,如一个随机数序列或查询RAND,以便无线设备14能响应一个利用鉴定密钥(SSD-A)和随机数RAND得到的签名值AUTHR。如果归属通信系统不与来访通信系统共用该通信密钥,那么由该无线设备生成的签名值AUTHR被送至归属通信系统,以与在归属通信系统用和设备14相同的方式生成的签名值AUTHR比较。如果该签名值匹配,那么无线设备14通过鉴定。
如果归属鉴定中心16确定该通信密钥值SSD需被刷新,例如由于某个判定指示SSD可被放弃,那么与无线设备14相关的SSD值可被刷新。图2示出了SSD刷新过程,以及无线设备与无线通信系统之间,名为“双模扩频系统的移动台-基站适应性标准”的TIA-EIA-95-B(“IS-95B”)标准。该无线通信系统包括服务基站、来访鉴定中心、访问者位置寄存器、归属鉴定中心、归属位置寄存器、受访MSC和/或归属MSC。
在这个实施例中为初始化密钥刷新,归属鉴定中心16创建一个刷新序列RANDSSD。利用该RANDSSD序列、A-KEY和该无线设备的ESN作为一个密码函数(如SSD生成过程30)的输入,归属鉴定中心16生成一个新密钥值(SSD-NEW)。该归属鉴定中心在一个刷新消息中(如SSD刷新消息32),通过来访鉴定中心和服务基站发送该RANDSSD序列到无线设备14。无线设备14提供从该通信系统接收的RANDSSD序列,并以与该通信系统相同的方式生成新的通信密钥。例如,无线设备14提供自身存储的RANDSSD、A-KEY和电子序列号(ESN)给一个密码函数,如SSD密钥生成过程34。SSD密钥生成过程34生成SSD-NEW,它又被分成SSD-A-NEW和SSD-B-NEW。SSD生成过程30和34利用随机数RANDSSD、ESN以及A-KEY值作为输入,实现CAVE算法。CAVE算法作为一种单向函数在技术上是公知的,它禁止确定给定输出的函数的输入。
在接受新的SSD值以用于鉴定和加密过程之前,无线设备使SSD-NEW生效,从而鉴定该通信系统。为此,该无线设备在功能块36生成一个随机数RANDBS查询。该无线设备提供RANDBS和SSD-A-NEW,以及连带附加数据,如ESN和/或源自国际移动台识别号(IMSI)的AUTH-DATH,给一个密码函数(如签名过程38)。签名过程38生成签名值AUTHBS。该无线设备还发送RANDBS到该无线通信系统,例如作为基站查询37的一部分。利用一个对应的密码函数,如签名过程40,无线通信系统利用来自该无线设备的RANDBS,来自SSD生成过程30的SSD-A-NEW,以及该无线设备用来推导AUTHBS的附加数据,ESN和/或AUTH-DATA,来推导出AUTHBS。
无线通信系统发送签名过程40生成的AUTHBS值到该无线设备,例如,在基站查询证实指令41中。在功能块42,该无线设备比较自身生成的AUTHBS值与从系统发送的AUTHBS值。如果比较正确,那么无线设备14直接使SSD-NEW生效,从而鉴定该通信系统。无线设备14设置SSD-A值为SSD-A-NEW,以及设置SSD-B值为SSD-B-NEW。该无线设备接着发送SSD刷新证实43到归属鉴定中心,指示成功地完成SSD刷新。一旦接收到SSD刷新证实,归属鉴定中心就设置SSD-A和SSD-B为该系统生成的SSD-A-NEW和SSD-B-NEW值。
SSD刷新过程之后,该无线通信系统典型地鉴定该无线设备,以确保新SSD密钥值的有效性,例如确保该无线设备已正确地计算出新的SSD密钥。该无线通信系统生成一个序列,如一个随机查询RANDU,并发送该序列RANDU到该无线设备,例如在一个鉴定查询消息44中。一旦接收到该鉴定查询消息44,无线设备14提供至少一部分RANDU序列到一个密码函数,例如到输入为源于RANDU和IMSI的ESN、AUTH-DATA、SSD-A和RAND-CHALLENGE的鉴定签名过程46。鉴定签名过程46利用RAND-CHALLENGE、ESN、AUTH-DATA和SSD-A作为输入,生成作为CAVE算法的输出的鉴定签名值AUTHU。该无线通信系统利用鉴定签名过程48以相同方式生成鉴定签名值AUTHU。无线设备接着发送由该无线设备计算的AUTHU值到该无线通信系统。该无线通信系统在功能块50比较该系统计算的AUTHU值与从该无线设备接收的AUTHU值。如果两个值匹配,那么,无线通信系统使新的SSD值生效,从而该无线设备通过鉴定。
如果无线设备14位于来访通信系统中,而且由于某种原因,归属通信系统不与来访通信系统共用该新通信密钥SSD-NEW,那么,来访通信系统仅仅用作该无线设备和归属通信系统之间的通信管道。由此,上述的密钥刷新要求归属通信系统和来访通信系统之间的扩展通信,以便该无线设备鉴定该通信系统。另外,上述方案中的密钥刷新后,跟随一个由通信系统对该无线设备的独立鉴定,以确保SSD有效,从而从通信系统角度鉴定该无线设备。尽管提供了无线设备和通信系统之间的相互鉴定,但独立的鉴定在来访通信系统和归属通信系统之间提供了附加的通信。
例如,图3A示出了无线设备14在参照IS-41信令标准的来访通信系统内是如何被鉴定的。无线设备14和归属通信系统60都包含一个称为A-KEY的加密值。当无线设备14请求接入一个来访系统62时,来访系统62要求来自归属系统60的数据。在这个实施例中,与无线设备14相关的归属位置寄存器22(图1)利用一个识别符,如该无线设备的电话号码被定位。无线设备14的HLR 22存储用于生成新的通信密钥SSD-NEW的该加密值或密钥A-KEY。通过利用至少序列RANDSSD和A-KEY作为输入执行CAVE算法可计算出SSD-NEW。CAVE算法在技术上是公知的,且在IS-41标准中被指定。
归属系统60传输RANDSSD值到该来访系统,而且该来访系统发送该RANDSSD值到无线设备14。无线设备14接着利用与归属系统60相同的计算方式计算SSD,如公式SSD-A-NEW,SSD-B-NEW=CAVEA-KEY(RANDSSD)所示。无线设备14接着发送RANDBS值到来访系统62,而来访系统62发送该RANDBS值到归属系统60。利用一个对应的密码函数,归属系统60利用来自无线设备14的RANDBS可得到AUTHBS。归属系统60发送AUTHBS值来访系统62,而来访系统62又将AUTHBS值发送到无线设备14。传递RANDBS到归属系统60以及归属系统应答AUTHBS,为称之为鉴定请求或基站查询的一种事务处理。无线设备比较自身生成的AUTHBS值与从该系统发送的AUTHBS值。如果比较正确,则该无线设备将设置SSD-A值为SSD-A-NEW,以及设置SSD-B值为SSD-B-NEW。无线设备接着通过来访系统62发送一个SSD刷新证实指令到归属系统60,指示成功地完成SSD刷新。从归属系统60发送RANDSSD以及接收SSD刷新证实,为称之为鉴定指令(AUTHDIR)的一种事务处理。一旦接收到SSD刷新证实指令,归属系统60设置SSD-A和SSD-B为该系统生成的SSD-A-NEW和SSD-B-NEW值。
这之后,在图3A的实施例中,归属系统60通过发送一个随机数查询RANDU到无线设备14,发起可称之为查询无线设备14的第二鉴定指令。归属系统60发送RANDU值到来访系统62,来访系统62又将该RANDU值发送到无线设备14。无线设备14和归属系统60同时利用随机数RANDU和SSD-A值作为输入计算AUTHU值,在此AUTHU等于一个密码函数(如CAVE算法)的输出,如公式AUTHU=CAVESSD-A(RAND)所示。无线设备14接着发送该计算的AUTHU值到来访系统62,而来访系统62又将从无线设备14接收的AUTHU值发送到归属系统60。如果来自无线设备14的AUTHU值与在归属系统60计算的AUTHU值匹配,那么,从归属系统60的角度看新的SSD值生效,从而无线设备14通过鉴定并获准接入该来访系统。
图3B示出了执行SSD密钥刷新的另一可选实现方法,在该方法中执行归属系统和无线设备的鉴定。在这个实现中,归属系统60生成RANDSSD值,接着如公式SSD-A-NEW,SSD-B-NEW=CAVEA-KEY(RANDSSD)所示计算SSD-A-NEW。归属系统还可生成RANDU值,以及给定SSD-A-NEW,归属系统60可计算出AUTHU。归属系统接着连带RANDU和AUTHU发送RANDSSD到来访系统62。来访系统62接着转发该RANDSSD到无线设备14,用于该无线设备计算SSD-A-NEW。无线设备14接着发送RANDBS值到来访系统62,而来访系统62又发送RANDBS值到归属系统60。利用一个对应的密码函数,归属系统60利用来自无线设备14的RANDBS得到AUTHBS。归属系统60发送该AUTHBS值到来访系统62,而来访系统62又发送该AUTHBS值到无线设备14。无线设备14比较自身生成的AUTHBS值与从该系统发送的AUTHBS值。如果比较正确,则该无线设备将设置SSD-A值为SSD-A-NEW,以及设置SSD-B值为SSD-B-NEW。
该无线设备接着通过来访系统62发送一个SSD刷新证实指令到归属系统60,指示成功地完成SSD刷新。一旦接收到SSD刷新证实指令,归属系统60设置SSD-A和SSD-B为该系统生成的SSD-A-NEW和SSD-B-NEW值。现在,由于RANDU和AUTHU已经存在于来访系统62,因此来访系统62发送RANDU到无线设备14。无线设备14利用该RANDU值计算AUTHU,并且发送AUTHU到来访系统62。如果来自无线设备14的AUTHU值与在归属系统60计算的AUHTU值匹配,那么,来访系统62发送一个有关SSD刷新的鉴定报告到归属系统60,归属系统60以一个确认(ACK)信号响应该SSD刷新。
上述的密钥刷新和/或无线设备的后续鉴定利用了归属系统和来访系统之间的大量通信,如果归属通信系统保持该通信密钥的话,将消耗系统资源。
本发明涉及一种通过利用一个刷新密钥鉴定一个设备和/或通信系统,而刷新通信密钥的系统。通过利用该刷新密钥执行鉴定,在归属通信系统维持该通信密钥的同时发送该刷新密钥到来访通信系统,该密钥刷新系统能减少归属通信系统和来访通信系统之间的通信。例如,在执行密钥刷新时,归属通信系统利用自身生成的一个RANDSSD序列以及它和该设备所保持的一个加密密钥A-KEY生成一个通信密钥,如一个新的鉴定密钥SSD-A-NEW。该归属通信系统还利用RANDSSD序列和该加密密钥A-KEY生成刷新密钥SSD-KEY。归属通信系统发送该刷新密钥SSD-KEY和序列RANDSSD到来访通信系统,而来访通信系统又发送序列RANDSSD到该设备。该设备生成新的通信密钥,如以与归属通信系统相同的方式生成的新鉴定密钥SSD-A-NEW,以及刷新密钥SSD-KEY。由于来访通信系统拥有刷新密钥SSD-KEY,因此来访鉴定系统可利用来访通信系统的刷新密钥生成签名值AUTHUSSD和成AUTHBS,以鉴定该设备和/或该通信系统。
通过阅读下面的详细描述以及参考附图,本发明的其它方面和优点可变得更为清晰。其中图1示出了一种无线通信系统的一般结构,其中使用的密钥刷新可利用根据本发明原理的刷新密钥;图2示意了一个无线设备和一个根据IS-95B的无线通信系统之间使用的密钥刷新以及独立的鉴定过程;图3A和图3B示出了在一个典型的网络,如IS-41标准网络的刷新过程中,一个无线设备、一个来访通信系统以及一个归属通信系统之间的通信;图4示出了根据本发明的原理,利用刷新密钥鉴定通信系统的密钥刷新系统的一个实施例;图5A示意了一种在根据本发明原理执行密钥刷新与相互鉴定的过程中,产生刷新密钥和通信密钥的方法,以及;图5B示出了根据本发明的原理利用一个刷新密钥执行相互鉴定的密钥刷新子系统的一个实施例流程图。
下面描述了一个利用根据本发明原理的刷新密钥进行密钥刷新的示意性实施例,它提供了一个设备(如无线设备)与一个通信系统(如无线通信系统)之间的一种改进的密钥刷新过程。例如,如果某个判定指示该通信密钥可被放弃或由于任何其它原因(例如,被初始化),那么一个通信系统可启动一个通信密钥的刷新,如一个共用加密数据(SSD)密钥的刷新。通信密钥为该设备和该通信系统用于进一步确保该设备和该通信系统之间通信安全的密钥。通信密钥或其一部分可为鉴定密钥、加密密钥、生成密钥的密钥和/或用于数字化标识通信内容的整性密钥。通信密钥SSD可分成其它通信密钥,如鉴定密钥SSD-A和加密密钥SSD-B。SSD-A用于鉴定过程,而SSD-B用于生成密钥,例如在生成密钥KC,或在加密过程中。密钥刷新系统刷新该通信密钥,从而刷新通信系统利用一个刷新密钥执行设备鉴定所使用的鉴定密钥,该通信系统可包括归属和/或来访通信系统。在所述实施例中,刷新密钥作为除通信密钥之外的部分刷新过程生成物,而且用于在刷新通信密钥期间执行鉴定。根据具体实施例和/或该无线设备是否注册到一个来访或归属通信系统中,密钥刷新系统和其部分可在通信系统的不同部分实现,如服务基站、来访鉴定中心、受访MSC、访问者位置寄存器、归属位置寄存器、归属MSC和/或归属鉴定中心。
在执行密钥刷新的过程中,通信系统利用与该设备相关的至少加密值A-KEY生成一个新的通信密钥(例如,新的通信密钥SSD-NEW或新的鉴定密钥SSD-A-NEW)。根据本发明一方面,通信系统利用至少一部分加密值A-KEY和/或至少一部分用于生成新通信密钥的信息生成刷新密钥,该刷新密钥不同于新的通信密钥。该设备利用该刷新密钥鉴定该通信系统,和/或该通信系统利用该刷新密钥刷新该设备。一旦完成鉴定,该设备和该通信系统用该新通信密钥刷新该通信密钥,以进一步确保该设备和该通信系统之间的通信,而且该刷新密钥可被丢弃。由此,刷新密钥可被视为刷新通信密钥期间用于鉴定的一个临时性密钥。
图4示出了利用刷新密钥SSD-KEY的一个密钥刷新系统的实施例63,在此,当设备64利用该刷新密钥鉴定完通信系统65之后,通信密钥SSD(鉴定密钥SSD-A与加密密钥SSD-B)被刷新。设备64和通信系统65均拥有一个与设备64相关的加密值A-KEY。当刷新一个通信密钥SSD时,通信系统创建一个提供给设备64的RANDSSD序列。RANDSSD序列可为一个随机数、在一定周期后重复的一个伪随机数、或一个递增计数器的输出,该递增计数器的接收值不能小于或等于前一接收值。通信系统65通过利用RANDSSD序列和加密密钥A-KEY作为输入,提取密码函数67(F0)的输出来计算一个新通信密钥SSD-NEW。通信系统65还通过利用RANDSSD序列和加密密钥A-KEY作为输入,提取密码函数68(F1)的输出来计算一个刷新密钥SSD-KEY。
在这个实施例中,密码函数67不同于密码函数68,从而导致刷新密钥SSD-KEY不同于新的通信密钥SSD-NEW,或至少不同于鉴定密钥SSD-A-NEW。例如,给定输入RANDSSD和A-KEY,密码函数67和68生成的SSD-KEY和新通信密钥SSD-NEW为两个不相关输出,在此给定其中一个输出,却无法预测出另一输出。根据具体实施例,当利用RANDSSD序列和A-KEY的不同部分作为输入以生成一个不同于鉴定密钥的刷新密钥时,密码函数67和68可相同或不同。根据具体实施例,该密钥刷新系统可利用密钥生成过程67和/或68的附加输入,例如,该无线设备的特征值,或诸如ESN和/或IMSI的签名。密钥生成过程67和成68利用随机数RANDSSD和A-KEY值作为输入以及任何附加输入实现CAVE算法。CAVE算法作为一种单向函数在技术上是公知的。也可使用其它生成过程。
通信系统65发送刷新序列RANDSSD到设备64,而设备64以与通信系统65相同的方式生成新通信密钥SSD-NEW和刷新密钥SSD-KEY。为鉴定通信系统65,该设备生成一个刷新序列RANDBS,并发送该序列RANDBS到通信系统65。序列RANDBS可为一个随机数、在一定周期后重复的伪随机数,或一个递增计数器的输出,该递增计数器的接收值不能小于或等于前一接收值。设备64利用至少RANDBS序列和在设备64生成的刷新密钥生成一个签名值AUTHBS。为生成AUTHBS,该设备提供RANDBS和SSD-KEY连带任何附加数据,如RANDSSD、源自国际移动台识别号(IMSI)的ESN和/或AUTH-DATA字符串,到签名过程69。取决于具体实施例,签名过程69为一个密码函数,它能利用到其过程的不同输入。签名生成过程69可利用随机数RANDBS和刷新密钥SSD-KEY作为输入以及任何附加输入,实现CAVE算法。
密钥生成67和68以及签名过程69可为哈什(hash)函数,或任何单向密码函数,如CAVE算法和SHA-1。也可使用其它生成过程。哈什函数的特征为单向函数(给定输出,不能再现输入的函数)、生成输入到输出的多对一映射的函数、和/或产生的输出信息少于输入信息的函数,从而,给定输出很难确定输入。在这种函数中,输出称为输入的一个签名。
通信系统65利用自身生成的刷新密钥SSD-KEY以及从设备64接收的序列RANDBS作为到签名生成过程69的输入,以与设备64相同的方式生成一个签名值AUTHBS。通信系统65发送AUTHBS到设备64。设备64通过比较从通信系统65接收的签名值AUTHBS与自身生成的签名值AUTHBS,鉴定通信系统65。设备64通知通信系统65比较结果。设备64利用刷新密钥SSD-KEY鉴定完通信系统之后,通信密钥被新的通信密钥刷新,而且该刷新密钥可被丢弃。
在下面描述的图4的实施例中,通信系统65还进一步包括归属通信系统70和来访通信系统71。根据本发明另一方面,归属通信系统70发送刷新密钥SSD-KEY连带该设备用于确定通信密钥和/或刷新密钥的信息,到来访通信系统71。来访通信系统71和设备64利用该刷新密钥进行鉴定,从而能减少归属通信系统70和来访通信系统71之间的通信量,而且归属通信系统70至少能到完成刷新密钥后,还保持该新的通信密钥。
在这个实施例中,归属通信系统70利用存储在归属通信系统70以及与设备64相关的至少刷新序列RANDSSD和加密值A-KEY或其部分,生成一个新的通信密钥SSD-NEW。归属通信系统70还利用至少刷新序列RANDSSD和加密值A-KEY或其部分,以与设备64相同的上述方式生成刷新密钥。归属通信系统65在刷新指令72中发送刷新序列RANDSSD和刷新密钥SSD-KEY到来访通信系统71,而来访通信系统71在消息73中发送刷新序列RANDSSD到设备64,在设备64中,以与归属通信系统70相同的方式生成新的通信密钥SSD-NEW(在这个实施例中包括通信密钥SSD-A-NEW和SSD-B-NEW)和刷新密钥SSD-KEY。设备64利用该刷新密钥和查询序列RANDBS(包括其部分)作为到密码函数69的输入,生成一个查询序列RANDBS和一个签名值AUTHBS。
设备64在消息74中发送查询序列RANDBS到来访通信系统71,来访通信系统71利用至少刷新密钥SSD-KEY和序列RANDBS作为到密码函数69的输入,生成一个签名值AUTHBS。与转发RANDBS到归属通信系统106以生成AUTHBS,以及使归属通信系统70发送AUTHBS到来访通信系统71不同的是,通过发送刷新密钥SSD-KEY到来访通信系统71,由来访通信系统71以与设备64相同的方式生成AUTHBS,可减少通信量。来访通信系统71在消息76中发送AUTHBS到设备64。设备64通过比较从来访通信系统71接收的签名值AUTHBS与它自身生成的签名值AUTHBS,鉴定该通信系统。设备64在消息77中通知来访通信系统比较结果,而来访通信系统71在消息或鉴定报告78中通知归属通信系统70比较结果。设备64利用该刷新密钥鉴定完通信系统后,该通信密钥SSD(包括鉴定密钥SSD-A)被新的通信密钥SSD-NEW(包括新的鉴定密钥SSD-A-NEW)刷新。由此,新的鉴定密钥就不与来访通信系统71共用,也不是利用新鉴定密钥计算的鉴定中所用的鉴定值。归属通信系统70现在就能与来访通信系统71共用或不共用该通信密钥,如通信密钥SSD-A,而且可丢弃或不丢弃该刷新密钥。
根据本发明一方面,图5A示出了一个用于生成刷新密钥SSD-KEY,以及利用该刷新密钥生成该设备和通信系统使用的签名值AUTHSSD和AUTHBS,以在密钥刷新过程中彼此相互鉴定的一个密钥和签名值生成过程80实施例。该设备和通信系统都拥有一个与该设备相关的加密值A-KEY。当刷新一个通信密钥时,如通信密钥SSD(包括鉴定密钥SSD-A和加密密钥SSD-B),通信系统创建刷新序列RANDSSD以提供给该设备。序列RANDSSD可为一个随机数、在一定周期后重复的一个伪随机数、或一个递增计数器的输出,该递增计数器的接收值不能小于或等于前一接收值。
通信系统通过利用序列RANDSSD和加密密钥A-KEY作为输入,提取密码函数82(F0)的输出,来计算一个新的通信密钥SSD-NEW。该通信系统还利用序列RANDSSD和加密密钥A-KEY作为输入,提取密码函数84(F1)的输出,来计算一个新的刷新密钥SSD-KEY。在这个实施例中,密码函数82不同于密码函数84,从而导致刷新密钥不同于新的通信密钥SSD-NEW,或至少不同于鉴定密钥SSD-A-NEW。根据具体实施例,当利用序列RANDSSD和A-KEY的不同部分作为输入,以生成一个不同于新通信密钥SSD-NEW或至少不同于鉴定密钥SSD-A-NEW的刷新密钥时,密码函数82和84可相同或不同。根据具体实施例,该密钥刷新系统可利用密钥生成过程82和/或84的附加输入,例如,该无线设备的特征值或诸如ESN和/或IMSI的签名。密钥生成过程82和/或84利用随机数RANDSSD和值A-KEY作为输入以及任何附加输入,实现CAVE算法。CAVE算法作为一种单向函数在技术上是公知的。还可使用其它生成过程。
从该通信系统接收RANDSSD后,例如,在一个SSD刷新消息中,该设备可以与该通信系统相同的方式生成新的通信密钥SSD-NEW和刷新密钥SSD-KEY。生成新的通信密钥值(SSD-NEW)后,该设备和该通信系统可利用刷新密钥(SSD-KEY)进行鉴定。为此,该设备生成一个数或序列RANDBS,如一个随机数查询。序列RANDBS可为一个随机数、在一定周期后重复的伪随机数、或一个递增计数器的输出,该递增计数器的接收值不能小于或等于前一接收值。如果该设备鉴定了该通信系统,例如利用源自序列RANDBS的一个签名值,而且如果该通信系统鉴定了该设备,例如利用源自序列RANDSSD的签名值,那么该通信系统和该设备涉及相互鉴定,但不必为联结的相互鉴定。在这个实施例中,利用该刷新密钥可进行联结的相互鉴定,因为由该设备生成的RANDBS和由该通信系统生成的RANDSSD同时用于生成每个签名值AUTHSSD和AUTHBS,这两个签名值将用于该设备和该通信系统的鉴定过程中。通过利用来自通信系统的随机序列(RANDSSD)以及来自该设备的随机序列(RANDBS),以生成涉及相互鉴定的签名值,由该设备和该通信系统进行的鉴定被联结,而且不易受“重放”的攻击,在此,可获得一个随机数查询和对应的签名值,而且它们可重复用于获得未授权接入到设备和/或系统。
根据具体实施例,该刷新密钥可用于在该设备和该通信系统之间的单一、相互和/或联结鉴定中生成至少一个签名值。在这个实施例中,该设备提供RANDBS、RANDSSD和SSD-KEY连带任何附加数据,如源自国际移动台识别号(ISMI)的ESN和/或AUTH-DATA字符串,到签名过程86,签名过程86生成签名值AUTHSSD。该设备提供RANDBS、RANDSSD和SSD-KEY连带任何附加数据,如源自国际移动台识别号(ISMI)的ESN和/或AUTH-DATA字符串,到签名过程88。签名过程88生成签名值AUTHBS。
根据具体实施例,当利用值RANDBS、RANDSSD和/或SSD-KEY的不同部分或从中得到的值作为输入时,签名过程86和88为相同或不同的密码函数。根据具体实施例,该密钥刷新系统可利用签名过程86和/或88的不同输入,例如RANDBS可转为签名过程86的输入,而RANDSSD可转为签名过程88的输入。由此,该相互鉴定就不再被联结。签名生成过程86和/或88可利用随机数RANDSSD、RANDBS和刷新密钥SSD-KEY作为输入以及任何附加输入,实现CAVE算法。CAVE算法是一种技术上公知的单向函数。也可使用其他生成过程。
该通信系统确定AUTHSSD的方式与该设备相同。在这个实施例中,通信系统从该设备接收RANDBS,并利用刷新密钥SSD-KEY、RANDSSD和RANDBS以与该设备相同的方式生成AUTHSSD。利用AUTHSSD,一旦接收到该设备生成的AHTUSSD值,并比较该设备生成的AUTHSSD值与由该通信系统确定的AUTHSSD值,通信系统就可鉴定该设备。该通信系统也能利用刷新密钥SSD-KEY以与该设备相同的方式确定AUTHBS。通信系统发送签名值AUTHBS到该设备,而该设备通过比较从该通信系统接收的AHTUBS签名值与它自身生成的签名值AUTHBS,可鉴定该通信系统。如果鉴定成功,那么该设备和该通信系统可设置通信密钥SSD值为新的通信密钥SSD-NEW值。因此,在这个实施例中,鉴定密钥SSD-A被新的鉴定密钥SSD-A-NEW替代。如上所述,在这个实施例中,该新的SSD值可分为SSD-A和SSD-B,在此,SSD-A用于鉴定过程,而SSD-B用于密钥生成,例如在生成密钥KC或加密过程中。
给定新的加密密钥SSD-B,该设备和该通信系统可同时计算密钥KC的值,在此,值KC等于利用值SSD-B作为密钥输入和附加信息的CAVE算法的输出,如由该通信系统生成的一个序列RAND作为输入,如公式KC=CAVESSD-B(RAND)所示。在这一点上,无线设备和通信系统之间的通信被允许,以及利用一个密码函数加密,在此,输入为要被加密的消息和密钥KC。该密码函数通过相应标准被确定用于码分多址(CDMA)、时分多址(TDMA)以及全球移动系统(GSM)中。
当无线通信系统确定该共用密钥SSD可根据一定判定放弃时,当无线设备返回到归属通信系统或一个可信的来访通信系统时,当A-key被改变时,当建立一个新的签名以初始化SSD值时,和/或由于其它原因时,利用刷新密钥的密钥刷新可周期性地执行。另外,根据具体实施例,密钥生成过程82和84以及签名过程86和88的输入可包括,不同于或除上述外的值,或源自这些或其它值的输入。例如,至少部分无线设备的电子序列号(ESN)、无线设备的电话号码(MIN1)和/或无线设备的IMSI可用作密钥生成和签名过程82、84、86和88的输入。密钥生成过程82和84以及签名过程86和88可为哈什函数或任何单向密码函数,如CAVE算法和/或SHA-1。也可使用其它过程。
根据具体实施例,利用该刷新密钥的密钥刷新通信可发生在无线设备和归属鉴定中心之间(如果无线设备位于一个来访网路,则通过来访鉴定中心)。在可选实施例中,利用刷新密钥和其部分的密钥刷新可在其它或不同位置进行。
图5B示出了利用刷新密钥、在设备和无线通信系统之间进行相互鉴定的一个密钥刷新系统的实施例,当归属通信系统保持该新的通信密钥SSD-NEW时,归属通信系统和来访通信系统之间的通信量将减少。例如,归属通信系统90生成并发送序列RANDSSD,连带刷新密钥SSD-KEY到来访通信系统92作为部分刷新指令93。来访通信系统92在刷新消息96中发送序列RANDSSD到设备94,而设备94利用RANDSSD生成刷新密钥SSD-KEY。设备94生成序列RANDBS,并利用刷新密钥SSD-KEY,在随机查询消息98中发送RANDBS,连带在设备94生成的签名值AUTHSSD,到来访通信系统92。来访通信系统92利用刷新密钥SSD-KEY,以与设备94相同的方式生成签名值AUTHSSD。来访通信系统92通过比较从设备94接收的签名值AUTHSSD与它自身生成的签名值AUTHSSD,来鉴定设备94。
为在归属通信系统90维持新的通信密钥SSD-NEW时,减少归属通信系统90和来访鉴定系统92之间的通信量,来访通信系统92利用序列RANDBS和该刷新密钥,以与设备94相同的方式生成签名值AUTHBS。由此,来访通信系统92无需转发序列RANDBS到归属通信系统90,而且归属通信系统90也无需发送签名值AUTHBS到来访通信系统92。来访通信系统92在查询响应100中发送签名值AUTHBS到设备94。设备94通过比较从来访通信系统92接收的AUTHBS签名值与它自身生成的AUTHBS签名值,鉴定该通信系统。
如果比较正确,则完成相互鉴定,而且设备94在消息102中通知来访通信系统92刷新结果。来访通信系统92在消息102中通知归属通信系统90刷新结果,例如作为鉴定报告的一部分。消息102可包括附加信息,例如用于相互鉴定过程的参数,如签名值AUTHSSD和RANDBS,以便归属通信系统能确定来访通信系统是否作出了正确的刷新。如果刷新和相互鉴定成功,那么设备94设置通信密钥SSD(SSD-A和SSD-B)为新的通信密钥SSD-NEW(SSD-A-NEW和SSD-B-NEW)。密钥刷新之后,可丢弃该刷新密钥。
除了上述的实施例,可使用根据本发明原理的密钥刷新系统,它可忽略和/或增加输入参数到密钥生成和签名过程,和/或利用所述系统的改进或其中一部分。例如,该密钥刷新已描述为利用刷新密钥来进行设备和通信系统之间的相互鉴定,但是,通过比较利用该刷新密钥生成的签名值,该密钥刷新可进行单向鉴定。
根据具体实施例,密钥生成和签名过程的输入可从不同资源连接到该设备、来访通信系统和/或归属通信系统。例如,如果ESN用作签名过程的一个输入,而且来访通信系统执行AUTHBS和AUTHSSD的计算,那么,ESN可从归属通信系统传输到来访通信系统。应当注意的是,对于IS-41,与无线设备的每次呼叫相对应,每当该设备注册到来访通信系统时,来访通信系统和归属通信系统之间执行典型的通信。当无线设备位于归属通信系统内时,还可能执行相同过程。在这种情况下,归属通信系统,而不是来访通信系统与该设备通信。该设备和通信系统之间的通信通过一个服务基站。
此外,密钥刷新系统可用于根据各种多址技术,如CDMA、TDMA、FDMA或GSM的通信系统,以利用一个刷新密钥刷新通信密钥,来执行密钥刷新中的鉴定。例如,密钥刷新系统可用于工作在各种标准下的系统,如用于CDMA2000扩频系统的TIA/EIA/IS-2000标准、用于蜂窝系统移动台-陆地站适应性规范的EIA/TIA/IS-553标准、用于蜂窝系统双模移动台-基站数字控制信道的IS-136标准或其它标准。应当理解的是,可使用各个值、输入和功能块的不同符号标识、基准和特征。例如,用于描述归属通信系统的功能可在归属鉴定中心、归属位置寄存器(HLR)和/或归属MSC执行,而用于描述来访通信系统的功能可在来访鉴定中心、访问者位置寄存器和/或来访MSC执行。应当理解的是,该系统及其部分以及其所述结构可在或结合该设备的处理电路,或在该通信系统的不同位置实现,或在专用集成电路、软件驱动的处理电路、固件或普通技术人员受益于该说明书所能理解的其它离散组件结构中实现。上面的描述仅仅示意了本发明的原理应用。本发明的技术人员将认识到可对本发明进行这些和其它各种改进、处理,而不用严格遵循在此示意和描述的示例性应用,而且不会偏离本发明的精神和范围。
权利要求
1.一种刷新通信密钥(SSD)的方法,该通信密钥保持在与通信系统(65)通信的设备(64)中,所述方法的特征在于利用存储在所述设备(64)的一个加密值(A-KEY)生成一个新的通信密钥(SSD-NEW);利用存储在所述设备(14)的所述加密值(A-KEY)生成一个刷新密钥(SSD-KEY);利用所述刷新密钥(SSD-KEY)执行一个鉴定;以及在所述鉴定之后,利用所述新通信密钥(SSD-NEW)刷新所述通信密钥(SSD)。
2.根据权利要求1的方法,其特征在于接收一个刷新序列(RANDSSD);利用存储在所述设备(14)的一个加密值(A-KEY)和所述序列(RANDSSD)生成所述新的通信密钥(SSD-NEW);利用所述刷新密钥(SSD-KEY)生成一个签名值(AUTHBS);以及比较所述签名值(AUTHBS)与从所述通信系统(65)接收的一个签名值(AUTHBS),该签名值是利用所述刷新密钥(SSD-KEY)生成的,以执行所述鉴定。
3.根据权利要求2的方法,其特征还在于生成一个查询序列(RANDBS);发送所述查询序列(RANDBS)到所述通信系统(65);利用所述查询序列(RANDBS)和所述刷新密钥(SSD-KEY)生成所述签名值(AUTHBS);利用所述查询序列(RANDBS)和所述刷新密钥(SSD-KEY),接收由所述通信系统(65)生成的一个签名字符串(AUTHBS);以及比较所述签名值(AUTHBS)与所述通信系统生成的所述签名值(AUTHBS)。
4.根据权利要求3的方法,其特征在于利用所述刷新序列(RANDSSD)和所述刷新密钥(SSD-KEY)生成第二个签名值(AUTHSSD);以及发送所述第二个签名值(AUTHSSD)到所述通信系统(65),以比较利用所述序列(RANDSSD)由所述通信系统(65)生成的第二个签名值(AUTHSSD)与在所述通信系统(65)中生成的所述刷新密钥(SSD-KEY)。
5.根据权利要求3的方法,其特征在于,所述生成所述签名值(AUTHBS)包括生成一个签名字符串,该签名字符串至少包括部分所述刷新序列(RANDSSD)、部分所述查询序列(RANDBS)以及部分所述刷新密钥(SSD-KEY);以及根据至少所述签名字符串生成所述签名值(AHTUSSD)。
6.根据权利要求4的方法,其特征在于,所述生成所述签名值包括生成第二个签名字符串,该签名字符串至少包括部分所述刷新序列(RANDSSD)、部分所述查询序列(RANDBS)以及部分所述刷新密钥(SSD-KEY);以及根据至少所述第二签名字符串生成所述第二签名值(AHTUSSD)。
7.一种刷新通信密钥(SSD)的方法,该通信密钥保持在设备(64)和通信系统(65)中,所述方法的特征在于发送一个刷新序列(RANDSSD)到所述设备(64),用于所述设备(64)利用所述所述设备(64)中的一个加密值(CA-KEY)生成一个新的通信密钥(SSD-NEW);发送一个签名值(AUTHBS)到所述设备(64),用于所述设备(64)利用一个刷新密钥(SSD-KEY)比较所述通信系统生成的所述签名值(AUTHBS),该刷新密钥是从存储在与所述设备(64)相关的所述通信系统(65)内的加密值(A-KEY)得到的;以及接收一个刷新证实(77),之后所述通信密钥(SSD)在所述鉴定之后被所述新的通信密钥(SSD-NEW)刷新。
8.根据权利要求7的方法,其特征在于从所述设备(64)接收一个查询序列(RANDBS);以及利用所述查询序列(RANDBS)和所述刷新密钥(SSD-KEY)生成所述签名值(AUTHBS)。
9.根据权利要求8的方法,其特征在于利用所述刷新序列(RANDSSD)和所述刷新密钥(SSD-KEY)生成第二个签名值(AUTHSSD);以及接收利用所述设备(64)中的所述刷新序列(RANDSSD)以及所述刷新密钥(SSD-KEY)在所述设备(64)中生成的第二个签名值(AUTHSSD);比较所述第二签名值(AUTHSSD)与所述设备(64)生成的所述第二签名值(AUTHSSD)。
10.根据权利要求9的方法,其特征在于,所述生成一个签名值(AUTHBS)包括生成一个签名字符串,该签名字符串至少包括部分所述刷新序列(RANDSSD)、部分所述查询序列(RANDBS)以及部分所述刷新密钥(SSD-KEY);以及根据至少所述签名字符串生成所述签名值(AUTHSSD)。
11.根据权利要求9的方法,其特征在于,所述生成第二个签名值(AUTHSSD)包括生成第二个签名字符串,该签名字符串至少包括部分所述刷新序列(RANDSSD)、部分所述查询序列(RANDBS)以及部分所述刷新密钥(SSD-KEY);以及根据至少所述第二签名字符串生成所述第二签名值(AHTUSSD)。
12.一种刷新通信密钥(SSD)的方法,该通信密钥保持在设备(64)和归属通信系统(70)中,所述方法的特征在于生成一个刷新序列(RANDSSD);以及利用存储在所述归属通信系统(70)内、并且与所述设备(64)相关的一个加密值(A-KEY)生成一个新的通信密钥(SSD-NEW);利用所述加密值(A-KEY)和所述刷新序列(RANDSSD)生成一个刷新密钥(SSD);在利用所述刷新密钥(SSD-KEY)对所述设备(64)执行鉴定后,利用所述新的通信密钥(SSD-NEW)刷新所述通信密钥(SSD)。
13.一种刷新通信密钥(SSD)的方法,该通信密钥保持在设备(64)和归属通信系统(70)中,所述方法的特征在于从所述归属通信系统(70)接收一个刷新序列(RANDSSD),用于所述设备(64)利用所述设备(64)的一个加密值(A-KEY)生成一个新的通信密钥(SSD-NEW);从所述归属通信系统(70)接收一个刷新密钥(SSD-KEY),该刷新密钥是在所述归属通信系统(70)中利用与所述设备(64)相关的一个加密值(A-KEY)生成的;利用所述刷新密钥(SSD-KEY)对所述设备(64)执行鉴定;以及发送所述鉴定的结果到所述归属通信系统(70)。
全文摘要
本发明公开了一种用于刷新通信密钥的系统。通过利用刷新密钥执行鉴定,当归属通信系统维持该通信密钥时,通过发送该刷新密钥到来访通信系统。归属通信系统还利用序列RANDSSD和加密密钥A-KEY生成刷新密钥SSD-KEY。归属通信系统发送该刷新密钥SSD-KEY和序列RANDSSD到来访通信系统,而来访通信系统发送序列RANDSSD到该设备。该设备以与归属通信系统相同的方式生成新的通信密钥。
文档编号H04L9/08GK1308472SQ01103230
公开日2001年8月15日 申请日期2001年2月7日 优先权日2000年2月9日
发明者西姆扬·B·米兹科夫斯基 申请人:朗迅科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1