CN100583768C - 基于安全需求的远程证明方法及其系统 - Google Patents
基于安全需求的远程证明方法及其系统 Download PDFInfo
- Publication number
- CN100583768C CN100583768C CN200710098814A CN200710098814A CN100583768C CN 100583768 C CN100583768 C CN 100583768C CN 200710098814 A CN200710098814 A CN 200710098814A CN 200710098814 A CN200710098814 A CN 200710098814A CN 100583768 C CN100583768 C CN 100583768C
- Authority
- CN
- China
- Prior art keywords
- proof
- authentication
- tolerance
- result
- platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供了一种基于验证方安全需求的远程证明方法及其系统,该远程证明方法基于可信计算平台,对其平台度量过程和验证过程都进行严格的定义,度量和证明在证明方、验证方、证明权威机构三方中相互协同完成:验证方根据安全需求发起证明请求,证明方按照请求度量平台配置,证明权威验证度量结果,最终由验证方判定是否信任证明方平台。与其他远程证明方法相比,本发明将度量和证明分离,证明过程中只需进行简单的度量证明匹配,拥有按安全需求度量证明、平台隐私保护、系统配置灵活等特色,不但应用于单向的远程证明,经过简单扩展还可应用于双向远程证明。
Description
技术领域
本发明属于可信计算平台安全技术领域,尤其涉及一种远程证明方法及其系统。
背景技术
随着网络技术的迅速发展,存储在计算机内的数据可能被远程盗用或非授权访问,仅仅依靠防火墙、防病毒软件等外部保护机制,依靠简单的口令等认证方式,很难抵挡住黑客、病毒、内部窃密者的侵袭。针对这些问题,为了增强计算机平台的内部免疫力,近年来以可信平台模块(Trusted Platform Module,TPM)为核心的可信计算平台技术迅速发展,在原有计算机平台上引入安全芯片架构,提供对计算机平台软硬件配置完整性、正确性的认证,建立分布式环境下应用程序间、计算机平台之间的相互信任。
可信计算是构建计算机系统安全、网络安全的重要手段。可信计算平台提供了存储保护、远程证明、隔离机制、安全I/O等保护功能,极大地增强了平台的数据保护能力,使得平台内部、平台与平台之间能够建立广泛的信任。可信计算其含义为“系统提供可信赖的服务能力,而且这种可信赖性是可以验证的”。安全PC从加电的时刻起,对系统进行完整性度量,保证每个运行的部件都是可信赖的;TPM对系统中敏感数据进行加密存储,数据封装,防止了非法窃取敏感数据;现有的计算机在网络上是依靠不固定的也不唯一的IP地址进行活动,导致网络黑客泛滥和用户信用不足,而具备由权威机构颁发的唯一的身份证书的可信计算平台具备在网络上的唯一的身份标识,从而能够向外部实体提供可靠的外平台身份证明和应用身份证明;TPM对内部资源进行授权访问,其独特功能类似于设置了权限的“防火墙”。这一系列的机制保证了系统能够提供可信赖的服务能力,而对于这种可信赖的服务能力,远程依赖方是否信任,通过远程证明的机制进行证明实现。
远程证明作为可信计算的一大特色功能,旨在认证平台硬件、软件堆栈中每一层运行的软件的运行状态,向远程依赖方证明应用程序所在的平台可信。远程证明方法有四种基本模型:直接证明,基于TTP(Trusted Third Party,可信第三方)验证的证明,基于离线TTP的证明,委托证明。直接证明是证明方度量平台自身完整性,向验证方出示平台完整性信息,验证方通过完整性值数据库验证证明方的证明。缺陷不言而喻,这需要每个验证方都拥有一个完整性值数据库。基于TTP验证的证明、基于离线TTP的证明和委托证明都是通过可信第三方来验证完整性度量值。由于基于离线TTP的证明存在证明和验证的时间间隔,要求证明和验证两者间隔时间不能太长,否则很难保证证明的可信性。委托证明要求验证方完全信任TTP,委托TTP验证明方的证明,TTP会成为通讯瓶颈。基于TTP验证的证明在可信平台上应用比较普遍,现有的很多证明方法,如基于属性的远程证明、WebService的远程证明等,都是采用这种模型,这是可信计算平台远程证明非常通用的模型。
发明内容
本发明目的在于提供一种基于验证方安全需求的远程证明方法及其系统。与其他远程证明方法相比,本发明拥有按安全需求度量证明、平台隐私保护、系统配置灵活等特色。
本发明的远程证明方法基于可信计算平台,包含3个角色:证明方(Attestor)、验证方(Verifier)和证明权威机构(AA,Attestation Authority)。验证方根据安全需求发起证明请求,证明方按照请求度量平台配置,证明权威机构验证度量结果,最终由验证方判定是否信任证明方平台。所谓的平台配置度量就是可信平台模块(TPM)对计算机系统的软件、固件和硬件的二进制数据块进行杂凑计算,所得到的杂凑值为其度量值,度量值和度量描述信息组成了度量日志。度量值不断地扩展TPM内部的平台配置寄存器(PCR)得到最终的度量结果。
上述证明方的度量和远程证明依赖三大核心模块:证明服务模块(AS,AttestationService)、度量代理模块(MA,Measurement Agent)和可信平台模块(证明方的模块构成参照图3)。证明服务模块接收验证方的证明请求,负责与远程验证方进行通信;度量代理模块按照证明要求度量平台配置,组建远程证明相关的证明数据;可信平台模块完成具体模块的杂凑计算、加密和签名操作。
本发明基于安全需求的远程证明方法具体包括如下步骤:
1.验证方根据从证明权威机构获取的证明属性证书创建证明请求,并将证明请求发送给证明方;
2.证明方收到验证方发送的证明请求后,根据验证方要求证明的内容和证明权威机构颁发的度量属性证书,由TPM实施系统组件度量,加密度量日志,对其内部PCR存储的最终度量结果签名;
3.证明方将加密的度量日志、最终度量结果及其签名结果发送给验证方;
4.验证方保留最终度量结果及其签名,而将加密的度量日志发送给证明权威机构;
5.证明权威机构对验证方发送的加密度量日志进行验证;
6.证明权威机构将以度量日志计算的最终度量结果和验证结果发送给验证方;
7.如果证明权威机构验证结果为通过验证,验证方比较证明权威机构计算的最终度量结果和证明方发送的最终度量结果,二者一致则验证度量结果的签名,从而最终确保证明方的可信性。
上述的证明属性证书限定证明方需要证明的内容,包含需要证明的组件列表;而度量属性证书包含组件描述信息和组件的全部度量点声明。证明属性证书和度量属性证书都是证明权威机构按照验证方的证明需求生成的,分别发送给验证方和证明方。
上述远程证明流程中,步骤2是证明方使用嵌入计算平台主板上的TPM度量平台组件,组件的度量方法可按照本发明自定义的MEASURE流程进行(参照具体实施方式中的函数1),包括下列步骤:
2-1证明服务模块从验证方的证明属性证书中,解析得到需要证明的平台组件,将要证明的组件列表发送给度量代理模块。
2-2度量代理模块验证当前的平台组件是否与需要证明的平台组件匹配,如果不匹配则退出证明,匹配则度量代理模块使用TPM按照下面的MEASURE流程实施组件度量:
a).从需要证明的平台组件中,选取某一组件C;
b).用SHA1算法依次度量组件C的度量点,度量代理模块保存C的度量日志,
c).度量代理模块使用TPM_Extend方法得到组件C的度量值h(C);
d).如果全部需要证明的组件已经度量完成,跳到步骤e执行,否则跳回步骤a继续执行;
e).度量代理模块将步骤c得到的全部组件的度量值h(C),依次扩展TPM内部的PCR寄存器,得到TPM的最终度量值(保存在PCR中)。
2-3度量代理模块加密全部组件度量日志,然后将加密的度量日志发送给证明服务模块。
2-4TPM使用平台身份密钥对最终的度量结果(保存在PCR中)签名,将最终度量结果、签名结果、TPM身份证书发送给证明服务模块。
上述基于安全需求的远程证明方法步骤5和7是证明权威机构、验证方共同验证证明结果。其中,步骤5证明权威机构对度量日志解密后,利用收集的标准度量值,可按照本发明自定义的VERIFY流程进行完整性验证(参照具体实施方式中的函数2),具体包括下列步骤:
5-1.依次验证证明方组件度量日志,从证明方度量日志中选取组件C的度量日志,比较组件各个度量点的度量值是否和发布的标准值一致,如果不一致则验证失败。
5-2.重新计算组件C的度量值,按照TPM_Extend方法依次扩展各个度量点的值,得到组件C的度量值。
5-3.比较组件C的度量值是否与标准值一致,如果不相等则验证失败。如果已经完成全部组件的验证,跳至步骤5-4执行,否则继续执行步骤5-1。
5-4.按照TPM_Extend方法依次扩展各个组件的度量值,计算出最终的平台度量值,然后证明权威机构将验证结果、最终的度量值发送给验证方。
验证过程作为度量过程的逆操作,与度量过程相比不需要TPM参与,主要工作是验证度量日志正确性,同时重新进行度量结果杂凑计算。证明权威机构仅仅验证度量日志,证明方的最终度量结果则由验证方进行验证,因此在证明权威机构可信的前提下,证明方伪造度量日志、篡改中间验证结果都能被验证方检测到。
上述步骤2中的加密过程为证明方生成对称密钥,对度量日志加密,并利用证明权威机构的公钥加密对称密钥。相应的,证明权威机构收到验证方发送来的加密度量日志后,首先使用自己的私钥解密加密的对称密钥,然后再使用对称密钥解密经过加密的度量日志。
本发明基于安全需求的远程证明系统包括证明方、验证方和证明权威机构三方,三者之间的通讯经过互联网(Internet)进行,其中证明方计算机主板物理上嵌入安全芯片TPM,验证方、权威机构不需要带有TPM。验证方根据安全需求发起证明请求,证明方按照请求度量平台配置,证明权威机构验证度量结果,最终由验证方判定是否信任证明方平台。其中,证明方又包括证明服务模块、度量代理模块和可信平台模块,其中:证明服务模块接收验证方的证明请求,负责与远程验证方进行通信;度量代理模块按照证明要求度量平台配置,组建远程证明相关的证明数据;可信平台模块完成具体的杂凑计算、加密和签名操作。可信平台模块(TPM)位于计算机系统的硬件层,内嵌于主板上,度量代理模块是操作系统的内核模块,度量代理模块调用TPM进行度量、签名都是通过安装在操作系统的TPM驱动完成,而证明服务模块运行于应用服务层,在操作系统之上,与TPM无直接关联,证明服务模块通过操作系统的消息通讯机制进行数据的传递。
上述的验证方可由验证方服务器和资源服务器构成,运行在一个相对独立的受保护网络中,该受保护网络通过网络接入点控制一切来自外部的网络请求,验证方服务器负责验证来自证明方的完整性度量,验证完毕后,向网络接入点给出访问控制判定结果,从而控制证明方的网络访问连接,只有经过验证的证明方的访问才允许访问资源服务器。
本发明基于安全需求的远程证明系统中,在证明方(服务请求者)请求验证方(服务提供者)的某种服务前,证明方利用可信平台的安全特性向验证方证明平台运行环境满足服务所限定的安全要求。电子银行应用中的用户和银行,VPN应用中的远程用户和VPN服务器,这些实际应用实例对应该远程证明系统的证明方和验证方。
证明权威机构是一个具有公信力的可信第三方,负责辅助验证方验证平台的完整性度量日志。系统平台的软硬件生产商对外发布其组建度量标准值,证明权威机构收集组件度量标准值,验证过程时核实证明方度量日志的正确性。若遇到未知组件的度量目志验证,证明权威机构要么直接向组件生产者查询,要么间接向其他证明权威机构询问完成验证。
证明权威机构的另一重要功能便是实现远程证明中的度量和证明相互分离。证明方汇总平台组件信息,向证明权威机构申请度量属性证书。度量属性证书包含组件描述信息和组件的全部度量点声明,若验证方请求证明组件A,那么按照组件A的描述信息和度量点声明TPM就能完成组件A的度量。验证方根据实际应用的安全需求,从证明权威处获取证明属性证书,证明属性证书中包含需要证明的组件列表。度量属性证书和证明属性证书都由证明权威机构发布,两者既分开创建又相互关联,由证明权威机构保证其真实性。
本发明基于安全需求的远程证明的平台度量过程和验证过程都进行严格的定义,度量和证明在证明方、验证方、证明权威机构三方中相互协同完成。该远程证明方法将度量和证明分离,由证明方平台的TPM按照验证方的安全需求度量,证明平台配置信息,证明过程中只需进行简单的度量证明匹配,避免了无效平台信息的度量和验证,减少了度量和证明的复杂度。度量的平台配置信息以加密形式传输,防止了平台配置隐私的泄露。该远程证明易于证明方、验证方灵活配置,无需进行证明协商。该方法不但可应用于单向的远程证明,经过简单扩展还可应用于双向远程证明。具体而言,该方法的优点在于:
1)由验证方发起,远程证明的内容是由验证方的安全需求所确定,不同的安全需求,证明内容和平台度量不同。而证明方发起的远程证明的内容则是证明方平台的整个运行环境,与之相比,避免了众多与安全需求无关的无效证明信息,同时也避免了整个平台配置信息的泄漏。
2)度量时由证明方按照特有的度量函数进行度量,证明时则由证明权威机构和验证方按照专用的验证函数进行验证,不需要度量和验证的协商。这将远程证明中度量和证明两者分离,证明过程只进行简单度量证明匹配,就保证了证明方度量内容和验证方验证要求的一致性。
3)采用加密平台完整性度量结果的方法,保护平台配置隐私,避免在验证方泄漏平台配置信息。而加密的平台度量结果在可信第三方能够解密验证。
4)采用协同验证的方法,验证完整性度量中间结果是在可信第三方进行,而完整性签名,可信平台身份标识,验证完整性度量最终结果是在验证方进行,这能防止证明方伪造证明消息,篡改通讯消息欺骗验证方,同时也能防止可信第三方给出错误的验证结果欺骗验证方。
附图说明
图1是本发明基于安全需求的远程证明方法步骤示意图。
图2是本发明基于安全需求的远程证明方法流程图。
图3是本发明的证明方系统模块构成图。
图4是本发明实施例基于安全需求的远程证明系统结构示意图。
具体实施方式
下面通过实施例,结合附图进一步说明本发明,但不以任何方式限制本发明的范围。
基于安全需求的远程证明流程,结合可信计算平台的可信引导、平台组件度量、可信网络连接,我们实现基于安全需求的可信网络连接远程证明系统。详细的系统结构参照图4,该远程系统的应用场景是,证明方试图访问受保护网络中的资源服务器R,首先必须经过验证方服务器完整性验证后,才允许访问。证明系统的证明方是一台带有TPM安全芯片的计算机,在系统内核层运行作度量代理内核模块,按照证明需求完成平台配置完整性收集,度量代理之上是负责与验证方服务器通讯的证明服务模块。证明方通过开放的Internet访问受保护网络P。验证方则是由验证方服务器V,资源服务器R构成,验证方位于受保护网络P中。受保护网络P由网络接入点C、验证方服务器V、资源服务器R构成。C控制一切外部的网络请求,未经验证的网络请求一律转发至验证服务器V进行安全验证,被拒绝的证明方A的网络连接将被禁止,只有经过验证的证明方A的访问才允许访问资源服务器R。验证方服务器V负责验证来自请求方的完整性度量,验证完毕后,向网络接入点C给出访问控制判定结果,控制证明方的网络访问连接。
基于安全的远程证明系统实现中,验证方选取的安全需求是验证证明方的安全启动流程、操作系统补丁、防病毒软件、防火墙软件的安全性,通过TPM度量系统启动过程和系统组件,向远程方证明计算机系统运行环境是可信的,验证是否允许计算机接入受保护网络。
系统的各台计算机和网络设备布置完毕后,紧接着初始化整个证明系统。首先验证方V向证明权威AA请求证明属性证书,AA颁发X.509 v4.0的属性证书,属性证书中的属性域包含可信引导、操作系统补丁、防病毒软件、防火墙软件等4项要求证明的组件。然后是证明方获取度量证书,证明方向AA系统请求度量属性证书,度量属性证书中包含系统常用组件的度量点,上面所提到的4个组件的度量点必须包括在内。
证明方并不是随意度量,验证方都能验证成功的,还得遵循一定的约定或规则。基于安全需求的远程证明,度量流程和证明流程必须要制定明确的规则,这个系统中我们制定了组件级的度量流程和验证流程,把度量(验证)请求作为输入,度量(验证)结果作为输出,定义了MEASURE和VERIFY函数描述度量流程和验证流程。平台度量的基础是组件的度量,下面首先定义组件的度量,然后定义平台的度量过程为函数MEASURE。
假定可信计算平台配置为:CONF={C1,C2,C3,...,CN};
Ci的度量点集合为:MP_SET(Ci)={MCi,1,MCi,2,...,MCi,Ki};
Ci的度量值列表集合为:ML_SET(Ci)={ICi,1,ICi,2,...,ICi,Ki},其中ICi,j=SHA1(MCi,j),是度量点MCi,j的度量值,j=1,2,...,Ki。
定义组件Ci的度量函数MEASURE(Ci,MP_SET(Ci)),度量函数描述如下:
函数输入:Ci,MP_SET(Ci)={MCi,1,MCi,2,...,MCi,Ki},ML_SET(Ci)={};
初始化:组件Ci的度量PCR设为virtPCR(Ci)=0;度量点标号j=1;PCR的扩展运算为PCR_Extend;
输出:ML_SET(Ci),virtPCR(Ci)。
1.从MP_SET(Ci)中选取MCi,j,组件Ci的度量点MCi,j,ICi,j=SHA1(MCi,j);
2.ML_SET(Ci)=ML_SET(Ci)∪{ICi,j};
3.virtPCR(Ci)=PCR_Extend(virtPCR(Ci),ICi,j);
4.IF j==Ki;
THEN完成组件Ci的度量,结束;
ELSE j=j+1,跳到第(1)步继续度量。
在对组件进行度量的基础上,对于整个平台配置,证明方实现的平台的度量函数为:MEASURE(CONF,MP_SET(CONF))={MEASURE(Ci,MP_SET(Ci))},i=1,2,...,N。整个平台的度量结果是MEASURE(CONF,MP_SET(CONF))={ML,virtPCR};其中:
ML={ML_SET(C1),virtPCR(C1),ML_SET(C2),virtPCR(C2),...,ML_SET(CN),virtPCR(CN)}总的PCR值virtPCR(对virtPCR(Ci)值的综合扩展),virtPCR按如下方法计算:
virtPCR=0;
FORi=1 TO N DO
virtPCR=PCR_Extend(virtPCR,virtPCR(Ci))
所以度量函数定义为:
MEASURE(CONF,MP_SET(CONF))={ML,virtPCR}----------------------函数1
证明权威机构AA进行平台的完整性值的验证过程定义验证函数为VERIFY(ML):
1.验证完整性值:
ML={ML_SET(C1),virtPCR(C1),ML_SET(C2),virtPCR(C2),...,ML_SET(CN),virtPCR(CN)};i=1,2,...,L,依次验证ML_SET(Ci),验证组件Ci的度量值是否和完整性值数据库中存储的标准值一致。
2.验证PCR值:步骤1的验证结果如果不一致,vRet=false,停止验证;如果一致,ML_SET(Ci)={ICi,1,ICi,2,...,ICi,Ki},验证virtPCR(Ci):
tPCR=0
FOR j=1 TO Ki DO
tPCR=PCR_Extend(tPCR,ICi,j);
3.比较tPCR与virtPCR(Ci)是否一致,如果不一致,vRet=false,停止验证。
计算总的PCR值:如果所有组件都验证成功,vRet=true,计算平台总的PCR:
vPCR=0;
FORi=1 TO L DO
vPCR=PCR_Extend(vPCR,virtPCR(Ci));
验证函数返回:VERIFY(ML)={vRet,vPCR}。
所以验证函数定义为:
VERIFY(ML)={vRet,vPCR}-------------------------------------函数2
基于上述的度量和验证函数,本发明安全需求的远程证明方法整个过程七个步骤可分为两个阶段:度量阶段和证明阶段,详述如下(参见图1和图2,其中简记:证明方--A;验证方--V;证明权威机构--AA;证明服务--AS;度量代理--MA):
度量阶段只有证明方和验证方参与,其功能是证明方按照验证方的证明请求,通过底层可信平台模块TPM对可信计算平台进行度量。度量阶段包括下列步骤1~3:
1V---->A:随机数RN,证明属性证书
(1)A认证V的身份,只有V是A的合法用户,A的内部模块AS才有必要提供远程证明。
(2)V向AS发送随机数RN和证明属性证书。
2A:度量过程
(1)证明服务AS验证度量代理MA的完整性,AS从证明属性证书中获取需要证明的平台配置reqCONF,AS将reqCONF发送给MA;
(2)MA从度量属性证书中获取度量点列表MP_SET(CONF);
如果 ,CONF为整个证明方平台组件配置, 表明平台配置满足证明属性证书的要求,否则终止证明,通知V证明失败。MA对请求的平台配置reqCONF,使用TPM采用MEASURE度量方法(函数1)进行度量,其结果为MEASURE(reqCONF,MP_SET(reqCONF))={ML,virtPCR}。
该步骤中,TPM度量的不是全部平台组件配置CONF,而是仅仅度量了与验证方安全需求相关的平台配置reqCONF,这大大减少了无效配置信息的度量和验证,提高了远程证明的效率。
(3)MA产生一个对称密钥s_key,用s_key加密度量结果,用AA的公钥加密对称密钥,sML=Encs_key(ML),sKey=EncAA_pubkey(s_key)。MA验证AS的完整性,将sML,sKey发送给AS。度量日志ML是被加密传送的,仅仅只有证明权威机构AA才能解密度量日志进行验证,验证方V仅仅获得的是度量日志的密文,不会泄露平台配置信息。
(4)AS将随机数rn发送给TPM,TPM对度量结果进行签名Quote=SignAIK_priv{virtPCR,rn},将签名结果和TPM身份证书CertTPM返回给AS。
TPM对平台度量最终结果PCR值进行签名,保证证明结果的不可篡改。
3A---->V:Quote,sML,sKey,CertTPM
A将加密的度量结果sML,sKey,TPM签名结果Quote=SignAIK_priv{virtPCR,rn},TPM证书CerrTPM发送给V。
证明阶段只有验证方和证明权威机构参与,其功能是证明权威机构验证平台完整性度量结果,验证方验证平台度量的最终结果。证明阶段包括下列步骤4~7:
4V---->AA:sML,sKey
V保留TPM的签名结果Quote,CertTPM,作为最终验证,将加密的度量结果sML,sKey发送给AA。
5AA:验证
(1)AA用私钥解密对称密钥s_key,再用对称密钥s_key解密度量结果ML,s_key=DecAA_priv(sKey),ML=Decs_key(sML);
(2)AA利用收集的度量标准值验证度量列表ML,采用VERIFY验证方法(函数2)进行平台完整性值的验证,VERIFY(ML)={vRet,vPCR}。
6AA---->V:vRet,vPCR
AA将验证结果发送给V。
7V:最终验证
(1)V用Privacy-CA的根证书验证TPM证书,VerifyCert(CertTPM,CertPrivacyCA);
(2)V验证AA的证明结果vRet,vRet是否为真;
(3)V使用TPM的公钥验证TPM签名,VerifyAIK_pubkey{(virtPCR,rn),Quote},验证成功后比较总的PCR值virtPCR是否与AA计算结果vPCR一致;
(4)V验证TPM签名用的随机数rn是否和请求时的随机数RN相同。
只有通过了上述4步验证,才能说明证明方A远程证明成功。
综上所述,基于安全需求的可信网络连接远程证明系统中,验证方首先发送证明请求和防止重放攻击的随机数,证明服务解析证明请求,从证明属性证书中提取需要度量的组件,将请求转发给度量代理,度量代理从度量属性证书中提取度量点,按照函数1MEASURE对请求的组件进行度量,完整性日志以XML消息格式构建。度量代理产生RC4密码算法密钥,对度量日志进行加密,RC4密钥再用AA的公钥进行加密。证明方平台可信引导采用的是Grub,操作系统是Windows XP,防病毒软件是Norton Antivirus,防火墙是NortonInternet Security。度量完成后,证明服务请求TPM对平台配置状态进行签名,最后证明服务将证明数据发送给验证方。验证方接收到证明数据,首先向AA请求验证度量日志,AA使用自己的私钥解密RC4对称密钥,再解密日志按照函数2VERIFY进行验证,AA将中间验证结果返回给验证者。验证方V最终验证证明方A的身份证书链,验证TPM的签名,计算出PCR值验证最终结果。V根据验证结果给出是否允许接入网络,驱使网络接入点C控制证明方的网络连接。
Claims (6)
1.一种可信计算平台安全技术领域的远程证明方法,包括如下步骤:
(1)验证方根据从证明权威机构获取的证明属性证书创建证明请求,并将证明请求发送给证明方;
(2)证明方收到验证方发送的证明请求后,根据验证方要求证明的内容和证明权威机构颁发的度量属性证书,由证明方的可信平台模块实施系统组件度量,加密度量日志,对其内部平台配置寄存器存储的最终度量结果签名;
(3)证明方将加密的度量日志、最终度量结果及其签名结果发送给验证方;
(4)验证方保留最终度量结果及其签名,而将加密的度量日志发送给证明权威机构;
(5)证明权威机构对验证方发送的加密度量日志进行验证;
(6)证明权威机构将以度量日志计算的最终度量结果和验证结果发送给验证方;
(7)如果证明权威机构验证结果为通过验证,验证方比较证明权威机构计算的最终度量结果和证明方发送的最终度量结果,二者一致则验证度量结果的签名,从而最终确保证明方的可信性。
2.如权利要求1所述的远程证明方法,其特征在于,所述步骤(2)具体包括下列步骤:
2-1.证明方的证明服务模块从验证方的证明属性证书中,解析得到需要证明的平台组件,将要证明的组件列表发送给度量代理模块;
2-2.度量代理模块验证当前的平台组件是否与需要证明的平台组件匹配,如果不匹配则退出证明,匹配则度量代理模块使用可信平台模块按照下述步骤a~e实施组件度量:
a).从需要证明的平台组件中,选取某一组件C;
b).用SHA1算法依次度量组件C的度量点,度量代理模块保存C的度量日志;
c).度量代理模块使用TPM_Extend方法得到组件C的度量值h(C);
d).如果全部需要证明的组件已经度量完成,跳到步骤e执行,否则跳回步骤a继续执行;
e).度量代理模块将步骤c得到的全部组件的度量值h(C),依次扩展可信平台模块内部的平台配置寄存器,得到最终度量值;
2-3.度量代理模块加密全部组件度量日志,然后将加密的度量日志发送给证明服务模块;
2-4.可信平台模块使用平台身份密钥对最终的度量结果签名,将最终度量结果、签名结果、可信平台模块身份证书发送给证明服务模块。
3.如权利要求2所述的远程证明方法,其特征在于,所述步骤(5)证明权威机构对度量日志解密后,利用收集的标准度量值,按照下列步骤进行完整性验证:
5-1.依次验证证明方组件度量日志,从证明方度量日志中选取组件C的度量日志,比较组件各个度量点的度量值是否和发布的标准值一致,如果不一致则验证失败;
5-2.重新计算组件C的度量值,按照TPM_Extend方法依次扩展各个度量点的值,得到组件C的度量值;
5-3.比较组件C的度量值是否与标准值一致,如果不相等则验证失败,如果已经完成全部组件的验证,跳至步骤5-4执行,否则继续执行步骤5-1;
5-4.按照TPM_Extend方法依次扩展各个组件的度量值,计算出最终的平台度量值,然后证明权威机构将验证结果、最终的度量值发送给验证方。
4.如权利要求1~3中任一项权利要求所述的远程证明方法,其特征在于,所述步骤2中的加密过程为证明方生成对称密钥,对度量日志加密,并利用证明权威机构的公钥加密对称密钥,相应的,在步骤5证明权威机构收到验证方发送来的加密度量日志后,证明权威机构首先使用自己的私钥解密加密的对称密钥,然后再使用对称密钥解密经过加密的度量日志。
5.一种可信计算平台安全技术领域的远程证明系统,包括证明方、验证方和证明权威机构三方,三者之间通过互联网进行通讯连接,由验证方根据安全需求发起证明请求,证明方按照请求度量平台配置,证明权威机构验证度量结果,最终由验证方判定是否信任证明方,所述证明方包括证明服务模块、度量代理模块和可信平台模块,其中:证明服务模块运行于应用服务层,在操作系统之上,通过操作系统的消息通讯机制进行数据的传递,接收验证方的证明请求,负责与远程验证方进行通信;度量代理模块是操作系统的内核模块,可信平台模块在度量代理模块的驱动下按照证明要求度量平台配置,组建远程证明相关的证明数据;可信平台模块位于证明方计算机系统的硬件层,内嵌于主板上,完成具体的杂凑计算、加密和签名操作;其中验证方根据从证明权威机构获取的证明属性证书创建证明请求,并将证明请求发送给证明方;证明方收到验证方发送的证明请求后,根据验证方要求证明的内容和证明权威机构颁发的度量属性证书,由证明方的可信平台模块实施系统组件度量,加密度量日志,对其内部平台配置寄存器存储的最终度量结果签名;证明方将加密的度量日志、最终度量结果及其签名结果发送给验证方;验证方保留最终度量结果及其签名,而将加密的度量日志发送给证明权威机构;证明权威机构对验证方发送的加密度量日志进行验证;证明权威机构将以度量日志计算的最终度量结果和验证结果发送给验证方;如果证明权威机构验证结果为通过验证,验证方比较证明权威机构计算的最终度量结果和证明方发送的最终度量结果,二者一致则验证度量结果的签名,从而最终确保证明方的可信性。
6.如权利要求5所述的远程证明系统,其特征在于,所述的验证方由验证方服务器和资源服务器构成,运行在一个相对独立的受保护网络中,该受保护网络通过网络接入点控制一切来自外部的网络请求,验证方服务器负责验证来自证明方的完整性度量,验证完毕后,向网络接入点给出访问控制判定结果,只有通过验证的证明方才允许访问资源服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710098814A CN100583768C (zh) | 2007-04-27 | 2007-04-27 | 基于安全需求的远程证明方法及其系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710098814A CN100583768C (zh) | 2007-04-27 | 2007-04-27 | 基于安全需求的远程证明方法及其系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101043338A CN101043338A (zh) | 2007-09-26 |
CN100583768C true CN100583768C (zh) | 2010-01-20 |
Family
ID=38808572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710098814A Expired - Fee Related CN100583768C (zh) | 2007-04-27 | 2007-04-27 | 基于安全需求的远程证明方法及其系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100583768C (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217775A (zh) * | 2019-07-12 | 2021-01-12 | 华为技术有限公司 | 一种远程证明方法及装置 |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101611649B1 (ko) | 2008-01-18 | 2016-04-26 | 인터디지탈 패튼 홀딩스, 인크 | M2m 통신을 인에이블하는 방법 및 장치 |
JP5453461B2 (ja) | 2009-03-05 | 2014-03-26 | インターデイジタル パテント ホールディングス インコーポレイテッド | H(e)NB完全性検証および妥当性確認のための方法および機器 |
KR20160138587A (ko) * | 2009-03-06 | 2016-12-05 | 인터디지탈 패튼 홀딩스, 인크 | 무선 장치들의 플랫폼 검증 및 관리 |
CN101610273B (zh) * | 2009-08-03 | 2011-12-28 | 西安西电捷通无线网络通信股份有限公司 | 一种安全的远程证明方法 |
CN101635709B (zh) * | 2009-08-25 | 2011-04-27 | 西安西电捷通无线网络通信股份有限公司 | 一种可实现双向平台鉴别的方法 |
CN101783800B (zh) * | 2010-01-27 | 2012-12-19 | 华为终端有限公司 | 一种嵌入式系统安全通信方法、装置及系统 |
CN101902472B (zh) * | 2010-07-09 | 2013-04-24 | 北京工业大学 | 可信网络中基于行为推送远程声明的方法 |
EP2635991B1 (en) | 2010-11-05 | 2015-09-16 | InterDigital Patent Holdings, Inc. | Device validation, distress indication, and remediation |
CN102025741B (zh) * | 2010-12-07 | 2013-06-05 | 中国科学院软件研究所 | 一种两层架构的可信身份服务平台及其构建方法 |
CN102281510B (zh) * | 2011-07-27 | 2014-06-25 | 上海和辰信息技术有限公司 | 移动邮箱多因子可信身份认证方法及系统 |
CN102957535A (zh) * | 2011-08-19 | 2013-03-06 | 国民技术股份有限公司 | 可信计算平台与电子证书认证系统的通信方法及系统 |
CN102685092B (zh) * | 2011-11-29 | 2014-11-19 | 河海大学 | 一种用于证明远程平台安全属性的远程证明方法 |
CN102750471B (zh) * | 2012-05-22 | 2015-02-11 | 中国科学院计算技术研究所 | 基于tpm 的本地验证式启动方法 |
CN103488937B (zh) | 2013-09-16 | 2017-02-22 | 华为技术有限公司 | 一种度量方法、电子设备及度量系统 |
CN104038478A (zh) * | 2014-05-19 | 2014-09-10 | 瑞达信息安全产业股份有限公司 | 一种嵌入式平台身份验证可信网络连接方法和系统 |
CN104333451A (zh) * | 2014-10-21 | 2015-02-04 | 广东金赋信息科技有限公司 | 一种可信自助服务系统 |
CN104506532B (zh) * | 2014-12-24 | 2018-06-26 | 北京智捷伟讯科技有限公司 | 一种适用于紧急救援平台的远程证明方法 |
CN106533681B (zh) * | 2015-09-11 | 2019-09-17 | 中国科学院软件研究所 | 一种支持部分出示的属性证明方法与系统 |
CN107133520B (zh) * | 2016-02-26 | 2021-05-14 | 华为技术有限公司 | 云计算平台的可信度量方法和装置 |
CN106354550A (zh) * | 2016-11-01 | 2017-01-25 | 广东浪潮大数据研究有限公司 | 一种保护虚拟机安全的方法、装置及系统 |
CN107104804A (zh) * | 2017-05-10 | 2017-08-29 | 成都麟成科技有限公司 | 一种平台完整性验证方法和装置 |
CN106953733A (zh) * | 2017-05-10 | 2017-07-14 | 成都麟成科技有限公司 | 一种平台软件完整性证明方法和装置 |
CN109714168B (zh) * | 2017-10-25 | 2022-05-27 | 阿里巴巴集团控股有限公司 | 可信远程证明方法、装置和系统 |
CN108171042B (zh) * | 2017-11-16 | 2021-07-30 | 中国科学院软件研究所 | 一种基于可信执行环境的系统配置属性证明方法及系统 |
CN109272314B (zh) * | 2018-08-14 | 2020-11-27 | 中国科学院数据与通信保护研究教育中心 | 一种基于两方协同签名计算的安全通信方法及系统 |
CN112468473B (zh) * | 2018-11-16 | 2023-10-24 | 创新先进技术有限公司 | 可信应用程序的远程证明方法及装置、电子设备 |
CN109213741A (zh) * | 2018-11-22 | 2019-01-15 | 浙江中农在线电子商务有限公司 | 高性能日志存储方法及装置 |
CN109660530B (zh) * | 2018-12-08 | 2021-11-26 | 公安部第三研究所 | 一种基于硬件证书的信息安全防护方法 |
CN114640441A (zh) * | 2019-06-24 | 2022-06-17 | 华为技术有限公司 | 一种远程证明方式的协商方法及装置 |
CN112688907B (zh) * | 2019-10-17 | 2023-06-30 | 华为技术有限公司 | 组合式设备远程证明模式协商方法及相关设备,存储介质 |
CN112787988B (zh) * | 2019-11-11 | 2023-06-02 | 华为技术有限公司 | 远程证明方法、装置,系统及计算机存储介质 |
CN111741008B (zh) * | 2020-07-08 | 2020-12-04 | 南京红阵网络安全技术研究院有限公司 | 一种基于拟态防御原理的双向匿名认证系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1783848A (zh) * | 2004-12-02 | 2006-06-07 | 北京航空航天大学 | 基于域名层次认证机构的邮件传输代理原发抗抵赖方法 |
CN1929380A (zh) * | 2006-09-23 | 2007-03-14 | 西安西电捷通无线网络通信有限公司 | 一种公钥证书状态的获取及验证方法 |
-
2007
- 2007-04-27 CN CN200710098814A patent/CN100583768C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1783848A (zh) * | 2004-12-02 | 2006-06-07 | 北京航空航天大学 | 基于域名层次认证机构的邮件传输代理原发抗抵赖方法 |
CN1929380A (zh) * | 2006-09-23 | 2007-03-14 | 西安西电捷通无线网络通信有限公司 | 一种公钥证书状态的获取及验证方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217775A (zh) * | 2019-07-12 | 2021-01-12 | 华为技术有限公司 | 一种远程证明方法及装置 |
CN112217775B (zh) * | 2019-07-12 | 2022-04-05 | 华为技术有限公司 | 一种远程证明方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101043338A (zh) | 2007-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100583768C (zh) | 基于安全需求的远程证明方法及其系统 | |
Bera et al. | Designing blockchain-based access control protocol in IoT-enabled smart-grid system | |
EP2080142B1 (en) | Attestation of computing platforms | |
JP5869052B2 (ja) | データセンタへのプラットフォームの内包検証 | |
CN114499895B (zh) | 一种融合可信计算与区块链的数据可信处理方法及系统 | |
US20050283826A1 (en) | Systems and methods for performing secure communications between an authorized computing platform and a hardware component | |
CN110768791B (zh) | 一种零知识证明的数据交互方法、节点、设备 | |
US20070016801A1 (en) | Method, apparatus, and product for establishing virtual endorsement credentials for dynamically generated endorsement keys in a trusted computing platform | |
US20130227281A1 (en) | Managing data | |
CN104158791A (zh) | 一种分布式环境下的安全通信认证方法及系统 | |
Cabrera-Gutiérrez et al. | Integration of hardware security modules and permissioned blockchain in industrial iot networks | |
CN103916246A (zh) | 一种基于可信计算的考试防作弊方法及系统 | |
CN101739622A (zh) | 一种可信支付计算机系统 | |
Delaune et al. | A formal analysis of authentication in the TPM | |
KR100912532B1 (ko) | 신뢰 컴퓨팅 환경에서 각 참여자가 상호 보증 기능을 갖는인터넷 전자투표 방법 및 시스템 | |
Leicher et al. | Implementation of a trusted ticket system | |
Gallery et al. | Trusted computing: Security and applications | |
CN101902472A (zh) | 可信网络中基于行为推送远程声明的方法 | |
CN112784249B (zh) | 实现无标识情形下进行移动终端认证处理的方法、系统、处理器及其计算机可读存储介质 | |
Niemi et al. | Platform attestation in consumer devices | |
CN101739623A (zh) | 一种可信支付计算机系统 | |
Wilson et al. | Provably secure communication protocols for remote attestation | |
Chaki et al. | Verification across intellectual property boundaries | |
Chen et al. | Endl: a logical framework for verifying secure transaction protocols | |
Brandl | Trusted computing: The tcg trusted platform module specification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100120 |