CN101160780B - 一种受控的密钥更新方法及装置 - Google Patents

一种受控的密钥更新方法及装置 Download PDF

Info

Publication number
CN101160780B
CN101160780B CN200680012300.5A CN200680012300A CN101160780B CN 101160780 B CN101160780 B CN 101160780B CN 200680012300 A CN200680012300 A CN 200680012300A CN 101160780 B CN101160780 B CN 101160780B
Authority
CN
China
Prior art keywords
terminal
network side
control parameter
authentication
sync mark
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200680012300.5A
Other languages
English (en)
Other versions
CN101160780A (zh
Inventor
刘斐
王正伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN101160780A publication Critical patent/CN101160780A/zh
Application granted granted Critical
Publication of CN101160780B publication Critical patent/CN101160780B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明提供了一种受控的密钥更新方法,应用3G通信网络中,所述方法包括,在网络侧设置用于控制鉴权密钥更新的控制参数;终端对网络侧一致性验证通过后,根据自身的鉴权密钥、接收的随机数、自己保存的或用户输入的控制参数并用特定值替代终端序列号来生成再同步标记,对网络侧发送再同步请求命令,附上所述再同步标记;网络侧接收到所述再同步请求命令,判断出终端序列号为特定值时,根据设置的所述控制参数、随机数、网络侧的鉴权密钥对所述再同步标记进行一致性验证,若通过验证,则执行密钥更新,否则,执行相关处理。本发明中,生成再同步标记时加入了控制参数,进而防止非法用户通过非法克隆的用户卡更新鉴权密钥。

Description

一种受控的密钥更新方法及装置
技术领域
本发明涉及通信安全技术,具体涉及一种受控的鉴权密钥更新方法及装置。
背景技术
现有的第三代(3G,3rd Generation)移动通信系统中,在移动终端中保存国际移动用户标识(IMSI,International Mobile Subscriber IdentificationNumber)、鉴权密钥KI和序列号SQNMS,归属位置寄存器/鉴权中心(HLR/AUC,Home Location Register/Authentication Center)中针对该移动终端对应保存IMSI、KI和序列号SQNHE,以用于移动终端和网络相互鉴权。
3G通信系统的现有鉴权流程主要为:
HLR/AUC产生随机数RAND,根据RAND和KI产生期望响应XRES、加密密钥CK、完整性密钥IK;根据RAND、SQNHE、鉴权密钥KI和鉴权管理域AMF产生出消息鉴权编码MAC-A;根据MAC-A、SQNHE、匿名密钥AK和AMF得到鉴权标记AUTN(Authentication Token)。
由RAND和XRES、CK、IK和AUTN组成鉴权五元组,将该五元组发送给移动交换中心/拜访位置寄存器(MSC/VLR,Mobile SwitchCenter/Visit Location Register)保存。当然,实际当中,HLR/AUC是应MSC/VLR的请求才将产生的相应的一个或多个五元组发送给MSC/VLR的。
鉴权时,MSC/VLR将对应五元组中RAND和AUTN发送给终端;终端根据自己保存的KI验证AUTN的一致性;如果一致性验证不通过,则向MSC/VLR返回鉴权失败信息;若一致性验证通过,则判断SQNHE是否属于可接受的范围:若属于,则终端判断出对网络鉴权通过,终端向MSC/VLR返回自己产生的鉴权响应,并根据AUTN中的SQNHE更新SQNMS;MSC/VLR比较终端返回的鉴权响应和对应五元组中的XRES是否一致来判断终端的合法性。若判断出SQNHE不属于可接受范围,则终端根据SQNMS产生再同步标记AUTS(Resynchronisation Token),对MSC/VLR返回再同步请求或同步失败(Synchronisation Failure)消息,同时附上产生的再同步标记AUTS,也即消息中包含AUTS;MSC/VLR接收到再同步标记AUTS时,将AUTS和对应五元组中的RAND发送给HLR/AUC;HLR/AUC根据对应保存的KI和接收到的RAND,判断AUTS的合法性;如果不合法,则HLR/AUC向MSC/VLR返回AUTS不合法信息;如果判断出AUTS合法,则HLR/AUC根据AUTS中的SQNMS更新SQNHE,并产生一个新的鉴权五元组发送给MSC/VLR;MSC/VLR接收到新的五元组后,删除对应的旧的五元组并利用新五元组重新对终端鉴权。
其中,终端通过比较自己保存的SQNMS和AUTN中的SQNHE是否满足预定的条件来判断SQNHE是否可以接受,该预定条件可以是SQNHE和SQNMS的差值在一个预定范围内,例如,是否(SQNHE-SQNMS)大于0,或者是否(SQNHE-SQNMS)大于0且小于256。如果SQNHE和SQNMS的差值在所述预定范围内,则判断出SQNHE是可接受的;否则判断出SQNHE是不可接受的。
在现实中,存在用户卡克隆现象,此种现象不但给合法用户带来损失,还会影响到运营商的服务质量。现有技术中通过不断地更新用户卡的鉴权密钥来避免或发现合法用户卡被克隆。
例如,现有技术中存在一种通过假同步更新鉴权密钥的方法,在产生同步标记时,使用特定值替代SQNMS,使得网络侧HLR/AUC可以根据该特定值判断同步请求为一个假同步,即是一个要更新鉴权密钥的同步,而不是要更新SQNHE的同步,因此,HLR/AUC和用户卡可以完成更新鉴权密钥的协商,从而完成鉴权密钥的更新。根据此种方法,通过鉴权密钥更新,可以有效地防止合法用户卡和克隆用户卡同时使用的情况出现。例如,合法用户卡通过更新鉴权密钥,可以使得克隆用户卡无法通过鉴权,从而不能继续使用。
但是,在合法用户卡更新鉴权密钥之前,即克隆用户卡与合法用户卡所持有的鉴权密钥还相同时,如果克隆用户卡抢先发起更新鉴权密钥的协商流程,使得保存在HLR/AUC中的鉴权密钥与克隆用户卡中的鉴权密钥得到同步更新,合法用户卡里的鉴权密钥由于没有更新,反而变成无效鉴权密钥,从而导致合法用户卡不能使用。
虽然,此种情况下,合法用户发现自己的用户卡不能使用时,可意识到用户卡被人克隆,并可以到营业厅更改HLR/AUC中的鉴权密钥,同时刷新自己用户卡的鉴权密钥,使得HLR/AUC中的鉴权密钥和自己用户卡的鉴权密钥再次保持一致,从而使得合法用户卡可以继续使用,非法克隆用户卡无法再继续使用。但是,此处理过程会给用户带来麻烦,同时也会增加营业厅工作人员的工作量。
因此,如何有效地控制鉴权密钥的更新,使得克隆用户卡无法实现有效的鉴权密钥更新,是一个值得研究的问题。
发明内容
本发明提供一种受控的密钥更新方法及装置,可以防止非法用户通过克隆用户卡更新鉴权密钥而导致合法用户卡不能继续使用的情况出现。
根据本发明的一个方面,一种受控的密钥更新方法,在网络侧预设用于控制鉴权密钥更新的控制参数;所述方法包括:
终端对网络侧一致性验证通过后,根据终端的鉴权密钥、接收的随机数、终端保存的或用户输入的控制参数并用特定值替代终端序列号来生成再同步标记,向网络侧发送再同步请求命令,附上所述再同步标记;
网络侧接收到所述再同步请求命令,在终端序列号为特定值时,根据预设的所述控制参数、随机数、网络侧的鉴权密钥对所述再同步标记进行一致性验证;在通过验证时执行密钥更新;
终端和网络侧在产生新的鉴权密钥后,分别重新初始化终端保存的序列号和网络侧保存的序列号的值。
可选地,所述终端对网络侧一致性验证通过和生成再同步标记之间还包括:终端根据终端序列号判断网络侧的序列号在可接受的范围内。
可选地,所述终端对网络侧一致性验证通过后,还包括:终端根据终端序列号判断网络侧的序列号不在可接受的范围内,根据终端序列号、自身的鉴权密钥、接收的随机数来生成再同步标记,向网络侧发送再同步请求命令,附上所述再同步标记。
可选地,该方法还包括:在终端序列号不是特定值时,所述网络侧根据随机数、网络侧的鉴权密钥对所述再同步标记进行一致性验证,在通过验证时执行同步处理。
可选地,在对所述再同步标记进行一致性验证不通过时,所述网络侧的归属位置寄存器/鉴权中心向移动交换中心/拜访位置寄存器发送同步处理结果消息,消息中包括非法同步信息。
可选地,所述对网络侧进行一致性验证是指根据终端保存的鉴权密钥和网络侧发送的随机数对网络侧发送的鉴权标记进行一致性验证。
可选地,该方法还包括:终端对网络侧的一致性验证未通过时,向网络侧发送鉴权失败信息。
可选地,所述终端包括用户设备和用户卡。
可选地,所述终端预设的控制参数是指设置于用户设备中的控制参数或者设置于用户卡中的控制参数。
可选地,所述控制参数是密码,或终端的身份标识,或用户自定义的任意值。
可选地,所述特定值是一个指定的数值,或者是一个最高位字节或者某个指定字节或某些指定的位为指定值的任意数值。
根据本发明的另一方面,一种实现受控的密钥更新的装置,该装置位于终端内,在终端产生新的鉴权密钥后,重新初始化终端保存的序列号和网络侧保存的序列号的值,该装置包括:
控制参数存储单元,用于存储控制鉴权密钥更新的控制参数;
特定值存储单元,用于存储替代终端序列号来生成再同步标记的特定值;
再同步标记生成单元,用于根据终端的鉴权密钥、接收的随机数、终端保存的或用户输入的控制参数并用特定值替代终端序列号来生成再同步标记。
可选地,所述装置位于终端内;所述终端包括用户设备和用户卡;所述特定值存储单元和再同步标记生成单元位于用户卡内;所述控制参数存储单元位于用户设备或用户卡内。
根据本发明的又一方面,一种实现受控的密钥更新的装置,该装置位于网络侧,在网络侧产生新的鉴权密钥后,重新初始化终端保存的序列号和网络侧保存的序列号的值,该装置包括:
控制参数保存单元,用于保存控制鉴权密钥更新的控制参数;
特定值判别单元,用于在收到再同步请求命令时,判断终端序列号是否为特定值;
再同步标记验证单元,用于根据所述控制参数保存单元保存的控制参数验证所述收到的再同步请求命令所附的在同步标记的一致性;
鉴权密钥更新单元,用于在所述特定值的判断结果为是,且所述再同步标记验证单元验证通过时实现鉴权密钥的更新。
可选地,所述装置位于网络侧的归属位置寄存器/鉴权中心内。
本发明提供的上述技术方案中,终端生成再同步标记时加入了控制参数,网络侧对再同步标记进行一致性验证时也许根据控制参数,由此,非法用户即使克隆了用户卡也无法通过克隆的用户卡更新鉴权密钥,进而达到防止非法用户通过非法克隆的用户卡更新鉴权密钥的目的。
附图说明
图1为本发明具体实施方式的流程图。
图2是本发明的具体实施方式的具体实施例一的流程图。
图3是本发明的具体实施方式的具体实施例二的流程图。
具体实施方式
本发明受控的密钥更新方法设置密钥更新控制参数,在协商密钥更新的同步处理流程中,终端将该控制参数信息上传给网络侧HLR/AUC,HLR/AUC通过判断再同步标记符是否包含有该控制参数信息来判断是否执行对应的鉴权密钥更新操作。
本发明中,可以在HLR/AUC终端用户的签约数据里设置用于控制鉴权密钥更新的控制参数。通过扩展改造现有的鉴权流程中的同步处理流程,当终端需要和HLR/AUC协商更新鉴权密钥时,终端在产生的再同步标记符中引入自己保存的或用户输入的控制参数;相应地,HLR/AUC在验证再同步标记符的一致性时,也根据自己设置的控制参数来进行。从而,当终端保存的或终端用户输入的控制参数和HLR/AUC设置的控制参数一致时,HLR/AUC才能够通过对再同步标记符的一致性判断。由于克隆用户卡并不知道HLR/AUC中对应合法用户卡设置的所述控制参数信息,因此,克隆用户卡在与HLR/AUC协商更新鉴权密钥时,其产生的再同步标记符将无法通过HLR/AUC的一致性验证,克隆用户卡也无法与HLR/AUC有效地协商鉴权密钥的更新。
本发明对现有鉴权流程的更改可以仅限于用户卡和HLR/AUC,也即,同步流程涉及到的中间设备,包括基站(NodeB)、基站控制器(RNC,RadioNetwork Controller)和核心网设备(例如MSC)等都不需要作任何更改。因此,本发明相对于那些导致NodeB、RNC和MSC中的一个或多个需要更改的控制鉴权密钥更新的方法更加容易实施。
本发明用于控制密钥更新的所述控制参数可以是一个密码,例如是一个用户PIN码(SPIN,Subscriber Personal Identification Number);也可以一个终端的身份标识,例如是终端的国际移动台设备标识(IMEI,International Mobile Station Equipment Identity);当然,也可以是用户自定义的一个任意值,例如,用户的别名、用户的头像信息、或者是用户的头像数据的摘要信息,等等。
下面结合附图对本发明的具体实施方式进行详细的说明。
该具体实施方式中,在HLR/AUC中对应终端用户的签约数据里设置用于控制鉴权密钥更新的控制参数。用户可以通过营业厅,或者通过营业厅提供的服务电话接口或服务网站,在HLR/AUC中自己的签约数据里保存所述控制参数。所述终端包括用户设备(UE,User Equipment)和用户卡。所述用户卡对于宽带码分多址(WCDMA,Wideband Code DivisionMultiple Access)系统来说,是指USIM(UMTS Subscriber Identity Module,通用移动通信系统用户识别模块)。
请参阅图1,在需要更新鉴权密钥时,执行如下流程:
在步骤101中,终端向网络侧发起位置更新请求。
本步骤也可以是向网络侧发起业务请求。实际当中可以是终端发送的任何可以引起网络侧对终端进行鉴权的消息。
步骤102,网络侧MSC/VLR接收到该位置更新请求后将产生的鉴权元组中的相应鉴权参数发送给终端。
所述鉴权元组可以包括随机数RAND、期望响应XRES、加密密钥CK、完整性密钥IK和鉴权标记AUTN。
所述相应鉴权参数包括RAND和AUTN。
产生鉴权元组时,HLR/AUC用随机数发生器产生的RAND和自身保存的鉴权密钥KI分别计算出XRES、CK、IK;还根据RAND、KI、序列号SQNHE、鉴权管理域AMF产生AUTN。
所述鉴权标记AUTN长16字节,包括以下内容:
1)SQNHE^AK,也即用匿名密钥AK加密SQNHE,其中SQNHE与AK长6字节,SQNHE指保存在网络侧的SQN,以区别于保存在终端的SQNMS;当需要对SQNHE进行加密时,HLR/AUC根据RAND和KI产生AK,使用AK对SQNHE作异或运算,从而加密SQNHE;当不需要对SQNHE进行加密时,AK=0;
2)鉴权管理域AMF长2字节。
3)消息鉴权编码MAC-A长8字节;MAC-A用于验证RAND、SQNHE、AMF的数据完整性,用于终端对HLR/AUC进行鉴权。HLR/AUC根据RAND、SQNHE、KI和AMF计算出AUTN中的MAC-A。
这样,由RAND、AUTN、XRES、CK、IK等组成鉴权五元组。
HLR/AUC产生鉴权五元组后将相应的国际移动用户识别码IMSI和鉴权五元组RAND、CK、IK、XRES和AUTN发送给MSC/VLR。MSC/VLR为电路域设备,对于分组域的网络,对应的设备可以为服务通用无线分组业务支持节点(SGSN,Serving General Packet RadioService Support Node)。鉴权时,网络侧的MSC/VLR将接收自HLR/AUC的鉴权元组中的RAND和AUTN传送给终端。
步骤103,终端接收到MSC/VLR发送的相应鉴权参数(即RAND和AUTN)并判断出对AUTN的一致性验证通过后,根据RAND和KI进行计算,得到新鉴权密钥NewKI;终端获取控制参数,并根据所述控制参数,用约定的特定值代替SQNMS来产生再同步标记AUTS,向网络发起再同步请求命令,并附上再同步标记AUTS。所述的向网络发起再同步请求命令并附上再同步标记AUTS,也即向网络侧发送同步失败消息,消息中包含AUTS。
需要说明的是,所述的终端包括用户设备UE和用户卡。实际当中,是UE接收所述鉴权请求,并将鉴权参数(RAND和AUTN)发送给用户卡,用户卡根据自己保存的KI来对接收到的AUTN进行一致性验证,此不赘述。
所述再同步标记AUTS包括以下内容:
1)SQNMS^AK,也即用AK加密的SQNMS,其中SQNMS与AK分别长6字节,SQNMS指保存在终端侧的SQN,以区别于保存在网络侧的SQNHE;当需要对SQNMS进行加密时,终端根据RAND和KI产生AK,使用AK对SQNMS作异或运算,从而加密SQNMS;当不需要对SQNMS进行加密时,AK=0;
2)消息鉴权编码MAC-S,长8字节;MAC-S用于验证RAND、SQNMS的数据完整性,也用于HLR/AUC对终端进行鉴权,也即,用于HLR/AUC验证AUTS的合法性。在在本发明的鉴权流程里,终端用代替SQNMS的特定值、所述自己保存的或用户输入的控制参数、KI和接收到的RAND以及AMF等计算得到MAC-S,再根据该特定值、AK和MAC-S产生再同步标记AUTS。
具体地说,终端在接收到网络侧MSC/VLR发送的RAND和AUTN后,根据接收到的RAND与自身保存的KI和接收到的AUTN中的SQNHE以及AMF采用与HLR/AUC计算AUTN中MAC-A一致的算法进行计算得到一个计算结果,终端比较自己计算得到的计算结果与接收到的AUTN中的MAC-A是否一致(例如是否相同),若不一致,则向MSC/VLR返回鉴权失败信息;若一致则用约定的特定值代替SQNMS来根据自己的KI、所述自己保存的或用户输入的控制参数和接收到的RAND以及AUTN中的AMF等计算得到MAC-S,再根据该特定值代替SQNMS来和AK以及MAC-S产生再同步标记AUTS,即用AK对该特定值进行加密,将密文和MAC-S组合来产生AUTS。终端产生AUTS后向网络侧发送再同步请求命令并附上所述再同步标记AUTS,或者向网络侧发送同步失败消息,并在该消息中包含AUTS。
终端产生MAC-S时,可以先用控制参数和KI进行摘要计算,得到一个计算结果Result1,再用Result1和所述特定值进行摘要计算,得到一个计算结果Result2,再用Result2和所述RAND进行摘要计算,得到一个计算结果Result3,再用Result3和所述AMF进行摘要计算,并将得到的计算结果作为MAC-S。
实际当中,由于产生MAC-S可以完全在用户卡中实现,因此,如果控制参数在用户设备UE中设置时,在用户卡需要根据控制参数计算MAC-S时,UE需要将控制参数传送给用户卡。例如,鉴权时,UE在将RAND和AUTN传送给用户卡的同时将所述控制参数也传送给用户卡。如果控制参数在用户卡中设置时,在用户卡需要根据控制参数计算MAC-S时,可以直接获取自己保存的控制参数,UE就不需要将控制参数传送给用户卡。
当然,这里产生MAC-S的过程和采用的摘要算法,可以根据实际情况而定,关于具体产生AUTS过程,以及产生时使用的算法还可以参照3GPP相关规范,在此不再赘述。
所述终端获取控制参数可以是,终端的UE对应保存控制参数,终端直接获取UE保存的控制参数;也可以是用户卡保存了控制参数,终端直接获取用户卡保存的控制参数;也可以是终端提示用户输入控制参数,终端根据用户输入获取所述控制参数。
对于用户卡产生MAC-S时,何时根据控制参数来进行,何时又不根据控制参数来进行,可以由UE来决定。例如,对于控制参数保存在UE的情况,当鉴权时,UE将控制参数和RAND以及AUTN传送给用户卡时,用户卡产生MAC-S时,根据控制参数来进行;当鉴权时,UE仅仅将RAND和AUTN传送给用户卡,而没有包括控制参数时,用户卡产生MAC-S时,不再根据控制参数来进行。相应的,对于控制参数保存在用户卡的情况,当鉴权时,UE将RAND和AUTN以及一个用于表示是否根据控制参数产生MAC-S的特殊标志传送给用户卡时,用户卡产生MAC-S时,将根据特殊标志来决定是否根据控制参数来进行。一般的,UE可以周期性地决定进行鉴权密钥的更新,也就是周期性地决定用户卡根据控制参数来产生MAC-S。当然,也可以由用户卡来决定何时进行鉴权密钥的更新,也即何时根据控制参数来产生MAC-S,例如,在UE中保存控制参数,开机时,终端将该控制参数传送给用户卡,用户卡保存该控制参数,并在需要进行鉴权密钥更新时,根据该控制参数来产生MAC-S。用户卡可以是根据鉴权标记中鉴权管理域AMF所设置的特殊值来决定需要进行鉴权密钥的更新。
当UE和用户卡都不保存控制参数时,可以是在需要根据控制参数产生MAC-S时,由UE提示用户输入控制参数,UE将用户输入的控制参数和RAND以AUTN一起传送给用户卡,或者单独将控制参数传送给用户卡。将控制参数保存在终端的UE或者用卡里的好处是,不需要在每次更新鉴权密钥时,都让用户输入控制参数,这样会具有更好的用户体验。
步骤104,MSC/VLR接收到再同步请求命令后,将对应本次鉴权的五元组中的RAND和接收自终端的AUTS发送给HLR/AUC。
步骤105,HLR/AUC接收到再同步请求命令后,先从AUTS中解析出SQNMS,并在判断出SQNMS为所述特定值时,根据自己保存的KI和设置的所述控制参数对AUTS进行一致性验证,并在对AUTS的一致性验证通过后,执行步骤106;否则,执行步骤107。
HLR/AUC根据自己保存的KI和设置的所述控制参数对AUTS进行一致性验证是指:HLR/AUC根据所述自己保存的KI、控制参数、AMF、特定值和同步消息中的RAND采用与终端根据KI、控制参数、AMF、所述特定值和所述RAND产生MAC-S一致的算法进行计算,得到一个计算结果,比较自己计算得到的计算结果和同步消息中AUTS中的MAC-S是否一致,如果一致,则判断出通过AUTS的一致性验证;否则,判断出对AUTS的一致性验证通不过。
所述从AUTS中解析出SQNMS是指:当SQNMS采用加密模式,则HLR/AUC先根据KI和RAND计算出AK,用AK从AUTS中解密出SQNMS明文;当SQNMS采用明文模式,即AK值设置为0的情况下,HLR/AUC从AUTS中直接得到SQNMS明文。
步骤106,HLR/AUC根据KI和RAND按照终端计算新鉴权密钥NewKI一致的方法进行计算得到新鉴权密钥NewKI。
更新鉴权密钥之后,还可以产生新鉴权元组,并向MSC/VLR发送同步处理结果消息,在消息中包括新鉴权元组。
步骤107,HLR/AUC判断出再同步消息非法,结束处理。在结束处理之前,还可以包括向MSC/VLR发送同步处理结果消息,并在消息中包括非法同步信息。
上述步骤103中,终端产生新鉴权密钥之前,还可以进一步包括判断SQNHE是否在可接受范围内的步骤,并在SQNHE可接受时,判断出对网络鉴权通过,终端根据SQNHE更新保存的SQNMS并执行产生新鉴权密钥等等的后续操作;否则,即,在SQNHE不可接受时,判断出同步失败,并执行正常的同步处理流程,也即根据SQNMS产生再同步标记AUTS,即,根据SQNMS、KI和接收到的RAND以及AMF等计算得到MAC-S,再根据SQNMS、AK和MAC-S产生再同步标记AUTS,即用AK对SQNMS进行加密,将密文和MAC-S组合来产生AUTS。终端产生AUTS后,对网络侧MSC返回再同步请求命令或同步失败消息,同时附上产生的再同步标记AUTS。
终端和HLR/AUC预先约定:HLR/AUC在接收到终端的再同步请求命令后,如果判断出SQNMS为约定的特定值时,则执行产生新鉴权密钥NewKI的操作。当然,为了更新鉴权密钥的协商的安全性,HLR/AUC还需要对再同步请求消息进行合法性验证。
上述HLR/AUC接收到再同步请求命令后,判断出SQNMS不是所述约定的特定值时,按正常同步流程处理,即判断AUTS合法时,根据SQNMS更新SQNHE,并产生新的鉴权元组,向MSC/VLR返回同步处理结果消息,消息中包括新的鉴权元组;判断AUTS非法时,向MSC/VLR返回同步处理结果消息,消息中包括非法同步信息。
MSC/VLR接收到同步处理结果消息后,仍然按照正常的同步处理流程进行相应处理。
为了更好地展现本发明的思想和意义,以下将通过具体实施例来对本发明进行详细阐述。
请参阅图2,图2所示为本发明具体实施方式的具体实施例一。本实施例是使用本发明的受控密钥更新方法进行鉴权密钥更新控制的流程,在本实施例中,终端和HLR/AUC协商对鉴权密钥进行有控制的更新,控制是通过在HLR/AUC中对应用户的签约数据里设置用于控制鉴权密钥更新的的控制参数来进行的,相应的,本实施例中,还在终端的UE里对应保存了所述控制参数。本实施例还约定用特定值125表示需要更新鉴权密钥,该特定值对应的约定内容,也即网络侧识别到该特定值时执行的内容为“产生新的鉴权密钥以便根据新的鉴权密钥进行鉴权”。所述终端包括用户设备UE和用户卡。
在需要更新鉴权密钥时,执行如下流程:
在步骤201,终端向网络发起位置更新请求;
本步骤也可以是向网络侧发起业务请求。实际当中可以是终端发送的任何可以引起网络侧对终端进行鉴权的消息。
在步骤202,网络侧MSC/VLR接收到所述请求后,对终端进行鉴权,并通过对终端发送鉴权请求,将对应该终端的当前鉴权五元组中的鉴权参数RAND和AUTN发送给终端。
具体地说,HLR/AUC根据随机数发生器产生RAND,根据RAND和KI分别计算出XRES、CK、IK。根据RAND、SQNHE、KI和AMF计算产生出MAC-A,再根据MAC-A、SQNHE、AK及AMF产生AUTN。这里,当需要对SQNHE进行加密时,HLR/AUC根据RAND和KI产生AK,使用AK对SQNHE作异或运算,从而加密SQNHE;当不需要对SQNHE进行加密时,AK=0;
然后HLR/AUC将RAND、AUTN、XRES、CK和IK组成的五元组和对应的IMSI一起发送给MSC/VLR。HLR/AUC是在接收到MSC/VLR的请求鉴权五元组的请求后才将产生的鉴权元组发送给MSC/VLR的。
鉴权时,MSC/VLR向终端发起鉴权请求,并同时将五元组中的鉴权参数RAND和AUTN发送给终端。
步骤203,终端接收到鉴权请求时,先根据自己保存的KI对接收的AUTN进行一致性验证,也即先根据自己保存的KI和所述RAND对AUTN进行一致性验证,若验证通过,则执行步骤205;否则,执行步骤204。
具体地说,终端接收到来自MSC/VLR的RAND和AUTN时,根据自身保存的KI、接收到的RAND和接收到的AUTN中的SQNHE以及AMF采用与HLR/AUC计算AUTN中MAC-A一致的算法生成MAC-A,然后终端对自身生成的MAC-A与AUTN中的MAC-A进行比较,若相等则判断出对AUTN的一致性验证通过,否则,判断出对AUTN的一致性验证不通过。
需要说明的是,由于终端包括了用户设备UE和用户卡,实际当中,是UE接收所述鉴权请求,并将鉴权参数RAND和AUTN发送给用户卡,用户卡根据自己保存的KI来对接收到的AUTN进行一致性验证。
因此,实际当中,本步骤可以进一步是:UE接收到鉴权请求时,将保存的控制参数和接收的RAND和AUTN传送给用户卡,用户卡先根据自己保存的KI对接收的AUTN进行一致性验证,也即先根据自己保存的KI和所述RAND对AUTN进行一致性验证,若验证通过,则执行步骤205;否则,执行步骤204。具体地说,用户卡接收到来自UE的所述控制参数、RAND和AUTN时,根据自身保存的KI、接收到的RAND和接收到的AUTN中的SQNHE以及AMF采用与HLR/AUC计算AUTN中MAC-A一致的算法生成MAC-A,然后对自身生成的MAC-A与AUTN中的MAC-A进行比较,若相等则判断出对AUTN的一致性验证通过,否则,判断出对AUTN的一致性验证不通过。
步骤204中,终端向网络返回“鉴权失败”的信息,然后结束本次协商鉴权密钥更新的流程。实际当中,可以是用户卡将“鉴权失败”的信息返回给UE,UE向网络返回“鉴权失败”的信息。
步骤205,终端判断SQNHE是否在可接受范围内,如果是,则判断出对网络鉴权通过,并执行步骤207;否则,判断出同步失败,并执行步骤206。
实际当中,可以是用户卡判断SQNHE是否在可接受范围内,如果是,则判断出对网络鉴权通过,则执行步骤207;否则,判断出同步失败,然后执行步骤206。
步骤206,终端直接根据SQNMS产生再同步标记AUTS,对网络发起再同步请求命令,并附上AUTS。然后执行步骤208。具体地说,终端根据自己的KI、SQNMS和接收到的RAND以及AMF等计算得到MAC-S,再根据SQNMS、AK和MAC-S产生AUTS,然后对网络侧发起再同步请求命令,并附上该AUTS。也即,向MSC/VLR发送同步失败消息,该同步失败消息中包含了AUTS。实际当中,本步骤可以进一步是用户卡直接根据SQNMS产生再同步标记AUTS,对网络发起再同步请求命令,并附上AUTS。然后执行步骤208。这里,是UE将用户卡的同步请求命令转发给网络。
步骤207,终端根据SQNHE更新保存的SQNMS,根据RAND和KI产生新的鉴权密钥NewKI;终端根据所述控制参数,并用约定的特定值125代替SQNMS来产生再同步标记AUTS,对网络发起再同步请求命令,并附上再同步标记AUTS。然后执行步骤208。具体地说,终端用特定值125代替SQNMS来根据自己保存的KI、控制参数和接收到的RAND以及AMF等计算得到MAC-S,再用AK对特定值125进行加密,将密文和MAC-S组合来产生AUTS。终端向网络侧发送再同步请求命令并附上该AUTS。也即,向MSC/VLR发送同步失败消息,该同步失败消息中包含AUTS。实际当中,本步骤可以进一步是用户卡根据UE保存的所述控制参数,并用约定的特定值125代替SQNMS来产生再同步标记AUTS,对网络发起再同步请求命令,并附上再同步标记AUTS。然后执行步骤208。这里,是UE将用户卡的同步请求命令转发给网络。
由于MAC-S由用户卡产生,因此,步骤203中,UE在将RAND和AUTN传送给用户卡时,将所述控制参数一同传送给用户卡。当然,一个可替换的方法是UE应用户卡的相应请求将所述控制参数传送给用户卡。
步骤208,网络侧的MSC/VLR接收到终端发送的同步失败消息时,将消息中的AUTS和对应五元组中的RAND一并发送给HLR/AUC。然后执行步骤209。
实际当中,网络侧的MSC/VLR接收到终端发送的同步失败消息时,向HLR/AUC请求新鉴权元组,请求消息中包括接收自终端的AUTS和对应鉴权五元组中的RAND。
步骤209,HLR/AUC判断AUTS中的SQNMS是否为约定的特定值125。如果为特定值125则执行步骤212;如果不为特定值125则执行步骤210。
需要说明的是,如果AUTS中SQNMS根据AK进行了加密,HLR/AUC可以根据RAND和KI产生AK来解密SQNMS密文,得到SQNMS明文。
步骤210,HLR/AUC接收到MSC/VLR发送的AUTS和RAND时,根据KI对AUTS进行一致性验证,即,根据AMF、保存的KI、接收到的RAND和AUTS中的SQNMS等采用与终端根据KI、SQNMS、RAND和AMF产生MAC-S一致的算法进行计算得到一个计算结果,然后比较自己计算得到的计算结果与接收到的AUTS中的MAC-S是否一致,若一致,则判断出通过对AUTS的一致性验证,然后执行步骤211;否则,判断出对AUTS的一致性验证通不过,然后执行步骤214;
步骤211,HLR/AUC根据SQNMS的值更新SQNHE,产生新鉴权元组,向MSC/VLR发送同步处理结果消息,消息中包括了新鉴权元组。
步骤212,HLR/AUC接收到MSC/VLR发送的AUTS和RAND时,根据KI和控制参数对AUTS进行一致性验证,即,根据AMF、保存的KI、控制参数、接收到的RAND和AUTS中的SQNMS等采用与终端根据KI、控制参数、RAND、所述特定值和AMF产生MAC-S一致的算法进行计算得到一个计算结果,然后比较自己计算得到的计算结果与接收到的AUTS中的MAC-S是否一致,若一致,则判断出通过对AUTS的一致性验证,然后执行步骤213;否则,判断出对AUTS的一致性验证通不过,然后执行步骤214;
步骤213,HLR/AUC执行特定值125对应的约定内容,即执行鉴权密钥更新动作,也就是根据RAND和KI采用与终端产生新鉴权密钥一致的算法进行计算,产生新的鉴权密钥NewKI,然后使用NewKI产生新鉴权元组,向MSC/VLR发送同步处理结果消息,消息中包括新鉴权元组。
步骤214,向MSC/VLR发送同步处理结果消息,消息中包括了非法同步信息。
上述终端和HLR/AUC在产生新的鉴权密钥后,可以分别重新初始化SQNMS和SQNHE的值。例如,终端在步骤207并不根据SQNHE来更新保存的SQNMS,而是将SQNMS的值初始化为0;对应地,HLR/AUC在步骤213将SQNHE的值初始化为一个小于65536的随机值。这样,SQNHE的变换部分可以保留的较短即可实现正常的鉴权。因为,终端和HLR/AUC可以在SQNHE尚没有遍历所有变化时,就执行鉴权密钥更新,这样,一样可以保证终端对于网络鉴权的合理性。
基于密钥不断更新所带来的安全性增强,以及每次密钥更新时对SQNMS和SQNHE的初始化,可以知道,实际需要的SQNMS和SQNHE的长度可以比现有技术的规定的长度短。例如,原来规定SQN(泛指SQNMS、SQNHE)的长度为6字节48bit(位),在本发明中,SQN可以仅需要5字节40bit,为了保证鉴权认证以及密钥协商时算法不需要因为SQN长度而改变,可以将5字节的SQN扩展为6字节,扩展字节在SQN的高位,这样,在计算MAC-A用扩展的SQNHE;在计算MAC-S时使用扩展的SQNMS;在根据SQNMS判断SQNHE的新颖性时,也即根据SQNMS判断SQNHE是否在可以接受范围内时,仍然用没有扩展的5字节的SQNMS来与没有扩展的5字节的SQNHE进行比较,以判断SQNHE是否被更新,也即SQNHE是否在可以接受范围内。这里,多出来的扩展字节除了为兼容原来的算法运算而参与MAC-A和MAC-S的计算外,没有其它意义。这样,本发明就可以进一步使用这个扩展字节来表达其它信息。
本发明中,进一步包括,在利用特定值替代终端序列号SQNMS来生成再同步标记AUTS时,所述特定值是一个6字节的数字,其最高位字节为一个特定值,其它地位的5个字节为任意值。例如,在上述步骤207,终端根据所述控制参数,并用约定的特定值125代替SQNMS来产生再同步标记AUTS,可以是采用这样的一个6字节的特殊值来代替SQNMS来产生所述的AUTS,这个特殊值的最高位的一个字节被设置为125或者其它某一特定值例如255,而后面低位的5个字节可以设置为任意值,例如,可以产生一个6字节的随机数,将该随机数的最高位的一个字节设置为125,而后,用这个改变了高位字节值的随机数作为所述替代SQNMS来计算所述AUTS的特殊值。相应的,步骤209,HLR/AUC判断AUTS中的SQNMS是否为约定的特定值125时,实际上是判断SQNMS的高位字节值是否为125,而不再是判断整个SQNMS的值是否为特定值125。显然,这样产生的特殊值具有更高的随机性,因此,也就具有更高的安全性。
请参阅图3,图3所示为本发明具体实施方式的具体实施例二。本实施例是使用本发明的受控密钥更新方法进行鉴权密钥更新控制的流程,在本实施例中,终端和HLR/AUC协商对鉴权密钥进行有控制的更新,控制是通过在HLR/AUC中对应用户的签约数据里设置用于控制鉴权密钥更新的的控制参数来进行的,相应的,本实施例中,还在终端的UE里对应保存所述控制参数。本实施例还约定用最高位字节为125的任意数表示所述特定值,并用该特定值表示需要更新鉴权密钥,该特定值对应的约定内容,也即网络侧识别到SQNMS的最高位字节为该125时执行的内容为“产生新的鉴权密钥以便根据新的鉴权密钥进行鉴权”。所述终端包括用户设备UE和用户卡。
在需要更新鉴权密钥时,执行如下流程:
在步骤301,终端向网络发起位置更新请求;
本步骤也可以是向网络侧发起业务请求。实际当中可以是终端发送的任何可以引起网络侧对终端进行鉴权的消息。
在步骤302,网络侧MSC/VLR接收到所述请求后,对终端进行鉴权,并通过对终端发送鉴权请求,将对应该终端的当前鉴权五元组中的鉴权参数RAND和AUTN发送给终端。
具体地说,HLR/AUC根据随机数发生器产生RAND,根据RAND和KI分别计算出XRES、CK、IK。根据RAND、SQNHE、KI和AMF计算产生出MAC-A,再根据MAC-A、SQNHE、AK及AMF产生AUTN。这里,当需要对SQNHE进行加密时,HLR/AUC根据RAND和KI产生AK,使用AK对SQNHE作异或运算,从而加密SQNHE;当不需要对SQNHE进行加密时,AK=0;
然后HLR/AUC将RAND、AUTN、XRES、CK和IK组成的五元组和对应的IMSI一起发送给MSC/VLR。HLR/AUC是在接收到MSC/VLR的请求鉴权五元组的请求后才将产生的鉴权元组发送给MSC/VLR的。
鉴权时,MSC/VLR向终端发起鉴权请求,并同时将五元组中的鉴权参数RAND和AUTN发送给终端。
步骤303,终端接收到鉴权请求时,先根据自己保存的KI对接收的AUTN进行一致性验证,也即先根据自己保存的KI和所述RAND对AUTN进行一致性验证,若验证通过,则执行步骤305;否则,执行步骤304。
具体地说,终端接收到来自MSC/VLR的RAND和AUTN时,根据自身保存的KI、接收到的RAND和接收到的AUTN中的SQNHE以及AMF采用与HLR/AUC计算AUTN中MAC-A一致的算法生成MAC-A,然后终端对自身生成的MAC-A与AUTN中的MAC-A进行比较,若相等则判断出对AUTN的一致性验证通过,否则,判断出对AUTN的一致性验证不通过。
需要说明的是,由于终端MS包括用户设备UE和用户卡,实际当中,是UE接收所述鉴权请求,并将鉴权参数RAND和AUTN发送给用户卡,用户卡根据自己保存的KI来对接收到的AUTN进行一致性验证。
因此,实际当中,本步骤可以进一步是:UE接收到鉴权请求时,将保存的控制参数和接收的RAND和AUTN传送给用户卡,用户卡先根据自己保存的KI对接收的AUTN进行一致性验证,也即先根据自己保存的KI和所述RAND对AUTN进行一致性验证,若验证通过,则执行步骤305,否则,执行步骤304。具体地说,用户卡接收到来自UE的所述控制参数、RAND和AUTN时,根据自身保存的KI、接收到的RAND和接收到的AUTN中的SQNHE以及AMF采用与HLR/AUC计算AUTN中MAC-A一致的算法生成MAC-A,然后对自身生成的MAC-A与AUTN中的MAC-A进行比较,若相等则判断出对AUTN的一致性验证通过,否则,判断出对AUTN的一致性验证不通过。
步骤304中,终端向网络返回“鉴权失败”的信息,然后结束本次协商鉴权密钥更新的流程。实际当中,可以是用户卡将“鉴权失败”的信息返回给UE,UE向网络返回“鉴权失败”的信息。
步骤305,终端判断SQNHE是否在可接受范围内,如果是,则判断出对网络鉴权通过,并执行步骤307;否则,判断出同步失败,并执行步骤306。
实际当中,可以是用户卡判断SQNHE是否在可接受范围内,如果是,则判断出对网络鉴权通过,然后执行步骤307;否则,判断出同步失败,然后执行步骤306。
步骤306,终端直接根据SQNMS产生再同步标记AUTS,对网络发起再同步请求命令,并附上AUTS。然后执行步骤308。具体地说,终端根据自己的KI、SQNMS和接收到的RAND以及AMF等计算得到MAC-S,再根据SQNMS、AK和MAC-S产生AUTS,然后对网络侧发起再同步请求命令,并附上该AUTS。也即,向MSC/VLR发送同步失败消息,该同步失败消息中包含了AUTS。实际当中,本步骤可以进一步是用户卡直接根据SQNMS产生再同步标记AUTS,对网络发起再同步请求命令,并附上AUTS。然后执行步骤308。这里,是UE将用户卡的同步请求命令转发给网络。
步骤307,终端将SQNMS的值初始化,例如设置为0,根据RAND和KI产生新的鉴权密钥NewKI;终端产生一个任意数字,例如产生一个随机数,将该任意数字的最高位字节设置为125,并将该最高位字节设置为125的任意数作为一个特定值;而后,终端根据所述控制参数,并用产生的最高位字节为125的特定值代替SQNMS来产生再同步标记AUTS,对网络发起再同步请求命令,并附上再同步标记AUTS。然后执行步骤308。
具体地说,终端用产生的特定值代替SQNMS来根据自己保存的KI、控制参数和接收到的RAND以及AMF等计算得到MAC-S,再用AK对特定值进行加密,将密文和MAC-S组合来产生AUTS。终端向网络侧发送再同步请求命令并附上该AUTS。也即,向MSC/VLR发送同步失败消息,该同步失败消息中包含了AUTS。实际当中,本步骤可以进一步是用户卡根据UE保存的所述控制参数,并用产生的特定值代替SQNMS来产生再同步标记AUTS,对网络发起再同步请求命令,并附上再同步标记AUTS。然后执行步骤308。这里,是UE将用户卡的同步请求命令转发给网络。
由于MAC-S由用户卡产生,因此,步骤303中,UE在将RAND和AUTN传送给用户卡时,将所述控制参数一同传送给用户卡。
步骤308,网络侧的MSC/VLR接收到终端发送的同步失败消息时,将消息中的AUTS和对应五元组中的RAND一并发送给HLR/AUC。然后执行步骤309。
实际当中,网络侧的MSC/VLR接收到终端发送的同步失败消息时,向HLR/AUC请求新鉴权元组,请求消息中包括接收自终端的AUTS和对应鉴权五元组中的RAND。
步骤309,HLR/AUC判断AUTS中的SQNMS最高位的一个字节是否为125。如果为125则执行步骤312;如果不为125则执行步骤310。
需要说明的是,如果AUTS中SQNMS根据AK进行加密,HLR/AUC可以根据RAND和KI产生AK来解密SQNMS密文,得到SQNMS明文。
步骤310,HLR/AUC接收到MSC/VLR发送的AUTS和RAND时,根据KI对AUTS进行一致性验证,即,根据AMF、保存的KI、接收到的RAND和AUTS中的SQNMS等采用与终端根据KI、SQNMS、RAND和AMF产生MAC-S一致的算法进行计算得到一个计算结果,然后比较自己计算得到的计算结果与接收到的AUTS中的MAC-S是否一致,若一致,则判断出通过对AUTS的一致性验证,然后执行步骤311;否则,判断出对AUTS的一致性验证通不过,然后执行步骤314;
步骤311,HLR/AUC根据SQNMS的值更新SQNHE,产生新鉴权元组,向MSC/VLR发送同步处理结果消息,消息中包括了新鉴权元组。然后执行步骤314。
步骤312,HLR/AUC接收到MSC/VLR发送的AUTS和RAND时,根据KI和控制参数对AUTS进行一致性验证,即,根据AMF、保存的KI、控制参数、接收到的RAND和AUTS中的SQNMS等采用与终端根据KI、控制参数、RAND、所述特定值和AMF产生MAC-S一致的算法进行计算得到一个计算结果,然后比较自己计算得到的计算结果与接收到的AUTS中的MAC-S是否一致,若一致,则判断出通过对AUTS的一致性验证,然后执行步骤313;否则,判断出对AUTS的一致性验证通不过,然后执行步骤314;
步骤313,HLR/AUC执行SQNMS的最高位的一个字节为125时对应的约定内容,即执行鉴权密钥更新动作,也就是根据RAND和KI采用与终端产生新鉴权密钥一致的算法进行计算,产生新的鉴权密钥NewKI,然后将SQNHE的值初始化,例如设置为一个小于65536的任意值,并使用NewKI产生新鉴权元组,向MSC/VLR发送同步处理结果消息,消息中包括新鉴权元组。
步骤314,向MSC/VLR发送同步处理结果消息,消息中包括了非法同步信息。
可见,本发明中所述特定值,可以是一个指定的数值如长度为6字节或48bit的值为125的数值,或者是一个最高位字节为125的长度为48bit的任意数值,或者某个指定字节或某些指定的位为指定值的长度为48bit的任意数值。
上述MSC/VLR为电路域设备,对于分组域的网络,对应的MSC/VLR设备为SGSN,因此本发明可以等同应用于分组域。
上述各个具体实施方式或实施例中,终端和HLR/AUC产生新鉴权密钥可以是使用成熟的摘要算法,相应摘要算法可以参见《应用密码学》一书或相关的算法论文或报告;当然,产生新密钥时,也可以使用3GPP协议中提到的由随机数RAND和鉴权密钥KI产生加密密钥CK或完整性密钥IK的算法来进行。
上述各个具体实施方式或实施例中,终端对于AUTN一致性验证,对于SQNHE是否属于可接受范围的判断,HLR/AUC对于AUTS合法性的验证,以及HLR/AUC产生鉴权元组时,对于SQNHE的更新;产生鉴权元组的算法,以及正常情况下的同步处理流程中产生AUTS的算法,等等,可以参见3GPP相关协议,由于是公知技术,这里不再赘述。
对于本发明中需要控制协商鉴权密钥更新时在产生AUTS时,终端又额外根据了所述控制参数来产生MAC-S时,终端可以先用控制参数和KI进行摘要计算,得到一个计算结果Result1,再用Result1和所述特定值进行摘要计算,得到一个计算结果Result2,再用Result2和所述RAND进行摘要计算,得到一个计算结果Result3,再用Result3和所述AMF进行摘要计算,并将得到的计算结果作为MAC-S。相应的,HLR/AUC在判断AUTS一致性时,根据AMF、保存的KI、设置的控制参数、接收到的RAND和AUTS中的SQNMS等进行计算得到一个计算结果的计算过程与使用的算法和终端产生MAC-S的过程与使用的算法一致。当然,这里产生MAC-S的过程和采用的摘要算法,可以根据实际情况而定,关于具体产生AUTS过程,以及产生时使用的算法还可以参照3GPP相关规范,在此不再赘述。
本发明用于控制密钥更新的所述控制参数可以是一个密码,例如是一个类似于用户卡PIN码的密码,例如,可以是网络侧设置的用于用户更改业务的用户PIN码SPIN;也可以一个终端的身份标识,例如是终端的IMEI;当然,也可以用户自定义的一个任意值,例如,用户的别名,用户的头像信息,或者是用户的头像数据的摘要信息,等等。
本发明的一个实施例中,实现受控的密钥更新的装置包括:
控制参数存储单元,用于存储控制鉴权密钥更新的控制参数;
特定值存储单元,用于存储替代终端序列号来生成再同步标记的特定值;
再同步标记生成单元,用于根据终端的鉴权密钥、接收的随机数、控制参数存储单元保存的或用户输入的控制参数、特定值存储单元保存的特定值替代终端序列号生成再同步标记。
所述装置位于终端内;所述终端包括用户设备和用户卡;所述特定值存储单元和再同步标记生成单元位于用户卡内;所述控制参数存储单元位于用户设备或用户卡内。
本发明的另一个实施例中,实现受控的密钥更新的装置包括:
控制参数保存单元,用于保存控制鉴权密钥更新的控制参数;
特定值判别单元,用于在收到再同步请求命令时,判断终端序列号是否为特定值;
再同步标记验证单元,用于根据所述控制参数保存单元保存的控制参数验证所述收到的再同步请求命令所附的再同步标记的一致性;
鉴权密钥更新单元,用于在所述特定值的判断结果为是,且所述再同步标记验证单元验证通过时实现鉴权密钥的更新。
所述装置位于网络侧的归属位置寄存器/鉴权中心内。
需要说明的是,所述的各个单元可以是单独的实体,也可以根据实际情况和需求进行组合,此不赘述。
可以理解,以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (15)

