一种基于可信执行环境的系统配置属性证明方法及系统技术方案

技术编号:18238053 阅读:44 留言:0更新日期:2018-06-17 01:26
本发明专利技术是一种基于可信执行环境的系统配置属性证明方法。该方法包括:1)在证明方的计算机系统启动时,利用可信执行环境技术将内存和外设配置划分为安全区域和非安全区域;2)在安全区域内部署密码学服务程序、非易失性存储设备的驱动程序、安全区域完整性证明程序;3)在非安全区域部署实现配置属性证明协议的主体程序;4)在配置属性证明协议运行之前,证明方首先运行安全区域中的完整性证明程序,向验证方证实自身的安全区域的完整性;5)依次执行配置属性证明协议的初始化过程、证书颁发过程、证明过程和验证过程。采用本发明专利技术,证明方可以证明自己的计算机系统的配置满足特定的安全属性,同时能够保护配置的隐私性。 1

A method and system for proving system configuration attributes based on trusted execution environment

The present invention is a system configuration attribute proving method based on trusted execution environment. The method includes: 1) when the proof Party's computer system is started, the memory and peripherals are divided into security areas and non security areas by using trusted execution environment technology; 2) the cryptology service program, the driver of the nonvolatile storage device, the security area integrity proof program, and the 3) in the security area. The whole area deploys the main program to realize the configuration attribute proof protocol; 4) before configuring the property proof protocol, the proof party first runs the integrity proof program in the security area, to verify the integrity of the security area of the verification certificate, and 5) to execute the initialization process of the configuration attribute proof protocol in turn and the certificate issued by the certificate. Process, certification process and verification process. By using the invention, the proof can prove that the configuration of its computer system satisfies specific security attributes while protecting the privacy of the configuration. One

