APP下载

对可信计算接入认证过程的一种改进方案

2011-04-13葛伟伦葛晓滨陈小芳

合肥师范学院学报 2011年6期
关键词:签名者挑战者密钥

葛伟伦, 葛晓滨, 陈小芳

(安徽财贸职业学院,安徽 合肥 230601)

对可信计算接入认证过程的一种改进方案

葛伟伦, 葛晓滨, 陈小芳

(安徽财贸职业学院,安徽 合肥 230601)

可信计算中的一般认证过程完全依赖平台的系统配置,因此,在平台软件和系统频繁变动的情况下协议会软化。为解决上述问题,对基本的认证协议进行改进,结合零知识证明和盲签名体制,使改进方案具有更高的安全性。分析结果证明,改进方案可以避免原认证过程的安全隐患,安全性得到提高,开销有所增加。

认证协议;零知识证明;可信计算

1 概述

在认证协议中,挑战者要求平台向其证明平台配置是可信的,平台和挑战者需要进行交互式认证,证明平台所拥有的计算机配置是安全的。在可信计算中,认证协议包括一般认证协议和基于属性的认证协议。

基本的认证协议是指遵循TCG标准的认证机制,使用平台配置S0作为基础来判断平台是否可信。但是这样的协议存在以下不足:

(1)如果挑战者,如数字内容提供者想要强制实现对一个平台的访问控制规则,则在实际情况下很难验证每个平台配置的可信性。

(2)基本认证协议的接收者或观察者可以从特定平台的配置中获取额外信息,而攻击者不需要很复杂的计算就能进行平台分析,使得对平台的攻击更加容易。

(3)基本认证协议为了保证在系统升级和备份后协议能够继续成功执行,需要把秘密信息包括内容、文档等都封装到系统配置中,这样秘密信息就不可访问了。

(4)TPM硬件提供的封装机制将加密内容与特定系统绑定,系统升级或安装补丁会改变PCR(Platform Configuration Register)寄存器的值,使得加密内容不能再访问。

为了解决一般认证协议中的缺陷,文献[1]提出了基于属性的认证协议,基于属性的认证协议将满足某一特定需求的行为抽象成一种属性P,核心在于定义一个关于平台配置S0和特定属性P的二元关系来表示S0满足属性P,但基于属性的认证方案存在明显的安全隐患,即签名者可以获得平台的配置信息,平台配置信息存在泄露的可能。为了把泄露可能性降到最低,提高协议安全性和实用性,本文建议了一个基于属性的认证协议改进方案。

2 预备知识

在零知识[2]概念基础上提出的零知识证明(zero-knowledge proof)[3]是一个交互式证明系统,满足完整性、完备性和零知识性。不可锻造零知识[4]是指如果攻击者能够使验证者接受证明,允许攻击者和任意数量的证明者交互,则存在一个知识抽取器,能够成功地将证据从攻击者处抽取出来。

2.1 密钥与证书

可信计算规范中定义的7种密钥类型如下:

(1)签名密钥,非对称密钥,用于对应用数据和信息签名。(2)存储密钥,非对称密钥,用于对数据或其他密钥进行加密。存储根密钥是存储密钥的一个特例。(3)平台身份认证密钥,专用于对TPM 产生的数据(如TPM功能、PCR寄存器的值)进行签名的不可迁移的密钥。在可信计算中认证协议使用AIK密钥对。因此,必须保证AIK密钥对的安全性。(4)签署密钥,平台的不可迁移的解密密钥,在确立平台所有者时,用于解密所有者的授权数据和与产生AIK相关的数据,其从不用于数据加密和签名。签署密钥是可信计算的核心,必须保证其隐私性。(5)绑定密钥,用于加密小规模数据,这些数据将在另一个TPM平台上进行解密。(6)继承密钥,在TPM外部生成,在用于签名和加密时输入TPM中。继承密钥是可以迁移的。(7)验证密钥,用于保护引用TPM完成的传输会话的对称密钥。

