一种可信计算环境中的远程证明方法

文档序号:7762094阅读:769来源:国知局
专利名称:一种可信计算环境中的远程证明方法
技术领域
本发明涉及可信计算技术领域,尤其涉及一种可信计算环境中的远程证明方法。
背景技术
可信计算为终端安全提供了很好的解决方案,是信息安全领域的一个研究热点。 当前可信计算相关产业链已经形成,很多厂家都推出了可信终端,包括可信计算机、可信服 务器等。但从可信终端出发构建可信网络还存在一些问题,其中就有可信终端之间怎样验 证对方身份是否真实和状态是否可信的问题,即可信计算平台远程证明问题。可信计算组 织(Trusted Computing Group,简称TCG)提出了可信计算平台基于公钥基础设施(Public Key Infrastructure,简称PKI)的远程证明方法及系统,公钥基础设施框架如图1所示,各 个可信计算平台通过注册管理中心与认证中心相连,证书库为注册管理中心和各个可信计 算平台提供在线的服务。现有的可信计算平台与TPM(Trusted Platform Module,可信平台 模块)绑定,TPM是可信计算平台的可信根,每个TPM都包含了一个唯一的EK (Endorement Key,背书密钥),EK实际是一个公私钥对,通常由厂商创建,固化在TPM内部且不允许修改。 为了保持EK的匿名性,可信计算平台在远程证明中使用AIK(Attestatic)n Identity Key, 身份证明密钥),可信计算平台向可信第三方CA (Certificate Authority,认证中心)申请 AIK证书的过程为步骤1,平台所有者使用TPM中的RSA (Ri vest ,Shamir & Adleman)密钥生成模块 生成一个AIK密钥对,然后将这个密钥对的公钥和TPM背书证书、一致性证书和平台证书打 包成一个AIK请求发送给可信第三方CA ;步骤2,可信第三方CA通过验证证书来验证AIK请求是否有效;步骤3,验证通过后可信第三方CA生成一个AIK证书并用自己的私钥对AIK证书 签名,然后把签名后的AIK证书返回给平台。各个可信计算平台之间通过使用AIK私钥进行签名并相互交换签名和AIK证书等 信息实现远程证明,但是当前该方法在应用中存在以下两个问题,导致其实际应用很少。第一个问题是该方法及系统本身是面向公共网络的,比如其中使用了 AIK证书来 保护用户隐私,这在专用网络中没有必要。公共网络中的普通用户在安全和方便的平衡上 可能更易于偏向方便,而且公共网络中不能强制每个用户都使用可信终端,再者,公共网络 中的恶意用户不会自觉使用可信计算技术约束自己的行为,因此,该方法及系统难以应用 和推广;第二个问题是该方法及系统部署比较复杂,费用昂贵。通过上面的分析可知,该方法及系统难以应用和推广,并且该方法及系统本身是 面向公共网络的,不适合用于专用网络。,因此,如何在专用网络中进行可信计算平台远程 证明从而加强专用网络的安全就成为本领域技术人员亟待解决的问题。