【技术实现步骤摘要】
一种基于可信执行环境的系统配置属性证明方法及系统
本专利技术属于计算机操作系统安全协议和安全增强
,具体涉及一种基于可信执行环境的、能够向远端验证方证实计算机系统配置可信性同时保护具体配置隐私的属性证明实现方法及系统。
技术介绍
在数据版权保护、企业移动办公等计算机网络应用领域的常见场景中,数据提供者常常希望数据使用者的计算机系统的配置符合特定的安全要求。例如,在数字版权保护领域,数字媒体厂商希望视频只能在特定的设备上播放。再例如,在企业远程办公领域,企业希望企业数据只能被下载到特定类型的计算机上进行查看。与此同时,从数据使用者的角度来说,由于处理数据的计算机设备可能涉及到使用者个人的隐私情况,因而使用者希望在这些场景中能顾及使用者的个人隐私保护,即不泄露包括计算机配置的具体信息,因为这些信息可能涉及个人隐私。在上面的例子中,播放视频或处理企业数据的计算机系统很可能是使用者个人的计算设备,因此使用者不希望在下载数据时暴露自己的计算机中安装了哪些软件。证明计算机系统的可信性与保障配置隐私性之间存在矛盾,前者要求计算机系统的拥有者(证明方)证明计算机系统配置,这通常意味着暴露计算机系统配置,后者则要求证明方隐藏计算机系统配置。为了解决这一矛盾,研究者已经提出了一类新式安全协议——属性远程证明协议。这种协议的特点是,证明方可以在证明自己的计算机系统的配置满足特定的安全属性,却不在证明过程中暴露具体的配置信息。然而,这些方法的主要贡献集中在计算机协议层面,即使有一些方案考虑了协议的具体实现方式,这些方案也仍然存在明显的局限。例如有研究者给出基于可信安全芯片实现属性远程证明协议,然而其方案中的可信安全芯片并无实际对应的产品,或者说,需要在现有可信安全芯片的基础上增加新的接口才能符合方案要求。鉴于这种情况,可以考虑采用新型的可信执行环境技术来实现属性远程证明,在达成可信和配置隐私保护两个主要的安全目的的同时,也兼顾方法的可实现性以及完整性。可信执行环境技术,是一种基于具有安全增强扩展的处理器的系统安全增强技术。目前,可信执行环境技术是信息安全领域最受关注、研发力度最强的技术之一,具有十分重要的作用和价值。该技术的主要运用方式如其名字所示,是为特定的、重要的应用程序建立一个可信的运行环境(相对的,不可信的、普通的运行环境一般被称为普通运行环境),保障该程序不受到任何的外界程序的干扰、窥探。例如,在移动支付场景中,可以将指纹处理程序置入可信执行环境中,移动平台上其他的程序都无法获取有关指纹的任何信息,也无法干扰指纹识别的过程和结果。本专利技术所基于的可信执行环境技术的主要特征是:1)通常基于计算机处理器、总线控制器和设备控制器等的安全增强扩展构建,这些安全增强扩展通常包括但不限于:处理器特殊的工作模式、处理器特殊的控制逻辑以及控制器特殊的控制逻辑;2)该技术中,计算机系统内的内存(以及处理器的寄存器)、外设(以及与外设关联的中断)被划分为安全区域和非安全区域两个部分;3)处理器只有在特定的工作模式(安全模式)下才能访问全部内存,在非安全模式下则只能访问访问非安全区域,不能访问安全区域;换言之,安全区域内的程序可以访问全部内存,非安全区域中的程序只能访问非安全区域,不能访问安全区域;4)上述“安全区域”的范围可以计算机系统在启动时或运行时进行配置;5)处理器可以通过执行特定的指令在上述“安全模式”与对应的非安全模式之间切换。
技术实现思路
本专利技术是一种基于可信执行环境技术的、能够保护配置隐私的系统配置属性证明方法及系统。参与协议的实体包括证书颁发方、证明方和验证方,三者构成如图1所示。其中证明方根据计算位置不同而分为安全区域和非安全区域。基于该方法,验证方可以确认证明方的计算机系统的配置符合特定的安全要求,同时证明方的计算机系统的具体配置情况又不会被暴露。本专利技术的一种基于可信执行环境的系统配置属性证明方法,其中的配置属性证明协议包括系统初始化过程、配置属性证书颁发过程、配置属性证明过程以及证明信息的验证过程。该方法包括以下步骤:1)在证明方的计算机系统启动时,利用可信执行环境技术,将内存和外设配置划分为两部分,一部分是安全区域,一部分是对应的非安全区域;证明方的计算机系统启动时,还需要使用安全启动技术,保证安全与非安全区域内运行的所有程序都未遭受过篡改、攻击。2)在安全区域内部署如下程序:a)密码学服务程序,用于参与配置属性证明协议,完成协议中所需的密码学运算服务;密码学服务程序必须拥有属于自己的数字签名密钥对AIK(AttestationIdentityKey);b)非易失性存储设备的驱动程序,用于辅助密码学服务程序排他性的管理和访问一个非易失性存储设备(即该设备必须不能够被非安全区域访问),AIK即存储在该设备当中;c)安全区域完整性证明程序,用于证明安全区域的完整性。3)在非安全区域部署实现配置属性证明协议的主体程序。4)在任何配置属性证明协议运行之前,证明方首先运行安全区域中的安全区域完整性证明程序,向验证方证实自身的安全区域的完整性;注意,此步骤只证明安全区域的完整性,虽然将暴露安全区域的配置信息,但不会暴露非安全区域(也即计算系统主体)的配置信息。5)配置属性证明协议的初始化过程如下:在这一过程中,证书颁发方生成公共参数以及自己的秘密信息,然后执行如下步骤:a)设定协议的安全参数(从密码学角度表征了协议的安全强度)为整数t。b)证书颁发方选择双线性对计算e。e的输入域为两个q阶椭圆曲线点群G1和G2,生成元分别为g1和g2,输出域为定义输入点群的基域的阔域GT,生成元为g3。该椭圆曲线的嵌入度为k。G1、G2和GT都应足够大,以保证协议安全强度。c)在G1中,随机选择原则元素h1、h2、h3。在Zq*中,选择随机数x、y和gamma,此处Zq*是由小于q且与q互素的整数构成的循环群,下同;计算出X=g1^x、Y=g1^y以及W=g2^gamma。“^”符号表征椭圆曲线点群上的倍点计算,其优先级是本文档中所有运算符号中最高,下同。d)选择一个密码杂凑函数(哈希函数)H:{0,1}*→Zq,此处Zq是一个q阶整数群。e)证书颁发方向证明方和验证方公布公共参数(q,G1,G2,GT,g1,g2,h1,h2,h3,X,Y,W,e,H),并自己保留(x,y,gamma)作为秘密信息。6)配置属性证明协议的配置属性证书颁发过程如下:在这一过程中,证书颁发方为一个配置-属性对(cs,ps)颁发一个配置属性证书。对于(cs,ps),证书颁发方首先计算一个数字签名结果Sigma=(A,a),其中的A和a与前述的公开参数和私有参数(即步骤5)中的“秘密信息”)满足如下的计算关系:A=((g1)*(h1^cs)*(h2*ps))^(1/(a+gamma))。最终,证书颁发方颁发的配置属性证书为CRE=((cs,ps),Sigma)。7)配置属性证明协议的证明方证明流程如下:在这一过程中,证明方证明其计算平台的配置为某个配置cs且证书颁发方颁发了配置属性证书(cs,ps),也即证明方证明其计算平台满足安全属性ps。整个证明过程中,证明方不暴露cs的具体数值。a)验证方在{0,1}t中选择随机数Nv(即长度为t个比特的随机数本文档来自技高网
...
一种基于可信执行环境的系统配置属性证明方法及系统

【技术保护点】
1.一种基于可信执行环境的系统配置属性证明方法,其特征在于,包括以下步骤:

【技术特征摘要】
1.一种基于可信执行环境的系统配置属性证明方法,其特征在于,包括以下步骤:1)在证明方的计算机系统启动时,利用可信执行环境技术将内存和外设配置划分为两部分,一部分是安全区域,一部分是对应的非安全区域;并使用安全启动技术保证安全区域与非安全区域内运行的所有程序都未遭受过篡改、攻击;2)在安全区域内部署密码学服务程序、非易失性存储设备的驱动程序、安全区域完整性证明程序;3)在非安全区域部署实现配置属性证明协议的主体程序;4)在任何配置属性证明协议运行之前,证明方首先运行安全区域中的安全区域完整性证明程序,向验证方证实自身的安全区域的完整性;5)依次执行配置属性证明协议的初始化过程、证书颁发过程、证明过程和验证过程。2.如权利要求1所述的方法,其特征在于,证明方证实自身的配置满足特定的安全属性的同时,不会暴露具体的配置信息,以保护配置的隐私性。3.如权利要求1所述的方法,其特征在于,不依赖于任何非标准的安全芯片或其他设备,而是基于可信执行环境技术实现,以确保证明过程和结果的可信性。4.如权利要求1所述的方法,其特征在于,所述密码学服务程序用于参与配置属性证明协议,完成协议中所需的密码学运算服务,密码学服务程序必须拥有属于自己的数字签名密钥对;所述非易失性存储设备的驱动程序用于辅助密码学服务程序排他性的管理和访问一个非易失性存储设备,即该设备必须不能够被非安全区域访问,所述数字签名密钥对即存储在该设备当中;所述安全区域完整性证明程序用于证明安全区域的完整性。5.如权利要求1所述的方法,其特征在于,在配置属性证明协议的初始化过程中,证书颁发方生成公共参数以及自己的秘密信息,然后执行如下步骤:a)设定配置属性证明协议的安全参数为整数t;b)证书颁发方选择双线性对计算e,e的输入域为两个q阶椭圆曲线点群G1和G2,生成元分别为g1和g2,输出域为定义输入点群的基域的阔域GT,生成元为g3;该椭圆曲线的嵌入度为k;c)在G1中随机选择原则元素h1、h2、h3;在Zq*中选择随机数x、y和gamma,Zq*是由小于q且与q互素的整数构成的循环群;计算出X=g1^x、Y=g1^y以及W=g2^gamma;d)选择一个密码杂凑函数H:{0,1}*→Zq,此处Zq是一个q阶整数群;e)证书颁发方向证明方和验证方公布公共参数(q,G1,G2,GT,g1,g2,h1,h2,h3,X,Y,W,e,H),并自己保留(x,y,gamma)作为秘密信息。6.如权利要求5所述的方法,其特征在于,在配置属性证明协议的配置属性证书颁发过程中,证书颁发方为一个配置-属性对(cs,ps)颁发一个配置属性证书;对于(cs,ps),证书颁发方首先计算一个数字签名结果Sigma=(A,a),其中的A和a满足如下关系:A=((g1)*(h1^cs)*(h2*ps))^...

【专利技术属性】
技术研发人员:初晓博冯伟秦宇赵世军
申请(专利权)人:中国科学院软件研究所
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1