用户站的验证的制作方法

文档序号:6537232阅读:180来源:国知局
专利名称:用户站的验证的制作方法
技术领域
本发明涉及验证用户站,其中根据存储在用户站中的用户站特定密钥检验用户站的身份。本发明尤其涉及一种这样的方案识别由外部攻击者生成的验证消息,并且确保在处理这种验证消息时不会让这种将使攻击者能够破解密钥的信息到达外部攻击者。
本发明主要涉及在GSM(全球移动通信系统)系统中验证用户站。然而,需要注意的是,本发明还可以应用于其他方面,尽管在下面的说明中将主要结合GSM系统描述本发明。
背景技术
在GSM系统中,用户站的验证是以请求-响应程序为基础的。为了验证,已经将一个用户站特定密钥Ki和验证算法A3存储在用户站的SIM(用户身份模块)卡中。此外,还把该用户站的用户站特定密钥Ki和对应的验证算法A3存储在GSM网络的验证中心。为了执行验证,一个设置在验证中心中的随机数生成器首先生成一个随机数并发送给一个计算器作为输入。然后,该计算器根据该随机数、验证算法A3和密钥Ki计算一个响应SRES。验证中心随后将该随机数和响应SRES发送给一个网络部件以执行实际验证,对于GSM系统,该网络部件是一个VLR(访问者位置寄存器)。
访问者位置寄存器将接收到的随机数传送给待验证的用户站。用户站包括一个计算器,根据所接收的随机数、用户站的密钥Ki和验证算法A3计算一个响应SRES,然后用户站将该响应SRES发送给VLR。VLR随后将验证中心发送的响应与用户站发送的响应进行比较。由于用户站的存储器中存储的密钥Ki是用户站特定密钥,因此只有一个用户站能够生成对所发送的输入的一个正确响应。如果用户站的和验证中心的响应是相同的,则该用户站被验证。
上述的公知验证程序的缺点是,存在这样一种可能性,即,希望破解存储在用户站中的密钥的外部攻击者试图通过向用户站(或者其SIM卡)反复提供不同的输入,并监视用户站所发送的响应来破解该密钥。当足够频繁地重复该程序并收集关于输入和响应的统计时,可以根据收集的数据揭示密钥Ki。如果外部攻击者破解了该密钥,他或她能够通过产生具有相同密钥的一个第二用户站来克隆该用户站(或SIM卡),在此情况下,克隆的用户站可以用来进行呼叫,而原始用户站的所有者为此付费。
本发明的目的是减轻上述问题,并且提供一种使外部攻击者难于破解用户站的密钥的技术方案。上述目的是由本发明的一种识别由外部攻击者生成的验证消息的方法实现的,该方法包括接收包含一个输入的验证消息。本发明的方法的特征在于利用输入和一个检验算法计算一个消息验证码来检验输入的正确性,并且如果根据消息验证码该输入是不正确的,则将该验证消息识别为是外部攻击者生成的消息。
本发明还涉及一种电信系统,其中利用了本发明的一种方法。本发明的电信系统包括至少一个用户站,包括一个计算器和一个其内存储有一个用户站特定密钥的存储器;和验证所述用户站的验证装置,该验证装置包括一个随机数生成器,一个计算器和一个其内存储有所述的至少一个用户站的用户站特定密钥的存储器,该验证装置被设置成根据一个输入、一个验证算法和存储在验证装置的存储器中的用户站特定密钥计算一个响应,将所述的输入发送给所述用户站,以及如果验证装置从用户站接收到相当于由验证装置计算的响应的一个响应,则指示该用户站已经被验证。本发明的电信装置的特征在于将验证装置设置为,通过利用由随机数生成器所生成的一个随机数和一个第一算法计算所述的输入;以及将用户站设置为,利用该输入和一个检验算法计算一个消息验证码来检验所接收的输入的正确性,如果根据消息验证码该输入是正确的,则用户站利用验证算法、存储在用户站的存储器中所述的密钥和该输入计算将要发送给验证装置的一个响应。
本发明还涉及电信系统中的一种验证中心,该验证中心包括一个随机数生成器,一个计算器和一个其内存储有用户站的用户站特定密钥的存储器,并且生成验证一个特定用户站所需的一个输入和一个响应,为了产生该响应,该验证中心被设置为从存储器中取出待验证的用户站的密钥,根据从存储器取出的密钥、所述的输入和一个验证算法计算该响应。本发明的验证中心的特征在于,该验证中心被设置成利用随机数生成器生成的一个随机数以及一个第一算法产生所述的输入。
本发明还涉及电信系统中的一个用户站,为了验证该用户站,该用户站包括一个其内存储有密钥的存储器,接收一个输入的装置,以及一个计算器。本发明的用户站特征在于,该用户站被设置成利用该输入和一个检验算法计算一个消息验证码,来检验输入的正确性;以及计算器被设置成,如果根据消息验证码该输入是正确的,则利用一个验证算法、所述的密钥和所述的输入计算用户站将要传送的一个响应。
本发明还涉及一种SIM卡,包括一个计算器和一个其内存储有一个密钥的存储器,以及一个接收一个输入的入口。本发明的SIM卡特征在于该SIM卡被设置成,利用输入和一个检验算法计算一个消息验证码,以检验所接收的输入的正确性,如果根据消息验证码该输入是正确的,则利用一个验证算法、所述的密钥和所述的输入计算将要由SIM卡传送的响应。
本发明的基本思想是,验证一个用户站的时候,将用户站可以检验其正确性的一个输入用作输入以替代一个随机数时,实现一个使得更难于破解用户站特定密钥的技术方案。用户站可以识别一个不正确输入,即,一个很可能来自试图破解用户站的密钥的外部攻击者的输入。根据本发明,可以对用户站编程以进行工作,这样,当用户站已经识别一个来自外部攻击者的输入时,就会使破解密钥变得更加困难。
本发明的技术方案的最重要的优点是,外部攻击者非常难于破解用于验证一个特定用户站的密钥,而且本发明只需非常轻微的改变就可以应用于现有的系统。例如,在GSM系统,本发明可以直接实施在系统的验证中心中,这意味着新电话机可以从一开始就装备能够根据本发明检验输入的SIM卡。本发明不需要改变旧的电话机中的SIM卡,因为旧的SIM卡能够处理由根据本发明操作的一个验证中心所产生的输入。旧的电话机仅仅假设该输入是一个与原先一样与验证相联系的要被处理的随机数。
在本发明的第一优选实施例中,只有当用户站已经检验并且断定一个输入是正确的时,用户站才产生和传送该输入。所以密钥更难于破解,因为,外部攻击者不知道如何选择该输入,以使用户站执行的检验将指示该输入是正确的。电信系统的验证中心,例如,包括由用户站使用的检验程序的信息,这意味着验证中心能够产生一个将要发送给用户站的输入,该输入根据用户站执行的检验被认为是正确的输入。
在本发明的第二优选实施例中,如果用户站检测到所接收的输入是不正确的,则计算和传送一个随机响应。该随机响应可以由不同于该验证算法的另一个算法计算。作为选择,随机响应也可以由该验证算法计算,但不是利用用户站的密钥计算,该计算利用了另一个密钥,其是一个“伪密钥”,或者,作为选择,随机响应可以包括由一个随机数生成器生成的一个随机数。关键是随机响应与一个真实响应相似,这样,外部攻击者不能根据(例如)该响应的长度得知该随机响应不是装备有一个验证算法和一个密钥的一个真实响应。
在本发明的第三优选实施例中,用户站保持一个根据消息验证码计算不正确的输入的次数的计算器功能。在此情况下,当超出一个预定极限值时,该用户站锁定,使它不再向输入提供一个正确的响应。在该实施例中,用户站可以产生和传送正确的或不正确的响应,而不考虑输入是否正确,直至计算器功能指示不正确输入的最大次数被超过,从而使用户站的验证功能锁定。锁定可以发生,使用户站不再提供任何响应,或者作为选择,为了误导,用户站可以继续产生仅仅不正确的响应,比如随机响应。这可以避免外部攻击者具有利用(例如)统计破解用户站的密钥的可能性。
用户站的计算器功能可以被实施,例如,当设置时,计算器功能被设置到某个初始值,并且还确保以后不能操纵该计算器功能(例如,为了把计算器功能复位到初始值)。然后,当用户站的计算器功能达到一个预定极限值(取值范围可以是从100到10000,依应用而定)时,其验证功能将被永久锁定,致使用户站不再提供正确响应。当用户站是一个其验证功能被设置在比如GSM移动站中的SIM卡上的用户站时,用户站必须接着装备一个新的SIM卡,以替换被锁定的SIM卡。
本发明的方法、系统、用户站和SIM的优选实施例在从属权利要求2至6、8至11、14至17、19和20中公开。