发明内容
本发明要解决的技术问题是,提供一种可信计算环境中的远程证明方法,在专用 网络中基于身份的密码体制实现可信计算平台的远程证明,且部署简单、通信量小。本发明采用的技术方案是,所述可信计算环境中远程证明方法,包括基于每个可信计算平台的身份信息为其分配可信计算平台的私钥;任意两个可信计算平台之间基于身份的密码体制和可信计算平台的私钥,对双方 身份的真实性和状态的可信性进行验证。进一步的,在基于每个可信计算平台的身份信息为其分配可信计算平台的私钥之 前,该方法包括对公钥基础设施中的密钥生产中心进行系统配置,具体包括步骤Al,选择一个安全参数K,产生第一 q阶群Gl和第二 q阶群G2,第一 q阶群的
生成元为P,一个双线性映射纟G1 X G1 — G2;步骤A2,选择两个Hash函数第一 Hash函数H1 {0,1}* — Gl和第二 Hash函数 H2:{0,1}*xG1^Z;;步骤A3,随机选择系统主密钥S e ζ,计算系统公钥= SXP,并公开系统公钥Ppub。进一步的,所述基于每个可信计算平台的身份信息为其分配可信计算平台的私钥 的具体包括步骤Bi,设可信计算平台的身份信息为ID,通过第一 Hash函数计算得到所述身份 信息对应的可信计算平台的公钥Qid = H1(ID);步骤B2,计算可信计算平台的私钥dID = s X Qid ;步骤B3,将可信计算平台的私钥dID通过认证卡的方式发送到可信计算平台。进一步的,将两个进行远程证明的可信计算平台简称为发起方和接收方,所述任 意两个可信计算平台之间基于身份密码体制和可信计算平台的私钥,对双方身份的真实性 和状态的可信性进行验证的具体过程包括步骤Cl,发起方向接收方发送包含发起方身份信息、发起方产生的随机数和 PCR(Platform Configuration Regis-ters,平台配置寄存器)请求信息的证明请求,接收 方用本端可信计算平台的私钥对发起方身份信息、PCR响应信息和双方产生的随机数进行 签名后得到签名信息,将接收方身份信息、PCR响应信息和接收方产生的随机数随同签名信 息一起发送给发起方;步骤C2,发起方查找在线资料库的用户身份列表中是否含有接收方身份信息,若 有,则跳转步骤C3,否则流程结束;步骤C3,发起方用接收方身份信息验证签名信息,若通过验证,则标注接收方身份 是真实的,跳转步骤C4 ;若未通过验证,则标注接收方身份不真实,流程结束;步骤C4,发起方判断PCR响应信息是否符合预期,若符合,则标注接收方状态是可 信的,否则标注接收方状态是不可信的,流程结束;同理,接收方用同样的流程对发起方的身份和状态进行验证。进一步的,所述PCR请求信息包括发起方需要获取的接收方PCR信息列表,所述 PCR响应信息包括发起方需要获取的接收方PCR信息。进一步的,将发起方身份信息、PCR响应信息和双方产生的随机数记为明文m,所述双方产生的随机数包括发起方产生的随机数Ra和接收方产生的随机数Rb,所述接收方用 本端可信计算平台的私钥对发起方身份信息、随机数和PCR响应信息进行签名后得到签名 信息的具体过程包括步骤Dl,接收方随机选择第二随机数& e Z;;步骤D2,接收方计算U = RBXQID,h = H2(m,U),V = (RB+h) dID,其中,Qid 为接收方 可信计算平台的公钥,dID为接收方可信计算平台的私钥;步骤D3,用本端可信计算平台的私钥dID产生签名信息sig = (U,V)。进一步的,所述发起方用接收方身份信息验证签名信息的具体过程包括步骤E1,发起方接收到签名信息Sig= (U,V)后,计算Qid = H1(IDhh = H2OiuU), 其中ID为接收方身份信息,ID和m是在步骤Cl中随签名信息一起发送给发起方的;步骤E2,发起方验证等式^p,v) 二+ 是否成立,若等式成立,则签名 通过验证,否则签名未通过验证。采用上述技术方案,本发明至少具有下列优点本发明所述可信计算环境中的远程证明方法,基于每个可信计算平台的身份信息 为其分配可信计算平台的私钥,任意两个可信计算平台之间基于身份密码体制和可信计算 平台的私钥,对双方身份的真实性和状态的可信性进行验证。在专用网络中基于身份的密 码体制实现可信计算平台的远程证明,且部署简单、不需要公钥证书,认证过程通信量小。 本发明对可信计算技术的应用及推广具有重要意义。在银行系统、国家机关等上下级明确、 控制紧密的专用网络中具有较广阔的应用前景。


