一种身份鉴别方法和装置与流程

文档序号:30759474发布日期:2022-07-15 20:11阅读:105来源:国知局
一种身份鉴别方法和装置与流程

1.本技术涉及网络通信安全技术领域,特别是涉及一种身份鉴别方法和装置。


背景技术:

2.在通信网络中,请求设备可以通过鉴别接入控制器访问网络。在一些对安全性需求较高的情况下,请求设备需要对鉴别接入控制器进行身份鉴别,以确保访问的网络属于合法网络。此外,在区块链技术的点对点传输中,需要在不同节点之间建立信任关系,因此对于节点的身份鉴别也十分重要。
3.在对鉴别接入控制器的身份鉴别的过程中,鉴别接入控制器需要提供自身的身份信息用于身份鉴别。这类身份信息一般携带了私密、敏感的信息,诸如地理位置信息、所属机构信息等。并且在实际应用过程中,这类身份信息通常会包含在实体的数字证书中,以数字证书作为实体的身份凭证。
4.若对鉴别接入控制器的身份鉴别过程中,鉴别接入控制器的身份信息被攻击者截获用于非法用途,则会对鉴别接入控制器、请求设备甚至网络造成极大的安全隐患。


技术实现要素:

5.为了解决上述技术问题,本技术提供了一种身份鉴别方法和装置,利用消息加密密钥对包括鉴别接入控制器的身份鉴别结果信息在内的信息进行保密处理,防止在鉴别接入控制器向请求设备发送鉴别结果消息的过程中暴露携带的私密敏感信息,避免攻击者重点针对合法的鉴别接入控制器进行攻击,以及避免利用鉴别接入控制器的私密、敏感信息进行非法活动,从而保证鉴别接入控制器、请求设备甚至网络的安全。
6.第一方面,本技术实施例提供了一种身份鉴别方法,包括:
7.鉴别接入控制器向其信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述鉴别接入控制器的数字证书;
8.所述鉴别接入控制器从所述第一鉴别服务器获取第一鉴别响应消息,所述第一鉴别响应消息中包括身份鉴别结果信息pub
aac
和请求设备信任的第二鉴别服务器的数字签名,所述pub
aac
包括对所述鉴别接入控制器的数字证书的验证结果;
9.所述请求设备获取所述鉴别接入控制器发送的鉴别结果消息,所述鉴别结果消息中包括身份鉴别结果信息密文,所述身份鉴别结果信息密文为所述鉴别接入控制器利用消息加密密钥对包括所述pub
aac
和所述请求设备信任的第二鉴别服务器的数字签名在内的加密数据加密得到的;
10.所述请求设备利用所述消息加密密钥对所述身份鉴别结果信息密文进行解密,得到所述pub
aac
和所述第二鉴别服务器的数字签名;
11.所述请求设备利用所述第二鉴别服务器的公钥对所述第二鉴别服务器的数字签名进行验证;若验证通过,则所述请求设备根据所述pub
aac
中的验证结果确定所述鉴别接入控制器的身份鉴别结果。
12.第二方面,本技术实施例提供了一种请求设备,包括:
13.第一获取单元,用于获取鉴别接入控制器发送的鉴别结果消息,所述鉴别结果消息中包括身份鉴别结果信息密文,所述身份鉴别结果信息密文为所述鉴别接入控制器利用消息加密密钥对包括身份鉴别结果信息pub
aac
和所述请求设备信任的第二鉴别服务器的数字签名在内的加密数据加密得到的;
14.其中,所述pub
aac
和所述第二鉴别服务器的数字签名是由所述鉴别接入控制器从其信任的第一鉴别服务器发送的第一鉴别响应消息中获取的,所述pub
aac
包括对所述鉴别接入控制器的数字证书的验证结果;
15.解密单元,用于利用所述消息加密密钥对所述身份鉴别结果信息密文进行解密,得到所述pub
aac
和所述第二鉴别服务器的数字签名;
16.第一验证单元,用于利用所述第二鉴别服务器的公钥对所述第二鉴别服务器的数字签名进行验证;
17.第一确定单元,用于当所述第二鉴别服务器的数字签名验证通过时,根据所述pub
aac
中的验证结果确定所述鉴别接入控制器的身份鉴别结果。
18.第三方面,本技术实施例提供了一种鉴别接入控制器,包括:
19.第一发送单元,用于向所述鉴别接入控制器信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述鉴别接入控制器的数字证书;
20.第一获取单元,用于从所述第一鉴别服务器获取第一鉴别响应消息,所述第一鉴别响应消息中包括身份鉴别结果信息pub
aac
和请求设备信任的第二鉴别服务器的数字签名,所述pub
aac
包括对所述鉴别接入控制器的数字证书的验证结果;
21.所述第一发送单元还用于向请求设备发送鉴别结果消息,所述鉴别结果消息中包括身份鉴别结果信息密文,所述身份鉴别结果信息密文为所述鉴别接入控制器利用消息加密密钥对包括所述pub
aac
和所述第二鉴别服务器的数字签名在内的加密数据加密得到的。
22.由上述技术方案可以看出,利用消息加密密钥对包括鉴别接入控制器的身份鉴别结果信息在内的信息进行保密处理,防止在鉴别接入控制器向请求设备发送鉴别结果消息的过程中暴露携带的私密敏感信息,从而使攻击者无法知晓鉴别接入控制器是否合法,避免攻击者重点针对合法的鉴别接入控制器进行攻击,以及避免利用鉴别接入控制器的私密、敏感信息进行非法活动,保证鉴别接入控制器、请求设备甚至网络的安全;并且,通过引入鉴别服务器,在保障实体身份相关信息机密性的同时,实现了请求设备对鉴别接入控制器的单向身份的实时鉴别,为保证用户能够与合法网络通信奠定基础。
附图说明
23.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
24.图1为本技术实施例提供的一种身份鉴别方法的示意图;
25.图2为本技术实施例提供的一种请求设备req和鉴别接入控制器aac协商消息加密密钥的方法的示意图;
26.图3为本技术实施例提供的非漫游情况下一种身份鉴别方法的示意图;
27.图4为本技术实施例提供的漫游情况下一种身份鉴别方法的示意图;
28.图5为本技术实施例提供的非漫游情况下另一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
29.图6为本技术实施例提供的漫游情况下另一种身份鉴别方法的示意图,其中“*”表示可选的字段或可选的操作;
30.图7为本技术实施例提供的一种请求设备req的结构框图;
31.图8为本技术实施例提供的一种鉴别接入控制器aac的结构框图。
具体实施方式
32.在通信网络中,请求设备可以通过鉴别接入控制器访问网络,为了确保请求设备访问的网络为合法网络,请求设备需要对鉴别接入控制器的身份进行鉴别。
33.以目前的无线通信和移动通信场景为例,在请求设备通过鉴别接入控制器接入无线网络的场景下,请求设备可以为手机、个人数字助理(personal digital assistant,简称pda)、平板电脑等终端设备,鉴别接入控制器可以是无线接入点、无线路由器等网络侧设备。在请求设备通过鉴别接入控制器接入有线网络的场景下,请求设备可以为台式机、笔记本电脑等终端设备,鉴别接入控制器可以是交换机或路由器等网络侧设备。在请求设备通过鉴别接入控制器接入第四/五代移动通信技术(the 4th/5th generation mobile communication technology,简称4g/5g)网络的场景下,请求设备可以为手机、平板电脑等终端设备,鉴别接入控制器可以是基站等网络侧设备。当然,本技术同样适用于其他有线网络、近距离通信网络等各种数据通信场景。
34.然而,在对鉴别接入控制器的身份鉴别的过程中,鉴别接入控制器需要提供自身的身份信息用于鉴别,该身份信息通常包含在鉴别接入控制器的数字证书中,携带了诸如地理位置信息、所属机构信息等私密、敏感信息,若在身份鉴别过程中被攻击者截获用于非法用途,则会对鉴别接入控制器、请求设备甚至网络造成极大的安全隐患。
35.为了解决上述技术问题,本技术实施例提供一种身份鉴别方法,包括:鉴别接入控制器向其信任的第一鉴别服务器发送包括所述鉴别接入控制器的数字证书的第一鉴别请求消息,鉴别接入控制器从所述第一鉴别服务器获取第一鉴别响应消息,第一鉴别响应消息中包括鉴别接入控制器的身份鉴别结果信息pub
aac
和请求设备信任的第二鉴别服务器的数字签名,然后鉴别接入控制器利用消息加密密钥对包括所述pub
aac
和所述第二鉴别服务器的数字签名在内的加密数据加密得到身份鉴别结果信息密文,向请求设备发送包括身份鉴别结果信息密文的鉴别结果消息,其中,pub
aac
携带了反映鉴别接入控制器是否合法的私密、敏感信息。请求设备利用消息加密密钥对身份鉴别结果信息密文解密得到pub
aac
和第二鉴别服务器的数字签名,并利用第二鉴别服务器的公钥验证第二鉴别服务器的数字签名,验证通过后,请求设备根据pub
aac
中的验证结果确定鉴别接入控制器的身份鉴别结果。
36.可以理解的是,本技术实施例提到的验证结果是鉴别接入控制器信任的鉴别服务器对鉴别接入控制器的数字证书进行合法性验证得到的。以上仅为请求设备、鉴别接入控制器及鉴别服务器的示例,不应理解为对请求设备、鉴别接入控制器及鉴别服务器的限定,在本技术实施例的其他实现方式中,请求设备、鉴别接入控制器及鉴别服务器还可以是其
他设备。
37.本技术实施例提供的身份鉴别方法用于实现请求设备对鉴别接入控制器的单向身份鉴别(aac authentication with an unauthenticated req,简称aaur)。
38.为便于介绍,在本技术实施例中,将以请求设备(requester,简称req)、鉴别接入控制器(authentication access controller,简称aac)和鉴别服务器(authentication server,简称as)为例,对本技术的身份鉴别方法进行介绍。
39.其中,as为可信第三方实体,持有符合iso/iec 9594-8/itu x.509、其他标准或其他技术体系规定的数字证书和数字证书对应的私钥。aac信任的as称为第一鉴别服务器as-aac。req信任的as称为第二鉴别服务器as-req。当as-aac和as-req不相同时,as-aac和as-req相互信任,并相互知晓对方的数字证书或数字证书中的公钥。
40.req可以是参与身份鉴别过程的一个端点,与aac建立连接,访问aac提供的服务,且通过aac访问as,req知晓其信任的as-req的数字证书或数字证书中的公钥。aac可以是参与身份鉴别过程的另一个端点,与req建立连接,提供服务,并与req通信,且可直接访问as-aac,aac持有符合iso/iec 9594-8/itu x.509、其他标准或其他技术体系规定的数字证书和数字证书对应的私钥,aac数字证书的合法性可被aac信任的as-aac验证。
41.下面结合图1,说明本技术实施例提供的一种身份鉴别方法,该方法包括:
42.s101、aac向其信任的as-aac发送第一鉴别请求消息aacveri。
43.所述aacveri中包括aac的数字证书cert
aac