下面结合附图对本发明进行详细说明。
图1是显示本发明一个方法的第一优选实施例的流程图;图2是显示本发明一个系统的第一优选实施例的方框图;图3图示说明了在验证一个用户站中利用的一个输入;图4是显示本发明的方法的第一优选实施例的流程图;图5是显示本发明的系统的第三优选实施例的方框图;图6是显示本发明方法的第二优选实施例的流程图。
具体实施例方式
图1是显示本发明的一个方法的第一优选实施例的流程图。可以在(例如)处理由GSM用户站/SIM卡接收的验证消息时使用图1的流程图。
在图1的方框A中,接收一个包括输入的RAND的验证消息。
在方框B中,根据输入的RAND和预定的检验算法计算一个消息验证码。应当选择所使用的检验算法使其能够根据计算的结果推断该输入是否正确。这样一个检验可以例如通过预先确定该输入RAND总是由两个部分(如图3所示)组成来执行;因而输入包括一个随机数RND和由预定检验算法计算的一个消息验证码MAC。因此,在方框B中,用来计算消息验证码的部分RND可以从输入的RAND中取出。
在计算消息验证码之后,在方框C中检验该输入的剩余部分MAC是否对应于计算的消息验证码。如果根据计算的消息验证码确定该输入不正确,则可以推断该输入来自外部攻击者。
图1的流程图使得能够识别来自一个外部攻击者的一个输入,这意味着验证处理可以从此继续向前进行,使得将不提供给外部攻击者足够的用于(他或她)破解密钥的信息量。
图2是显示本发明的一个系统的第一优选实施例的方框图。图2的系统可以是例如GSM系统。
在图2的情况下,系统的验证设备主要部分被安装在一个特殊的验证中心AC中,该验证中心AC与GSM系统结合,并且可以位于(例如)与一个HLR(原籍位置寄存器)相连的位置。在GSM系统中,用户站由一个VLR验证,该VLR从验证中心AC接收一个输入RAND和响应SRES使VLR能够验证用户站MS。
图2的验证中心AC包括一个随机数生成器1,用于生成送入计算器2的随机数RND。计算器2根据随机数RND和一个第一预定算法g计算MAC(消息验证码)。然后,计算器2依据随机数RND和消息验证码MAC形成一个输入RAND。在图2的示范性实例中,输入RAND由两个部分组成。该输入被图示在图3中。
验证中心AC包括一个存储器4,其内存储有与验证中心参与的验证有关的所有这些用户站的密钥。实际上,验证中心可以是运营者特定的,在此情况下,该运营者的用户站的所有密钥被存储在验证中心的存储器中。在图2的情况下,包括移动站的用户站MS的密钥Ki已经存储在该存储器中。验证中心向计算器3提供从存储器4取出的密钥Ki以及由计算器2产生的输入RAND。
计算器3根据密钥Ki、输入RAND和验证中心A3计算一个响应SRES。验证中心将输入RAND和响应SRES发送给VLR。
为了验证用户站MS,VLR向用户站MS发送从验证中心接收的输入RAND。VLR在存储器中存储从验证中心接收的响应以便由比较元件10使用。
用户站MS所接收的输入RAND被传送给位于用户站MS的SIM卡上的计算器5。计算器5随后利用该输入的预定部分和一个检验算法f计算一个消息验证码。在图2的实施例中,假定验证中心AC所产生的输入RAND的结构与图2所示的相似,即,该输入包括由随机数生成器1生成的随机数RND和由算法g(RND)计算的消息验证码MAC。用户站检验算法f随后取出输入RAND的第一部分RND,然后采用与验证中心的计算器2所使用相似的方式,即利用算法g(RND)计算一个消息验证码MAC。计算器5将所计算的消息验证码MAC提供给比较单元6,然后该比较单元将计算器5所计算的消息验证码MAC与输入RAND中的消息验证码MAC进行比较。如果比较单元6检测到计算器所计算的消息验证码相当于该输入剩余的部分MAC,则比较单元6向一个控制单元7指示该输入RAND是正确的。
如果控制单元7检测到该输入是正确的,则它激活一个计算器8计算一个对输入RAND的响应。计算器8根据输入RAND、存储器9中存储的用户站特定密钥Ki和验证算法A3计算响应SRES。该算法是与验证中心的计算器3所使用的算法相同的算法A3,该参数是与验证中心的计算器3所采用的参数相同的参数。用户站MS产生将要发送给VLR的响应SRES,它相当于由验证中心发送的响应SRES。比较之后,当VLR的比较单元10检测到该响应是相同时,则断定用户站MS已经被验证。
另一方面,如果比较单元6指示控制单元7该输入RAND不正确,则该输入很可能是外部攻击者提供的。在这种情况下,控制单元中断验证该用户站的处理,使得用户站不发送响应。作为选择,控制单元7随后可以激活一个将要传送的随机响应。在这里,该随机响应是指与一个正确响应相似的任何响应。这样的一个随机响应例如可以包括一个随机数或者由一个算法计算的一个响应。关键在于该响应不是由验证算法A3、密钥Ki和输入RAND计算的。如果是这种情况,提供给外部攻击者的是对所提供的输入的真实响应,可以有助于破解该密钥。另一方面,如果提供给外部攻击者的是一个与真实响应相似的(即,响应的长度等于真实响应的长度等)随机响应,则外部攻击者将不知道该响应是一个不正确的响应。
图2的系统所示的本发明的验证中心最好还可以与现有的,换言之旧式用户站结合使用。当选择输入RAND使其长度相当于提供给旧式用户站的输入时,此安排也是可行的。当然,旧式用户站不能够检验响应SRES是否是正确的,但是旧式用户站能够依据包括消息验证码的输入计算响应SRES。
图2的方框图中显示的方框由诸多电子电路组成,或者作为选择,可以由软件实施一个或多个方框。因此,例如在用户站或验证中心不需要两个分离的计算器,而是例如以本身已知的方式由一个处理器或者计算机程序实施该计算器。
尽管已经结合图2说明了用户站的SIM卡包括产生关于验证的一个响应的必要部分,但是也能够将这些部分,而不是SIM卡设置在用户站中。这样的一种技术方案与不包括SIM卡的系统尤其相关。
图3示出了验证一个用户站时利用的一个输入。在图2的系统中,例如,计算器2可以利用一个随机数RND和算法g产生一个输入。为了适用于GSM系统,输入RAND的总长度为16字节。根据本发明,例如,随机数RND的长度可以是8至14字节。相应地,根据随机数和算法g计算的消息验证码MAC的长度可以是2至8字节。
当本发明的用户站接收图3的输入时,它利用检验算法和该输入的预定部分(即,该输入的随机数RND)计算消息验证码。如果用户站计算的消息验证码相当于该输入的剩余部分,即,消息验证码MAC,则用户站断定该输入是正确的。
图4是显示本发明的方法的第二优选实施例的流程图。例如,图4的流程图可以被利用来处理图2的用户站中的一个验证消息。
图4中的方框A至C与图1中的方框A至C相似,即,在这些方框中,根据所计算的消息验证码检验所接收的输入是否正确。
如果在方框C中,根据所计算的消息验证码认为输入是正确的,则在方框D’中计算一个响应SRES,并传送。该响应根据预定验证算法A3、密钥Ki和输入RAND来计算。
另一方面,如果在方框C中根据消息验证码检测到输入RAND不正确,则该输入很可能来自一个试图破解验证中使用的密钥的外部攻击者。根据本发明,对于如何进一步处理存在两种可替换方式。
第一种可替换方式由箭头E’指示,其中验证消息的处理被中断。将不发送对于验证消息的响应。所以,外部攻击者收不到对于输入的响应,这意味着攻击者不能收集关于输入和响应的任何统计或者使用这种统计来破解密钥。
第二种可替换方式被显示在方框F’中,其中对于输入RAND产生并传送一个随机响应。该随机响应可以是类似一个真实响应但不是按照与真实响应(例如,方框D’)相似的方式计算的任何响应。所以,随机响应可以直接由随机数生成器产生,或者可以利用一个合适算法和输入依据该输入来计算。外部攻击者将接收一个不正确的响应,然而攻击者并不知情。
图5是显示本发明的系统的第二优选实施例的方框图。在图5的实施例中,验证中心AC和访问者位置寄存器VLR与图2的实施例中显示的验证中心和访问者位置寄存器VLR相似。与结合图2实施例所述相似的一个输入被发送给用户站MS’。
位于图5的用户站MS’中的SIM卡SIM’与结合图2所述的SIM卡非常相似。图5的实施例与图2的区别在于用户站的SIM’卡保持有关不正确输入次数的计算器功能。
用户站MS’接收的输入RADN被传送给用户站的SIM卡中的计算器5。计算器5利用该输入的预定部分和检验算法f计算一个消息验证码。在图5的实施例中,假定验证中心AC产生的输入RAND的结构与图3所示的相似,即,该输入包括由随机数生成器1生成的随机数RND和由算法g(RND)计算的消息验证码MAC。用户站检验算法f随后取出该输入RAND的第一部分RND,然后按照与验证中心的计算器2所使用的相似方式,即采用算法g(RND)计算一个消息验证码MAC。计算器5将所计算的消息验证码MAC提供给比较单元6。然后,比较单元将计算器5所计算的消息验证码MAC与该输入RAND中的消息验证码MAC进行比较。如果比较单元6检测到计算器所计算的消息验证码相当于该输入的剩余部分MAC,则比较装置6指示控制单元7’该输入RAND是正确的。
如果控制单元7’检测到该输入是正确的,则激活计算器8’计算一个对输入RAND的响应。计算器8’根据输入RAND、存储器9’中存储的用户站特定密钥Ki和验证算法A3计算响应SRES。因而,该算法是与验证中心的计算器3所使用的算法相同的算法A3,该参数是与验证中心的计算器3所采用的参数相同的参数。因此,用户站MS产生将要发送给VLR的响应SRES,它相当于由验证中心发送的响应SRES。比较之后,当VLR的比较单元10检测到这些响应相同时,则断定用户站MS已经被验证。
另一方面,如果比较单元6指示控制单元7’该输入RAND不正确,则响应很可能是由外部攻击者提供的。控制单元7’随后更新用户站的计算器功能,用于保持所接收的不正确输入次数的记录。在图5的示范性实例中,这可以借助存储器9’中存储的变量C和极限值Cmax实现。当SIM卡SIM’首次开始使用时,将变量C设定为在存储器9’中存储的初始值零。同样,变量Cmax被给定为存储器9’中存储的(例如)一个值1000。当比较单元6指示所接收的输入是不正确的时,控制单元7’将变量C的值递增1,并且将变量C的新值与最大值Cmax进行比较。如果达到了最大值,则控制单元锁定SIM卡的操作,使SIM卡不再产生对于所接收的输入RAND的正确响应。实际上,这可以这样来实现,使SIM卡不再产生任何响应,或者SIM卡通过仅产生随机响应而继续工作,或者SIM卡将仅产生指示它被锁定的通知。
如果比较单元已经通知控制单元7’一个错误响应,并且,如果变量C还未达到与计算器功能更新有关的最大值Cmax,则控制单元可以根据场合以许多可替换方式进行操作。一个可替换方式是,控制单元中断验证用户站的处理,使用户站将不再发送响应。作为选择,控制单元7’可以在相似的场合下激活将要传送的一个随机响应。在这里,随机响应是指类似于一个真实响应的任何响应。这样一个随机响应例如可以包括一个随机数和一个由一个算法计算的响应。关键在于该响应不是由验证算法A3、密钥Ki和输入RAND计算的。如果是这种情况,将向外部攻击者提供一个对所提供的输入的真实响应,它也许有助于破解密钥。另一方面,如果提供给外部攻击者一个类似于真实响应(即,响应的长度等于真实响应的长度等)的随机响应,则外部攻击者将不会知道该响应是不正确的响应。
图5的方框图显示的方框可以由诸多电子电路组成,或者作为选择,一个或多个方框可以由软件实施。因此,例如在用户站或验证中心不需要两个分离的计算器,而是例如以本身已知的方式由一个处理器或者计算机程序实施该计算器。
尽管已经结合图5说明了用户站的SIM卡包括产生关于验证的一个响应的必要部分,但是也能够将这些部分,而不是SIM卡设置在用户站中。这样的一种技术方案与不包括SIM卡的系统尤其相关。
图6是显示本发明的方法的第三实施例的流程图。图6的流程图例如可以被利用在图5的用户站中用于处理验证消息。当设置指示不正确输入的最高允许次数的一个预定变量Cmax时,已经将它们存储在用户站(或者用户站的SIM卡)中。此外,用于保持所接收的不正确响应次数的一个记录的变量C被设置为一个预定的初始值。
在图6的方框A”中,接收包括输入RAND的一个验证消息。
在方框B”中,检验由计算器功能利用的变量C是否达到极限值Cmax。如果是,则意味着已经达到接收不正确输入的最高允许次数Cmax,这意味着验证处理被中断。否则,处理前进到方框C”。
在方框C”中,根据输入RAND和一个预定检验算法计算一个消息验证码。应当选择所使用的检验算法,使其可以根据计算的结果推断该输入是否正确。这样的一种检验可以,例如通过以下方式执行,预先确定输入RAND总是由两个部分(如图3所示)组成,因而输入包括一个随机数RND和由预定检验算法计算的一个消息验证码MAC。在方框C”中,用来计算消息验证码的部分RND可以从输入RAND中取出。在计算消息验证码之后,在方框D”中检验该输入的剩余部分MAC是否对应于计算的消息验证码。
如果在方框D”中,根据计算的消息验证码推断该输入是正确的,则在方框E”中计算并传送一个响应SRES。该响应是根据预定验证算法A3、密钥Ki和输入RAND计算的。
另一方面,如果在方框D”中根据消息验证码检测到输入RAND是不正确的,则该输入RAND很可能来自试图破解该验证中所使用的密钥的外部攻击者。然后,处理前进到方框F”。
在方框F”中,用于计算器功能的变量C的值通过例如将变量C的值递增或递减1来更新(取决于当设置计算器功能时如何确定C和Cmax的初始值)。当变量C的值已经变化时,对于如何根据本发明继续进行存在四个可替换方式。
第一可替换方式由箭头G1”指出,其中照例计算和传送响应。然后,向外部攻击者提供对攻击者使用的输入的正确响应。然而,通过利用统计破解密钥的可能性受到制约,因为计算器功能可以用来确定将要验证的装置在锁定之前仅产生例如1000个响应,并且停止正确响应的产生。
第二可替换方式由箭头G2”指出,其中在方框H”中产生和发送一个随机响应。该随机响应可以是由随机数生成器生成的一个响应,或者作为选择,可以是由另一个密钥而不是用于验证的密钥计算的响应。关键在于外部攻击者不能根据该响应推断该响应是否正确。
第三种可替换方式由箭头G3”指出,即,在方框1”中产生和发送一个通知,以指示该输入是不正确的。
第四种可替换方式由箭头G4”指出,其中中断验证消息的处理。随后停止发送对于验证消息的响应。因而,外部攻击者将收不到对输入的响应,这意味着攻击者不能收集关于输入和响应的任何统计,或者不能利用这种统计来破解密钥。
图6的流程图在方框B”中显示了当接收到输入时立即执行变量C与极限值Cmax比较的情况。当然,这仅仅是如何实施比较的一个实例。因而存在许多不同的可替换方式,一个可替换方式是,例如当已经发现所接收的响应是不正确的并且已经更新了计算器功能的值之后,执行由计算器功能使用的变量C与极限值Cmax之间的比较。
需要理解的是,上述说明和所涉及的附图仅仅用来解释本发明。很明显,本领域的熟练技术人员在不背离所附的权利要求所公开的精神和范围的条件下,可以以各种方式修改本发明。
权利要求
1.一种识别由外部攻击者生成的验证消息的方法,该方法包括接收包含一个输入的验证消息,该方法的特征在于利用该输入和一个检验算法计算一个消息验证码来检验该输入的正确性,和如果根据消息验证码该输入是不正确的,则将该验证消息识别为是外部攻击者生成的消息。
2.根据权利要求1所述的方法,其特征在于如果根据消息验证码该输入是正确的,则利用验证算法、该输入和一个密钥计算一个响应,并传送所述响应。
3.根据权利要求1或2所述的方法,其特征在于维持一个计算器功能,以保存根据消息验证码是不正确的输入次数的记录,和如果计算器功能指示不正确输入的次数已经达到预定的极限值,则锁定将要验证的装置的验证功能,使将要验证的装置不再对验证消息中的输入产生正确响应。
4.根据权利要求1至3中任何一个所述的方法,其特征在于,如果根据消息验证码该输入是不正确的,则产生并传送一个随机响应。
5.根据权利要求4所述的方法,其特征在于所述随机响应是一个随机数。
6.根据权利要求4所述的方法,其特征在于通过利用该输入和一个预定算法计算所述的随机响应。
7.一种电信系统,包括至少一个用户站(MS,MS’),包括一个计算器(8,8’)和一个其内存储有一个用户站(MS,MS’)特定密钥(Ki)的存储器(9,9’);和验证所述用户站的验证装置(1,3,4,VLR),该验证装置包括一个随机数生成器(1),一个计算器(3)和一个其内存储有所述的至少一个用户站(MS,MS’)的用户站特定密钥(Ki)的存储器(4),该验证装置被设置成-根据一个输入(RAND)、一个验证算法(A3)和存储在验证装置的存储器(4)中的用户站特定密钥(Ki)计算一个响应(SRES),-将所述的输入(RAND)发送给所述的用户站(MS),以及-如果验证装置(VLR)从用户站(MS,MS’)接收到相当于由验证装置计算的响应(SRES)的一个响应(SRES),则指示该用户站(MS,MS’)已经被验证,其特征在于将验证装置设置为,通过利用由随机数生成器(1)所生成的一个随机数(RND)和一个第一算法(g)计算所述的输入(RAND);以及将用户站(MS,MS’)设置为,-利用输入(RAND)和一个检验算法(f)计算一个消息验证码(MAC)来检验所接收的输入(RAND)的正确性,-如果根据消息验证码(MAC)该输入(RAND)是正确的,则用户站(MS,MS’)利用验证算法(A3)、存储在用户站(MS,MS’)的存储器(9,9’)中的所述密钥(Ki)和输入(RAND)计算将要发送给验证装置(VLR)的一个响应。
8.根据权利要求7所述的系统,其特征在于用户站(MS’)被设置成-维持一个计算器功能(7’,9’),以保存根据消息验证码是不正确的输入(RAND)的次数(C)的记录,和-如果计算器功能(7’,9’)指示不正确输入的次数(C)已经达到预定的极限值(Cmax),则锁定,使用户站不再对所接收输入产生正确响应。
9.根据权利要求7或8所述的系统,其特征在于用户站(MS,MS’)被设置成如果根据消息验证码(MAC)该输入是不正确的,则用户站(MS,MS’)计算将要发送给验证装置(VLR)的一个随机响应。
10.根据权利要求7或8所述的系统,其特征在于如果根据消息验证码所述输入(RAND)是不正确的,则用户站(MS,MS’)不向验证装置发送响应。
11.根据权利要求7至10之任一项所述的系统,其特征在于所述系统是移动通信系统,最好是一个GSM系统。
12.一种电信系统中的验证中心(AC),该验证中心包括随机数生成器(1),计算器(3),和其内存储有用户站的用户站特定密钥的存储器(4),并且生成验证一个特定用户站(MS,MS’)所需的一个输入(RAND)和一个响应(SRES),并且为了产生该响应,该验证中心被设置为-从存储器(4)中取出待验证的用户站(MS,MS’)的密钥(Ki),-利用从存储器(4)中取出的密钥(Ki)、所述的输入(RAND)和一个验证算法(A3)计算响应(SRES),其特征在于,该验证中心被设置成利用由随机数生成器(1)生成的一个随机数(RND)以及一个第一算法(g)产生所述的输入(RAND)。
13.一种电信系统中的用户站(MS,MS’),为了验证该用户站,该用户站包括其内存储有密钥(Ki)的存储器(9,9’),接收一个输入(RAND)的装置,以及计算器(5,8,8’),其特征在于用户站被设置成利用输入(RAND)和一个检验算法(f)计算一个消息验证码(MAC),来检验该输入的正确性;以及计算器(8,8’)被设置成,如果根据消息验证码(MAC)该输入是正确的,则利用一个验证算法(A3)、所述的密钥(Ki)和所述的输入(RAND)计算用户站(MS,MS’)将要传送的一个响应(SRES)。
14.根据权利要求13所述的用户站,其特征在于用户站被设置成-维持一个计算器功能(7’,9’),以保存根据消息验证码是不正确的输入(RAND)的次数(C)的记录,和-如果计算器功能(7’,9’)指示不正确输入的次数(C)已经达到预定的极限值(Cmax),则锁定,使用户站不再对所接收的输入产生正确响应。
15.根据权利要求13或14所述的用户站,其特征在于用户站被设置成通过根据该输入(RAND)的预定部分(RND)计算消息验证码以及通过将所述消息验证码(RAND)与该输入的剩余部分(MAC)进行比较,检验输入的正确性,由此,如果该输入的剩余部分(MAC)相当于消息验证码(MAC),则输入(RAND)是正确的。
16.根据权利要求13至15之任一项所述的用户站,其特征在于所述的用户站(MS,MS’)是一个移动通信系统,最好是GSM系统中的用户站,并且存储器(9,9’)和/或计算器(5,8,8’)被设置在一个SIM卡上,该SIM卡可拆卸地装在用户站上。
17.根据权利要求13至16之任一项所述的用户站,其特征在于计算器(8,8’)被设置成如果根据消息验证码(MAC)该输入(RAND)是不正确的,则计算将要由用户站(MS,MS’)传送的一个随机响应。
18.一种SIM卡,包括一个计算器(8,8’)和一个其内存储有一个密钥(Ki)的存储器(9,9’),以及一个接收一个输入(RAND)的入口,其特征在于该SIM卡被设置成-利用输入(RAND)和一个检验算法(f)计算一个消息验证码(MAC),检验所接收的输入(RAND)的正确性,以及-如果根据消息验证码(MAC)该输入是正确的,则利用一个验证算法(A3)、所述的密钥(Ki)和所述的输入(RAND)计算将要由SIM卡传送的响应(SRES)。
19.根据权利要求18所述的SIM卡,其特征在于SIM卡被设置成-维持一个计算器功能(7’,9’),以保存根据消息验证码是不正确的输入(RAND)的次数(C)的记录,和-如果计算器功能(7’,9’)指示不正确输入的次数(C)已经达到预定的极限值(Cmax),则锁定,使用户站不再对所接收的输入产生正确响应。
20.根据权利要求17或18所述的SIM卡,其特征在于计算器(8,8’)被设置成如果根据消息验证码(MAC)该输入(RAND)是不正确的,则计算将要由用户站(MS,MS’)传送的一个随机响应。
全文摘要
本发明涉及一种电信系统,包括:至少一个用户站(MS),在存储器(9,9’)中存储有一个密钥(Ki);和验证所述用户站的验证装置(1,3,4,VLR)。为了使用户站特定密钥更难于破解,用户站(MS)被设置成:利用输入(RAND)和一个检验算法(f)计算一个消息验证码(MAC)来检验所接收的输入(RAND)的正确性;如果根据消息验证码(MAC)该输入(RAND)是正确的,则用户站(MS)利用验证算法(A3)、存储在用户站(MS)的存储器(9)中所述的密钥(Ki)和输入(RAND)计算将要发送给验证装置(VLR)的一个响应。
文档编号G06K19/10GK1382357SQ00814588
公开日2002年11月27日 申请日期2000年10月18日 优先权日1999年10月19日
发明者劳雷·帕特罗, 坚尼·兰特拉 申请人:塞特克有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1