1.一种受控的密钥更新方法,其特征在于,在网络侧预设用于控制鉴权密钥更新的控制参数;所述方法包括:
终端对网络侧一致性验证通过后,根据终端的鉴权密钥、接收的随机数、终端保存的或用户输入的控制参数并用特定值替代终端序列号来生成再同步标记,向网络侧发送再同步请求命令,附上所述再同步标记;
网络侧接收到所述再同步请求命令,在终端序列号为特定值时,根据预设的所述控制参数、随机数、网络侧的鉴权密钥对所述再同步标记进行一致性验证;在通过验证时执行密钥更新;
终端和网络侧在产生新的鉴权密钥后,分别重新初始化终端保存的序列号和网络侧保存的序列号的值。
2.根据权利要求1所述的方法,其特征在于:所述终端对网络侧一致性验证通过和生成再同步标记之间还包括:终端根据终端序列号判断网络侧的序列号在可接受的范围内。
3.根据权利要求2所述的方法,其特征在于:所述终端对网络侧一致性验证通过后,还包括:终端根据终端序列号判断网络侧的序列号不在可接受的范围内,根据终端序列号、自身的鉴权密钥、接收的随机数来生成再同步标记,向网络侧发送再同步请求命令,附上所述再同步标记。
4.根据权利要求3所述的方法,其特征在于:还包括:在终端序列号不是特定值时,所述网络侧根据随机数、网络侧的鉴权密钥对所述再同步标记进行一致性验证,在通过验证时执行同步处理。
5.根据权利要求4所述的方法,其特征在于:在对所述再同步标记进行一致性验证不通过时,所述网络侧的归属位置寄存器/鉴权中心向移动交换中心/拜访位置寄存器发送同步处理结果消息,消息中包括非法同步信息。
6.根据权利要求1所述的方法,其特征在于:所述对网络侧进行一致性验证是指根据终端保存的鉴权密钥和网络侧发送的随机数对网络侧发送的鉴权标记进行一致性验证。
7.根据权利要求1所述的方法,其特征在于:还包括:终端对网络侧的一致性验证未通过时,向网络侧发送鉴权失败信息。
8.根据权利要求1所述的方法,其特征在于:所述终端包括用户设备和用户卡。
9.根据权利要求8所述的方法,其特征在于:所述终端预设的控制参数是指设置于用户设备中的控制参数或者设置于用户卡中的控制参数。
10.根据权利要求1所述的方法,其特征在于:所述控制参数是密码,或终端的身份标识,或用户自定义的任意值。
11.根据权利要求1所述的方法,其特征在于:所述特定值是一个指定的数值,或者是一个最高位字节或者某个指定字节或某些指定的位为指定值的任意数值。
12.一种实现受控的密钥更新的装置,其特征在于,该装置位于终端内,在终端产生新的鉴权密钥后,重新初始化终端保存的序列号和网络侧保存的序列号的值,该装置包括:
控制参数存储单元,用于存储控制鉴权密钥更新的控制参数;
特定值存储单元,用于存储替代终端序列号来生成再同步标记的特定值;
再同步标记生成单元,用于根据终端的鉴权密钥、接收的随机数、所述控制参数存储单元保存的或用户输入的控制参数、所述特定值存储单元存储的特定值来生成再同步标记。
13.根据权利要求12所述的装置,其特征在于,所述装置位于终端内;所述终端包括用户设备和用户卡;所述特定值存储单元和再同步标记生成单元位于用户卡内;所述控制参数存储单元位于用户设备或用户卡内。
14.一种实现受控的密钥更新的装置,其特征在于,该装置位于网络侧,在网络侧产生新的鉴权密钥后,重新初始化终端保存的序列号和网络侧保存的序列号的值,该装置包括:
控制参数保存单元,用于保存控制鉴权密钥更新的控制参数;
特定值判别单元,用于在收到再同步请求命令时,判断终端序列号是否为特定值;
再同步标记验证单元,用于根据所述控制参数保存单元保存的控制参数验证所述收到的再同步请求命令所附的再同步标记的一致性;
鉴权密钥更新单元,用于在所述特定值的判断结果为是,且所述再同步标记验证单元验证通过时实现鉴权密钥的更新。
15.根据权利要求14所述的装置,其特征在于,所述装置位于网络侧的归属位置寄存器/鉴权中心内。
CN200680012300.5A 2005-10-10 2006-09-21 一种受控的密钥更新方法及装置 Active CN101160780B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200510100290.8A CN100479569C (zh) 2005-10-10 2005-10-10 一种受控的密钥更新方法
CN200510100290.8 2005-10-10
PCT/CN2006/002475 WO2007041933A1 (fr) 2005-10-10 2006-09-21 Procédé de mise à jour de clés secrètes contrôlées et appareil idoine

