实现用户设备和网络业务应用实体安全通讯的方法

文档序号:7619324阅读:172来源:国知局
专利名称:实现用户设备和网络业务应用实体安全通讯的方法
技术领域
本发明涉及3GPP通用鉴权框架技术领域,特别是指一种实现用户设备(UE)和网络业务应用实体(NAF)安全通讯的方法。
背景技术
在第三代无线通信标准中,通用鉴权框架是多种应用业务实体使用的一个用于完成对用户身份进行验证的通用结构,应用通用鉴权框架可实现对应用业务的用户进行检查和验证身份。上述多种应用业务可以是多播/广播业务、用户证书业务、信息即时提供业务等,也可以是代理业务。
图1示出了所述通用鉴权框架的结构。通用鉴权框架通常由用户设备(UE)、执行用户身份初始检查验证的实体(BSF)、用户归属网络服务器(HSS)和网络业务应用实体(NAF)组成。BSF用于与用户进行互验证身份,同时生成BSF与用户的共享密钥Ks;HSS中存储用于描述用户信息的描述(Profile)文件,同时HSS还兼有产生鉴权信息的功能。各个实体之间的接口如图1所示,NAF与用户之间的接口为Ua。
用户需要使用某种业务时,如果其知道该业务需要到BSF进行互鉴权过程,则直接到BSF进行互鉴权,否则,用户会首先和该业务对应的NAF联系,如果该NAF使用通用鉴权框架,并且发现发出请求的用户还未到BSF进行互认证过程,NAF则通知发出请求的用户到BSF进行互认证过程以验证身份。
用户和与BSF之间的互认证过程步骤包括用户向BSF发出鉴权请求,鉴权请求消息中保护用户的永久身份标识IMPI或由IMSI转换得到的永久身份标识IMPI,BSF接到来自用户的鉴权请求后,首先到HSS获取该用户的鉴权信息,BSF向HSS请求鉴权的消息中也包含了用户的永久身份标识,HSS(HSS上存有用户属性信息,包括指明UICC是否具有GBA(通用鉴权构架)功能以及具备密钥管理能力的属性信息)根据用户的永久身份标识查找到该用户的属性信息并且生成鉴权矢量连同用户属性信息中UICC(用户识别模块)属性信息一起返回给BSF,BSF根据UICC属性信息判断UICC是否具备GBA功能并且由此决定是执行GBA_ME过程还是GBA_U过程(如果UICC具备GAB功能,那么将执行GBA_U过程,如果UICC不具备相应功能,则执行GBA_ME过程。)。然后根据所获取的鉴权信息与用户之间执行鉴权和密钥协商协议(AKA)进行互鉴权。
采用GBA_ME过程,鉴权成功后,用户和BSF之间互相认证了身份并且同时生成了共享密钥Ks(如果是GBA_U,则BSF与UICC共享Ks),BSF为这个密钥Ks定义了一个有效期限,以便Ks进行更新。之后,BSF分配一个会话事务标识(B-TID)给用户,将B-TID发送给UE(如果GBA_U,则将B-TID发送给UICC)的同时包含了Ks的有效期限,该B-TID是与Ks相关联的。共享密钥Ks是用来根密钥的,不会离开用户的UE和BSF(GBA_U时,Ks不离开UICC),用于用户和NAF通信时,由Ks衍生出新的密钥。
用户收到这个B-TID后,重新向NAF发出连接请求,且请求消息中携带了该B-TID。由于是GBA_ME过程,用户侧还根据Ks计算出衍生密钥Ks_NAF(如果执行GBA_U,那么用户侧的UICC将会根据Ks计算两个衍生密钥Ks_int_NAF和Ks_ext_NAF,并将Ks_ext_NAF送给ME,自己保存Ks_int_NAF)。
NAF收到请求后,先在本地查询是否有用户携带的该B-TID,如果NAF不能在本地查询到该B-TID,则向BSF进行查询,该请求查询消息中携带了NAF标识和B-TID。BSF查询到该B-TID后,使用与用户侧相同的算法计算密钥Ks的衍生密钥Ks_NAF(如果执行GBA_U,那么计算Ks_int_NAF和Ks_ext_NAF),然后给NAF发送成功的响应消息,该成功的响应中包括NAF所需的B-TID,与该B-TID对应的衍生密钥Ks_NAF(如果执行GBA_U,则为Ks_int_NAF或/和Ks_ext_NAF),以及BSF为该密钥设置的有效期限。NAF收到BSF的成功响应消息后,认为该用户是经过BSF认证的合法用户,同时NAF和用户实现共享由Ks衍生的密钥Ks_NAF(如果执行GBA_U,则为Ks_int_NAF或/和Ks_ext_NAF)。
NAF和用户在后面的通信过程中通过Ks_NAF(如果执行GBA_U,则为Ks_int_NAF或/和Ks_ext_NAF)对信息进行加密,实现对之间通信的保护。
当用户发现Ks即将过期,或NAF要求用户重新到BSF进行鉴权时,用户就会重复上述的步骤重新到BSF进行鉴权,以得到新的Ks及B-TID。
分析上述过程,UE和BSF之间有可能执行GBA_ME过程,也有可能执行GBA_U过程。如果执行GBA_U过程,那么BSF和UICC将会协商一个共享密钥Ks,并且各自根据Ks衍生出两个密钥Ks_int_NAF和Ks_ext_NAF。如果执行GBA_ME过程,BSF将和UE共享Ks,并且各自根据Ks计算衍生密钥Ks_NAF。当UE向NAF发起服务请求时,如果NAF要求使用通用认证框架认证UE,那么NAF和UE将采用GBA过程生成的密钥对Ua口的通信进行保护。
因此,可以看出由于UE和BSF里有可能生成多种NAF密钥,那么需要一种密钥选择机制,来协商到底采用哪种密钥对UE和NAF之间的通信进行安全保护。否则,UE和NAF在通信时无法判断对方欲采用何种密钥与其通信。有可能会因为双方采用的密钥不同,以至于对方发来的加密信息得不到正确地解密,或者是合法的认证信息通不过认证。但是,目前的标准中并未提供密钥选择机制。