TCG定义了5类证书,每类都被用于为特定操作提供必要的信息。证书的种类包括:签署证书,符合性证书,平台证书,认证证书,身份认证证书。身份认证证书在可信计算中的应用可以参考文献[5]。

每个TPM会产生RSA密钥对,进而生成签署密钥对(EK)和认证密钥对(AIK)。

签署公钥(EK—pub)[5]和签署私钥(EK—pri)[6]是可信平台的安全核心。认证公钥(AIK—pub)[6]和认证私钥(AIK—pri)[6]用于认证。可信第三方私钥(TTP—pri)[6]是其私有的,可信第三方公钥(TTP—pub)是公开的。PCR用来测量完整性,TPM中存在若干PCR值,这些值构成了可信平台的配置S0。

认证协议的核心在于可信平台可以向挑战者证明其TPM是可信的。AIK密钥生成是认证的重要组成部分。AIK密钥允许可信平台向另一方证明其安全状态和配置而不泄露可信平台的秘密信息。AIK密钥生成协议能够生成AIK证书,然后使用AIK证书执行认证协议。AIK密钥生成协议中包含了可信第三方,即证书权威。证书权威假设能够知道所有合法TPM的签署密钥。当每个TPM需要向验证者认证自身时,TPM发送AIK公钥给证书权威,同时使用EK进行认证。证书权威检查是否会找到EK,如果找到,则向TPM的AIK密钥发放证书。TPM转发AIK证书给验证者,使用AIK证书进行认证。

2.2 基于属性证书的认证协议1

基于属性的认证协议通过扩展TPM硬件的功能,使其能够验证一个合法的属性证书,这一证书是由挑战者所信任的一方颁发的。

一个属性证书(sk,P’,s’)和标记值r起到时间戳和保持新鲜的作用。TPM验证属性证书的同时验证P’是否等于P,s’是否等于S0,如果验证通过,TPM生成并返回一个基于属性的认证证书cert-TPM:=cert(sk TPM,P,r),相应的验证密钥pkTPM可以被看作为TPM的假名。

这个方案要求可信第三方知道平台的配置S0,可信第三方存在被攻破和欺诈的可能,如果S0被窃取,则是很严重的安全隐患。而且TPM 生成的基于属性的认证证书可以是TPM自己伪造的,这同样是很严重的安全隐患。

2.3 基于属性证书的认证协议2

证书sigTPM:=Sign(skTPM,S0,r’)由 TPM 生成,同时证书sigTTP:=Sign(skTTP,S0’,P0)用来认证配置S0满足属性P,其中r’指代一个标记值。公共输入是TPM的验证密钥pkTPM、可信第三方的验证密钥pkTTP、需要的属性值P和标记值r。如果满足以下条件,挑战者协议会输出真:TPM的认证签名合法,即true=Verify(pkTPM;sigTPM);属性证书合法,即true=Verify(pkTTP;sigTTP);期望的属性值和证书中的属性相同,即P’=P;证书中的平台配置和认证的平台配置相同,即S0’=S0;挑战者输入的标记值r和TPM签名的标记值相同,即r’=r。这个方案同时出示TPM生成的sigTPM和可信第三方颁发的sigTTP给挑战者,如果可信第三方使用S0,那么TPM不能伪造,但是可信第三方必须知道平台配置S0,可信第三方存在被攻破和欺诈的可能,如果S0被窃取,则是很严重的安全隐患。

已有协议的安全隐患在于挑战者均会获得平台配置信息S0,挑战者可能是潜在的攻击者,为了将这种可能性降到最低,零知识证明能够保证攻击者获得秘密信息的可能是可以忽略的,这是本文改进协议的基本设想。

3 改进的基于属性的认证协议

3.1 现有的基于属性的认证协议

第2节的认证协议1和认证协议2都是基于属性证书的,其假设存在可信第三方能够保证对平台配置S0和属性P进行签名而不泄露S0,其安全性在于可信第三方,因此,可信第三方可能会变成攻击者的攻击重点,如果可信第三方被攻破,那么协议完全失去了安全性,这样的假设过于理想和简单,与现实环境有一定的差距,因此,需要一个能够实现安全性不依赖于可信第三方的基于属性的认证协议方案。