Publications (2)

Publication Number Publication Date
CN101160780A CN101160780A (zh) 2008-04-09
CN101160780B true CN101160780B (zh) 2010-05-19

Family

ID=37298584

Family Applications (2)

Application Number Title Priority Date Filing Date
CN200510100290.8A Active CN100479569C (zh) 2005-10-10 2005-10-10 一种受控的密钥更新方法
CN200680012300.5A Active CN101160780B (zh) 2005-10-10 2006-09-21 一种受控的密钥更新方法及装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN200510100290.8A Active CN100479569C (zh) 2005-10-10 2005-10-10 一种受控的密钥更新方法

Country Status (2)

Country Link
CN (2) CN100479569C (zh)
WO (1) WO2007041933A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220103354A1 (en) * 2020-09-25 2022-03-31 Renesas Electronics Corporation Secure encryption key generation and management in open and secure processor environments

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100461938C (zh) * 2005-08-08 2009-02-11 华为技术有限公司 一种受控的密钥更新方法
CN100479569C (zh) * 2005-10-10 2009-04-15 华为技术有限公司 一种受控的密钥更新方法
CN107222306A (zh) * 2017-01-22 2017-09-29 天地融科技股份有限公司 一种密钥更新方法、装置及系统
CN109802827B (zh) * 2018-12-19 2022-02-01 中国长城科技集团股份有限公司 密钥更新方法及密钥更新系统
CN111292089A (zh) * 2020-02-12 2020-06-16 北京智慧云测科技有限公司 一种psam卡防护管理方法和psam卡
CN112235799B (zh) * 2020-10-14 2021-11-16 中国电力科学研究院有限公司 终端设备入网鉴权方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1457173A (zh) * 2002-05-08 2003-11-19 英华达股份有限公司 更新网络加密钥匙码的方法
CN1668000A (zh) * 2004-03-11 2005-09-14 陈屹戎 用于无线网络的鉴别与保密方法
CN1835623A (zh) * 2005-08-08 2006-09-20 华为技术有限公司 一种受控的密钥更新方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001078306A1 (en) * 2000-04-06 2001-10-18 Nokia Corporation Method and system for generating a sequence number to be used for authentication
CN100479569C (zh) * 2005-10-10 2009-04-15 华为技术有限公司 一种受控的密钥更新方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1457173A (zh) * 2002-05-08 2003-11-19 英华达股份有限公司 更新网络加密钥匙码的方法
CN1668000A (zh) * 2004-03-11 2005-09-14 陈屹戎 用于无线网络的鉴别与保密方法
CN1835623A (zh) * 2005-08-08 2006-09-20 华为技术有限公司 一种受控的密钥更新方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220103354A1 (en) * 2020-09-25 2022-03-31 Renesas Electronics Corporation Secure encryption key generation and management in open and secure processor environments