发明内容
有鉴于此,本发明的主要目的在于提供了一种实现UA和NAF安全通讯方的法,以使Ua和NAF之间对某应用通讯时,采用该通讯指定的密钥类型保护之间的通讯。
本发明提供实现用户设备UE和网络业务应用实体NAF的安全通讯方法,包括以下步骤A、网络侧和UE上保存不同应用在Ua口采用的不同密钥类型;Ua口是UE和NAF通讯的接口;B、UE要使用某应用时,UE和执行用户身份初始检查验证的实体BSF进行互鉴权,生成共享密钥Ks由双方保存;C、UE根据其用户识别模块UICC属性、所保存的所述应用的密钥类型,由所述共享密钥Ks生成所需类型的衍生密钥;D、包含NAF的网络侧根据UE的UICC属性、所保存的所述应用的密钥类型,由所述共享密钥Ks生成所需类型的衍生密钥保存到NAF上;E、UE和NAF采用生成的衍生密钥加密之间通过Ua口所进行的通讯。
其中,步骤A所述UE保存不同应用在Ua口采用的不同密钥类型的步骤包括UE从网络侧获得不同应用在Ua口采用的不同密钥类型,并进行保存。
可选的,步骤C所述生成所需类型衍生密钥的步骤包括判断用户UICC属性为不具备密钥管理功能时,若所保存的应用的密钥类型为Ks_int_NAF或Ks_ext_NAF类型,结束本流程;若所保存的应用的密钥类型包括Ks_NAF类型,则选择Ks_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;判断用户UICC属性为具备密钥管理功能时若所保存的应用的密钥类型包括Ks_int_NAF或Ks_ext_NAF类型,则选择Ks_int_NAF或Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;若所保存的应用的密钥类型为Ks_NAF类型,则选择Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥。
可选的,步骤C所述生成所需类型衍生密钥的步骤包括根据用户UICC属性、保存的共享密钥Ks生成衍生密钥;根据保存的所述应用的密钥类型、生成的衍生密钥的类型确定所采用的衍生密钥。
可选的,网络侧包含一存放应用的密钥类型的实体,步骤D所述生成所需类型衍生密钥保存到NAF上的步骤包括BSF从存放应用的密钥类型的实体获得所使用的应用的密钥类型;BSF根据用户的UICC属性、所获得的应用的密钥类型,由保存的共享密钥Ks生成所需类型衍生密钥发送给NAF保存。
可选的,所述生成所需类型衍生密钥的步骤包括判断用户UICC不具备GBA功能时,若密钥类型包含Ks_NAF类型,则选择Ks_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;判断用户UICC具备GBA功能时,若密钥类型包含Ks_int_NAF或Ks_ext_NAF类型,则选择Ks_int_NAF或Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;若密钥类型为Ks_NAF类型,则选择Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥。
可选的,网络侧NAF上保存有应用的密钥类型,步骤D所述生成衍生密钥保存到NAF上的步骤包括BSF根据用户UICC属性、保存的共享密钥Ks生成衍生密钥发送给NAF保存;NAF根据保存的所述应用的密钥类型、接收的衍生密钥的类型确定所采用的衍生密钥。
可选的,所述确定所采用的衍生密钥的步骤包括判断接收的衍生密钥为Ks_NAF时,若所述应用的密钥类型包含Ks_NAF类型,选择所接收的Ks_NAF密钥作为确定出的衍生密钥;判断接收的衍生密钥为Ks_int_NAF和Ks_ext_NAF时,若所述应用的密钥类型包含Ks_int_NAF或Ks_ext_NAF类型,选择所接收的Ks_int_NAF或Ks_ext_NAF作为确定出的密钥;若所述应用的密钥类型为Ks_NAF类型,则选择所接收的Ks_ext_NAF作为确定出的衍生密钥。
可选的,所述保存的应用的密钥类型包含多个类型,不同类型有不同优先级别,则选择出作为确定出的密钥类型的步骤进一步包括优先选择高优先级别的密钥类型。
可选的,所述生成衍生密钥发送给NAF的步骤包括采用固定长度的消息发送所述衍生密钥给NAF,该消息的不同位段承载不同类型的衍生密钥。
可选的,所述生成衍生密钥发送给NAF的步骤包括采用可变长度的消息发送所述衍生密钥给NAF,在衍生密钥值前添加衍生密钥类型的标志信息。
由上述方法可以看出,本发明用户到使用通用鉴权框架进行鉴权时,能够和网络协商采用何种NAF密钥对Ua口进行保护;UE能够根据自身属性信息以及NAF应用信息判断出选择何种密钥对Ua口进行保护;BSF能够根据用户属性信息以及NAF上应用相关信息判断发送给NAF何种密钥。NAF能够根据自身应用相关信息以及BSF返回的密钥类型判断选择何种密钥对Ua口进行保护。
具体来说,由于NAF是应用服务的提供者,他会根据应用的特性以及内容的不同提出不同的安全保护要求,并根据安全级别的不同要求采用不同的类型的保护密钥。UE在能够访问应用之前,必须满足NAF的这项要求。因此只有UE根据应用的要求对密钥进行选择,并且采用所要求的密钥与NAF通信,才能够被允许访问该应用。否则,若UE只是随便选择一种密钥,那么就无法通过NAF鉴权,更不会允许其访问。通过本发明,用户使用通用鉴权框架进行鉴权时,可以和NAF协商Ua口采用的密钥类型,解决了当Ua口允许采用多种密钥进行鉴权时,NAF和UE密钥选择问题。


