CN101895881B - 一种实现gba密钥的方法及终端可插拔设备 - Google Patents
一种实现gba密钥的方法及终端可插拔设备 Download PDFInfo
- Publication number
- CN101895881B CN101895881B CN200910084619.4A CN200910084619A CN101895881B CN 101895881 B CN101895881 B CN 101895881B CN 200910084619 A CN200910084619 A CN 200910084619A CN 101895881 B CN101895881 B CN 101895881B
- Authority
- CN
- China
- Prior art keywords
- equipment
- user terminal
- bsf
- shared key
- described user
- 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.)
- Expired - Fee Related
Links
Abstract
本发明公开了一种实现GBA密钥的方法及终端可插拔设备,该方法中,在用户终端的可插拔设备和BSF设备上配置有第一共享密钥,当用户终端向BSF设备请求启动GBA密钥流程后,该用户终端对BSF设备鉴权通过后,将生成的认证信息以及可插拔设备生成的随机数发送给BSF设备;BSF设备根据该认证信息对该用户终端鉴权通过后,根据其上配置的第一共享密钥和接收到的随机数,采用与该用户终端约定的方式生成GBA密钥资料Ks;该用户终端的可插拔设备根据其上配置的第一共享密钥和生成的随机数,采用与BSF设备约定的方式生成Ks;BSF设备和用户终端的可插拔设备分别根据各自生成的Ks生成GBA共享密钥。
Description
技术领域
本发明涉及移动通信领域,尤其涉及一种实现GBA密钥的方法和一种实现GBA密钥的终端可插拔设备。
背景技术
随着数据业务的开展,运营商和用户都需要有可靠的认证机制来保证合法的业务使用以及正确的计费。尤其是在3G(第三代移动通信网络)业务中,很多应用都需要在终端(例如UE)和应用服务器之间进行双向认证,如手机电视(MBMS),为了验证合法用户对业务的使用,终端与业务系统之间都需要进行登录鉴权;若业务数据流需要进行加扰或加密,则终端与业务系统之间需要进行保密通信。而众多业务如果各自使用自己独立的认证,就会造成屡次更换设备。
为了解决应用层的密钥共享、业务鉴权等一系列问题,3GPP(第三代移动通信标准化组织)定义了一种通用引导架构认证机制(General BootstrappingArchitecture,GBA)。GBA是一种通用的鉴权机制,既可以用于现有的服务,也可以用于将来的新业务,以一种一致的方式解决安全认证的问题,从而避免为每一种新服务都提供独有的鉴权机制,避免了各种认证鉴权机制之间的差异性。GBA广泛应用于MBMS、安全定位服务(SUPL)等业务。
参见图1,为现有2/3G网络中GBA的简单网络模型。如图所示,BSF(Bootstrapping服务功能)处于用户的归属网络中,可通过Zh接口从HLR/HSS(在2G网络中是HLR,在3G网络中是HSS,其中,HLR表示用户归属位置寄存器,HSS表示归属用户系统)获得GBA的用户安全设置(GUSS);通过Ub接口与UE利用AKA协议进行相互认证,并且建立共享密钥,这个密钥将应用在UE和NAF(Network Application Function,网络应用功能)之间;通过Zn接口将该共享密钥和用户安全设置传递给NAF,以便UE和NAF之间基于该共享密钥进行安全的信息交互。GBA的相关流程通常分为GBA初始化阶段(该阶段将生成GBA密钥资料Ks)以及基于GBA的业务访问阶段(即使用Ks生成GBA共享密钥并以此进行业务通信)。
基于图1所示的网络模型,3G网络中的GBA初始化阶段的流程可如图2所示,包括:
步骤201、UE向BSF发送HTTP请求,请求中携带用户标识。
步骤202、BSF通过Zh接口从HLR/HSS中获得该UE的用户profile(其中包含用户的全部GUSS)和AV(认证向量),AV中包括RAND、AUTN、CK(Cipher Key,加密密钥)、IK(Integrity Key,完整性密钥)和XRES。
步骤203、BSF通过401消息把随机数RAND和AUTN发送给UE。
步骤204、UE利用RAND生成AUTN,并与BSF发送过来的AUTN进行比对,对比的结果一致则成功认证网络;UE还利用AKA算法生成CK、IK和RES。
步骤205、UE发送HTTP请求到BSF,其中包含摘要AKA响应,该响应使用RES作为验证码。
步骤206、BSF将摘要AKA响应与使用XRES生成的相应参数进行比对,从而对UE进行鉴权。
步骤207、如果鉴权成功,BSF利用CK和IK生成Ks,并且生成B-TID。B-TID能够唯一标识该次Bootstrapping事件,以后NAF可以根据这个值向BSF索取达成的相关密钥Ks_NAF。
步骤208、BSF发送200OK消息到UE通知认证成功,该消息中包含B-TID,以及Ks的生存期。
步骤209、在UE中根据CK和IK产生Ks。
后续在基于GBA的业务访问阶段,UE和BSF利用Ks生成共享密钥Ks_NAF,并以Ks_NAF作为UE和NAF之间信息交互的认证密钥。
2G网络中的GBA流程与此类似。
根据终端UICC(Universal Integrated Circuit Card,通用集成电路卡)能力的不同,GBA可以分为GBA_ME和GBA_U。在GBA_ME模式下,GBA相关密钥的协商和生成都在ME(Mobile Equipment,移动设备)中完成,在GBA_U模式下,GBA相关密钥的协商和生成都在SIM/USIM卡(即客户识别模块)中完成。
根据目前的数据业务需求,要求GBA相关功能在终端的可插拔设备上实现,如在SD卡(Secure Digital Memory Card,安全数码卡)中实现。如果将GBA_ME模式应用到SD卡的场景下会存在安全隐患,即,攻击者可利用该方案的漏洞,截获GBA密钥生成算法所需的参数(如CK、IK等),进而使多个SD卡具有相同的Ks,导致GBA共享密钥的安全性差。
发明内容
本发明实施例提供了一种实现GBA密钥的方法以及终端设备,用以提高在终端可插拔设备上实现GBA密钥的安全性。
本发明实施例提供的实现通GBA密钥的方法中,在用户终端的可插拔设备和认证服务功能BSF设备上配置有第一共享密钥,当用户终端向BSF设备请求启动GBA密钥流程后,该方法包括:
所述用户终端对所述BSF设备鉴权通过后,将生成的认证信息以及该用户终端的可插拔设备生成的随机数发送给所述BSF设备;
所述BSF设备根据所述认证信息对所述用户终端鉴权通过后,根据其上配置的第一共享密钥和接收到的随机数,采用与所述用户终端约定的方式生成GBA密钥资料Ks;
所述用户终端的可插拔设备根据其上配置的第一共享密钥和生成的随机数,采用与所述BSF设备约定的方式生成GBA密钥资料Ks;
所述BSF设备和所述用户终端的可插拔设备分别根据各自生成的Ks生成用于在所述用户终端和网络应用功能NAF之间共享的GBA密钥。
本发明实施例提供的实现GBA密钥的终端可插拔设备,包括:
第一存储单元,用于存储配置于所述终端可插拔设备的、与BSF设备所共享的第一共享密钥;
随机数生成单元,用于生成随机数;
GBA处理单元,用于在BSF设备对所述终端设备鉴权通过后,根据所述第一存储单元中存储的第一共享密钥和所述随机数生成单元生成的随机数,采用与所述BSF设备约定的方式生成GBA密钥资料Ks;以及,根据生成的Ks生成用于在所述用户终端和网络应用功能NAF之间共享的GBA密钥。
本发明的上述实施例,通过在终端设备的可插拔设备与BSF设备间预先配置第一共享密钥,以及由终端可插拔设备生成随机数并将其发送给BSF设备,当终端可插拔设备生成Ks时,用该终端可插拔设备所保存的第一共享密钥和生成的随机数、采用与BSF设备约定的方式生成Ks;当BSF设备生成Ks时,用该设备保存的第一共享密钥和终端可插拔设备生成的随机数、采用与该用户终端约定的方式生成Ks。这样,一方面,非法攻击者无法获得终端可插拔设备中存储的第一共享密钥;另一方面,由于终端可插拔设备的随机数是随机生成的,两个终端可插拔设备所生成的随机数几乎不可能相同,并且只有生成的随机数与BSF设备保存的随机数相同的可插拔设备才能生成与BSF设备一致的Ks,从而保证GBA共享密钥的安全性。
附图说明
图1为现有GBA的简单网络模型示意图;
图2为现有GBA密钥的流程示意图;
图3为本发明实施例提供的3G网络中的GBA密钥的流程示意图;
图4为本发明实施例提供的2G网络中的GBA密钥的流程示意图;
图5为本发明实施例提供的更新终端设备和BSF设备之间的共享密钥的流程示意图;
图6为本发明实施例提供的UE的结构示意图。
具体实施方式
本发明实施例中,需要预先在UE的可插拔设备中和BSF设备中配置共享密钥Km,并对UE和BSF设备中的Ks或/和RES生成算法进行改进,使UE侧和网络侧采用统一的算法生成Ks或/和RES,并在生成Ks或/和RES时利用共享的Km以及UE可插拔设备所生成的随机数。
下面结合附图对本发明实施例进行详细描述。
参见图3,为本发明实施例提供的3G网络的GBA初始化阶段流程示意图,该流程包括:
步骤301、UE客户端向BSF发送GBA注册请求(Bootstrapping_Register_REQ)消息,其中携带用户标识(如IMPI)。
步骤302、BSF根据用户标识向UE客户端返回GBA注册响应(Bootstrapping_Register_RES)消息,其中携带与该UE对应的RAND和AUTN。
该步骤中,BSF向UE客户端返回RAND和AUTN之前,通过Zh接口从HSS获取到的该UE的用户profile和五元组认证向量AV(RAND,AUTN,CK,IK,RES)。BSF从AV中提取RAND和AUTN发送给UE客户端。
步骤303、UE客户端将接收到的RAND和AUTN传输给该UE的SIM/USIM卡。
步骤304、SIM/USIM卡利用RAND生成AUTN,并与从客户端接收到的AUTN进行比对,对比的结果一致则成功认证网络;成功认证网络后,SIM/USIM卡还利用AKA算法生成CK、IK和RES,并将生成的CK、IK和RES返回给该UE客户端。
步骤305、客户端将CK、IK和RES传输给该UE的可插拔设备。
步骤306~307、可插拔设备生成随机数cnonce,根据cnonce和预先存储的Km生成RES’,并将生成的RES’和cnonce传输给UE客户端。
步骤308、UE客户端向BSF发送GBA认证请求(Bootsrapping_Authorization_REQ)消息,其中携带RES’和cnonce。Cnonce可通过HTTP Digest AKA消息(即Bootsrapping_Authorization_REQ消息)的cnonce字段承载,这样可减少对现有流程或信令消息的改造。
步骤309~310、BSF根据其上配置的Km和接收到的cnonce生成RES’,并将该RES’与接收到的RES’进行比较,从而对UE进行鉴权。鉴权成功后,BSF向UE客户端返回GBA认证响应(Bootsrapping_Authorization_RES)消息,其中携带B-TID和Ks的生存期信息。BSF还利用CK、IK和预先保存在BSF中的Km以及接收到的cnonce生成Ks,并将B-TID和Ks的有效期传输给UE客户端。
步骤311、UE客户端将B-TID和Ks的有效期传输给UE的可插拔设备。
步骤312、UE卡插拔设备根据CK、IK和预先保存在该可插拔设备中的Km以及生成的cnonce生成Ks。
后续在基于GBA的业务访问阶段,UE的可插拔设备和BSF利用Ks生成密钥Ks_NAF,并以Ks_NAF作为UE和NAF之间信息交互的GBA共享密钥Ks_NAF。
需要说明的是,SIM/USIM卡与可插拔设备之间可通过底层通信连接进行信息交互,如SIM/USIM卡可将生成的CK、IK和RES以及其他参数通过底层通信连接直接传输给可插拔设备。
上述图3所示的流程中,Ks可按照以下的算法函数生成:
Ks=H1(CK,IK,Km,cnonce)....................................[1]
其中,H1可以为单向摘要函数,如SHA-256。UE生成Ks时所用的CK和IK是UE的SIM/USIM卡生成的,BSF设备生成Ks时所用的CK和IK是从HSS获取到的。
式(1)中的函数还可以增加其他参数作为输入,例如固定字符串,或者终端与网络侧约定的任何参数,例如,增加输入参数“Ks_generation”(仅是参数示意)后的函数为:
Ks=H1(CK,IK,Km,cnonce,”Ks_generation”)...............[2]
Ks生成函数中除了可以增加特定参数外,还可以增加终端与BSF设备约定的变换方法,例如输入参数先经过某种变化(如置换、根据S盒变换、单向摘要函数变换、与指定参数异或等)后,再通过H1函数计算得到Ks。一种对输入参数进行SHA1变换的Ks生成函数为:
Ks=H1(SHA1(CK,IK,Km,cnonce))........................[3]
以上增加输入参数和对输入参数进行变换的两种方法可以配合使用。通常,Ks生成函数的输入参数越多,算法越复杂,生成的Ks也越安全。
RES’可按照以下的算法函数生成:
RES’=H2(RES,Km,cnonce).................................[4]
其中,H2可以为单向摘要函数,如SHA-256;UE生成RES’所用的RES是UE的SIM/USIM卡生成的,BSF设备生成RES’所用的RES是从HSS获取到的AV五元组中的RES参数。
式(4)中的函数还可以增加其他参数作为输入,例如固定字符串,或者终端与网络侧约定的任何参数。RES’的生成函数中除了可以增加特定参数外,还可以增加终端与网络侧约定的变换方法,例如输入参数先经过某种变化(例如置换、根据S盒变换、单向摘要函数变换、与指定参数异或等)后,再通过H2函数计算得到RES’。这两种方法可以配合使用。
采用本发明实施例提供的GBA密钥实现方法,可针对攻击者截获了SIM/USIM卡向UE客户端传输的CK、IK、RES,根据非法获取的CK、IK、RES复制了UE客户端向可插拔设备发送的消息,并准备复制该消息,向多个可插拔设备进行重放攻击(即,将复制的消息重复发送给其他多个UE可插拔设备)的行为,及时发现并有效防止进一步的GBA密钥风险。这是因为:可插拔设备产生的cnonce是随机的,因此几乎不可能有两个或多个可插拔设备生成的cnonce相同,即可插拔设备无法控制cnonce的生成,并且只有生成的cnonce与BSF设备保存的cnonce相同的可插拔设备才能生成与BSF设备一致的RES’,另外可插拔设备中保存的Km也不易通过监听等方式被攻击者截获,因此,如果BSF收到攻击者非法生成的Bootsrapping_Authorization_REQ消息,则会因为RES认证失败而导致GBA初始化流程失败,因此,保证了GBA共享密钥的安全。即使非法可插拔设备能够通过BSF设备的认证,也会因可插拔设备中的Km不易被截获,以及可插拔设备无法控制cnonce的生成,并且只有生成的cnonce与BSF设备保存的cnonce相同的可插拔设备才能生成与BSF设备一致的Ks,从而可进一步保证GBA共享密钥的安全性。
图3所示流程中,对UE的可插拔设备上和BSF上的RES生成算法和Ks生成算法中都引入了可插拔设备生成的随机数cnonce和共享密钥Km,事实上,在RES生成算法和Ks生成算法之一中引入随机数cnonce和共享密钥Km,也可以在一定程度上保证GBA共享密钥的安全。
当仅在RES生成算法中引入随机数cnonce和共享密钥Km时,由于可插拔设备产生的cnonce是随机的,因此几乎不可能有两个或多个可插拔设备生成的cnonce相同,即可插拔设备无法控制cnonce的生成,并且只有生成的cnonce与BSF设备保存的cnonce相同的可插拔设备才能生成与BSF设备一致的RES’,这样,如果可插拔设备生成的RES’与BSF设备生成的不一致会导致BSF对UE的RES认证失败而导致GBA初始化流程失败,因此,保证了GBA共享密钥的安全。仅在RES生成算法中引入随机数cnonce和共享密钥Km的情况下,可插拔设备生成RES’后,可不将cnonce传输给UE客户端。
当仅在Ks的生成算法中引入随机数cnonce和共享密钥Km时,即使在非法可插拔设备能够通过BSF设备的认证,也会因可插拔设备无法控制cnonce的生成,并且只有生成的cnonce与BSF设备保存的cnonce相同的可插拔设备才能生成与BSF设备一致的Ks,因而如果可插拔设备生成的Ks与BSF设备生成的不一致则也不能实现GBA共享密钥机制,从而保证GBA共享密钥的安全性。仅在Ks的生成算法中引入随机数cnonce和共享密钥Km的情况下,UE客户端收到SIM/USIM卡生成的RES后,可不将该RES传输给UE可插拔设备,可插拔设备可不用再生成RES。
本发明实施例还提供了在2G网络中的GBA共享密钥实现流程,其流程、实现原理以及所产生的技术效果与3G网络中的GBA共享密钥实现流程类似,图4给出了2G网络中的GBA共享密钥的实现流程,主要包括:
步骤401~402、UE客户端向BSF发送Bootstrapping_Register_REQ消息,其中携带用户标识(如IMPI);BSF向UE客户端返回Bootstrapping_Register_RES消息,其中携带与该UE对应的RAND和Ks_Input。
该步骤中,BSF向UE客户端返回RAND和Ks_Input之前,通过Zh接口从HLR获取到的该UE的三元组认证向量AV(RAND,Kc,Ks_Input)。BSF从AV中提取RAND和Ks_Input发送给UE客户端。
步骤403~404、UE客户端将接收到的RAND传输给该UE的SIM/USIM卡,SIM/USIM卡利用AKA算法生成Kc和SRES,并将生成的Kc和SRES返回给该UE客户端。
步骤405~407、UE客户端将RAND、Ks_Input、Kc和SRES传输给该UE的可插拔设备,可插拔设备生成随机数cnonce,根据cnonce和预先存储的Km生成RES’,并将生成的RES’和cnonce传输给UE客户端。
步骤408~410、UE客户端向BSF发送Bootsrapping_Authorization_REQ消息,其中携带RES’和cnonce;BSF根据其上配置的Km和接收到的cnonce生成RES’,并将该RES’与接收到的RES’进行比较,从而对UE进行鉴权。鉴权成功后,BSF向UE客户端返回Bootsrapping_Authorization_RES消息,其中携带B-TID和Ks的生存期信息。BSF还利用RAND、Kc、接收到的cnonce、预先保存在BSF中的Km生成Ks。
步骤411~412、UE客户端将B-TID和Ks的有效期传输给UE的可插拔设备,该可插拔设备根据RAND、Kc、接收到的cnonce、预先保存在该可插拔设备中的Km生成Ks。
后续在基于GBA的业务访问阶段,UE的可插拔设备和BSF利用Ks生成密钥Ks_NAF,并以Ks_NAF作为UE和NAF之间信息交互的GBA共享密钥Ks_NAF。
需要说明的是,SIM/USIM卡与可插拔设备之间可通过底层通信连接进行信息交互,如SIM/USIM卡可将生成的Kc、SRES以及其他参数通过底层通信连接直接传输给可插拔设备。
上述图4所示的流程中,Ks可按照以下的算法函数生成:
Ks=KDF(key,Ks-input,”2gpp-gba-res”,SRES,Km,cnonce)......[5]
其中,KDF是密钥生成函数,key=Kc‖Kc‖RAND。UE生成Ks时所用的SRES是UE的SIM/USIM卡生成的,BSF设备生成Ks所用的SRES是从HLR获取到的AV三元组中的参数。
式(5)中的函数还可以增加其他参数作为输入,例如固定字符串,或者终端与网络侧约定的任何参数;Ks生成函数中除了可以增加特定参数外,还可以增加终端与网络侧(如BSF设备)约定的变换方法,例如输入参数先经过某种变化(如置换、根据S盒变换、单向摘要函数变换、与指定参数异或等)后,再通过KDF函数计算得到Ks。以上增加输入参数和对输入参数进行变换的两种方法可以配合使用。
RES’可按照以下的算法函数生成:
RES’=KDF(key,”2gpp-gba-res”,SRES,Km,cnonce)..................[6]
其中,KDF是RES生成函数,key=Kc‖Kc‖RAND。UE生成RES’时所用的SRES是UE的SIM/USIM卡生成的,BSF设备生成RES’所用的SRES是从HLR获取到的AV三元组中的参数。
式(6)中的函数还可以增加其他参数作为输入,例如固定字符串,或者终端与网络侧约定的任何参数。RES’的生成函数中除了可以增加特定参数外,还可以增加终端与网络侧约定的变换方法,例如输入参数先经过某种变化(例如置换、根据S盒变换、单向摘要函数变换、与指定参数异或等)后,再通过KDF函数计算得到RES。这两种方法可以配合使用。
本发明的所有实施例中,可将Km配置在可插拔设备的安全区域内(如安全芯片中),以使其不能或不易被监听到或截获到。Km可以随机取值,长度不限,从安全性考虑,以不小于128bits为宜。对于不同厂家的终端,Km可以取值不同,以保证某一厂家泄露Km密钥后,不影响其他厂家终端的安全性。
UE的可插拔设备与BSF间可以通过初始预置的方式共享Km,也可以对Km用其他预共享的密钥加密后,从BSF发送给终端的可插拔设备,或从终端的可插拔设备发送给BSF。还可以对终端的可插拔设备和BSF中共享的Km进行更新。
图5给出了一种终端的可插拔设备和BSF双方之间更新Km的方法,如图所示,该流程包括:
步骤501、UE可插拔设备通过UE向BSF发送业务请求。
步骤502、BSF向UE可插拔设备发送更新Km的通知。
步骤503、BSF和UE可插拔设备之间使用预共享的密钥Kn相互认证。
该步骤中的密钥Kn可通过初始预置的方式配置在可插拔设备中,并可在UE入网时将其注册到HSS/HLR中。BSF可以从HSS/HLR获取该UE的Kn,并与UE保存的Kn进行相互认证。密钥Kn可配置在可插拔设备的安全区域内,其所在的安全区域可比Km所在的安全区域的安全级别更高。
步骤504、在认证通过后,BSF使用Kn加密新的Km,并将加密的Km发送给UE可插拔设备。
步骤505、UE可插拔设备接收到该Km后,用保存的Kn解密出Km,并用该Km更新可插拔设备中的原Km。
通过图5所示的流程可以看出,通过使用预共享的密钥Kn相互认证以及用Kn加密传送的Km,提高了Km更新过程的安全性,进而保证GBA过程的安全性。
基于相同的技术构思,本发明实施例还给出了能够实现上述功能的终端设备以及终端可插拔设备的结构。
参见图5,为本发明实施例所提供的终端设备及其可插拔设备的结构示意图。该终端设备包括:客户端61,客户识别模块(如SIM/USIM卡)62和可插拔设备(如SD卡)63。其中,可插拔设备63包括:
接口单元631,用于与客户端61通信,可采用常规的接口电路实现;
随机数生成单元632,用于生成随机数cnonce;
第一存储单元634,用于存储配置于该终端可插拔设备的、与BSF设备所共享的密钥Km;该单元可以是可插拔设备63中的安全存储单元;
GBA处理单元633,用于在BSF设备对该终端设备鉴权通过后,根据第一存储单元634中存储的Km和随机数生成单元632生成的cnonce,采用与BSF设备约定的方式生成Ks;以及,根据生成的Ks生成用于在该用户终端和NAF之间共享的GBA密钥。
GBA处理单元633还可根据第一存储单元634中存储的Km和随机数生成单元632生成的cnonce,采用与BSF设备约定的方式生成RES’,并通过接口单元631将RES’传输给客户端61,通过客户端61发送给BSF设备,以便BSF设备据此对该用户终端进行鉴权。
对于3G网络,GBA处理单元633生成RES’的过程为:在接收到客户识别模块62生成的、并经客户端61发送的RES参数后,将该RES参数、随机数生成单元632生成的cnonce和第一存储单元634中存储的Km,作为RES’生成函数的输入参数生成RES’。RES’的生成函数如前所述,在此不再赘述。
对于2G网络,GBA处理单元633生成RES’的过程为:在接收到客户识别模块62生成的、经客户端61发送来的Kc和SRES参数后,将随机数生成单元632生成的cnonce,以及接收到的Kc、SRES参数和第一存储单元634中的Km作为RES’生成函数的输入参数生成RES’。RES’的生成函数如前所述,在此不再赘述。
对于3G网络,GBA处理单元633生成Ks的过程为:在接收客户识别模块62生成的、经客户端61发送来的CK、IK后,将该CK、IK以及第一存储单元634中存储的Km和随机数生成单元632生成的cnonce,作为Ks生成函数的输入参数生成Ks。Ks的生成函数如前所述,在此不再赘述。
对于2G网络,GBA处理单元633生成Ks的过程为:在接收客户识别模块62生成的、经客户端61发送来的Kc、SRES参数后,将该Kc、SRES,以及第一存储单元634中存储的Km和随机数生成单元632生成的cnonce,作为Ks生成函数的输入参数生成Ks。Ks的生成函数如前所述,在此不再赘述。
可插拔设备63还包括第二存储单元635和更新单元636,其中,第二存储单元635用于存储与BSF设备所共享的密钥Kn;更新单元636用于在该用户终端与BSF设备使用Kn鉴权通过后,接收BSF设备发送来的使用Kn加密的更新后的Km;以及,使用第二存储单元635中存储的Kn解密得到更新后的Km,并用解密得到的Km更新第一存储单元634中原有的Km。
需要说明的是,客户识别模块62与可插拔设备63之间可通过底层通信连接进行信息交互,如客户识别模块62可将其生成的参数或其他参数通过底层通信连接直接传输给可插拔设备63。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (13)
1.一种实现通用引导架构GBA密钥的方法,其特征在于,在用户终端的可插拔设备和认证服务功能BSF设备上配置有第一共享密钥,当用户终端向BSF设备请求启动GBA密钥流程后,该方法包括:
所述用户终端对所述BSF设备鉴权通过后,将生成的认证信息以及该用户终端的可插拔设备生成的随机数发送给所述BSF设备;
所述BSF设备根据所述认证信息对所述用户终端鉴权通过后,根据其上配置的第一共享密钥和接收到的随机数,采用与所述用户终端约定的方式生成GBA密钥资料Ks;
所述用户终端的可插拔设备根据其上配置的第一共享密钥和生成的随机数,采用与所述BSF设备约定的方式生成GBA密钥资料Ks;
所述BSF设备和所述用户终端的可插拔设备分别根据各自生成的Ks生成用于在所述用户终端和网络应用功能NAF之间共享的GBA密钥;其中,
在3G网络中,所述用户终端的可插拔设备生成Ks,包括:
所述用户终端的可插拔设备接收所述用户终端的客户识别模块生成的、经所述用户终端的客户端发送来的加密密钥CK、完整性密钥IK,并将该CK、IK以及该设备上配置的第一共享密钥和该设备生成的随机数,作为Ks生成函数的输入参数生成所述Ks;
所述BSF设备生成Ks,包括:
所述BSF设备将从HSS获取到的与该用户终端对应的CK、IK,以及从所述用户终端接收到的随机数和该BSF设备上配置的第一共享密钥,作为Ks生成函数的输入参数生成所述Ks;
在2G网络中,所述用户终端的可插拔设备生成Ks,包括:
所述用户终端的可插拔设备接收所述用户终端的客户识别模块生成的、经所述用户终端的客户端发送来的Kc、SRES参数,并将该Kc、SRES参数和从HLR接收到的RAND参数,以及该设备上配置的第一共享密钥和该设备生成的随机数,作为Ks生成函数的输入参数生成所述Ks;
所述BSF设备生成Ks,包括:
所述BSF设备将从HLR获取到的与该用户终端对应的RAND、Kc、SRES参数,以及从所述用户终端接收到的随机数和该BSF设备上配置的第一共享密钥,作为Ks生成函数的输入参数生成所述Ks。
2.如权利要求1所述的方法,其特征在于,所述用户终端生成认证信息,具体为:所述用户终端的可插拔设备根据其上配置第一共享密钥和生成的随机数,采用与所述BSF设备约定的方式生成所述认证信息;
所述BSF设备根据所述认证信息对所述用户终端鉴权,具体为:
所述BSF设备根据其上配置的第一共享密钥和接收到的随机数、采用与所述用户终端约定的方式生成认证信息,并根据生成的认证信息和所述用户终端发送来的认证信息,对所述用户终端进行鉴权。
3.如权利要求2所述的方法,其特征在于,在3G网络中,所述用户终端的可插拔设备生成所述认证信息,包括:
所述用户终端的客户端接收到所述BSF设备发送的、与该用户终端对应的RAND参数和AUTN参数后,将其发送给所述用户终端的客户识别模块;
所述客户识别模块从所述用户终端的客户端接收到所述BSF设备发送来的、与所述用户终端对应的RAND参数和AUTN参数后生成RES,并直接或经所述用户终端的客户端传输给所述用户终端的可插拔设备;
所述用户终端的可插拔设备将该设备生成的随机数、该设备上配置的第一共享密钥和接收到的RES作为认证信息生成函数的输入参数生成所述认证信息;
所述BSF设备对所述用户终端鉴权,包括:
所述BSF设备将从归属用户系统HSS获取到的与所述用户终端对应的RES,以及从所述用户终端接收到的随机数和所述BSF设备上配置的第一共享密钥作为认证信息生成函数的输入参数生成所述认证信息,并根据生成的认证信息以及从所述用户终端接收到的认证信息对所述用户终端进行鉴权。
4.如权利要求2所述的方法,其特征在于,在2G网络中,所述用户终端的可插拔设备生成所述认证信息,包括:
客户识别模块从所述用户终端的客户端接收到所述BSF设备发来的与所述用户终端对应的RAND参数后生成Kc和SRES参数,并直接或经所述用户终端的客户端传输给所述用户终端的可插拔设备;
所述用户终端的可插拔设备将该设备生成的随机数,以及接收到的Kc、SRES参数和该设备上配置的第一共享密钥作为认证信息生成函数的输入参数生成所述认证信息;
所述BSF设备对所述用户终端鉴权,包括:
所述BSF设备将从用户归属位置寄存器HLR获取到的与所述用户终端对应的SRES和Kc,以及从所述用户终端接收到的随机数和所述BSF设备上配置的第一共享密钥作为认证信息生成函数的输入参数生成所述认证信息,并根据生成的认证信息以及从所述用户终端接收到的认证信息对所述用户终端进行鉴权。
5.如权利要求1-4任一项所述的方法,其特征在于,所述第一共享密钥通过初始预置方式配置在所述用户终端的可插拔设备中。
6.如权利要求5所述的方法,其特征在于,所述用户终端的可插拔设备上和BSF设备上还预置有第二共享密钥,通过初始预置方式将所述第一共享密钥配置在所述用户终端的可插拔设备中之后,还包括:
所述用户终端的可插拔设备和所述BSF设备利用各自的第二共享密钥相互鉴权;
鉴权通过后,所述用户终端接收BSF发送的使用第二共享密钥加密的更新后的第一共享密钥;
所述用户终端的可插拔设备使用其上预置的第二共享密钥解密得到更新后的第一共享密钥,并用其更新所述用户终端的可插拔设备中原有的第一共享密钥。
7.如权利要求1所述的方法,其特征在于,所述可插拔设备中的所述第一共享密钥保存在该设备的安全区域内。
8.一种实现GBA密钥的终端可插拔设备,其特征在于,所述终端可插拔设备设置在用户终端中,包括:
第一存储单元,用于存储配置于所述用户终端的终端可插拔设备的、与BSF设备所共享的第一共享密钥;
随机数生成单元,用于生成随机数;
GBA处理单元,用于在BSF设备对所述用户终端鉴权通过后,根据所述第一存储单元中存储的第一共享密钥和所述随机数生成单元生成的随机数,采用与所述BSF设备约定的方式生成GBA密钥资料Ks;以及,根据生成的Ks生成用于在所述用户终端和网络应用功能NAF之间共享的GBA密钥;
其中,所述GBA处理单元在接收所述用户终端的客户识别模块生成的、经所述用户终端的客户端发送来的CK、IK后,将该CK、IK以及所述第一存储单元中存储的第一共享密钥和所述随机数生成单元生成的随机数,作为Ks生成函数的输入参数生成所述Ks;或者,
所述GBA处理单元在接收所述用户终端的客户识别模块生成的、经所述用户终端的客户端发送来的Kc、SRES参数后,将该Kc、SRES参数,以及所述第一存储模块中存储的第一共享密钥和所述随机数生成单元生成的随机数,作为Ks生成函数的输入参数生成所述Ks。
9.如权利要求8所述的终端可插拔设备,其特征在于,所述GBA处理单元还用于,根据所述第一存储单元中存储的第一共享密钥和所述随机数生成单元生成的随机数,采用与所述BSF设备约定的方式生成认证信息,并发送给所述BSF设备进行鉴权。
10.如权利要求9所述的终端可插拔设备,其特征在于,所述GBA处理单元在接收到所述用户终端的客户识别模块生成的、并直接或经所述终端的客户端发送来的RES参数后,将该RES参数、所述随机数生成单元生成的随机数和所述第一存储单元中存储的第一共享密钥,作为认证信息生成函数的输入参数生成所述认证信息。
11.如权利要求9所述的终端可插拔设备,其特征在于,所述GBA处理单元在接收到所述用户终端的客户识别模块生成的、并直接或经所述终端的客户端发送来的Kc和SRES参数后,将所述随机数生成单元生成的随机数,以及接收到的Kc、SRES参数和所述第一存储单元中的第一共享密钥作为认证信息生成函数的输入参数生成所述认证信息。
12.如权利要求8-11任一项所述的终端可插拔设备,其特征在于,所述第一存储单元为该终端可插拔设备中的安全存储单元。
13.如权利要求12所述的终端可插拔设备,其特征在于,还包括:
第二存储单元,用于存储与所述BSF设备所共享的第二共享密钥;
更新单元,用于在所述用户终端与所述BSF设备使用所述第二共享密钥鉴权通过后,接收所述BSF设备发送来的使用第二共享密钥加密的更新后的第一共享密钥;以及,使用所述第二存储单元中存储的第二共享密钥解密得到更新后的第一共享密钥,并用其更新所述第一存储单元中原有的第一共享密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910084619.4A CN101895881B (zh) | 2009-05-18 | 2009-05-18 | 一种实现gba密钥的方法及终端可插拔设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910084619.4A CN101895881B (zh) | 2009-05-18 | 2009-05-18 | 一种实现gba密钥的方法及终端可插拔设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101895881A CN101895881A (zh) | 2010-11-24 |
CN101895881B true CN101895881B (zh) | 2014-09-17 |
Family
ID=43104913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910084619.4A Expired - Fee Related CN101895881B (zh) | 2009-05-18 | 2009-05-18 | 一种实现gba密钥的方法及终端可插拔设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101895881B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107454035B (zh) * | 2016-05-30 | 2020-09-11 | 宇龙计算机通信科技(深圳)有限公司 | 一种身份认证的方法及装置 |
WO2018010150A1 (zh) * | 2016-07-14 | 2018-01-18 | 华为技术有限公司 | 一种认证方法和认证系统 |
CN108347417B (zh) * | 2017-01-24 | 2020-08-07 | 华为技术有限公司 | 一种网络认证方法、用户设备、网络认证节点及系统 |
CN109818749B (zh) * | 2019-01-11 | 2021-11-16 | 如般量子科技有限公司 | 基于对称密钥池的抗量子计算点对点消息传输方法和系统 |
CN111641498B (zh) * | 2019-03-01 | 2022-12-20 | 中兴通讯股份有限公司 | 密钥的确定方法及装置 |
CN109981264B (zh) * | 2019-03-11 | 2020-08-04 | 北京纬百科技有限公司 | 一种应用密钥生成方法及密码机设备组件 |
CN115002764A (zh) * | 2019-07-31 | 2022-09-02 | 华为技术有限公司 | 一种秘钥更新、获取和撤销方法及通信装置 |
CN116250211A (zh) * | 2020-08-07 | 2023-06-09 | 华为技术有限公司 | 一种通用引导架构中算法协商方法及相关装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1697373A (zh) * | 2005-06-17 | 2005-11-16 | 中兴通讯股份有限公司 | 一种用户与应用服务器协商共享密钥的方法 |
CN101087261A (zh) * | 2006-06-05 | 2007-12-12 | 华为技术有限公司 | 基于通用引导构架实现推送功能的方法、设备和系统 |
-
2009
- 2009-05-18 CN CN200910084619.4A patent/CN101895881B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1697373A (zh) * | 2005-06-17 | 2005-11-16 | 中兴通讯股份有限公司 | 一种用户与应用服务器协商共享密钥的方法 |
CN101087261A (zh) * | 2006-06-05 | 2007-12-12 | 华为技术有限公司 | 基于通用引导构架实现推送功能的方法、设备和系统 |
Non-Patent Citations (4)
Title |
---|
3GPP TSG SA WG3.Key freshness in GBA.《3GPP TSG SA WG3 Security-s3#36,s3-040940》.2004,第1-2页. * |
3GPP TSG Services and System Aspects.Generic Authentication Architecture (GAA) |
3GPP TSG Services and System Aspects.Generic Authentication Architecture (GAA) Generic bootstrapping architecture(Release 8).《3GPP TS 33.220 V8.6.0》.2009,第17-30页. * |
Generic bootstrapping architecture(Release 8).《3GPP TS 33.220 V8.6.0》.2009,第17-30页. |
Also Published As
Publication number | Publication date |
---|---|
CN101895881A (zh) | 2010-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108055235B (zh) | 一种智能锁的控制方法、相关设备及系统 | |
CN105050081B (zh) | 网络接入设备接入无线网络接入点的方法、装置和系统 | |
CN101822082B (zh) | 用于uicc和终端之间安全信道化的技术 | |
CN101895881B (zh) | 一种实现gba密钥的方法及终端可插拔设备 | |
CN108683510B (zh) | 一种加密传输的用户身份更新方法 | |
CN101969638B (zh) | 一种移动通信中对imsi进行保护的方法 | |
US9693226B2 (en) | Method and apparatus for securing a connection in a communications network | |
CN102413464B (zh) | 基于gba的电信能力开放平台密钥协商系统和方法 | |
CN108880813B (zh) | 一种附着流程的实现方法及装置 | |
CN108848495B (zh) | 一种使用预置密钥的用户身份更新方法 | |
CN105553951A (zh) | 数据传输方法和装置 | |
KR20070112260A (ko) | Sim/uicc 키 설정을 위한 네트워크 지원 단말기 | |
CN103152731A (zh) | 一种3g接入的imsi隐私保护方法 | |
CN101888626B (zh) | 一种实现gba密钥的方法及其终端设备 | |
CN114765534B (zh) | 基于国密标识密码算法的私钥分发系统和方法 | |
CN101990201B (zh) | 生成gba密钥的方法及其系统和设备 | |
CN105323754A (zh) | 一种基于预共享密钥的分布式鉴权方法 | |
CN103415010A (zh) | D2d网络鉴权方法及系统 | |
CN101192927B (zh) | 基于身份保密的授权与多重认证方法 | |
KR101358375B1 (ko) | 스미싱 방지를 위한 문자메시지 보안 시스템 및 방법 | |
KR102219086B1 (ko) | 드론(Unnamed Aerial vehicle)시스템을 위한 HMAC기반의 송신원 인증 및 비밀키 공유 방법 및 시스템 | |
CN101784048B (zh) | 动态更新密钥的身份认证和密钥协商方法及系统 | |
CN107888376B (zh) | 基于量子通信网络的nfc认证系统 | |
CN103944721A (zh) | 一种基于web的保护终端数据安全的方法和装置 | |
CN107276755B (zh) | 一种安全关联方法、装置及系统 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140917 Termination date: 20210518 |