3.2 改进思路

本文的改进思路如下:

(1)为了防止欺诈和篡改,挑战者使用提交协议将验证的属性值P发送给签名者和可信平台。

(2)可信平台使用不可锻造零知识协议向签名者证明平台配置S0满足特定属性P。签名者由此可以判断平台是可信的。

(3)可信平台使用盲签名体制将盲化的秘密信息S0’发送给签名者,签名者对S0’签名,将其发送给可信平台,可信平台将签名去盲后执行验证协议,如果验证不通过,则签名者进行了欺诈。通过盲签名实现了2个功能:首先将盲化的秘密信息发送给签名者,签名者无法得到秘密信息;其次可信平台可以发现签名者欺诈。这里假设签名者有可能欺诈,相比认证协议1,这样的假设更合理。

(4)保留和借鉴了协议l中基于属性证书的思想。

3.3 零知识证明协议

不可锻造零知识证明过程具体如下:

(1)证明者使用签名体制中密钥生成算法siggenone-time。生成密钥对(vk’,sk’),并将vk’发送给验证者。

(2)证明者和验证者之间执行3轮Ω—or协议,Ω—or协议证明证明者拥有关于关系R或Rvk的证据S0,满足(x,S0)∈R或(x,S0)∈Rvk。

(3)证明者使用签名体制中的签名算法sigsignone-time,通过sk’对印迹进行签名(印迹是协议运行到这一步时本方接收和发送的消息集合)。验证者使用vk’验证收到的签名消息对确为sk’对任意消息的签名。证明者使用sk’对印迹进行签名是为了向验证者证明其拥有与vk’对应的密钥sk’,即 密 钥 对 (vk’,sk’)的 确 是 证 明 者 产生的。

3.4 基于属性的认证协议改进方案

本文基于属性的认证协议改进方案过程如下:

(1)挑战者发送属性P的提交值Comm(P)给签名者和可信平台(P是需要验证的属性)。

(2)可信平台对提交协议验证通过后,如果已有满足S0’=S0且P=P’的由签名者签发的属性证书Sigisuuer=Sign(skTTP,S0’,P’),且可信平台拥有 TPM 签名证书SigTPM=Sign(skTPM,S0,r’),则直接执行步骤(5),否则,产生签名SigTPM后执行步骤(5);如果可信平台没有签名者签发的对于自身平台配置S0和属性P的签名,则执行步骤(3)。

(3)可信平台使用不可锻造零知识证明协议向签名者证明(P’S0)满足关系Rl。二元关系R1(x,w)表示属性x满足配置w。二元关系Rvk=:{(m,s)|(sig-verify0(vk,m,s)=1)}表示在vk情况下签名S是否为验证密钥对消息n的签名。其中,公钥vk作为协议的公共引用串,可信平台和验证者均可访问。

(4)如果零知识证明成功,则签名者和可信平台使用盲签名体制。签名者对盲化后的P和S0进行签名,可信平台得到去盲后的签名即属性证书Sigisuuer。如果验证通过,可信平台产生签名SigTPM,即TPM签名证书。

(5)可信平台执行认证协议1,向挑战者证明属性证书和TPM签名证书都是合法有效的。

4 改进方案的安全性及效率分析

本文改进的认证方案由提交协议、盲签名和不可锻造零知识协议组成,可信平台只需要合法的属性证书和TPM签名证书就能完成认证过程。

首先,挑战者将验证的属性P的提交值发送给可信平台。提交协议保证了在解提交之前提交值的保密性和不可修改性,从而防止了挑战者对于提交值的抵赖。