图1为现有技术中公钥基础设施框架示意图;图2为基于身份的可信认证基础设施框架及注册流程示意图;图3为由密钥生产中心完成系统设置的流程图;图4为密钥管理中心基于每个可信计算平台的身份信息为其分配可信计算平台 的私钥的流程图;图5为对等的任意两台可信计算平台之间进行远程证明时所涉及的基础设施示 意图;图6为对等的任意两台可信计算平台之间进行远程证明的流程图。
具体实施例方式为更进一步阐述本发明为达成预定目的所采取的技术手段及功效,以下结合附图 及较佳实施例,对本发明进行详细说明如后。可信计算平台基于身份的可信认证基础设施主要包括密钥生产中心、注册管理中 心、资料库和可信计算平台四个组成部分,如图2所示,基本功能与现有的公钥基础设施类 似,但是在本发明使用的可信认证基础设施中,用密钥生产中心代替了认证中心CA,用保存 有用户身份列表的资料库代替了证书库,且各组成部分完成的功能与现有技术的公钥基础 设施并不相同,具体的,
密钥生产中心拥有主密钥,负责系统参数的初始化,根据提交的平台身份制作认 证卡,然后传递给注册管理中心。这里,认证卡是基于身份的可信平台模块TPM,具有符合 TCG规范的TPM的功能。认证卡中包含有密钥生产中心基于可信计算平台的身份信息生成 的对应私钥。密钥生产中心基于可信计算平台的身份信息生成的对应私钥替代了现有技术 TCG规范中TPM的EK公、私钥对。TPM是一个含有密码运算部件和存储部件的小型片上系统,具备专用的运算处理 器、随机数产生器、独立的内存空间、永久性存储空间和独立的总线输入输出系统。使用符 合标准规范的密码算法,对外提供非对称密钥生成运算、非对称算法加解密运算、杂凑函数 运算、数字签名运算和随机数产生运算。本发明基于身份的TPM和现有技术中TCG规范的TPM功能结构基本一致,主要区 别在于密码运算部件的不同。TCG规范中密码协处理器和密钥生成器都是实现的RSA算法, 在本发明基于身份的TPM中实现的是基于身份的密码算法。注册管理中心接受可信计算平台的注册,代表可信计算平台向密钥生成中心申 请认证卡,并将生成的各个认证卡按平台身份发放到各个可信计算平台。资料库存放全网用户可公开访问的资料,比如在系统中注册的所有可信计算平 台的身份列表和用于签名验证的系统参数。资料库通常可以为注册管理中心和众多的可信 计算平台提供在线服务,可信计算平台用户在直接访问这些资料时,权限是只读,不能修改 或删除。可信计算平台可信计算平台在加入系统之前必须先在注册管理中心进行注册, 最终得到一张由注册管理中心发放的认证卡。认证卡由用户插入可信计算平台设备中,作 为可信计算平台的可信根,每个平台应具有唯一的认证卡。需要注意用户身份和可信计算平台身份的区别。在本发明中使用可信计算平台的 使用者即用户的身份由可信计算平台自己验证,不在可信计算平台基于身份的可信认证基 础设施包含范围内,系统中假定平台都完成了对使用者的身份认证。可信计算平台之间只 验证可信计算平台身份的真实性和平可信计算台状态的可信性。密钥生产中心基于可信计算平台的身份信息生成的对应私钥的过程包括步骤S101,由密钥生产中心完成系统设置,如图3所示,主要执行以下步骤步骤Al,选择一个安全参数K,产生第一 q阶群Gl和第二 q阶群G2,第一 q阶群的
生成元为P,一个双线性映射纟G1 X G1 — G2.步骤A2,选择两个Hash函数第一 Hash函数H1 {0,1}* — Gl和第二 Hash函数 H2 :{0,l}*xGl-^Z;;步骤A3,随机选择系统主密钥s e ζ,计算系统公钥P_ = SXP,并公开系统公钥
P
1 pub°步骤S102,由注册管理中心公在资料库中公布系统参数及对它们的描述G1,G2, e,P,Ppub,H1 H2 ο步骤S103,密钥管理中心基于每个可信计算平台的身份信息为其分配可信计算平 台的私钥的具体过程如图4所示,包括步骤Bi,设可信计算平台的身份信息为ID,通过第一 Hash函数计算得到所述身份
7信息对应的可信计算平台的公钥Qid = Hl (ID);步骤B2,计算可信计算平台的私钥dID = SXQid ;步骤B3,将可信计算平台的私钥dID通过认证卡的方式发送到可信计算平台用户。图5为可信计算平台在注册管理中心注册成功后,可信计算平台互相之间进行远 程证明时所涉及的基础设施。将对等的任意两台可信计算平台分为发起方和接收方,如图 6所示,该证明过程包括如下具体步骤步骤S201,发起方将发起方身份信息IDa、发起方产生的第一随机数Ra和第一 PCR 请求信息Textl发送到接收方;可信计算平台上不同模块的完整性度量值存放在不同的PCR中,总共有16个PCR, 应用中根据验证方的安全需求发送PCR里存放的PCR值。本实施例中,第一 PCR请求信息 Textl就是验证发起方需要接收方提供的接收方的PCR信息。而认证卡可以计算其所在的 可信计算平台中的各PCR值,这是本领域公知的技术,故此处不详述。步骤S202,接收方将接收方身份信息IDb、接收方产生的第二随机数Rb、第一PCR响 应信息PCRb和第二 PCR请求信息Text2发送给发起方;同时,接收方用本端可信计算平台的私钥dIDB对发起方身份信息IDa、第一随机数 Ra、第二随机数Rb和第一 PCR响应信息PCRb进行签名后得到第一签名信息sigl,将第一签 名信息sigl发送给发起方;将发起方身份信息IDa、第一 PCR响应信息PCRb、第一随机数Ra和第二随机数Rb记 为明文m。具体的,接收方用本端可信计算平台的私钥dIDB对发起方身份信息IDa、第一随机 数Ra、第二随机数Rb和第一 PCR响应信息PCRb进行签名后得到第一签名信息sigl的过程 包括Dl,接收方随机选择第二随机数& eZ'q;D2,接收方计算 U = RbXQidb, h = H2 (m,U),V = (RB+h) dIDB,其中,Qidb 为接收方可 信计算平台的公钥,dIDB为接收方可信计算平台的私钥;D3,接收方用本端可信计算平台的私钥dIDB产生第一签名信息sigl = (U,V)。步骤S203,发起方查找在线资料库的用户身份列表中是否含有接收方身份信息 IDb,若有,则跳转步骤S204,否则流程结束;步骤S204,发起方用接收方身份信息IDb验证第一签名信息sigl,若验证通过,则 说明第一签名信息的内容未被篡改,发起方标注接收方身份是真实的;验证未通过,则说明 第一签名信息的内容已被篡改,发起方标注接收方身份不真实,流程结束;本步中,发起方用接收方身份信息IDb验证第一签名信息sigl的具体过程如下E1,发起方接收到签名信息sig = (U,V)后,计算Qidb = H1(IDBhh = H2OiuU),其 中IDb为接收方身份信息,IDb和m是在步骤S202中已经随同第一签名信息sigl —起发送 给发起方的;E2,发起方验证等式;ρ,V) =^Ppub,U + 是否成立,若等式成立,则签名通过
验证,否则签名未通过验证。步骤S205,发起方判断第一 PCR响应信息PCRb是否符合预期,若符合,则标注接收 方状态是可信的,否则标注接收方状态是不可信的,流程结束;这里,通常是在发起方和接收方中设定一个固定的PCR预期值与收到的PCR响应信息进行比较。同理,接收方可以用同样的流程对发起方的身份和状态进行验证。本发明设计的可信计算平台基于身份的远程证明方法解决了现有的可信计算平 台基于PKI的远程证明方法及系统当前应用中存在的两个问题,表现在两方面一是可信计算平台基于身份的远程证明方法适用于军事系统、国家机关等上下级 明确、控制紧密的专用网络,在专用网络中可信计算技术也比较容易推广,其原因如下1、专用网络中比较重视安全;2、从可信终端出发加强网络安全可能得到大力支持;3、可以强制每个用户都使用可信终端;4、使用可信计算技术可以很好的约束内部用户的行为。二是可信计算平台基于身份的远程证明方法所需基础设施部署简单,费用较少。另外,可信计算平台基于身份的远程证明方法还避免了公钥证书的发放、存储、交 换等问题,不需要交换公钥证书使得认证过程中通信量减小。通过具体实施方式
的说明,应当可对本发明为达成预定目的所采取的技术手段及 功效得以更加深入且具体的了解,然而所附图示仅是提供参考与说明之用,并非用来对本 发明加以限制。
权利要求
一种可信计算环境中远程证明方法,其特征在于,基于每个可信计算平台的身份信息为其分配可信计算平台的私钥;任意两个可信计算平台之间基于身份的密码体制和可信计算平台的私钥,对双方身份的真实性和状态的可信性进行验证。
2.根据权利要求1所述可信计算环境中远程证明方法,其特征在于,在基于每个可信 计算平台的身份信息为其分配可信计算平台的私钥之前,该方法还包括对公钥基础设施中 的密钥生产中心进行系统配置,具体包括步骤Al,选择一个安全参数K,产生第一 q阶群Gl和第二 q阶群G2,第一 q阶群的生成元为P,一个双线性映射纟G1 χ G1 — G2;步骤A2,选择两个Hash函数第一 Hash函数H1 :{0,1}* — Gl和第二 Hash函数H2 {0,l}*xGl->Z;;步骤A3,随机选择系统主密钥s ^ Z;,计算系统公钥Ppub = sXP,并公开系统公钥Ppub。
3.根据权利要求2所述可信计算环境中远程证明方法,其特征在于,所述基于每个可 信计算平台的身份信息为其分配可信计算平台的私钥的具体包括步骤Bl,设可信计算平台的身份信息为ID,通过第一 Hash函数计算得到所述身份信息 对应的可信计算平台的公钥Qid = H1(ID);步骤B2,计算可信计算平台的私钥dID = sXQID ;步骤B3,将可信计算平台的私钥dID通过认证卡的方式发送到可信计算平台。
4.根据权利要求1或2或3所述可信计算环境中远程证明方法,其特征在于,将两个进 行远程证明的可信计算平台简称为发起方和接收方,所述任意两个可信计算平台之间基于 身份的密码体制和可信计算平台的私钥,对双方身份的真实性和状态的可信性进行验证的 具体过程包括步骤Cl,发起方向接收方发送包含发起方身份信息、发起方产生的随机数和平台配置 寄存器PCR请求信息的证明请求,接收方用本端可信计算平台的私钥对发起方身份信息、 PCR响应信息和双方产生的随机数进行签名后得到签名信息,将接收方身份信息、PCR响应 信息和接收方产生的随机数随同签名信息一起发送给发起方;步骤C2,发起方查找在线资料库的用户身份列表中是否含有接收方身份信息,若有,则 跳转步骤C3,否则流程结束;步骤C3,发起方用接收方身份信息验证签名信息,若通过验证,则标注接收方身份是真 实的,跳转步骤C4 ;若未通过验证,则标注接收方身份不真实,流程结束;步骤C4,发起方判断PCR响应信息是否符合预期,若符合,则标注接收方状态是可信 的,否则标注接收方状态是不可信的,流程结束;同理,接收方用同样的流程对发起方的身份和状态进行验证。
5.根据权利要求4所述可信计算环境中远程证明方法,其特征在于,所述PCR请求信息 包括发起方需要获取的接收方PCR信息列表,所述PCR响应信息包括发起方需要获取的接 收方PCR信息。
6.根据权利要求4所述可信计算环境中远程证明方法,其特征在于,将发起方身份信 息、PCR响应信息和双方产生的随机数记为明文m,所述双方产生的随机数包括发起方产生的随机数Ra和接收方产生的随机数Rb,所述接收方用本端可信计算平台的私钥对发起方身 份信息、随机数和PCR响应信息进行签名后得到签名信息的具体过程包括 步骤Dl,接收方随机选择第二随机数A e Z;;步骤D2,接收方计算U = RbXQid, h = H2(m,U),V = (RB+h) dID,其中,Qid为接收方可信 计算平台的公钥,dID为接收方可信计算平台的私钥;步骤D3,用本端可信计算平台的私钥dID产生签名信息sig = (U,V)。
7.根据权利要求6所述可信计算环境中远程证明方法,其特征在于,所述发起方用接 收方身份信息验证签名信息的具体过程包括步骤El,发起方接收到签名信息sig = (U,V)后,计算Qid = H1(ID),h = H2(m,U),其 中ID为接收方身份信息,ID和m是在步骤Cl中随签名信息一起发送给发起方的;步骤E2,发起方验证等式〗(p, V)」(Ppub,U + /z0/Z3)是否成立,若等式成立,则签名通过验证,否则签名未通过验证。
全文摘要
本发明公开了一种可信计算环境中的远程证明方法,基于每个可信计算平台的身份信息为其分配包含可信计算平台私钥的认证卡,任意两个可信计算平台之间基于身份密码体制和可信计算平台的私钥,对双方身份的真实性和状态的可信性进行验证。在专用网络中基于身份的密码体制实现可信计算平台的远程证明,且部署简单、不需要公钥证书,认证过程通信量小。本发明对可信计算技术的应用及推广具有重要意义,在银行系统、国家机关等上下级明确、控制紧密的专用网络中具有较广阔的应用前景。
文档编号H04L29/06GK101951388SQ20101050679
公开日2011年1月19日 申请日期2010年10月14日 优先权日2010年10月14日
发明者周洁, 杨宇, 肖毅 申请人:中国电子科技集团公司第三十研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1