图1为第三代无线通信标准提供的通用鉴权框架结构图。
图2为本发明实现Ua安全通讯第一实施例的流程图。
图3为本发明实现Ua安全通讯第二实施例的流程图。
具体实施例方式
本发明指定了不同应用所使用的不同保护密钥类型,在用户要使用某应用与NAF进行通讯时,根据用户所指定的保护密钥类型生成相应的密钥。
在UE需要使用某种应用时,将实现UE和NAF之间的通讯的过程分为下面的几个阶段第一部分预先,在网络和UE上均保存不同应用指定的在Ua口采用的不同保护密钥类型的信息,该信息可称为应用的密钥属性信息;第二部分在通讯前的UE和BSF进行双向鉴权过程,生成共享密钥Ks;第三部分UE使用Ks生成衍生密钥并根据UICC的密钥管理功能、所述应用的密钥类型选择采用何种衍生密钥;若无法根据UICC的密钥管理功能、所述应用的类型判断采用何种衍生密钥,则结束;第四部分NAF通知BSF使用Ks生成衍生密钥BSF根据UICC的密钥管理功能、所述应用的密钥类型选择返回何种衍生密钥;其中,该生成所需衍生密钥的过程可以由BSF实现,若BSF不能完全判断Ua口的保护密钥类型,则NAF根据应用的密钥类型、从BSF获得得到的密钥,确定出所需衍生密钥;第五部分UE和NAF之间的通讯采用生成的衍生密钥进行安全保护。
下面参见图2示出的本发明实现Ua通讯的流程图,进行详细说明。包括以下步骤步骤201NAF上的应用注册到网络,包括将该应用在Ua口采用的密钥类型注册到网络。方便起见,将应用在Ua接口指定的密钥类型称作该应用的密钥属性信息。
不同的应用指定Ua口密钥类型可以是Ks_NAF,也可以是Ks_ext_NAF、Ks_int_NAF中的某一种或者几者兼有,当指定了多种密钥类型时,需要对不同密钥类型指定不同的优先级别。
步骤202网络和NAF分别把该上述应用的密钥属性信息作为应用的一项属性与应用一起保存。
注册到网络的各个应用的密钥属性信息可以与NAF_ID和GSID一起保存。可以数据库或者文件形式加以保存。该信息可以放在HSS上,也可以放在归属网络其他实体上。但若放在其他实体上,该实体应该与HSS或BSF有安全接口,并且BSF或者HSS可以从该实体获得应用密钥类型信息。当用户定制了某项应用后,该信息可以作为USS的某个属性存放。
步骤203用户发现并决定使用某个应用时,从网络得到对应的应用密钥属性信息,并保存在用户本地上,直到用户取消该项应用,再删除该应用密钥属性信息。
根据用户发现应用的过程不同,获得应用密钥属性信息的方式有以下3种第一种,用户和网络签约使用某应用时,网络可以直接将该应用的密钥属性信息提供给用户;第二种,用户通过广告或者其他途径知道某种应用,向网络申请该应用,用户直接从应用服务器AS查询该应用的密钥属性信息或者由网络通过短信的方式告诉用户;第三种,由网络通过下推(push)方式将应用的密钥属性信息通知用户。具体来说,在网络向用户push某种应用时,将该应用的密钥属性信息一同发送给用户,用户确认使用该项应用后,会存储该应用的密钥属性信息。
一个用户可能会获得多种应用,因此,可以在终端上分配一个公共存储区保存不同应用的密钥属性信息。可以以文件形式保存,也可以以数据库表方式保存。例如,记录某应用的密钥属性信息可以采用简单的字段来标识,如采用3比特字段时,001表示要求使用Ks_NAF类型,010表示Ks_int_NAF类型,011表示Ks_ext_NAF类型;如果支持两种Ks_int_NAF、Ks_NAF,那么应用信息列表就有两项010和001,010放在001前面表示首选优先级为Ks_int_NAF类型。
步骤204用户需要使用某应用时,向NAF发送连接请求。
需要说明的是,若用户知道该业务需要到BSF进行互鉴权过程,可以不执行这一步骤,而直接进入步骤206,与BSF进行互鉴权。
步骤205NAF要求采用GBA方式进行通信的安全保护,并发现UE还未到BSF进行互鉴权,通知所述用户到BSF进行身份验证。
步骤206用户与BSF执行互鉴权过程,可参见背景技术所述,BSF根据UICC是否具备GBA功能,执行GBA_U过程或GBA_ME过程鉴权认证,以及协商生成共享密钥Ks。
步骤207BSF分配一个会话事务标识(B-TID)给用户,并携带有Ks的生命期。
步骤208用户在本地读取所述应用对应的密钥属性信息,并结合自身的UICC属性(用户侧UICC是否具备密钥管理功能,对应到是否具备GBA功能)确定Ua口应该使用的衍生密钥类型,并根据确定出的密钥类型和接收的Ks计算出对应的衍生密钥Ks_int_NAF、Ks_ext_NAF或Ks_NAF。
在确定密钥类型时,可能会遇到以下几种情况第一种用户UICC不具备密钥管理功能,即不具备GBA功能;可推论出步骤206执行的是GBA_ME过程;UE和BSF共享密钥Ks;若密钥属性信息中指出要求采用Ks_int_NAF或Ks_ext_NAF,则说明该用户不能使用该项应用,UE停止向NAF发送该应用请求,结束本流程;若密钥属性信息中包含Ks_NAF类型,即使不再第一优先级,也选择Ks_NAF类型作为确定出的密钥类型。例如,指出要求采用Ks_int_NAF或者Ks_NAF,Ks_int_NAF作为首选优先级密钥,UE也将选择Ks_NAF类型作为确定出的密钥类型。
第二种用户UICC具备密钥管理功能,即UICC具备GBA功能;可推论出步骤206执行的是GBA_U过程,UICC和BSF共享密钥Ks;
若密钥属性信息中指出要求采用Ks_int_NAF或Ks_ext_NAF,那么UICC将选择Ks_int_NAF或Ks_ext_NAF类型作为确定出的密钥类型。若均进行了指定,则选择高优先级的作为确定出的密钥类型,例如,若首选优先级为Ks_ext_NAF,将采用Ks_ext_NAF类型作为确定出的密钥类型;若密钥属性信息中指出要求采用Ks_NAF类型,或者除了指定Ks_NAF作为首选,还指定了Ks_int_NAF,则使用Ks_ext_NAF代替Ks_NAF类型。例如,指出要求采用Ks_int_NAF或者Ks_NAF,且首选优先级别为Ks_NAF,也将采用Ks_ext_NAF类型作为确定出的密钥类型;若Ks_int_NAF作为首选,则选用Ks_int_NAF;若指定Ks_NAF作为首选,还指定Ks_ext_NAF,也将选择Ks_ext_NAF类型作为确定出的密钥类型。
上面描述的步骤208是在先选择出衍生密钥类型,然后再使用Ks生成所需类型的衍生密钥。不难理解,也可以先按照背景技术那样根据UICC属性由Ks生成衍生密钥类型,然后再根据应用指定的密钥类型来选择所需的衍生密钥。
步骤209UE重新向NAF发送连接请求,并且在请求中携带B-TID信息。
步骤210NAF收到请求后,先在本地查询是否有用户携带的该B-TID,如果NAF不能在本地查询到该B-TID,则向BSF进行查询,该请求查询消息中携带了NAF标识,应用标识(GSID)和B-TID。
步骤211BSF收到NAF查询请求后,便向HSS(或其它存放应用信息的实体)请求该应用的密钥属性信息。该请求消息中携带NAF标识和GSID。需要说明的是若已经将应用的密钥属性信息放到USS(User SecuritySetting,用户安全设置)里,不需要执行这一步骤,直接进入步骤213。
步骤212HSS(或其它存放应用信息的实体)根据请求信息中携带的NAF标识和应用标识GSID,查询出所述应用的密钥属性信息,返回给BSF。
步骤213BSF根据返回的密钥属性信息中指明的密钥类型以及用户GUSS(GUSS,GBA User Security Setting,GBA用户安全设置,GUSS是HSS返回给BSF的)里描述的用户UICC能力信息(即指明UICC是否具备GBA功能),确定Ua口应该使用的衍生密钥类型,并根据确定出的密钥类型和存储的B-TID对应的Ks,采用步骤208所述UE的相同计算方法计算出对应的衍生密钥Ks_int_NAF、Ks_ext_NAF或Ks_NAF。
在确定密钥类型时,可能会遇到以下几种情况第一种用户UICC不具备GBA功能;可推论出步骤206执行的是GBA_ME过程;UE和BSF共享密钥Ks;若密钥属性信息中指出要求采用Ks_int_NAF或Ks_ext_NAF,对于这种情况,在步骤208就结束了,因此实际上这种情况是不会出现的;若密钥属性信息中包含Ks_NAF类型,即使不再第一优先级,也选择Ks_NAF类型作为确定出的密钥类型。例如,指出要求采用Ks_int_NAF或者Ks_NAF,Ks_int_NAF作为首选优先级密钥,UE也将选择Ks_NAF类型作为确定出的密钥类型。
第二种用户UICC具备GBA功能;可推论出步骤206执行的是GBA_U过程,UICC和BSF共享密钥Ks;若密钥属性信息中指出要求采用Ks_int_NAF或Ks_ext_NAF,那么UICC将选择Ks_int_NAF或Ks_ext_NAF类型作为确定出的密钥类型。若均进行了指定,则选择高优先级的作为确定出的密钥类型,例如,若首选优先级为Ks_ext_NAF,将采用Ks_ext_NAF类型作为确定出的密钥类型;若密钥属性信息中指出要求采用Ks_NAF类型或者还指定Ks_int_NAF类型,但Ks_NAF作为首选,则选择Ks_ext_NAF类型代替Ks_NAF类型;例如,指出要求采用Ks_int_NAF或者Ks_NAF,且首选优先级别为Ks_NAF,也将采用Ks_ext_NAF类型作为确定出的密钥类型,若Ks_int_NAF作为首选,则选用Ks_int_NAF;若指定Ks_NAF作为首选,还指定Ks_ext_NAF,也将选择Ks_ext_NAF类型作为确定出的密钥类型。
步骤214BSF向NAF返回所生成的衍生密钥。
BSF向NAF返回衍生密钥时,可以采用以下两个方法告诉NAF返回的是何种密钥类型第一种如果采用固定长度的消息,则可以规定几个位段,从某位到某位发送Ks_int_NAF,另外某位到某位存放Ks_ext_NAF等,例如消息中存放密钥的有48个字节。可以规定前16个字节发送Ks_int_NAF值,从第17到32个字节发送Ks_ext_NAF值,而后16个字节发送Ks_NAF的值。如果向发送何种密钥,就将该密钥放入相应字段加以发送。如果不发送某种密钥,那么相应的字段的值为全0。
第二种如果是消息长度是可变的,那么发送某种密钥的密钥值之前一定会有表示密钥类型的标志信息。NAF根据标志信息就可以判断返回的密钥类型。
步骤215NAF与UE进行通信,并采用衍生密钥加以保护。
上述实施例,NAF所需的衍生密钥是由BSF产生和判断的。下面的例子是由BSF产生衍生密钥,由NAF判断是否为所需的衍生密钥,从而确定是否采用该衍生密钥对所述通讯进行保护,下面进行详细说明步骤301~310和步骤201~210相同,不再赘述。
步骤311BSF收到NAF查询请求后,根据其存储的B-TID对应的Ks,并根据用户的GUSS里描述的用户UICC能力信息(即指明UICC是否具备GBA功能),计算出衍生密钥信息判断计算衍生密钥。这个步骤和现有技术中BSF计算衍生密钥的步骤相同,包括以下两种情况第一种若用户UICC属性信息指明UICC不具备GBA功能,BSF将会采用和UE相同的方法由Ks计算衍生密钥Ks_NAF;第二种若用户UICC属性信息指明UICC具备GBA功能,BSF将会由Ks计算出衍生密钥Ks_int_NAF和Ks_ext_NAF,并且向NAF返回Ks_int_NAF和Ks_ext_NAF。
步骤312BSF向NAF返回计算出的衍生密钥(可以采用和步骤214所述的相同方式返回衍生密钥)。
步骤313NAF根据返回的密钥类型以及本地记录的所述应用的密钥属性信息确定Ua口应采用的密钥类型。其确定密钥类型的方式描述如下,包括以下几种第一种返回的衍生密钥为Ks_NAF,说明用户侧的UICC不具备GBA功能;若密钥属性信息中指出要求采用Ks_int_NAF或Ks_ext_NAF,对于这种情况,在步骤308就结束了,因此实际上这种情况是不会出现的;若密钥属性信息中包含Ks_NAF类型,即使不再第一优先级,也选择Ks_NAF类型作为确定出的密钥类型。例如,指出要求采用Ks_int_NAF或者Ks_NAF,Ks_int_NAF作为首选优先级密钥,UE也将选择Ks_NAF类型作为确定出的密钥类型。
第二种返回的衍生密钥为Ks_int_NAF和Ks_ext_NAF,说明用户侧的UICC具备GBA功能;若密钥属性信息中指出要求采用Ks_int_NAF或Ks_ext_NAF,那么UICC将选择Ks_int_NAF或Ks_ext_NAF类型作为确定出的密钥类型。若均进行了指定,则选择高优先级的作为确定出的密钥类型,例如,若首选优先级为Ks_ext_NAF,将采用Ks_ext_NAF类型作为确定出的密钥类型;若密钥属性信息中指出要求采用Ks_NAF类型,或者还要求Ks_int_NAF,但Ks_NAF作为首选,则采用Ks_ext_NAF类型代替Ks_NAF类型;例如,指出要求采用Ks_int_NAF或者Ks_NAF,且首选优先级别为Ks_NAF,也将采用Ks_ext_NAF类型作为确定出的密钥类型,若Ks_int_NAF作为首选,则选用Ks_int_NAF。若指定Ks_NAF作为首选,还指定Ks_ext_NAF,也将选择Ks_ext_NAF类型作为确定出的密钥类型。
步骤314NAF与UE进行通信,并采用确定出的衍生密钥加以保护。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种实现用户设备UE和网络业务应用实体NAF的安全通讯方法,其特征在于,该方法包括以下步骤A、网络侧和UE上保存不同应用在Ua口采用的不同密钥类型;Ua口是UE和NAF通讯的接口;B、UE要使用某应用时,UE和执行用户身份初始检查验证的实体BSF进行互鉴权,生成共享密钥Ks由双方保存;C、UE根据其用户识别模块UICC属性、所保存的所述应用的密钥类型,由所述共享密钥Ks生成所需类型的衍生密钥;D、包含NAF的网络侧根据UE的UICC属性、所保存的所述应用的密钥类型,由所述共享密钥Ks生成所需类型的衍生密钥保存到NAF上;E、UE和NAF采用生成的衍生密钥加密之间通过Ua口所进行的通讯。
2.根据权利要求1所述的方法,其特征在于,步骤A所述UE保存不同应用在Ua口采用的不同密钥类型的步骤包括UE从网络侧获得不同应用在Ua口采用的不同密钥类型,并进行保存。
3.根据权利要求1所述的方法,其特征在于,步骤C所述生成所需类型衍生密钥的步骤包括判断用户UICC属性为不具备密钥管理功能时,若所保存的应用的密钥类型为Ks_int_NAF或Ks_ext_NAF类型,结束本流程;若所保存的应用的密钥类型包括Ks_NAF类型,则选择Ks_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;判断用户UICC属性为具备密钥管理功能时若所保存的应用的密钥类型包括Ks_int_NAF或Ks_ext_NAF类型,则选择Ks_int_NAF或Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;若所保存的应用的密钥类型为Ks_NAF类型,则选择Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥。
4.根据权利要求1所述的方法,其特征在于,步骤C所述生成所需类型衍生密钥的步骤包括根据用户UICC属性、保存的共享密钥Ks生成衍生密钥;根据保存的所述应用的密钥类型、生成的衍生密钥的类型确定所采用的衍生密钥。
5.根据权利要求1所述的方法,其特征在于,网络侧包含一存放应用的密钥类型的实体,步骤D所述生成所需类型衍生密钥保存到NAF上的步骤包括BSF从存放应用的密钥类型的实体获得所使用的应用的密钥类型;BSF根据用户的UICC属性、所获得的应用的密钥类型,由保存的共享密钥Ks生成所需类型衍生密钥发送给NAF保存。
6.根据权利要求5所述的方法,其特征在于,所述生成所需类型衍生密钥的步骤包括判断用户UICC不具备通用鉴权构架GBA功能时,若密钥类型包含Ks_NAF类型,则选择Ks_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;判断用户UICC具备GBA功能时,若密钥类型包含Ks_int_NAF或Ks_ext_NAF类型,则选择Ks_int_NAF或Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥;若密钥类型为Ks_NAF类型,则选择Ks_ext_NAF类型作为确定出的密钥类型,使用Ks生成所确定出的密钥类型的衍生密钥。
7.根据权利要求1所述的方法,其特征在于,网络侧NAF上保存有应用的密钥类型,步骤D所述生成衍生密钥保存到NAF上的步骤包括BSF根据用户UICC属性、保存的共享密钥Ks生成衍生密钥发送给NAF保存;NAF根据保存的所述应用的密钥类型、接收的衍生密钥的类型确定所采用的衍生密钥。
8.根据权利要求4或7所述的方法,其特征在于,所述确定所采用的衍生密钥的步骤包括判断接收的衍生密钥为Ks_NAF时,若所述应用的密钥类型包含Ks_NAF类型,选择所接收的Ks_NAF密钥作为确定出的衍生密钥;判断接收的衍生密钥为Ks_int_NAF和Ks_ext_NAF时,若所述应用的密钥类型包含Ks_int_NAF或Ks_ext_NAF类型,选择所接收的Ks_int_NAF或Ks_ext_NAF作为确定出的密钥;若所述应用的密钥类型为Ks_NAF类型,则选择所接收的Ks_ext_NAF作为确定出的衍生密钥。
9.根据权利要求3、6或8所述的方法,其特征在于,所述保存的应用的密钥类型包含多个类型,不同类型有不同优先级别,则选择出作为确定出的密钥类型的步骤进一步包括优先选择高优先级别的密钥类型。
10.根据权利要求5或7所述的方法,其特征在于,所述生成衍生密钥发送给NAF的步骤包括采用固定长度的消息发送所述衍生密钥给NAF,该消息的不同位段承载不同类型的衍生密钥。
11.根据权利要求5或7所述的方法,其特征在于,所述生成衍生密钥发送给NAF的步骤包括采用可变长度的消息发送所述衍生密钥给NAF,在衍生密钥值前添加衍生密钥类型的标志信息。
全文摘要
本发明提供了一种实现UE和NAF的安全通讯方法,包括以下步骤A.网络侧和UE上保存不同应用在Ua口采用的不同密钥类型;B.UE要使用某应用时,UE和BSF进行鉴权,生成共享密钥Ks由双方保存;C.UE根据其UICC属性、所保存的应用的密钥类型、所述共享密钥Ks生成衍生密钥;D.包含NAF的网络侧根据UE的UICC属性、所保存的应用的密钥类型、所述共享密钥Ks生成衍生密钥保存在NAF上;E.UE和NAF采用生成的衍生密钥加密之间通过Ua口所进行的通讯。实现某应用通过Ua口通讯时,采用该用于指定的密钥类型保护之间的通讯。
文档编号H04L9/28GK1881875SQ200510076808
公开日2006年12月20日 申请日期2005年6月15日 优先权日2005年6月15日
发明者杨艳梅, 黄迎新 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1