44.s102、aac从其信任的as-aac获取第一鉴别响应消息asveri。
45.所述asveri中包括身份鉴别结果信息pub
aac
和req信任的as-req的数字签名sig
as_req
。其中,pub
aac
包括对aac的数字证书cert
aac
的验证结果res
aac
,res
aac
是as-aac对cert
aac
进行合法性验证后得到的。sig
as_req
是as-req对包括pub
aac
在内的签名数据计算生成的数字签名,req可以通过验证sig
as_req
来确定pub
aac
是否可信。本技术中,将被签名的对象称为签名数据。
46.需要说明的是,若aac信任的as-aac和req信任的as-req为同一个鉴别服务器,即为非漫游情况,此时req和aac共同信任的鉴别服务器可以用as-aac(当然也可以用as-req)来表示。此情形下,aac向as-aac(也可以表示为as-req)发送第一鉴别请求消息aacveri后,as-aac(也可以表示为as-req)对cert
aac
进行合法性验证得到验证结果res
aac
,根据包括res
aac
在内的信息生成pub
aac
,对包括pub
aac
在内的签名数据计算生成as-aac的数字签名sig
as_aac
(也可以表示为as-req的数字签名sig
as_req
),根据包括pub
aac
和sig
as_aac
(也可以表示为sig
as_req
)在内的信息生成第一鉴别响应消息asveri,并向aac发送所述asveri。
47.若aac信任的as-aac和req信任的as-req为两个不同的鉴别服务器,即为漫游情况,此情形下,aac向as-aac发送第一鉴别请求消息aacveri后,as-aac对cert
aac
进行合法性验证得到验证结果res
aac
,根据包括res
aac
在内的信息生成pub
aac
,对包括pub
aac
在内的签名数据计算生成as-aac的第一数字签名sig
as_aac1
,并向as-req发送第二鉴别请求消息as-aacveri,所述as-aacveri中包括所述pub
aac
和所述sig
as_aac1
,由as-req利用as-aac的公钥验证所述sig
as_aac1
,验证通过后,对包括所述pub
aac
在内的签名数据计算生成as-req的数字签名sig
as_req
。然后,as-aac接收as-req发送的第二鉴别响应消息as-reqveri,所述as-reqveri中包括所述pub
aac
和所述sig
as_req
。as-aac根据包括所述pub
aac
和所述sig
as_req
在内
的信息生成第一鉴别响应消息asveri,并向aac发送所述asveri。
48.s103、req获取aac发送的鉴别结果消息aacauth。
49.所述aacauth中包括身份鉴别结果信息密文encdata
aac
。其中,encdata
aac
为aac利用消息加密密钥采用对称加密算法对包括所述pub
aac
和所述sig
as_req
在内的加密数据加密得到的。所述消息加密密钥可以是req和aac协商得到的,也可以是req和aac预先共享的。req和aac协商消息加密密钥的实现方式将在后续介绍。本技术中,将被加密的对象称为加密数据。
50.s104、req利用消息加密密钥对encdata
aac
进行解密得到pub
aac
和sig
as_req

51.由于encdata
aac
是aac利用消息加密密钥采用对称加密算法对包括pub
aac
和sig
as_req
在内的加密数据加密得到的,因此req接收到aac发送的encdata
aac
后,可以利用消息加密密钥对encdata
aac
解密得到asveri中的pub
aac
和sig
as_req

52.s105、req利用as-req的公钥验证sig
as_req

53.由于req知晓其信任的鉴别服务器的公钥,因此req可以利用as-req的公钥验证sig
as_req
。若验证通过,则继续执行后续操作。
54.s106、req根据pub
aac
中的res
aac
确定aac的身份鉴别结果。
55.由于pub
aac
中包括res
aac
,res
aac
可以反映aac是否合法,因此req可以根据res
aac
确认aac是否合法,从而保证req能够访问合法网络。
56.由上述技术方案可知,利用消息加密密钥对所述pub
aac
和所述sig
as_req
进行保密处理,可以防止在鉴别接入控制器向请求设备发送鉴别结果消息的过程中暴露携带的私密敏感信息,从而使攻击者无法知晓鉴别接入控制器是否合法,避免攻击者重点针对合法的鉴别接入控制器进行攻击,以及避免利用鉴别接入控制器的私密、敏感信息进行非法活动,保证鉴别接入控制器、请求设备甚至网络的安全;并且通过引入鉴别服务器,在保障实体身份相关信息机密性的同时,实现请求设备对鉴别接入控制器的单向身份的实时鉴别,为确保用户能够与合法网络通信奠定基础。
57.req在确定aac的身份鉴别结果之前,还可以先确定aac的数字签名是否验证通过。请参考图1,s103的aacauth中还可以包括aac的数字签名sig
aac
,sig
aac
的签名数据包括aacauth中sig
aac
之前的其他字段,相应的,pub
aac
中还包括cert
aac
;则在s106之前,req还需要确定sig
aac
是否验证通过,验证通过才能执行s106。其中,req确定sig
aac
是否验证通过包括以下方式:req利用解密encdata
aac
得到的pub
aac
中的cert
aac
对sig
aac
进行验证,根据验证结果确定sig
aac
是否验证通过。
58.在另一些实施例中,s101的aacveri中还可以包括aac的数字签名sig
aac
,sig
aac
的签名数据包括aacveri中sig
aac
之前的其他字段,则在s106之前,req还需要确定sig
aac
是否验证通过,验证通过才能执行s106。其中,req确定sig
aac
是否验证通过包括以下方式:由aac信任的as-aac利用aacveri中的cert
aac
验证sig
aac
,验证通过后才会执行后续流程,因此,若req能够接收到s103的aacauth,则req确定sig
aac
已验证通过。
59.在req、aac和鉴别服务器之间传递的消息中还可以包括aac和/或req生成的随机数、身份标识等参数信息,正常情况下,在身份鉴别过程中,这些随机数和/或身份标识在通过各个消息进行传输的过程中应该是不变的,但是如果遇到网络抖动或攻击等情况时,可能造成消息中的随机数和/或身份标识等参数信息的丢失或篡改。因此,在身份鉴别时还可
以对消息中的身份标识和/或随机数的一致性进行验证,以保障鉴别结果的可靠性和新鲜性。具体如下:
60.请参考图1,在一些实施例中,req生成第二随机数nonce
req
,若aac获取了req发送的nonce
req
和/或req的身份标识id
req
,则s101的aacveri中还包括nonce
req
和/或id
req
,非漫游情况下,s102的asveri中还包括nonce
req
和/或id
req
,漫游情况下,as-aac向as-req发送的as-aacveri中还包括nonce
req
和/或id
req
,as-req向as-aac发送的as-reqveri中还包括nonce
req
和/或id
req
,s102的asveri中还包括nonce
req
和/或id
req
;相应的,s103的aacauth中,encdata
aac
的加密数据还包括nonce
req
和/或id
req
,在s104中req对encdata
aac
解密还得到nonce
req
和/或id
req
,则在s106之前,req还需要将解密encdata
aac
得到的nonce
req
和/或id
req
与req生成的nonce
req
和/或req自身的身份标识id
req
(也就是req向aac发送的nonce
req
和/或id
req
)的一致性进行比对,若一致,则req再执行s106;若不一致,则req丢弃s103的aacauth。
61.为了进一步保障鉴别结果的可靠性,s103的aacauth中还可以包括消息完整性校验码mactag
aac
。mactag
aac
是aac利用消息完整性校验密钥对包括aacauth中除mactag
aac
外的其他字段进行完整性校验计算生成的。相应的,在s106之前,req还要验证所述mactag
aac
,若验证通过,则req再执行s106。req验证mactag
aac
时,应利用所述消息完整性校验密钥对包括aacauth中除mactag
aac
外的其他字段计算生成mactag
aac
,并将计算出的mactag
aac
与接收到的aacauth中的mactag
aac
进行比较,若一致,则验证通过,若不一致,则验证不通过。其中,req和aac利用的消息完整性校验密钥的生成方式将在下一实施例中说明。
62.上述实施例中,由于aac和req使用的消息加密密钥可以是二者协商得到的,因此本实施例还提供一种req和aac协商消息加密密钥的方法,参见图2,该方法包括:
63.s201、aac向req发送密钥请求消息aacinit。
64.所述aacinit中包括aac的密钥交换参数keyinfo
aac
。keyinfo
aac
包括aac的临时公钥,其中,密钥交换是指如迪菲
·
赫尔曼(diffie-hellman,简称dh)等密钥交换算法。所述aacinit中还可以包括aac生成的第一随机数nonce
aac

65.所述aacinit中还可以包括security capabilities
aac
,security capabilities
aac
表示aac支持的安全能力参数信息,包括aac支持的身份鉴别套件(身份鉴别套件中包含一种或多种身份鉴别方法)、对称加密算法、完整性校验算法和/或密钥导出算法等,以供req选择使用的特定安全策略,则req可以根据security capabilities
aac
选择req使用的特定安全策略security capabilities
req
。security capabilities
req
表示req相应确定使用的身份鉴别方法、对称加密算法、完整性校验算法和/或密钥导出算法等。
66.s202、req根据包括req的密钥交换参数keyinfo
req
对应的临时私钥和keyinfo
aac
所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算消息加密密钥。
67.若s201中的aacinit中还包括aac生成的nonce
aac
,则req可以根据包括keyinfo
req
对应的临时私钥和keyinfo
aac
所包括的临时公钥进行密钥交换计算生成第一密钥k1,将k1结合包括nonce
aac
和req生成的第二随机数nonce
req
在内的信息,利用协商的或预置的密钥导出算法计算消息加密密钥。协商的密钥导出算法可以是req根据aac发送的security capabilities
aac
而选择使用的密钥导出算法。其中,keyinfo
req
是req产生的密钥交换参数,包括req的临时公钥。keyinfo
req
对应的临时私钥是req产生的对应于req的临时公钥的临时
私钥,即所述临时公钥和临时私钥是一对临时公私钥对。
68.s203、req向aac发送密钥响应消息reqinit。
69.所述reqinit中包括所述keyinfo
req
,以便aac根据包括keyinfo
aac
对应的临时私钥和keyinfo
req
所包括的临时公钥在内的信息计算得到消息加密密钥。其中,keyinfo
aac
对应的临时私钥是aac产生的对应于aac的临时公钥的临时私钥,即所述临时公钥和临时私钥是一对临时公私钥对。
70.所述reqinit中还可以包括security capabilities
req
。所述reqinit中还可以包括所述nonce
req
,以便aac根据包括所述keyinfo
aac
对应的临时私钥、所述keyinfo
req
所包括的临时公钥、所述nonce
aac
和所述nonce
req
在内的信息计算得到消息加密密钥。
71.所述reqinit中还可以包括所述nonce
aac
,进而aac可以在计算消息加密密钥之前,对reqinit中的nonce
aac
和aac生成的nonce
aac
进行一致性验证,以确保aac接收的reqinit是对aacinit的响应消息。
72.s204、aac根据包括keyinfo
aac
对应的临时私钥和keyinfo
req
所包括的临时公钥进行密钥交换计算生成所述第一密钥,根据包括所述第一密钥在内的信息利用所述密钥导出算法计算消息加密密钥。
73.若所述reqinit中还包括所述nonce
req
,则aac可以根据包括所述keyinfo
aac
对应的临时私钥和所述keyinfo
req
所包括的临时公钥进行密钥交换计算生成所述第一密钥k1,将k1结合包括所述nonce
aac
和所述nonce
req
在内的信息,利用协商的或预置的密钥导出算法计算消息加密密钥。其中,协商的密钥导出算法可以是aac根据req发送的security capabilities
req
而选择使用的密钥导出算法。
74.需要说明的是,在图2实施例中,req和aac也可以生成消息完整性校验密钥。req和aac各自生成消息完整性校验密钥的实施方式与图2实施例中示例的req和aac各自生成消息加密密钥的实施方式相同。例如,aac可以通过图2实施例的方式利用密钥导出算法导出一串密钥数据,该密钥数据既可以作为消息加密密钥又可以作为消息完整性校验密钥,或者,将该密钥数据中的一部分密钥数据作为消息加密密钥,将另一部分密钥数据作为消息完整性校验密钥;aac也可以通过图2实施例的方式利用密钥导出算法分次导出两串相同或不同的密钥数据,一串作为消息加密密钥,一串作为消息完整性校验密钥。req可以通过图2实施例的方式利用密钥导出算法导出一串密钥数据,该密钥数据既可以作为消息加密密钥又可以作为消息完整性校验密钥,或者,将该密钥数据中的一部分密钥数据作为消息加密密钥,将另一部分密钥数据作为消息完整性校验密钥;req也可以通过图2实施例的方式利用密钥导出算法分次导出两串相同或不同的密钥数据,一串作为消息加密密钥,一串作为消息完整性校验密钥。
75.本技术实施例还提供了利用aac和req之间信息交互来确定本次鉴别过程所使用的第一鉴别服务器和/或第二鉴别服务器的方法:
76.请参考图2,aac在s201的aacinit中添加aac信任的至少一个鉴别服务器的身份标识id
as_aac
,则req根据所述id
as_aac
确定自身信任的至少一个鉴别服务器的身份标识id
as_req
。具体实现时,req从id
as_aac
中选取至少一个鉴别服务器且是自身信任的鉴别服务器的身份标识作为id
as_req
,若选取失败,则req将自身信任的至少一个鉴别服务器的身份标识作为id
as_req
(其中,选取成功对应非漫游情况,选取失败对应漫游情况),将该id
as_req
添加至s203
的reqinit中发送给aac。进而,aac可以根据id
as_aac
和id
as_req
确定第一鉴别服务器,例如aac可以判断id
as_req
和id
as_aac
中是否存在至少一个相同的鉴别服务器的身份标识,若存在,即为非漫游情况,aac从上述至少一个req和aac共同信任的鉴别服务器的身份标识中,确定参与身份鉴别的第一鉴别服务器;若不存在,则为漫游情况,aac需要根据id
as_aac
确定参与身份鉴别的第一鉴别服务器as-aac,并将id
as_req
发送给as-aac,以便as-aac根据id
as_req
确定第二鉴别服务器as-req。
77.作为另一种实施方式,aac可以不必向req发送id
as_aac
,而由req在s203的reqinit中添加自身信任的至少一个鉴别服务器的身份标识id
as_req
。根据id
as_req
和aac信任的鉴别服务器的身份标识id
as_aac
确定参与身份鉴别过程的第一鉴别服务器和/或第二鉴别服务器的具体实现方式如前一种实施方式。
78.由于req和aac信任的鉴别服务器可以相同也可以不同,当req和aac信任的鉴别服务器相同时,为非漫游情况;当req和aac信任的鉴别服务器不同时,为漫游的情况。
79.参见图3,是在非漫游情况下身份鉴别方法的一个实施例。其中,可以用as-aac(也可以用as-req)来表示req和aac共同信任的鉴别服务器。在该实施例执行前,req和aac已经都拥有了消息加密密钥,消息加密密钥可以是双方预先共享的也可以是通过图2所示的方法协商得到的。基于图1实施例,图3实施例的身份鉴别方法还包括:
80.s301、as-aac接收aac发送的第一鉴别请求消息aacveri。
81.所述aacveri中包括cert
aac

82.s302、as-aac对cert
aac
的合法性进行验证得到验证结果res
aac

83.s303、as-aac根据包括res
aac
在内的信息生成pub
aac
,对包括pub
aac
在内的签名数据计算生成as-aac的数字签名sig
as_aac

84.需要说明的是,由于非漫游情况下as-req和as-aac为同一个鉴别服务器,因此图1实施例的s102中,asveri中的sig
as_req
与图3实施例的s303中的sig
as_aac
相同,都是由同一个鉴别服务器计算生成的。
85.s304、as-aac根据包括pub
aac
和sig
as_aac
在内的信息生成第一鉴别响应消息asveri。
86.as-aac生成asveri后,将asveri发送给aac。
87.在图3中,s305-s309依次与图1中的s102-s106相对应,s102-s105中的as-req和sig
as_req
对应于s305-s308中的as-aac和sig
as_aac

88.参见图4,是在漫游情况下身份鉴别方法的一个实施例。在该实施例执行前,req和aac已经都拥有了消息加密密钥,消息加密密钥可以是双方预先共享的也可以是通过图2所示的方法协商得到的。基于图1实施例,图4实施例的身份鉴别方法还包括:
89.s401、as-aac接收aac发送的第一鉴别请求消息aacveri。
90.所述aacveri中包括cert
aac

91.s402、as-aac对cert
aac
的合法性进行验证得到验证结果res
aac
,根据包括res
aac
在内的信息生成pub
aac
,对包括pub
aac
在内的签名数据计算生成as-aac的第一数字签名sig
as_aac1

92.s403、as-aac向as-req发送第二鉴别请求消息as-aacveri。
93.所述as-aacveri中包括pub
aac
和sig
as_aac1
。由于as-aac不是req信任的鉴别服务
器,as-aac与as-req相互信任,因此as-aac需要将pub
aac
发送给as-req,由as-req对包括pub
aac
在内的签名数据计算生成as-req的数字签名sig
as_req
,以此向req表明该pub
aac
是可信的。
94.s404、as-req利用as-aac的公钥验证sig
as_aac1

95.若验证通过,则执行s405;若验证不通过,则丢弃as-aacveri。
96.s405、as-req对as-aacveri中包括pub
aac
在内的签名数据计算生成as-req的数字签名sig
as_req

97.s406、as-req向as-aac发送第二鉴别响应消息as-reqveri。
98.所述as-reqveri中包括pub
aac
和sig
as_req
。由于req信任来自于as-req的pub
aac
,因此as-aac需要将as-reqveri中的内容通过第一鉴别响应消息asveri发送给aac。
99.在图4中,s407-s411依次与图1中的s102-s106相对应。
100.参见图5,是在非漫游情况下的身份鉴别方法的一个实施例。其中,可以用as-aac(也可以用as-req)来表示req和aac共同信任的鉴别服务器。在该实施例中,req和aac之间的消息加密密钥协商过程被融合到了身份鉴别过程中,更便于工程实施。该身份鉴别方法包括:
101.s501、aac生成nonce
aac
和keyinfo
aac
,根据需要生成security capabilities
aac

102.s502、aac向req发送密钥请求消息aacinit。
103.所述aacinit中包括nonce
aac
、keyinfo
aac
和security capabilities
aac
。security capabilities
aac
为可选字段,表示aac支持的安全能力参数信息,包括aac支持的身份鉴别套件、对称加密算法、完整性校验算法和/或密钥导出算法等(全文同)。
104.s503、req生成nonce
req
和keyinfo
req
,根据需要生成security capabilities
req
,根据包括keyinfo
req
对应的临时私钥和keyinfo
aac
所包括的临时公钥进行密钥交换计算生成第一密钥k1,将k1结合nonce
aac
、nonce
req
及其他信息(req和aac采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥;利用所述消息加密密钥采用对称加密算法计算req的身份标识密文encdata
req

105.其中,security capabilities
req
为可选字段,表示req根据security capabilities
aac
作出的特定安全策略的选择,即req确定使用的身份鉴别方法、对称加密算法、完整性校验算法和/或密钥导出算法等(全文同);req是否生成security capabilities
req
取决于aac向req发送的aacinit中是否携带security capabilities
aac
。req生成消息完整性校验密钥为可选操作,这一步也可以在后续需要使用时再执行。
106.s504、req向aac发送密钥响应消息reqinit。
107.所述reqinit中包括nonce
aac
、nonce
req
、security capabilities
req
、keyinfo
req
和encdata
req
。其中,nonce
aac
应等于aacinit中的nonce
aac
;security capabilities
req
为可选字段;encdata
req
的加密数据包括id
req

108.s505、aac接收所述reqinit后,执行下述操作(若无特别说明或逻辑上的关系,本文中以(1)、(2)
……
编号的动作并不因为有编号而存在必然的先后顺序。全文同),包括:
109.(1)、检查reqinit中的nonce
aac
与aac生成的nonce
aac
是否相同,若不同,则丢弃reqinit;
110.(2)、根据包括所述keyinfo
aac
对应的临时私钥和所述keyinfo
req
所包括的临时公钥进行密钥交换计算生成第一密钥k1,将k1结合nonce
aac
、nonce
req
及其他信息(aac和req采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥;aac生成消息完整性校验密钥为可选操作,这一步也可以在后续需要使用时再执行;
111.(3)、利用消息加密密钥采用对称加密算法解密encdata
req
得到id
req

112.s506、aac向as-aac发送第一鉴别请求消息aacveri。
113.所述aacveri中包括id
req
、cert
aac
、nonce
req
。其中,id
req
、nonce
req
应分别等于reqinit中的相应字段。
114.s507、as-aac接收所述aacveri后,执行下述操作,包括:
115.(1)、验证cert
aac
的合法性得到res
aac
,根据包括cert
aac
和res
aac
在内的信息生成pub
aac

116.(2)、计算sig
as_aac

117.s508、as-aac向aac发送第一鉴别响应消息asveri。
118.所述asveri中包括id
req
、nonce
req
、pub
aac
及sig
as_aac
。其中,id
req
、nonce
req
应分别等于aacveri中的相应字段,sig
as_aac
的签名数据包括id
req
、nonce
req
和pub
aac

119.s509、aac接收所述asveri后,执行下述操作,包括:
120.(1)、利用消息加密密钥计算encdata
aac

121.(2)、计算sig
aac

122.(3)、根据需要计算mactag
aac

123.s510、aac向req发送鉴别结果消息aacauth。
124.所述aacauth中包括encdata
aac
、sig
aac
及mactag
aac
。其中,sig
aac
的签名数据包括aacauth中sig
aac
之前的其他字段;encdata
aac
的加密数据包括id
req
、nonce
req
、pub
aac
及sig
as_aac
,其中,加密数据均来源于asveri。mactag
aac
为可选字段,当需要进一步验证aac与req之间交互的消息是否完整时,aac可以计算mactag
aac
,其计算过程为:利用消息完整性校验密钥采用完整性校验算法对包括aacauth中除mactag
aac
外的其他字段计算生成mactag
aac

125.s511、req接收所述aacauth后,执行下述操作,包括:
126.(1)、若aacauth中存在mactag
aac
,则验证mactag
aac

127.验证过程为:利用消息完整性校验密钥采用完整性校验算法对包括aacauth中除mactag
aac
外的其他字段在本地计算生成mactag
aac
(该计算方式与aac计算mactag
aac
的方式相同),并将计算出的mactag
aac
与接收的aacauth中的mactag
aac
进行比较。
128.(2)、利用消息加密密钥解密encdata
aac
得到id
req
、nonce
req
、pub
aac
、sig
as_aac

129.(3)、检查解密得到的id
req
、nonce
req
是否分别与req自身的身份标识id
req
、req生成的nonce
req
相同;
130.(4)、利用解密得到的pub
aac
中的cert
aac
验证sig
aac

131.(5)、利用as-aac的公钥验证sig
as_aac

132.(6)、上述检查与验证均通过后,根据pub
aac
中的res
aac
确定aac的身份鉴别结果;上述检查与验证中任一步不通过,则立即丢弃aacauth。
133.需要说明的是,s509中计算sig
aac
的操作也可以改为在s506中先行执行,即在s506中,aac先对aacveri中的id
req
、cert
aac
、nonce
req
进行签名计算生成sig
aac
,则s506的aacveri中还包括sig
aac
,在s507中as-aac还需要验证sig
aac
,验证通过后再执行后续操作;此情形下,s509中aac则不用计算sig
aac
,相应的,s510的aacauth中不包括sig
aac
,在s511中req也不再验证sig
aac
,此时pub
aac
中可以不包括cert
aac

134.参见图6,是在漫游情况下的身份鉴别方法的一个实施例。在该实施例中,req和aac之间的消息加密密钥协商过程被融合到了身份鉴别过程中,更便于工程实施。该身份鉴别方法包括:
135.s601、aac生成nonce
aac
和keyinfo
aac
,根据需要生成security capabilities
aac

136.s602、aac向req发送密钥请求消息aacinit。
137.所述aacinit中包括nonce
aac
、keyinfo
aac
、security capabilities
aac
和id
as_aac
。其中,id
as_aac
和security capabilities
aac
为可选字段;id
as_aac
表示aac信任的至少一个鉴别服务器的身份标识,用于使req根据id
as_aac
确定是否存在共同信任的鉴别服务器。
138.s603、req生成nonce
req
和keyinfo
req
,根据需要生成security capabilities
req
和id
as_req
,根据包括keyinfo
req
对应的临时私钥和keyinfo
aac
所包括的临时公钥进行密钥交换计算生成第一密钥k1,将k1结合nonce
aac
、nonce
req
及其他信息(req和aac采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥,利用所述消息加密密钥采用对称加密算法计算encdata
req

139.其中,id
as_req
表示req信任的至少一个鉴别服务器的身份标识,当aacinit中存在id
as_aac
时,req尽量从其信任的鉴别服务器中选择至少一个与id
as_aac
中相同的鉴别服务器的身份标识作为id
as_req
,若选择失败,则将自身信任的至少一个鉴别服务器的身份标识作为id
as_req
(本实施例对应选择失败的情况);当aacinit中不存在id
as_aac
时,req将自身信任的至少一个鉴别服务器的身份标识作为id
as_req
。req计算消息完整性校验密钥为可选操作,这一步可以在后续需要使用时再执行。
140.s604、req向aac发送密钥响应消息reqinit。
141.所述reqinit中包括nonce
aac
、nonce
req
、security capabilities
req
、keyinfo
req
、encdata
req
和id
as_req
。其中,security capabilities
req
和id
as_req
为可选字段;nonce
aac
应等于aacinit中的相应字段;encdata
req
的加密数据包括id
req

142.s605、aac接收所述reqinit后,执行下述操作,包括:
143.(1)、检查reqinit中的nonce
aac
与aac生成的nonce
aac
是否相同,若不同,则丢弃reqinit;
144.(2)、根据包括所述keyinfo
aac
对应的临时私钥和所述keyinfo
req
所包括的临时公钥进行密钥交换计算生成第一密钥k1,将k1结合nonce
aac
、nonce
req
及其他信息(aac和req采用的其他信息是相同的且可选的,譬如特定字符串等)利用协商的或预置的密钥导出算法计算消息加密密钥和消息完整性校验密钥。aac生成消息完整性校验密钥为可选操作,这一步可以在后续需要使用消息完整性校验密钥时再执行;
145.(3)、利用消息加密密钥采用对称加密算法解密encdata
req
得到id
req

146.(4)、若reqinit中携带id
as_req
且aacinit中携带id
as_aac
,则aac判断id
as_req
和id
as_aac
是否存在至少一个相同的鉴别服务器的身份标识,若存在,即为非漫游情况,aac从
上述至少一个req和aac共同信任的鉴别服务器的身份标识中,确定参与身份鉴别的第一鉴别服务器;若不存在,则为漫游情况,aac需要根据id
as_aac
确定参与身份鉴别的第一鉴别服务器as-aac,并将id
as_req
发送给as-aac,以便as-aac根据id
as_req
确定第二鉴别服务器as-req;或者,
147.若reqinit中携带id
as_req
但aacinit中不携带id
as_aac
,则aac判断id
as_req
和aac所信任的鉴别服务器是否存在至少一个相同的鉴别服务器的身份标识,若存在,即为非漫游情况,aac从上述至少一个req和aac共同信任的鉴别服务器的身份标识中确定参与身份鉴别的第一鉴别服务器;若不存在,则为漫游情况,aac需要根据自身信任的鉴别服务器确定参与身份鉴别的第一鉴别服务器as-aac,并将id
as_req
发送给as-aac,以便as-aac根据id
as_req
确定第二鉴别服务器as-req;
148.需要说明的是,此实施例判断出的结果应为漫游情况。
149.s606、aac向as-aac发送第一鉴别请求消息aacveri。
150.所述aacveri中包括cert
aac
、id
req
、nonce
req
及id
as_req
。其中,id
req
、nonce
req
、id
as_req
应分别等于reqinit中的相应字段,且id
as_req
为可选字段,用于使as-aac根据id
as_req
确定req信任的鉴别服务器。
151.s607、as-aac接收所述aacveri后,执行下述操作,包括:
152.(1)、验证cert
aac
的合法性得到res
aac
,根据包括cert
aac
和res
aac
在内的信息生成pub
aac

153.(2)、若aacveri中存在id
as_req
,则as-aac根据id
as_req
确定第二鉴别服务器as-req,若不存在,则表示as-aac已确知as-req;
154.(3)、计算第一数字签名sig
as_aac1

155.s608、as-aac向as-req发送第二鉴别请求消息as-aacveri。
156.所述as-aacveri中包括id
req
、nonce
req
、pub
aac
、sig
as_aac1
。其中,id
req
、nonce
req
应分别等于aacveri中的相应字段。sig
as_aac1
的签名数据包括as-aacveri中sig
as_aac1
之前的其他字段。例如,当as-aacveri中依次包括id
req
、nonce
req
、pub
aac
及sig
as_aac1
时,sig
as_aac1
的签名数据包括id
req
、nonce
req
及pub
aac

157.s609、as-req接收所述as-aacveri后,执行下述操作,包括:
158.(1)、利用as-aac的公钥验证sig
as_aac1
,若验证不通过,则丢弃as-aacveri;
159.(2)、计算sig
as_req

160.s610、as-req向as-aac发送第二鉴别响应消息as-reqveri。
161.所述as-reqveri中包括id
req
、nonce
req
、pub
aac
及sig
as_req
。其中,id
req
、nonce
req
、pub
aac
应分别等于as-aacveri中的相应字段,sig
as_req
的签名数据包括as-reqveri中sig
as_req
之前的其他字段。
162.s611、as-aac接收所述as-reqveri后,向aac发送第一鉴别响应消息asveri。
163.所述asveri中包括id
req
、nonce
req
、pub
aac
及sig
as_req
。其中,id
req
、nonce
req
、pub
aac
、sig
as_req
应分别等于as-reqveri中的相应字段。
164.s612、aac接收所述asveri后,执行下述操作,包括:
165.(1)、利用消息加密密钥计算encdata
aac

166.(2)、计算sig
aac

167.(3)、根据需要计算mactag
aac

168.s613、aac向req发送鉴别结果消息aacauth。
169.所述aacauth中包括encdata
aac
、sig
aac
及mactag
aac
。sig
aac
的签名数据包括aacauth中sig
aac
字段之前的其他字段;mactag
aac
为可选字段,其计算过程如前所述。encdata
aac
的加密数据包括来源于asveri的id
req
、nonce
req
、pub
aac
及sig
as_req

170.s614、req接收所述aacauth后,执行下述操作,包括:
171.(1)、若aacauth中存在mactag
aac
,则验证mactag
aac
,验证过程如前所述;
172.(2)、利用消息加密密钥解密encdata
aac
得到id
req
、nonce
req
、pub
aac
、sig
as_req

173.(3)、检查解密得到的id
req
、nonce
req
是否分别与req自身的身份标识id
req
、req生成的nonce
req
相同;
174.(4)、利用解密得到的pub
aac
中的cert
aac
验证sig
aac

175.(5)、利用as-req的公钥验证sig
as_req

176.(6)、上述检查与验证均通过后,根据pub
aac
中的res
aac
确定aac的身份鉴别结果;上述检查与验证中任一步不通过,则立即丢弃aacauth。
177.需要说明的是,s612中计算sig
aac
的操作也可以改为在s606中先行执行,即在s606中,aac先对aacveri中的cert
aac
、id
req
、nonce
req
、id
as_req
进行签名计算生成sig
aac
,其中id
as_req
为可选字段,则s606的aacveri中还包括sig
aac
,在s607中as-aac还需要验证sig
aac
,验证通过后再执行后续操作;此情形下,在s612中aac则不用计算sig
aac
,相应的,s613的aacauth中不包括sig
aac
,s614中req也不再验证sig
aac
,此时pub
aac
中可以不包括cert
aac

178.在上述各实施例中,每条消息还可以携带一个杂凑值hash
x_y
,该杂凑值hash
x_y
是该消息的发送方实体x利用杂凑算法对接收到的对端实体y发送的最新前序消息计算得到的,用于对端实体y来验证实体x是否接收到完整的最新前序消息。其中,hash
req_aac
表示req对接收到的aac发送的最新前序消息计算的杂凑值,hash
aac_req
表示aac对接收到的req发送的最新前序消息计算的杂凑值,hash
aac_as-aac
表示aac对接收到的as-aac发送的最新前序消息计算的杂凑值,hash
as-aac_aac
表示as-aac对接收到的aac发送的最新前序消息计算的杂凑值,hash
as-aac_as-req
表示as-aac对接收到的as-req发送的最新前序消息计算的杂凑值,hash
as-req_as-aac
表示as-req对接收到的as-aac发送的最新前序消息计算的杂凑值。若发送方实体x当前发送的消息为实体x和实体y之间交互的首条消息,意味着实体x未曾收到对端实体y发送的前序消息,则该条消息中hash
x_y
可以不存在或者无意义。
179.对应的,对端实体y接收到实体x发送的消息后,若该条消息中包含hash
x_y
,则当实体y未曾向实体x发送过前序消息时,实体y忽略hash
x_y
;当实体y曾向实体x发送过前序消息时,实体y利用杂凑算法对之前向实体x发送的最新前序消息在本地计算杂凑值,并与接收到的消息中携带的杂凑值hash
x_y
比较,若一致,则执行后续步骤,否则丢弃或者结束本次鉴别过程。
180.本发明中,对实体x而言,对端实体y向实体x发送的前序消息指的是:实体x向对端实体y发送消息m之前,接收过的对端实体y向实体x发送的消息;对端实体y向实体x发送的最新前序消息指的是:实体x向对端实体y发送消息m之前,接收的对端实体y向实体x发送的最新一条消息。若实体x向其对端实体y发送的消息m是实体x和实体y之间交互的第一条消息,则实体x向其对端实体y发送消息m之前,不存在对端实体y向实体x发送的前序消息。
181.需要说明的是,上述图5和图6实施例中的可选字段和可选操作,在说明书附图的图5和图6中用“*”表示。以上所有实施例涉及的消息中包括的各个内容不限定顺序,且在没有特别说明的情况下,不限定消息接收方收到消息后对相关消息的操作顺序以及对消息中包括的内容进行处理的顺序。
182.基于图1-6对应的实施例,参见图7,本技术实施例还提供了一种请求设备req,包括:
183.第一获取单元701,用于获取鉴别接入控制器发送的鉴别结果消息,所述鉴别结果消息中包括身份鉴别结果信息密文,所述身份鉴别结果信息密文为所述鉴别接入控制器利用消息加密密钥对包括身份鉴别结果信息pub
aac
和所述请求设备信任的第二鉴别服务器的数字签名在内的加密数据加密得到的;
184.其中,所述pub
aac
和所述第二鉴别服务器的数字签名是由所述鉴别接入控制器从其信任的第一鉴别服务器发送的第一鉴别响应消息中获取的,所述pub
aac
包括对所述鉴别接入控制器的数字证书的验证结果;
185.解密单元702,用于利用所述消息加密密钥对所述身份鉴别结果信息密文进行解密,得到所述pub
aac
和所述第二鉴别服务器的数字签名;
186.第一验证单元703,用于利用所述第二鉴别服务器的公钥对所述第二鉴别服务器的数字签名进行验证;
187.第一确定单元704,用于当所述第二鉴别服务器的数字签名验证通过时,根据所述pub
aac
中的验证结果确定所述鉴别接入控制器的身份鉴别结果。
188.可选的,所述请求设备还包括:
189.第二获取单元,用于获取所述鉴别接入控制器发送的密钥请求消息,所述密钥请求消息中包括所述鉴别接入控制器的密钥交换参数;
190.计算单元,用于根据包括所述请求设备的密钥交换参数对应的临时私钥和所述鉴别接入控制器的密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算所述消息加密密钥;
191.发送单元,用于向所述鉴别接入控制器发送密钥响应消息,所述密钥响应消息中包括所述请求设备的密钥交换参数。
192.可选的,所述第二获取单元获取的密钥请求消息中还包括所述鉴别接入控制器生成的第一随机数;所述发送单元发送的密钥响应消息中还包括所述请求设备生成的第二随机数;
193.所述计算单元还用于根据包括所述第一密钥、所述第一随机数和所述第二随机数在内的信息计算所述消息加密密钥。
194.可选的,当所述发送单元发送的密钥响应消息中还包括所述第二随机数时,所述第一鉴别响应消息中还包括所述第二随机数;第一获取单元701获取的身份鉴别结果信息密文的加密数据还包括所述第二随机数;则解密单元702对所述身份鉴别结果信息密文进行解密还得到所述第二随机数;第一验证单元703还用于对解密单元702解密得到的所述第二随机数与所述请求设备生成的第二随机数进行一致性验证。
195.可选的,所述请求设备还包括:加密单元,用于利用所述计算单元计算得到的消息加密密钥对包括所述请求设备的身份标识在内的信息加密得到身份标识密文;相应的,所
述发送单元发送的密钥响应消息中还包括所述身份标识密文。
196.可选的,当所述发送单元发送的密钥响应消息中还包括所述身份标识密文时,所述第一鉴别响应消息中还包括所述请求设备的身份标识;第一获取单元701获取的身份鉴别结果信息密文的加密数据还包括所述请求设备的身份标识;则解密单元702对所述身份鉴别结果信息密文进行解密还得到所述请求设备的身份标识;第一验证单元703还用于对解密单元702解密得到的所述请求设备的身份标识与所述请求设备自身的身份标识进行一致性验证。
197.可选的,所述第二获取单元获取的密钥请求消息中还包括所述鉴别接入控制器支持的安全能力参数信息,则所述请求设备还包括:第二确定单元,用于根据所述安全能力参数信息确定所述请求设备使用的特定安全策略;
198.相应的,所述发送单元发送的密钥响应消息中还包括所述特定安全策略。
199.可选的,所述第二获取单元获取的密钥请求消息中还包括所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识;则所述请求设备还包括:
200.第三确定单元,用于根据所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定所述请求设备信任的至少一个鉴别服务器的身份标识;
201.所述发送单元发送的密钥响应消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识。
202.可选的,所述发送单元发送的密钥响应消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识。
203.可选的,第一确定单元704在确定所述鉴别接入控制器的身份鉴别结果之前,还用于确定所述鉴别接入控制器的数字签名是否验证通过,若确定所述鉴别接入控制器的数字签名验证通过,则再根据所述pub
aac
中的验证结果确定所述鉴别接入控制器的身份鉴别结果。
204.可选的,第一确定单元704具体用于:
205.当所述鉴别接入控制器向其信任的第一鉴别服务器发送的第一鉴别请求消息中包括所述鉴别接入控制器的数字证书和所述鉴别接入控制器的数字签名时,所述第一鉴别服务器利用所述鉴别接入控制器的数字证书对所述鉴别接入控制器的数字签名进行验证,若第一获取单元701获取到所述鉴别结果消息,则确定所述鉴别接入控制器的数字签名已验证通过;或者,
206.当所述鉴别结果消息中还包括所述鉴别接入控制器的数字签名时,相应的,所述pub
aac
中还包括所述鉴别接入控制器的数字证书;则第一确定单元704利用所述鉴别接入控制器的数字证书对所述鉴别接入控制器的数字签名进行验证,根据验证结果确定所述鉴别接入控制器的数字签名是否验证通过。
207.可选的,第一获取单元701获取的鉴别结果消息中还包括所述鉴别接入控制器计算的消息完整性校验码;则所述请求设备还包括:
208.第二验证单元,用于利用消息完整性校验密钥对所述鉴别结果消息中的消息完整性校验码进行验证;其中,所述消息完整性校验密钥与所述消息加密密钥的生成方式相同。
209.可选的,所述请求设备向所述鉴别接入控制器发送的消息还包括所述请求设备对接收到的所述鉴别接入控制器发送的最新前序消息计算的杂凑值。
210.基于图1-6对应的实施例,参见图8,本技术实施例还提供了一种鉴别接入控制器aac,包括:
211.第一发送单元801,用于向所述鉴别接入控制器信任的第一鉴别服务器发送第一鉴别请求消息,所述第一鉴别请求消息中包括所述鉴别接入控制器的数字证书;
212.第一获取单元802,用于从所述第一鉴别服务器获取第一鉴别响应消息,所述第一鉴别响应消息中包括身份鉴别结果信息pub
aac
和请求设备信任的第二鉴别服务器的数字签名,所述pub
aac
包括对所述鉴别接入控制器的数字证书的验证结果;
213.第一发送单元801还用于向请求设备发送鉴别结果消息,所述鉴别结果消息中包括身份鉴别结果信息密文,所述身份鉴别结果信息密文为所述鉴别接入控制器利用消息加密密钥对包括所述pub
aac
和所述第二鉴别服务器的数字签名在内的加密数据加密得到的。
214.可选的,所述鉴别接入控制器还包括:
215.第二发送单元,用于向所述请求设备发送密钥请求消息,所述密钥请求消息中包括所述鉴别接入控制器的密钥交换参数;
216.第二获取单元,用于获取所述请求设备发送的密钥响应消息,所述密钥响应消息中包括所述请求设备的密钥交换参数;
217.计算单元,用于根据包括所述鉴别接入控制器的密钥交换参数对应的临时私钥和所述请求设备的密钥交换参数所包括的临时公钥进行密钥交换计算生成第一密钥,根据包括所述第一密钥在内的信息利用密钥导出算法计算所述消息加密密钥。
218.可选的,所述第二发送单元发送的密钥请求消息中还包括所述鉴别接入控制器生成的第一随机数;所述第二获取单元获取的密钥响应消息中还包括所述请求设备生成的第二随机数;
219.所述计算单元还用于根据包括所述第一密钥、所述第一随机数和所述第二随机数在内的信息计算所述消息加密密钥。
220.可选的,所述第二获取单元获取的密钥响应消息中还包括所述第一随机数;则所述鉴别接入控制器还包括:
221.验证单元,用于对所述密钥响应消息中的第一随机数与所述鉴别接入控制器生成的第一随机数进行一致性验证。
222.可选的,所述第二获取单元获取的密钥响应消息中还包括所述请求设备生成的第二随机数,则第一发送单元801发送的第一鉴别请求消息中还包括所述第二随机数;相应的,第一获取单元802获取的第一鉴别响应消息中还包括所述第二随机数,第一发送单元801发送的身份鉴别结果信息密文的加密数据还包括所述第二随机数。
223.可选的,所述第二获取单元获取的密钥响应消息中还包括所述请求设备生成的身份标识密文;则所述鉴别接入控制器还包括:解密单元,用于利用所述计算单元计算得到的消息加密密钥对所述身份标识密文进行解密得到所述请求设备的身份标识。
224.可选的,所述解密单元解密得到所述请求设备的身份标识,则第一发送单元801发送的第一鉴别请求消息中还包括所述请求设备的身份标识;相应的,第一获取单元802获取的第一鉴别响应消息中还包括所述请求设备的身份标识,第一发送单元801发送的身份鉴别结果信息密文的加密数据还包括所述请求设备的身份标识。
225.可选的,所述第二发送单元发送的密钥请求消息中还包括所述鉴别接入控制器支
持的安全能力参数信息,所述第二获取单元获取的密钥响应消息中还包括所述请求设备根据所述安全能力参数信息确定的所述请求设备使用的特定安全策略。
226.可选的,所述第二发送单元发送的密钥请求消息中还包括所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识;则所述第二获取单元获取的密钥响应消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;所述鉴别接入控制器还包括:
227.第一确定单元,用于根据所述密钥响应消息中所述请求设备信任的至少一个鉴别服务器的身份标识和所述密钥请求消息中所述鉴别接入控制器信任的至少一个鉴别服务器的身份标识,确定参与身份鉴别的第一鉴别服务器。
228.可选的,所述第二获取单元获取的密钥响应消息中还包括所述请求设备信任的至少一个鉴别服务器的身份标识;所述鉴别接入控制器还包括:
229.第二确定单元,用于根据所述请求设备信任的至少一个鉴别服务器的身份标识和所述鉴别接入控制器信任的鉴别服务器的身份标识,确定参与身份鉴别的第一鉴别服务器。
230.可选的,第一发送单元801发送的鉴别结果消息中还包括消息完整性校验码,所述消息完整性校验码是所述鉴别接入控制器利用消息完整性校验密钥对包括所述鉴别结果消息中除所述消息完整性校验码外的其他字段计算生成的;其中,所述消息完整性校验密钥与所述消息加密密钥的生成方式相同。
231.可选的,所述鉴别接入控制器向所述请求设备发送的消息还包括所述鉴别接入控制器对接收到的所述请求设备发送的最新前序消息计算的杂凑值;所述鉴别接入控制器向所述第一鉴别服务器发送的消息还包括所述鉴别接入控制器对接收到的所述第一鉴别服务器发送的最新前序消息计算的杂凑值。
232.本领域技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质可以是下述介质中的至少一种:只读存储器(英文:read-only memory,缩写:rom)、ram、磁碟或者光盘等各种可以存储程序代码的介质。
233.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备及系统实施例而言,由于其与方法实施例相一致和对应,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
234.以上所述,仅为本技术的一种具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应该以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1