System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于机密计算,尤其是涉及一种新型机密计算应用层度量方法及其系统。
技术介绍
1、基于cpu层级隐私计算或机密运算是指基于芯片层级的可信基的可信执行环境,不受系统层, kernel层控制(即拥有一台计算机系统最高管理权限或kernel层级控制权也无法查看,篡改,控制此安全环境内的数据和运行),从而来保证可信执行环境内数据隐私保护安全性和运行的可信性,相应的技术目前有intelsgx技术、intel txd技术、amd sev、海光csv技术等。
2、机密计算分为两类,一类是比较成熟的基于应用的机密计算,如intel sgx技术;第二类是较新一代的还在不断发展的基于虚拟机级的机密计算,如intel txd、amd sev、海光csv技术等。
3、机密计算核心--远程认证:机密计算可信执行环境内启动应用,并对可信执行环境和应用进行度量并由硬件(芯片)签名生成芯片级签名报告(report),报告发送给远端用户,远端用户基于相关验证机制核验报告合法性,在报告中提取度量值并与远程用户端保存的期望度量值进行比较,如果相符则继续与可信环境建立安全连接。
4、而目前基于虚拟机级的机密计算(intel tdx、amd sev、海光csv等)中,上述度量只度量到:tcb(可信计算基础)+firmware(固件)+虚拟机os(shim/grub(内核固件),kernel(内核),initrd(内存文件系统)),不涵盖应用层,所以远端用户无法判断可信执行环境中应用的合法性。出现这种情况的原因主要是,vm(虚拟
技术实现思路
1、本专利技术的目的是针对上述问题,提出一种新型机密计算应用层度量方法及其系统,该方案基于已有的虚拟机级别机密计算底层组件静态度量的特性进行动态扩展,使其能更快,更可信地实行对应用层的高可信度量,既是对相对较新型机密计算应用—基于虚拟机的机密计算应用提出的应用层度量方案,又是对机密计算应用提出的一种新型的应用层度量方案。
2、一种新型机密计算应用层度量方法,包括机密计算虚拟机,所述机密计算虚拟机能够被度量到的底层组件中被部署有触发模块,且通过如下方式实现对基于虚拟机级机密计算应用层的度量:
3、机密计算虚拟机启动并加载底层组件;
4、基于机密计算对部署有触发模块的底层组件的原生芯片级可信度量完成对触发模块的可信度量;
5、使用触发模块触发用户态应用并对用户态应用进行可信度量得到可信度量值m;
6、将经过芯片级签名的可信度量值m提供于远程用户端以供远程用户端对用户态应用进行可信验证。
7、在上述的新型机密计算应用层度量方法中,通过如下方式将可信度量值m提供于远程用户端:
8、所述的触发模块通过触发机密计算原生api来生成经过芯片级签名且包括对底层组件进行度量得到的底层度量值,以及可信度量值m和所要建立的远程认证安全连接的公钥信息p的芯片级报告;
9、将所述的芯片级报告提供于远程用户端以供远程用户端对用户态应用进行可信验证,并在可信验证通过后基于p建立与触发模块的安全连接。
10、在上述的新型机密计算应用层度量方法中,所述的触发模块在底层组件加载时被触发运行;
11、所述机密计算虚拟机的底层组件包括vm内存文件系统、kernel内核层;
12、所述的触发模块被部署于vm内存文件系统或kernel内核层。
13、在上述的新型机密计算应用层度量方法中,触发模块对用户态应用的可信度量过程包括静态度量和/或动态度量;
14、所述的静态度量为,在用户态应用启动前对其应用文件进行度量,应用将在度量并验证通过后被触发启动;
15、所述的动态度量为,在用户态应用启动后,对应用运行态不同时刻的各个参数的度量。
16、在上述的新型机密计算应用层度量方法中,静态度量时,
17、远程用户端基于度量结果对用户态应用可信验证通过后,将用户态应用需要使用的原始数据的秘密数据s通过所述安全连接传输于触发模块;
18、触发模块接收到秘密数据s后触发相应用户态应用的启动,并将该秘密数据s以参数形式传输于用户态应用供其使用(如解密使用或访问加密数据库进行使用等);
19、本方法具体包括:
20、若所要启动的用户态应用被预先安装于机密计算虚拟机,触发模块对该用户态应用的应用文件进行度量,例如求应用文件哈希值;
21、若所要启动的用户态应用未被预先安装于机密计算虚拟机,触发模块根据指定的参数拉取应用,并对拉取的应用进行度量,度量方式为对用户态应用的应用文件进行度量或者解析并度量应用对应的配置文件(例如docker manifest配置文件,应用需要合法有效的配置文件才能正常启动)。
22、在上述的新型机密计算应用层度量方法中,动态度量时,触发模块触发相应用户态应用的启动,并与用户态应用建立通信机制;
23、触发模块于至少一个特定时间节点对用户态应用展开动态度量,有几个特定时间节点就有几次动态度量;度量的时间节点可以由远端用户或其他相关方来指定或者按照特定规则确定等。
24、将每次动态度量的可信度量值m均提供于远程用户端;
25、远程用户端基于至少一次动态度量结果对用户态应用可信验证通过后,将用户态应用需要使用的原始数据的秘密数据s通过所述安全连接传输于触发模块;
26、触发模块接收到秘密数据s后通过所述通信机制将秘密数据s传输于用户态应用以供其对所需要的原始数据进行使用;
27、度量方式为,度量用户态应用运行态相关信息mi,且所述的可信度量值m为mi的原生信息(m=mi),或者mi原生信息的哈希值(m=hash(mi)),对于后者将mi信息发送给远程用户端,优选通过芯片级报告外的其他传输方式传输。
28、在上述的新型机密计算应用层度量方法中,本方法还包括:
29、被提供于机密计算且将被用户态应用使用的原始数据被划分为n份,并被对应于不同的秘密数据s1~sn,每份数据di对应于秘密数据si,i=1……n,表示第i份数据及第i个密钥;
30、触发模块按设定(如基于相关方选定的时间节点)对用户态应用依次进行n次度量;第一次可以为静态度量(应用启动前的度量)或动态度量(应用启动后的度量),后续n-1次为对用户态应用运行过程中的度量。
31、远程用户端基于第i次度量验证结果决定将第i阶段pi对应的秘密数据si发送或拒绝发送于机密计算用户(若si为数据的本文档来自技高网...
【技术保护点】
1.一种新型机密计算应用层度量方法,包括机密计算虚拟机,其特征在于,所述机密计算虚拟机能够被度量到的底层组件中被部署有触发模块,且通过如下方式实现对基于虚拟机级机密计算应用层的度量:
2.根据权利要求1所述的新型机密计算应用层度量方法,其特征在于,通过如下方式将可信度量值M提供于远程用户端:
3.根据权利要求1所述的新型机密计算应用层度量方法,其特征在于,所述的触发模块在底层组件加载时被触发运行;
4.根据权利要求2所述的新型机密计算应用层度量方法,其特征在于,触发模块对用户态应用的可信度量过程包括静态度量和/或动态度量;
5.根据权利要求4所述的新型机密计算应用层度量方法,其特征在于,静态度量时,
6.根据权利要求4所述的新型机密计算应用层度量方法,其特征在于,动态度量时,触发模块触发相应用户态应用的启动,并与用户态应用建立通信机制;
7.根据权利要求1-6任意一项所述的新型机密计算应用层度量方法,其特征在于,本方法还包括:
8.根据权利要求1-6任意一项所述的新型机密计算应用层度量方法,其特征
9.一种机密计算系统,其特征在于,用于实现权利要求1-8任意一项所述的机密计算应用层度量方法,包括机密计算虚拟机,所述的机密计算虚拟机能够被度量到的底层组件中被部署有触发模块,所述的触发模块在底层组件加载时被启动,并基于机密计算对底层组件的静态度量特性实现被机密计算的可信度量;
10.根据权利要求9所述的机密计算系统,其特征在于,所述的触发模块被部署于机密计算虚拟机的VM内存文件系统或Kernel内核层中;
...【技术特征摘要】
1.一种新型机密计算应用层度量方法,包括机密计算虚拟机,其特征在于,所述机密计算虚拟机能够被度量到的底层组件中被部署有触发模块,且通过如下方式实现对基于虚拟机级机密计算应用层的度量:
2.根据权利要求1所述的新型机密计算应用层度量方法,其特征在于,通过如下方式将可信度量值m提供于远程用户端:
3.根据权利要求1所述的新型机密计算应用层度量方法,其特征在于,所述的触发模块在底层组件加载时被触发运行;
4.根据权利要求2所述的新型机密计算应用层度量方法,其特征在于,触发模块对用户态应用的可信度量过程包括静态度量和/或动态度量;
5.根据权利要求4所述的新型机密计算应用层度量方法,其特征在于,静态度量时,
6.根据权利要求4所述的新型机密计算应用层度量方法,其特征...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。