可信平台作为证明者,使用不可锻造零知识证明协议向签名者证明其知道平台配置S0而不泄露S0的值,签名者无法获得平台的配置信息S0,零知识性保证了不泄露可信平台的配置S0,不可锻造性保持了在并发环境下改进方案的健壮性。由于改进方案具有零知识性,因此有较高的安全性,解决了认证协议1的安全隐患。改进方案中假设签名者是可能欺诈的,这样的假设更加合理。

如果签名者自身作为验证者通过验证,由于可信平台对P和S0产生的是盲签名,签名者仍然无法获得S0。盲签名体制的验证算法还能帮助可信平台及时发现欺诈的签名者。

在改进方案中,可信平台使用了2次密钥生成、2次签名、1次签名验证,参与了1次零知识协议。签名者使用了1次签名、2次签名验证。挑战者执行了1次提交协议,参与了1次零知识协议。在协议1中,可信平台使用了1次签名,参与了1次零知识协议。签名者使用了1次签名。挑战者参与了1次零知识协议。因此,改进方案中可信平台、签名者和挑战者的计算量均略有增加,改进方案较原方案解决了安全隐患,提高了安全性,而计算量仅略有增加。

5 结束语

本文研究了可信计算中基于属性的认证协议,指出已有方案存在的安全隐患,通过使用零知识协议和盲签名体制,使新方案具有不可锻造零知识,安全性更高,解决了已有协议的安全隐患。

[1] Ahmad—Reza S,Stueble C.Propeay-based Attestation for Computing Platforms:Caring about Propeies,Not Mecha—nisms[C]//Proc.of the New Security Paradigms Workshop.Nova Scotia,Canada:[s.n.],2004:66-77.

[2] Goldwasser S.M icali S,Rackoff C.The Knowledge Complexity of Interactive Proof-systems[C]//Proc of the 17th Annual ACM Symposium of Theory of Computing Providence Rhode Island,USA:ACM Press,1985:291-304.

[3] Goldreich O.Foundations of Cryptography]M][S.I.]:Cambridge University Press,2007.

[4] Garay J A,Mackenzie Yang Ke.Strengthening Zero—knowledge Protocols Using signatures[C]//Proc.of EUROCRPYT’03.Warsaw,Poland:[s.n.],2003:177-194.

[5] 周雁舟,刘文清,朱智强.身份证实证书在可信计算中的应用[J].计算机工程,2009,35(3):21-22.

[6] Gustafsson D.Stewen Trusted Computing & Digital Rights Management—Theory & Effects [R]. Tech.Rep.:04086,2004.

Improved Scheme 0f Authentication Protocol in Trusted Computing

GE Wei-lun, GE Xiao-bin, CHEN Xiao-fang(Anhui Finance &Trade Vocational College,Hefei 230601,China)

General attestation protocol relies entirely on platform configuration,and it fails when platform updates software and hardware configuration frequently.To overcome the problem,this paper presents an improved property—based attestation protocol scheme,employing cryptographic tools such as zeroknowledge proof and blind signature scheme,Analysis proves that the protocol can solve the exiting problem with better security,while computing cost only increases by a negligible amount.

authentication protocol;zero-knowledge proof;trusted computing

TP309.2

A

1674-2273(2011)06-0058-04

2011-06-20

安徽省高等学校省级自然科学研究项目(编号:KJ2011Z013),项目名称:IP设备可信接入控制与管理技术研究

葛伟伦(1976-),男,讲师、硕士,主研方向:移动IPv6和可信计算;葛晓滨(1967-),男,高级工程师、主研方向:电子商务安全和可信计算;陈小芳(1982-),女,讲师、硕士,主研方向:电子商务安全。

猜你喜欢

签名者挑战者密钥
“挑战者”最后的绝唱
密码系统中密钥的状态与保护*
劳动者代签名 用人单位应否支付双倍工资
闪电远击侠“挑战者”2
TPM 2.0密钥迁移协议研究
一种对称密钥的密钥管理方法及系统
挑战者 敢闯敢创激发无限可能
基于变形ElGamal签名体制的强盲签名方案
一种安全的匿名代理数字签名方案
一种有效的授权部分委托代理签名方案