Also Published As

Publication number Publication date
CN1859734A (zh) 2006-11-08
WO2007041933A1 (fr) 2007-04-19
CN101160780A (zh) 2008-04-09
CN100479569C (zh) 2009-04-15

Similar Documents

Publication Publication Date Title
US6201871B1 (en) Secure processing for authentication of a wireless communications device
US10003965B2 (en) Subscriber profile transfer method, subscriber profile transfer system, and user equipment
US8265593B2 (en) Method and system of communication using extended sequence number
CN100583767C (zh) 一种密钥更新方法及装置
CN108141355B (zh) 使用Diffie-Hellman过程生成会话密钥的方法和系统
US8122250B2 (en) Authentication in data communication
WO2020221252A1 (zh) 发送终端序列号的方法和装置以及认证方法和装置
CN101160780B (zh) 一种受控的密钥更新方法及装置
EP2296392A1 (en) Authentication method, re-certification method and communication device
CN101500230B (zh) 建立安全关联的方法和通信网络
JP2018507646A (ja) 通信デバイスとネットワークデバイスとの間の通信におけるセキュリティ構成
WO2006060943A1 (en) Authentication method
US11343673B2 (en) Enhanced aggregated re-authentication for wireless devices
CN101163003A (zh) Sim卡使用umts终端和umts系统时终端认证网络的系统和方法
CN100461938C (zh) 一种受控的密钥更新方法
EP3883279A1 (en) Communication method and related product
CN101160784B (zh) 一种密钥更新协商方法及装置
CN112235799B (zh) 终端设备入网鉴权方法及系统
CN102111268B (zh) 一种gsm网络双向认证的方法
CN100396156C (zh) 一种同步sqn的处理方法
CN1968096B (zh) 一种同步流程优化方法和系统
WO2011153851A1 (zh) 空口密钥处理方法及系统
KR20100054191A (ko) 3지 네트워크에서 효율적인 인증 관리를 위한 개선된 3 지피피 - 에이케이에이 방법
CN117395656A (zh) 适用于工控领域的wpa3-sae动态密钥系统及方法
KR20100131750A (ko) 인증 벡터를 생성하는 장치 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant