基于票据的虚拟企业跨异构域认证及密钥协商
2014-12-02张文芳王小敏
饶 宇,张文芳+,王小敏
(1.西南交通大学 信息科学与技术学院,四川 成都 610031;2.西南交通大学 信息安全与国家计算网格四川省重点实验室,四川 成都 610031)
0 引言
虚拟企业[1](Virtual Enterprise,VE)又称敏捷企业或动态联盟,是由若干异地、异构的企业或机构为赢得某个市场机遇而集中优势资源,所形成的一个网络化分布式动态组织。在虚拟企业环境中,随时存在用户跨域访问资源的活动,并且由于虚拟企业具有异构性、临时性和低成本等特点,使得虚拟企业的安全性比一般企业更为复杂。为保证资源的安全有效共享,首先需要解决用户跨异构域访问资源时的身份认证与会话密钥协商问题,现有企业信任域通常为采用公钥认证技术的公钥基础设施(Public Key Infrastructure,PKI)域和采用对称密码体制的Kerberos域。
最早的跨域认证方案有PKCROSS[2],PKDA[3]及一些扩充或增强方案[4-8],通过在域间引入公钥认证机制建立起跨Kerberos域的认证模型。Linn[9]首次提出PKI域间的交互认证模型,如层次模型、网状模型和桥模型等,Liu等[10]在其基础上提出一个基于二叉树的分布式PKI信任模型。文献[11]针对智能电网提出基于公钥证书和零知识证明的跨PKI域认证方案,具有较高的安全性,但对通信实体的计算和存储能力要求高,不适用于多种安全域并存、终端计算能力参差不齐的虚拟企业环境。另外,文献[12-16]分别提出面向无线传感网、移动通信网、无线射频识别(Radio Frequency Identification,RFID)等带宽及资源受限环境下的跨域认证方案,这些方案均采用轻量级密码算法构造。此类方案安全性较低,无法满足虚拟企业的安全需求。
以上方案虽然采用面向同构域的跨域认证机制,解决了不同环境下的认证问题,但无法实现跨异构域的用户身份认证。为了解决上述问题,文献[17]采用桥认证中心组(Bridge Certificate Authority Group,BCAG)作为可信第三方以实现PKI域和Kerberos域之间的交互认证,当用户跨域访问资源时,需要遵循资源所在域的认证方式完成身份认证。然而建立BCAG 的开销巨大,并且当Kerberos域用户访问PKI域资源时,需要采用公钥密码算法实现身份认证,导致计算及存储资源受限的Kerberos域用户难以胜任。Lin[18]提出一个普适环境下的跨域认证与密钥协商协议,采用生物加密技术完成不同域中用户的双向认证,并采用签密技术实现通信双方的会话密钥分发。但该方案中,身份认证与密钥协商需分步实现,且协议中包含多次公钥加解密运算,计算量和通信量较大。
近年来,也有一些学者专门针对虚拟企业环境下的跨同构域认证问题提出一系列解决方案[19-23],这些方案中的成员企业域均为PKI域。文献[19]利用秘密共享技术构建成员企业都信任的虚拟认证中心(Virtual Certificate Authority,VCA),借助该VCA 进一步搭建起基于公钥密码体制的域间认证模型,但该方案不能适应成员的动态加入和退出[20]。文献[21-22]在VCA 模型的基础上利用门限ElGamal签名机制,提出一个基于可变权限集的广义虚拟企业跨域认证方案,能够根据虚拟企业的不同组织模式灵活配置成员权限集,并且适应成员的动态加入和退出。文献[23]提出一个基于门限RSA(Rivest-Shamir-Adleman)的虚拟企业VCA 认证方案。但上述方案均无法解决虚拟企业环境下多种信任域并存的异构域间的信任交互问题。
为此,本文针对虚拟企业特定安全需求,首先设计了一个跨异构域(Kerberos域和PKI域)的分级认证模型。该模型在计算能力和安全要求较高的PKI域认证中心(Certificate Authority,CA)与Kerberos域认证服务器(Authentication Server,AS)之间建立基于公钥密码体制的第一级信任关系,并利用CA 与AS间接搭建起终端用户与被访问资源之间的基于对称密码体制的第二级信任关系。在上述模型框架的基础上,详细设计了第二级交互认证及密钥协商协议,由资源所在域的CA(或AS联合票据授予服务器(Ticket Granting Server,TGS))为外域用户生成访问本域资源的授权票据和会话密钥,并通过用户所在域的AS(或CA)安全转发给用户,用户利用该授权票据即可在同一个逻辑步骤内实现与被访问资源之间的交互认证和密钥协商。
1 面向虚拟企业的跨异构域认证与密钥协商
1.1 基于公钥密码体制的第一级信任模型
本文设计的分级虚拟企业跨异构域认证协议涉及两种使用不同认证技术的信任域,即PKI域与Kerberos域。因为CA 与AS 分别作为PKI域和Kerberos域的认证服务器,具有较高的安全要求和较强的计算能力,所以利用基于公钥证书的认证方式构建CA 与AS间的第一级域间信任关系,并以CA 和AS作为域间认证的信任节点。第一级信任关系将利用已有的分布式PKI信任模型(如树状模型、网状模型、混合模型、桥模型、VCA 模型等)搭建,如图1所示,此处不再详述。图1中,假设虚拟企业由4个成员企业构成,标有Ei的方框表示第i个成员企业的信任域,其中E1和E2为PKI信任域,E3和E4为Kerberos信任域。
1.2 基于访问授权票据的第二级跨异构域认证及密钥协商协议
在建立起基于公钥证书的第一级域间信任关系的基础上,下面详细设计用户跨异构域访问资源时的身份认证及会话密钥协商协议。
首先对文中使用的符号进行说明:
U 表示用户,S表示被访问资源,AS表示Kerberos域认证服务器,CA 表示PKI域认证服务器。IDA表示A 的身份标识,kA,B表示A 与B共享的对称密钥,PKA表示A 的公钥,SKA表示A 的私钥,{X}kA,B表示用A,B共享的对称密钥对消息X的加密,{X}PKA表示用A 的公 钥对消 息X加密,{X,SIGNA}表示消息X及A 对消息X的签名,{X,hash}表示消息X及其hash值。
1.2.1 Kerberos域用户访问PKI域资源(协议1)
假设Kerberos域中用户U 想要访问PKI域中的资源S,跨域认证过程如图2所示,认证及会话密钥协商协议如下:
(1)用户U 向本地认证服务器AS发送一个跨域认证请求M1={IDU,{IDU,IDS,T1}kU,AS},其中T1表示U 产生的时间戳。
(2)AS接收到M1后,用U 和AS之间共享的对称密钥kU,AS解密{IDU,IDS,T1}kU,AS,验证解密得到的IDU与接收到的IDU是否一致,以及T1的新鲜性。若验证通过,则AS产生新的时间戳T2,生成消息M2发送给资源所在域的认证中心CA:
(3)CA 收到M2后,用私钥SKCA解密M2,并验证AS的签名SIGNAS及T2的新鲜性。如果验证通过,则CA 产生U 和S之间的会话密钥kU,S及其使用期限lifetime(kU,S的起止时间),生成新的时间戳T3,并生成消息M3发送给AS:
其中:TKT是CA 为用户生成的用于访问本域资源的票 据,TKT={IDCA,IDU,kU,S,lifetime,SIGNCA}PKAS,作为CA 信任U 的凭证。
(4)AS收到M3后,用私钥SKAS解密M3,并验证CA 签名SIGNCA及T3的新鲜性。若验证通过,则将解密得到的kU,S,lifetime,TKT连同AS新产生的时间戳T4一起,用kU,AS加密作为消息M4发送给U:
(5)U 用kU,AS解密M4,验证IDU和IDS是否为自己和被访问资源的身份标识,然后计算{IDU,IDS,kU,S,lifetime,TKT,T4}的hash值,验证是否与收到的hash值相等,并验证T4的新鲜性。如果验证通 过,则认为kU,S,lifetime,TKT有 效,并 将IDU及新产生的时间戳T5用kU,S加密,连同TKT一起作为消息M5发送给资源服务器S:
(6)S收到M5后,首先用私钥SKS解密TKT,验证CA 的签名SIGNCA及lifetime的有效性。若验证通过,则认为解密TKT得到的kU,S有效。然后,利用kU,S解密消息{IDU,T5}kU,S,验证解密出的IDU是否和TKT中的IDU一致,并验证T5的新鲜性。若以上验证都通过,则S授权U 的访问并生成新的时间戳T6,向U 发送一条确认消息:
(7)收到M6后,U 用kU,S解密M6,若解密结果IDS正确且T6新鲜,则可确认S的有效性。
(8)在有效期lifetime内,U 和S 之间利用会话密钥kU,S实现安全通信。
1.2.2 PKI域用户访问Kerberos域资源(协议2)
假设PKI域中的用户U 想要访问Kerberos域中的资源S,用户首先向本地认证中心CA 发送跨域认证请求,CA 验证用户的身份后,代替用户向资源所在域的AS发送认证请求,以获得票据授权票据TGT。认证过程如图3所示,认证及会话密钥协商协议如下:
(1)PKI域中用户U 向本地认证中心CA 发送一个跨域认证请求:
其中T1为U 产生的时间戳。
(2)CA 收到M1后,用私钥SKCA解密M1并验证U 的签名SIGNU及T1的新鲜性。验证通过后,生成新的时间戳T2,向资源所在域的认证服务器AS发送跨域认证请求:
(3)AS收到M2后,用私钥SKAS解密M2,并验证CA 签名SIGNCA及T2的新鲜性,验证通过后,产生U 和本域TGS之间的会话密钥kU,TGS、有效期lifetime1(kU,TGS的起止时间)及TGT,生成消息M3发送给CA:
其中TGT是AS为U 颁发的访问TGS 的票据授予票据,TGT={IDU,kU,TGS,lifetime1,hash}kAS,TGS。
(4)CA 收到M3后,用私钥SKCA解密M3并验证AS签名SIGNAS及T3的新鲜性。验证通过后,取出kU,TGS,lifetime1和TGT,并产生新的时间戳T4,生成消息M4发送给U:
(5)U 收到M4后,用私钥SKU解密M4并验证CA 签名SIGNCA及T4的新鲜性。若验证通过,则U 产生新产生的时间戳T5,生成消息M5发送给TGS:
(6)TGS收到M5后,首先用对称密钥kAS,TGS解密TGT,然后计算{IDU,kU,TGS,lifetime1}的hash值,验证是否与收到的hash值相等。如果验证通过,则认为密钥kU,TGS有效,并用该密钥解密{IDU,IDS,T5}kU,TGS。如果两次解密得到的IDU与 收 到的IDU一致且T5新鲜,则证明U的真实性及票据的有效性。验证通过后,TGS 生成U 与S 之间的会话密钥kU,S、有效期lifetime2(kU,S的 起止时间)及访问授 权票据TKT={IDU,kU,S,lifetime2,hash}kTGS,S,并将消息M6发送给U:
(7)U 收到M6后,用kU,TGS解密{IDS,kU,S,lifetime2,T6,hash}kU,TGS并验证T6的新鲜性,然后计算{IDS,kU,S,lifetime2,T6}的hash值,验证其是否与hash相等。若相等则认为会话密钥kU,S有效,并产生新的时间戳T7生成消息M7发送给S:
(8)S收到消息M7后,用kTGS,S解密票据TKT,然后计算{IDU,kU,S,lifetime2}的hash值,验证其是否与hash相等,若相等则认为kU,S有效。进而用kU,S解密{IDU,IDS,T7}kU,S,验证解密得到的IDU是否与TKT中的IDU一致,并验证T7的新鲜性。若验证通过,则S生成新的时间戳T8,向U 发送一条确认消息:
(9)U 收到M8后用kU,S解密,若解密结果IDS正确且T8新鲜,则可确认S的有效性。
(10)在有效期lifetime2内,U 和S之间利用会话密钥kU,S实现安全通信。
2 方案的性能分析
2.1 基于访问授权票据的认证及会话密钥协商协议的SVO 逻辑证明
BAN(Burrows-Abadi-Needham)逻辑是形式化分析认证协议的一种有效工具,在其基础上增强和扩充出了GNY(Gong-Needham-Yahalom)逻辑、AT(Abadi-Tuttle)逻辑、VO(Van Oorschot)逻辑和SVO(Syverson &Van Oorschot)逻辑等,其中SVO 逻辑是BAN 类逻辑中较为成 熟的一种[24]。下面对本文的两个认证协议分别进行SVO 逻辑证明。
2.1.1 协议1的SVO 逻辑证明
首先,证明的预期目标是双方U 和S对建立共享密钥的信任,即:
然后,列出协议的初始假设集合,即用SVO 逻辑语言表示出各主体的初始信念、接收到的消息、对收到消息的理解和解释。
以用户U 为分析的实体对象,分析U 的初始假设集合如下:
下面对协议进行分析,以确认协议能否达到预期目标(1)和(2),其中A0~A20表示SVO 逻辑的21条公理[22],证明过程如下:
R12,R13表示达到预期目标(1)和(2)。
以S为分析的实体对象,分析S的初始假设集合如下:
下面对协议进行分析,以确认协议能否达到预期目标(3)和(4):
R10,R11表示达到预期目标(3)和(4)。
2.1.2 协议2的SVO 逻辑证明
证明的预期目标是U 和S对建立共享密钥过程的信任,同协议1的目标(1)~(4)。协议2的(1)~(6),是U 和TGS之间建立会话密钥的过程,与协议1中的U 和S之间建立会话密钥的过程类似,不再赘述。在U 和TGS对它们之间建立的共享密钥kU,TGS信任的基础上,下面主要证明U 和S成功建立会话密钥kU,S的过程。以用户U 为分析的实体对象,分析U 的初始假设集合如下:
下面对协议进行分析,以确认协议能否达到预期目标(1)和(2):
以S为分析的实体对象,分析S的初始假设集合如下:
下面对协议进行分析,以确认协议能否达到预期目标(3)和(4):
R6,R7表示达到预期目标(3)和(4)。
2.2 安全性分析
2.2.1 跨异构域的双向身份认证
当Kerberos域用户U 访问PKI域资源S 时(协议1),AS和CA 之间通过公钥证书建立第一级信任关系,在消息M2和M3中都包含了发送方的签名,接收方通过验证其签名实现双向身份认证,见1.2.1节的步骤(2)和(3)。U 和本地认证服务器AS之间保留了Kerberos域内的基于对称密钥加密的双向身份认证方式,见1.2.1节的步骤(1)和(4),通过验证对方用共享密钥加密的身份信息来验证对方的身份。考虑到Kerberos域用户U 的计算能力和存储资源受限的问题,U 和PKI域中的资源服务器S之间同样遵循基于对称密钥加密的双向认证机制,见1.2.1节的步骤(5)和(6)。
当PKI域用户U 访问Kerberos域资源S 时(协议2),CA 和AS之间通过公钥证书建立第一级信任关系,由于消息M2和M3中都包含了发送方的签名,接收方通过验证其签名即可实现双向身份认证,见1.2.2节的步骤(2)和(3)。U 和本地认证中心CA 之间保留了PKI域内的基于公钥证书的双向认证机制,见1.2.2节的步骤(1)和(4)。同样,为了迁就Kerberos域中实体的计算能力,PKI域用户U 与Kerberos域内的TGS与S之间均采用基于对称密钥加密的双向认证机制,见1.2.2节的步骤(5)~(8)。
2.2.2 安全分发会话密钥
当Kerberos域用户U 访问PKI域资源S时,U 访问S的授权票据TKT和会话密钥kU,S由PKI域的CA 产生并发送给Kerberos 域的AS(消息M3),再由AS转发给U(消息M4),其中:M3用CA的私钥签名并用AS 的公钥加密,保证了TKT及kU,S的机密性和认证性,时间戳T3保证了新鲜性;M4用U 和AS的共享密钥kU,AS加密,保证了TKT和kU,S的机密性,且消息中的hash值及时间戳保证了其完整性和新鲜性。至此,U 与S间的会话密钥kU,S即被安全转发给U。随后,U 将含会话密钥kU,S的TKT={IDCA,IDU,kU,S,lifetime,SIGNCA}PKS发送给S(消息M5)。由于TKT用S公钥加密并用CA 私钥签名,保证了kU,S的机密性和认证性,此外有效期lifetime及M5中的时间戳可保证kU,S的新鲜性。最后U 和S相互发送一条使用kU,S加密的身份信息(M5,M6),即可确认会话密钥的成功共享。
当PKI域的用户U 访问Kerberos域资源S时,首先由Kerberos域的AS生成U 访问TGS的票据,授予票据TGT及其共享密钥kU,TGS(消息M3),并由PKI域的CA 转发给U(消息M4)。M3和M4均用发送方的私钥签名并用接收方的公钥加密,保证了TGT和kU,TGS的机密性和完整性,时间戳T3和T4保证了新鲜性。U 将包含TGT={IDU,kU,TGS,lifetime1,hash}kAS,TGS的消息M5进一步转发给TGS,TGS 用共享密钥kAS,TGS解密获得kU,TGS,并通过hash和lifetime1验证其完整性和新鲜性。然后,TGS生成U 访问S的授权票据TKT及会话密钥kU,S,并用kU,TGS加密kU,S发送给U(消息M6)。M6中,加密保证了kU,S的机密性,hash值及时间戳保证了kU,S的完整性和新鲜性。最后,U将包含会话密钥kU,S的TKT={IDU,kU,S,lifetime2,hash}kTGS,S发送给S(消息M7)。TKT用TGS和S的共享密钥加密,结合hash即可保证kU,S的机密性和认证性,而有效期lifetime2及M7中的时间戳则保证了kU,S的新鲜性。U 和S通过相互发送一条使用会话密钥加密的身份信息(M7,M8)即可确认会话密钥的成功共享。
2.2.3 抗攻击能力
(1)假冒攻击 本方案中,若攻击者想要冒充某合法用户访问资源,则必须向被访问资源出示由CA 为用户颁发的访问授权票据以及用会话密钥加密的身份信息,以获得资源端对他的身份认证。在协议1中,假设攻击者想冒充合法用户向资源端发送身份认证请求消息{TKT,{IDU,T5}kU,S}(其中TKT={IDCA,IDU,kU,S,lifetime,SIGNCA}PKS),需要伪造会话密钥kU,S并生成对应票据TKT。虽然会话密钥具有随机性而不能被察觉出是否伪造,但由于攻击者不知道CA 的私钥,仍然无法生成CA的签名SIGNCA,进而不能构造出合法的票据,因此当资源端在对其进行身份认证时,通过验证CA 签名即可检测出其假冒行为。同样,在协议2中,因为攻击者无法获得TGS和S之间的共享密钥kTGS,S,所以不能伪造出有效的票据TKT={IDU,kU,S,lifetime2}kTGS,S,进而无法实施假冒攻击。
(2)中间人攻击 中间人攻击指攻击者通过在两个通信实体之间建立中间连接,使通信者误认为自己是在与真实的接收方进行通信,从而使攻击者获取或篡改通信实体之间传输信息的攻击。中间人攻击适用于缺少双方认证的通信协议[25]。由2.3.1节的分析及上述对假冒攻击的分析可知,本文方案的每一步都提供了双向身份认证及消息完整性保护,因此可有效抵抗中间人攻击。同理,本文方案也能够抵抗反射攻击、平行会话攻击、交错攻击等因缺乏通信双方身份认证导致的攻击。
(3)重放攻击 在本文提出的两个协议中,通信双方发送的每条消息均包含了表征新鲜性的时间戳,并加密防止篡改。若攻击者想重放某条旧的消息,则接收方会发现解密得到的时间戳与当前时间不符,从而中断当前会话。如在协议1中,攻击者截获了消息M5={TKT,{IDU,T5}kU,S}并重放给资源端,资源端提取出其中的时间戳T5,并结合当前时间判断这是一条旧的消息而终止会话,因此可以防止重放攻击。
2.3 效率评估和比较
(1)分级实现虚拟企业的跨异构域认证
本方案采用分级思想设计认证模型,因为CA与AS作为认证服务器具有较高的安全要求和较强的计算能力,而终端用户特别是Kerberos域用户的计算能力较低,所以利用基于公钥证书的认证方式构建CA 与AS 间的第一级信任关系。在此基础上,以CA 与AS作为各自域对外认证的信任锚节点,为外域用户生成访问本域资源的授权票据,并由用户所在域的CA(或AS)安全转发给用户,进而建立起用户与被访问资源间基于对称密钥密码体制的第二级信任关系。与传统的认证模型相比,本文设计的分级认证模型能有效适应虚拟企业异构性的特点,并满足不同信任域的计算能力与安全需求。
(2)采用访问授权票据降低通信量与计算量
一方面,在上级认证服务器的辅助下,终端用户与被访问资源采用基于对称密钥密码体制建立第二级信任关系,大大降低了终端实体的通信量与计算量;另一方面,在第二级信任关系建立过程中,由资源所在域认证服务器为用户生成的访问授权票据中不仅包括认证和授权相关信息,还有经加密的安全会话密钥,可在同一个逻辑步骤内实现身份认证和会话密钥协商。相对于利用两个独立步骤实现上述功能的协议(如文献[18]),本文方案简化了协议流程,进一步降低了终端用户的计算量和通信量。
将本文方案的效率与文献[17]和文献[18]的方案进行比较,结果如表1 所示。其中:K→P 表示Kerberos域中用户访问PKI域资源,P→K 表示PKI域用户访问Kerberos 域资源。U/S/AS/CA分别表示用户、被访问资源、Kerberos域认证服务器和PKI域认证中心;A/B/SA/SB 分别表示服务请求者A、服务提供者B,以及A 和B 所在域中的认证服务器。A 相当于本文中的U,B 相当于本文中的S,均属于终端实体,计算能力较低;SA/SB 相当于本文中的AS/CA,均属于认证服务器,具有较强的计算能力和较高的安全需求。
表1 效率比较
本文方案与文献[18]方案均实现了认证与会话密钥协商功能,而文献[17]方案只实现了认证功能。
从表1可以看出,在PKI域用户访问Kerberos域资源的过程中,本文终端实体(U 和S)的公钥加解密次数为3+0=3次,文献[18](A 和B)为6+5=11次,文献[17](U 和S)为2+0=2次,本文方案的终端公钥计算量比文献[18]明显降低,并与文献[17]接近;在K→P 过程中,终端U 和S的公钥计算量为2+0=2次,文献[18]为6+5=11次,文献[17]为4+2=6次,本方案在终端的公钥计算量比文献[17]和文献[18]均明显降低。特别是本文协议中的Kerberos域终端实体(P→K 中的S,以及K→P中的U)的公钥计算量均为0,因此本文方案在PKI域与Kerberos域的跨异构域交互认证过程中具有更好的可实施性(Kerberos域终端资源非常有限,无法承担公钥密码运算)。上述公钥加解密运算量的降低是通过增加相应的对称加解密运算换取的,因此在实现等效或更多安全功能的基础上,本文终端实体的对称加解密运算量比文献[17]和文献[18]方案有所增加。
在认证服务器(AS,CA,SA,SB)的运算量方面,本文方案比文献[18]方案降低,比文献[17]方案略有增加。由于服务器计算和存储资源丰富,认证服务器运算量的少量增减对协议执行效率不会造成很大影响。
此外,在通信量方面,本文方案比文献[18]方案有很大降低,但比文献[17]方案略有增加,原因是本文方案在同一个逻辑步骤内实现了认证和会话密钥协商,而文献[17]方案只能实现了认证功能,文献[18]则采用两个逻辑步骤完成上述两项功能。
综上,本文方案在保证与文献[17]和文献[18]方案具备等效或更多安全功能的前提下,有效降低了认证实体的公钥计算量(Kerberos域终端实体的公钥计算量减少为0)和通信量。因此,在实际的跨异构域交互认证中具有更好的可实施性。
3 实验仿真
在上述理论分析的基础上,在VS2005开发平台上,通过调用OpenSSL密码函数库对提出的跨域认证协议进行仿真,仿真模型如图4所示。图中的虚拟企业由一个PKI信任域(成员企业E1)和一个Kerberos信任域(成员企业E2)组成,分别采用7台PC机模拟PKI域的认证中心CA、用户UPKI、资源SPKI及Kerberos域的认证服务器AS、票据授予服务器TGS、用户UKer、资源SKer,各PC 之间通过局域网互联,其内网IP地址如图4所示。仿真程序实现并验证了PKI域用户UPKI跨域访问Kerberos域资源SPKI,以及Kerberos域用户UKer跨域访问PKI域资源SKer的认证与密钥协商过程,仿真中公钥密码体制采用512bit的RSA 密码算法,私钥密码体制采用56bit的DES(data encryption standard)算法。各通信实体的身份标识分别为IDCA=10,IDUPKI=11,IDSPKI=12,IDAS=20,IDTGS=21,IDUKer=22,IDSKer=23。UKer与AS 的共享密钥 为kUKer,AS=a7a8ae5e1a648f40,AS与TGS的共享密钥为kAS,TGS=25e50ef267e5544c,TGS与S的共享密钥为kTGS,S=29372ff12331a2bf。限于篇幅,此处没有具体列出CA,AS,UPKI的RSA 公私钥信息。
当Kerberos域用户UKer访问PKI域资源SPKI时,遵循协议1.2.1 的认证流程。实验中,CA 为UKer生成访 问 SPKI的会话密钥kUKer,SPKI=b9864f73f723086b(有效期lifetime={1355212064:1355822064}))及访问授权票据TKT={IDCA,IDUKer,kUKer,SPKI,lifetime,SIGNCA}PKAS。SPKI可从UKer发送的消息M5中首先解密访问授权票据TKT,得 到{IDCA,IDUKer,kUKer,SPKI,lifetime}的明 文{10,22,b9864f73f723086b,1355212064:1355822064},获取系统当前时间T=1355212100,可见此票据在有效期内,会话密钥有效;然后取出会话密钥kUKer,SPKI=b9864f73f723086b 解密消 息{IDUKer,T5}kUKer,SPKI,得 到{IDUKer,T5}={22,1355212064},可知IDUKer及时间戳T5有效,于是SPKI确认与UKer成功共享会话密钥kUKer,SPKI,向U 发送确认消息M6={IDSPKI,T6}kUKer,SPKI。U 解 密M6得到{IDSPKI,T6}={12,1355212108},可见IDSPKI和时间戳T6均有效,从而确定UKer和SPKI之间的成功共享会话密钥kUKer,SPKI=b9864f73f723086b。
当PKI域用户UPKI访问Kerberos域资源SKer时,遵循协议1.2.2 的认证流程。AS 生成票据授予票 据TGT={IDUPKI,kUPKI,TGS,lifetime1}kAS,TGS。TGS收到UPKI发送的消息M5后,首先用与AS共享 的密钥kAS,TGS解 密TGT,得到密 钥kUPKI,TGS=92abec07899d526e,然后用 该密钥解密{IDUPKI,T5}kUPKI,TGS,得到{IDUPKI,T5}={11,1355298048},从而确定用户身份及时间戳的有效性,并且证明UPKI知道kUPKI,TGS。接着,TGS生成UPKI与SKer之间的会话密钥kUPKI,SKer=d0f75b3eb36df18c(有效期lifetime2={1355298048:1355987048}及访问授权(票 据TKT={IDUPKI,KUPKI,SKer,lifetime2}kTGS,SKer)。UPKI从 收到的消息M6中解密{IDSKer,kUPKI,SKer,lifetime2,T6}kUPKI,TGS,得 到{23,d0f75b3eb36df18c,1355298048:1355987048,13552981005},从而验证资源身份及时间戳的有效性,并得到与SKer的共享会话密 钥kUPKI,SKer=d0f75b3eb36df18c。SKer用kTGS,SKer从消息M7中解密TKT,得 到{IDUPKI,kUPKI,SKer,lifetime2}={11,d0f75b3eb36df18c,1355298048:1355318048},从中提取 出kUPKI,SKer解密{IDUPKI,IDSKer,T7}kUPKI,SKer,得 到{11,23,1355308230},可见IDUPKI与时间戳T7有效。至此,UPKI和SKer之间的成功共享会话密 钥kUPKI,SKer=d0f75b3eb36df18c。
4 结束语
本文分析了现有跨域认证协议和虚拟企业信任交互方案的特点,并针对虚拟企业跨异构域认证的特殊需求,提出一个分级的虚拟企业跨异构域认证与密钥协商方案。该方案实现了PKI域和Kerberos域实体间的双向认证及会话密钥协商,满足了虚拟企业异构性、临时性、动态性和低成本等要求,有利于虚拟企业资源的安全有效共享,并且在云计算、物联网等广义分布式网络环境下具有较好的应用前景。为了使本方案更具有普适性,以后的研究可以将本文所提的基于分级思想的访问授权票据解决方案引入基于身份或无证书等更多异构域中,以建立更广泛的的信任交互关系。
[1]DAVULCU H,KIFER M,POKORNY L R,et al.Modeling and analysis of interactions in virtual enterprises[C]//Proceedings of the 9th International Workshop on Research Issues on Data Engineering:Information Technology for Virtual Enterprises.Washington,D.C.,USA:IEEE Computer Society Press,1999:12-18.
[2]TUNG B,RYUTOV T,NEUMAN C,et al.RFC1510.Public key cryptography for cross-realm authentication in Kerberos[S].California:Ari Medvinsky Liberate,Gene Tsudik,UC Irvine and Bill Sommerfeld Sun Microsystems,2002.
[3]SIRBU M A,CHUANG J C.Distributed authentication in Kerberos using public key cryptography[C]//Proceedings of the Symposium on Network and Distributed System Security.Washington,D.C.,USA:IEEE,1997:134-141.
[4]HARBITTER A H,MENASCE D.Performance of publickey-enabled kerberos authentication in large networks[C]//Proceedings 2001IEEE Symposium on Security and Privacy.Washington,D.C.,USA:IEEE,2001:170-183.
[5]DOWNNARD I.Public-key cryptography extensions into Kerberos[J].IEEE Potenials,2003,21(5):30-34.
[6]CERVESATO I,JAGGARD A D,SCEDROW A,et al.Breaking and fixing public-key Kerberos[J].Information and Computation,2008,206(4):402-424.
[7]LIU Hongjun,LUO Ping,WANG Daoshun.A distributed expansible authentication model based on Kerberos[J].Journal of Network and Computer Applications,2008,31(4):472-486.
[8]PERENIGUEZ F,MARIN-LOPEZ R,KAMBOURAKIS G,et al.Priva KERB:a user privacy framework for Kerberos[J].Computers &Security,2011,30(6):446-463.
[9]JOHN L.Trust models and management in public-key infrastructures[R].Bedford,OH,USA:RSA Laboratories 20 Crosby Drive,2000:1-13.
[10]LIU Hongjun,LUO Ping,WANG Daoshun.A scalable authentication model based on public keys[J].Journal of Network and Computer Applications,2008,31(4):375-386.
[11]VAIDYA B,MAKRAKIS D,MOUFTAH H.Authentication and authorization mechanisms for substation automation in smart grid network[J].IEEE Network,2013,27(1):5-11.
[12]HAN K,KIM K,PARK J,et al.Efficient sensor node authentication in third generation-wireless sensor networks integrated networks[J].IET Communications,2011,5(12):1744-1754.
[13]JIANG Shunrong,MIAO Jingjun,WANG Liangmin.Mobile node authentication protocol for crossing cluster in heterogeneous wireless sensor network[C]//Proceedings of the 3rd International Conference on Communication Software and Neworks.Washington,D.C.,USA:IEEE,2011:205-209.
[14]YOUN T Y,LIM J.Improved delegation-based authentication protocol for secure roaming service with unlinkability[J].IEEE Communications Letters,2010,14(9):791-793.
[15]LAI Chengzhe,LI Hui,ZHANG Yueyu,et al.Simple and low-cost re-authentication protocol for HeNB[J].China Communications,2013,1:105-115.
[16]TIAN Yun,CHEN Gongliang,LI Jianhua.A new ultralightweight RFID authentication protocol with permutation[J].IEEE Communications Letters,2012,16(5):702-705.
[17]YAO Yao,WANG Xingwei,JIANG Dingde,et al.A PKIbased cross heterogeneous domain authentication model[J].Journal of Northeastern University:Natural Science,2011,32(9):638-641(in Chinese).[姚 瑶,王兴伟,蒋定德,等.一种基于PKI技术的跨异构域认证模型[J].东北大学学报:自然科学版,2011,32(5):638-641.]
[18]YAO Lin,WANG Lei,KONG Xiangwei,et al.An inter-domain authentication scheme for pervasive computing environment[J].Computers and Mathematics with Applications,2010,60(2):234-244.
[19]LI Biao,DAI Kaiyu,ZHANG Shensheng.Virtual certificate authority for virtual enterprises[C]//Proceedings of the 3rd International Workshop on Advanced Issues of E-commerce and Web-Based Information Systems.Washington,D.C.,USA:IEEE Computer Society Press,2001:222-224.
[20]LIU Duanyang,PAN Xuezeng.A new VCA scheme in virtual enterprises[J].Journal of Computer Research and Development,2003,40(9):1307-1311(in Chinese).[刘端阳,潘雪增.虚拟企业的安全交互模型[J].计算机研究与发展,2003,40(9):1307-1311.]
[21]ZHANG Wenfang,HE Dake,WANG Xiaomin.Generalized trust-interaction scheme for virtual enterprises based on variable privilege sets[J].Computer Integrated Manufacturing Systems,2007,13(5):1001-1007(in Chinese).[张文芳,何大可,王小敏.基于可变权限集的广义虚拟企业信任交互方案[J].计算机集成制造系统,2007,13(5):1001-1007.]
[22]ZHANG Wenfang,WANG Xiaomin,HE Dake.Novel conspiracy attack immune generalized interactive authentication scheme for virtual enterprises with traceability[J].Computer Integrated Manufacturing Systems,2010,16(7):1558-1567(in Chinese).[张文芳,王小敏,何大可.身份可追查的抗合谋攻击广义虚拟企业信任交互方案[J].计算机集成制造系统,2010,16(7):1558-1567.]
[23]ZHANG Wenfang,WANG Xiaomin,HE Dake.An improved VCA interaction model for virtual enterprises based on threshold RSA signature[J].Journal of Computer Research and Development,2012,49(8):1662-1667(in Chinese).[张文芳,王小敏,何大可.一个改进的基于门限RSA 签名的虚拟企业安全交互模型[J].计算机研究与发展,2012,49(8):1662-1667.]
[24]QING Sihan.Security protocol[M].Beijing:Tsinghua University Press,2005:133-136(in Chinese).[卿斯汉.安全协议[M].北京:清华大学出版社,2005:133-136.]
[25]MAO Wenbo.Modern cryptography:theory and practice[M].Beijing:Publishing House of Electronics Industry,2004:250-252(in Chinese).[毛文波.现代密码学理论与实践[M].北京:电子工业出版社,2004:250-252.]