一种基于可信计算环境的可信计算系统及方法与流程

文档序号:29978406发布日期:2022-05-11 12:24阅读:599来源:国知局
导航: X技术> 最新专利> 计算;推算;计数设备的制造及其应用技术
一种基于可信计算环境的可信计算系统及方法与流程

1.本发明涉及可信计算技术领域,尤其涉及一种基于可信计算环境的可信计算系统及方法。


背景技术:

2.信息安全具有四个层面:设备安全、数据安全、内容安全与行为安全,其中,行为安全包括:行为的机密性、行为的完整性、行为的真实性等特征。可信计算属于行为安全的中重要组成, 早期可信计算的研究主要以tcg(国际可信计算工作组)组织为主,国内开展可信计算研究的思路基本也是跟着tcg的步伐。
3.可信计算研究中最核心的是tpm硬件芯片,大多数厂家的芯片都以经典的tpm 1.2规范为标准,该规范已经升级到tpm 2.0,也称为“trusted platform module library specification”,目前遵循该规范的新芯片也已经面世。国内通用的是tcm芯片,参考gb/t 29829-2013 《信息安全技术 可信计算密码支撑平台功能与接口规范》。
4.当前国际、国内主要以物理安全芯片为基础,构建可信计算体系。tcm/tpm需要提供如下功能:a) 可信根应具备密码服务功能,并且要满足3个要素:安全的物理运算和存储空间,安全环境下的密码算法引擎以及内置的随机源。
5.b) 可信根应具备对系统启动过程的度量能力,包括对系统基本硬件配置的度量、系统固件的度量、以及系统引导程序的度量等。
6.c) 可信根应先于系统其它部分启动,并在完成度量行为后再将系统控制权交换给原系统,以防止原系统启动过程中旁路可信根。
7.由于当前tpm/tcm均为物理安全芯片的形态,通过spi、usb、pci等接口形式,作为外置设备插在主机上,与主机进行通讯。在实际应用中,存在以下不足:1) 成本方面:计算体系需要额外增加tpm/tcm物理安全芯片,增加了生产制造成本;2) 结构方面:tpm/tcm物理安全芯片,需要改造主机主板,增加了主机生产复杂度和产品的故障率;3) 性能方面:tpm/tcm物理安全芯片,当前主要以单片机为主,更多关注其安全性,芯片本身运算能力不足,限制了其使用场景;4) 通讯速率:tpm/tcm芯片,需要通过spi,usb,pcie等接口与主芯片通讯,通讯接口速率有限,可能会成为性能瓶颈;5) 升级维护:安全芯片已经生产,功能固定,较难做固件升级和功能升级,一旦出现bug,只能更换物理设备。
8.因此,如何构建可信体系并克服上述不足,成为亟待解决的技术问题。


技术实现要素:

9.有鉴于此,本发明旨在基于在arm trustzone技术构建的tee环境中、以可信应用ta的形式,实现tpm/tcm的全部功能,并以此构建可信计算体系,用可信根ta去替代当前物理安全芯片形态的tpm/tcm芯片。
10.一方面,本发明提供一种基于可信计算环境的可信系统,本发明基于可信计算环境的可信计算系统,包括:可信硬件层,包括cpu和rpmb安全存储区;其中,所述cpu包括可信基础固件atf、硬件算法引擎、一次可编程区efuse、安全时钟以及arm trust zone;所述rpmb安全存储区用于提供基于口令认证的安全存储功能;所述可信基础固件atf用于实现安全启动功能,并提供对内存、i/o等系统资源的访问权限配置;tee环境,包括trusted os层和可信根ta层;其中,trusted os用于提供ta间的任务调度机制,并为可信根ta提供加解密算法、安全存储,安全时钟等基础api库;可信根ta用于提供密码模块管理功能、身份标识与认证功能、数据保护功能、完整性度量功能、度量报告功能以及可信策略管理功能;安全通讯层,用于通过cpu提供的安全消息指令,实现ree环境和tee环境之间的状态切换和数据交换;ree环境,从下至上包括可信固件uefi-bios模块、可信引导程序trustedgrub模块、可信内核trusted kernel模块以及可信客户端模块;上述每个模块中均包含一个可信基;可信基通过安全通讯层和tee环境下的可信根ta进行通讯,对本层负责启动加载的对象进行度量启动;可信客户端通过可信基实现对业务应用的度量启动;应用层,包括各类业务应用。
11.进一步地,本发明基于可信计算环境的可信系统中可信根ta层包括:密码模块管理单元,用于状态自检,所有者管理、访问授权管理、属性管理、授权值管理、非易失性存储管理、计数器、时钟和审计;身份标识与认证单元,用于密码模块密钥管理和平台身份密钥管理;数据保护功能单元,用于数据保护操作、密钥管理、密钥协商、密钥迁移、密码服务、传输会话保护和授权协议;完整性度量单元,用于对平台配置寄存器的管理与使用;度量报告单元,用于对可信的度量报告的信息收集、生成和定期清理;可信策略管理单元,用于提供软件的白名单管理以及应用权限列表功能维护。
12.进一步地,本发明基于可信计算环境的可信系统ree环境中,所述可信基础固件atf通过可信根实现对uefi-bios模块的度量启动,将信任链传递给uefi-bios的可信基;uefi-bios通过本模块的可信基,实现对可信引导程序trustgrub的度量启动,将信任链传递给引导程序trustgrub的可信基;可信引导程序trustgrub通过本模块的可信基,实现对可信内核模块trustedkernel的度量启动,将信任链传递给可信内核模块trustedkernel的可信基;可信内核模块trustedkernel通过本模块的可信基,实现对可信客户端的度量启动,将信任链传递给可信客户端的可信基。
13.另一方面,本发明提供一种基于可信计算环境的可信计算方法,包括:步骤s1:ree环境通过可信基获取应用层中各业务应用的原始数据,发送度量请求
命令至安全通讯层;步骤s2:安全通讯层将ree环境的度量请求命令传递至tee环境;步骤s3:tee环境中的可信根ta对度量请求命令进行解析,生成度量结果,并通过安全通讯层将度量结果返回ree环境;步骤s4:ree环境中的可信基根据度量结果,决定是否运行应用层中的业务应用。
14.进一步地,步骤s1中,ree环境通过可信基获取应用层中各业务应用的原始数据,是通过可信基读取被加载模块所在文件或分区实现的。
15.进一步,tee环境中的可信根ta对度量请求命令进行解析,包括:可信根ta从度量请求命令中解析出原始数据,对原始数据进行hash计算,将hash计算结果更新至pcr寄存器的指定槽位,根据pcr寄存器值和基准值比对结果,生成度量结果。
16.进一步地,步骤s3中,根据pcr寄存器值和基准值比对结果,生成度量结果,包括:完整性度量模块读取被加载模块的基准值,与pcr寄存器值进行比对,当比对结果一致,度量结果为允许启动;通知度量报告管理模块,进行度量日志记录。
17.进一步地,步骤s3中,根据pcr寄存器值和基准值比对结果,生成度量结果,还包括:完整性度量模块读取被加载模块的基准值,与pcr寄存器值进行比对,当比对结果不一致,则通过可信策略管理模块,读取可信策略列表,获取对应的度量策略配置,当策略配置为告警,运行启动,记录告警事件到度量日志中;当策略配置为阻断,终止启动,记录阻断事件到度量日志中。
18.第三方面,本发明还提供一种可读存储介质,所述可读存储介质包括执行指令,当电子设备的处理器执行所述执行指令时,所述电子设备执行所述的方法。
19.最后,本发明还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现所述方法的步骤。
20.相对于以物理芯片构建安全体系的方式,本发明基于可信计算环境的可信根ta的实现方法,以ta形式实现物理安全芯片tpm/tcm的全部功能,在达到同样的安全防护级别的同时,具有以下有益效果:1)成本方面:因为省掉了一颗独立的tpm/tcm安全物理芯片,节省了主机的生产制造成本;2)结构方面:tee是内置在cpu中的,在以可信根ta为基础构建可信计算系统时,只需要对整个系统的软件做定制修改,不需要增加额外的物理设备,系统的物理结构简单;3)性能方面:tee和ree分时复用整个cpu的运算能力,而主cpu具有高主频,多核心等特点,其运算能力远高于传统的tpm/tcm安全芯片的运算能力;4)通讯速率:ree与tee通过smc命令和共享内存机制构建的安全通道实现两个环境间的通讯,通讯的速度取决于内存读写速度,其通讯速率率远高于spi,pci,usb等外设的传输速率;5)升级维护:tee/ta的固件可以通过离线、在线的方式实现升级,可方便地添加功能,修复缺陷。
附图说明
21.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
22.图1为根据本发明示例性第一实施例的基于可信计算环境的可信计算系统的框架图。
23.图2为根据本发明示例性第二实施例的基于可信计算环境的可信计算方法的流程图。
24.图3为根据本发明示例性第三实施例的基于可信计算环境的可信计算方法的流程图。
25.图4为根据本发明示例性第四实施例的基于可信计算环境的可信计算方法的流程图。
具体实施方式
26.下面结合附图对本发明实施例进行详细描述。
27.需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合;并且,基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
28.需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
29.以下各实施例中涉及的名词如下:arm trustzone:arm trustzone是arm公司推出的soc及cpu系统范围的安全解决方案;arm trustzone是基于硬件的安全功能,它通过对原有硬件架构进行修改,在处理器层次引入了两个不同权限的保护域——安全世界和普通世界,任何时刻处理器仅在其中的一个环境内运行。同时这两个世界完全是硬件隔离的,并具有不同的权限,正常世界中运行的应用程序或操作系统访问安全世界的资源受到严格的限制,反过来安全世界中运行的程序可以正常访问正常世界中的资源。
30.ree:rich execution environment,设备通用的环境,运行通用的 os(operating system),例如 android,ios系统等tee:trusted execution environment 的缩写,即可信执行环境,tee 的实现是基于 arm trustzone。该环境使用安全的可信操作操作trustos;ta:trustapp可信应用,简称ta,是在可信执行环境下,运行在trustos之上的应用;smc:smc是arm v7开始增加的一条特殊中断指令,ree通过调用smc指令,可以触发
cpu进入tee状态,tee处理完相关请求后,可以通过smc指令,触发cpu再次回到ree。
31.atf:arm trusted firmware,arm的可信系统固件,完成了cpu上电后最基本的资源初始化和系统验证;efuse:一次性可编程存储器,efuse类似于eeprom,在芯片出场之前会被写入信息,在一个芯片中,efuse的容量通常很小,一些芯片efuse只有128bit。efuse可用于存储mem repair的存储修复数据,也可用于存储芯片的信息:如芯片可使用电源电压,芯片的版本号,生产日期。在厂家生产好die后,会进行测试,将芯片的信息写到efuse中去。
32.rpmb:replay protected memory block重放保护内存块,是 emmc 中的一个具有安全特性的分区。emmc 在写入数据到 rpmb 时,会校验数据的合法性,只有指定的 host 才能够写入,同时在读数据时,也提供了签名机制,保证 host 读取到的数据是 rpmb 内部数据,而不是攻击者伪造的数据。
33.uefi-bios:bios,basic input output system,基本输入输出系统,用于加载的计算机系统最基本的程序代码;uefi全称unified extensible firmware interface,即“统一的可扩展固件接口”,是一种详细描述全新类型接口的标准,是适用于电脑的标准固件接口,旨在代替bios(基本输入/输出系统),uefi旨在提高软件互操作性和解决bios的局限性。
34.kernel:计算机操作系统的内核,是一个操作系统的核心。是基于硬件的第一层软件扩充,提供操作系统的最基本的功能,是操作系统工作的基础,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。
35.grub:grand unified bootloader简称“grub”,是一个来自gnu项目的多操作系统启动程序。grub是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。grub可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。
36.图1为根据本发明示例性第一实施例的基于可信计算环境的可信计算系统的框架图,如图1所示,本实施例基于可信计算环境的可信计算系统,包括:可信硬件层,包括cpu和rpmb安全存储区;其中,所述cpu包括可信基础固件atf、硬件算法引擎、一次可编程区efuse、安全时钟以及arm trust zone;所述rpmb安全存储区用于提供基于口令认证的安全存储功能;所述可信基础固件atf用于实现安全启动功能,并提供对内存、i/o等系统资源的访问权限配置;tee环境,包括trusted os层和可信根ta层;其中,trusted os用于提供ta间的任务调度机制,并为可信根ta提供加解密算法、安全存储,安全时钟等基础api库;可信根ta用于提供密码模块管理功能、身份标识与认证功能、数据保护功能、完整性度量功能、度量报告功能以及可信策略管理功能;安全通讯层,用于通过cpu提供的安全消息指令,实现ree环境和tee环境之间的状态切换和数据交换;ree环境,从下至上包括可信固件uefi-bios模块、可信引导程序trustedgrub模块、可信内核trusted kernel模块以及可信客户端模块;上述每个模块中均包含一个可信基;可信基通过安全通讯层和tee环境下的可信根ta进行通讯,对本层负责启动加载的对象进行度量启动;可信客户端通过可信基实现对业务应用的度量启动;
应用层,包括各类业务应用。
37.具体操作时,可以有如下多种优选方式中的任何一种,具体包括:1、可信根ta层包括:密码模块管理单元,用于状态自检,所有者管理、访问授权管理、属性管理、授权值管理、非易失性存储管理、计数器、时钟和审计;身份标识与认证单元,用于密码模块密钥管理和平台身份密钥管理;数据保护功能单元,用于数据保护操作、密钥管理、密钥协商、密钥迁移、密码服务、传输会话保护和授权协议;完整性度量单元,用于对平台配置寄存器的管理与使用;度量报告单元,用于对可信的度量报告的信息收集、生成和定期清理;可信策略管理单元,用于提供软件的白名单管理以及应用权限列表功能维护。
38.2、ree环境中,所述可信基础固件atf通过可信根实现对uefi-bios模块的度量启动,将信任链传递给uefi-bios的可信基;uefi-bios通过本模块的可信基,实现对可信引导程序trustgrub的度量启动,将信任链传递给引导程序trustgrub的可信基;可信引导程序trustgrub通过本模块的可信基,实现对可信内核模块trustedkernel的度量启动,将信任链传递给可信内核模块trustedkernel的可信基;可信内核模块trustedkernel通过本模块的可信基,实现对可信客户端的度量启动,将信任链传递给可信客户端的可信基。
39.图2为根据本发明示例性第二实施例的基于可信计算环境的可信计算方法的流程图,如图2所示,本实施例的方法,包括:步骤s1:ree环境通过可信基获取应用层中各业务应用的原始数据,发送度量请求命令至安全通讯层;步骤s2:安全通讯层将ree环境的度量请求命令传递至tee环境;步骤s3:tee环境中的可信根ta对度量请求命令进行解析,生成度量结果,并通过安全通讯层将度量结果返回ree环境;步骤s4:ree环境中的可信基根据度量结果,决定是否运行应用层中的业务应用。
40.具体的,步骤s1中,ree环境通过可信基获取应用层中各业务应用的原始数据,是通过可信基读取被加载模块所在文件或分区实现的。
41.步骤s3中,tee环境中的可信根ta对度量请求命令进行解析,包括:可信根ta从度量请求命令中解析出原始数据,对原始数据进行hash计算,将hash计算结果更新至pcr寄存器的指定槽位,根据pcr寄存器值和基准值比对结果,生成度量结果。
42.步骤s3中,根据pcr寄存器值和基准值比对结果,生成度量结果,包括:完整性度量模块读取被加载模块的基准值,与pcr寄存器值进行比对,当比对结果一致,度量结果为允许启动;通知度量报告管理模块,进行度量日志记录。
43.步骤s3中,根据pcr寄存器值和基准值比对结果,生成度量结果,还包括:完整性度量模块读取被加载模块的基准值,与pcr寄存器值进行比对,当比对结果不一致,则通过可信策略管理模块,读取可信策略列表,获取对应的度量策略配置,当策略配置为告警,运行启动,记录告警事件到度量日志中;当策略配置为阻断,终止启动,记录阻断事件到度量日志中。
44.图3为根据本发明示例性第三实施例的基于可信计算环境的可信计算方法的流程
图。图3为图2所示实施例的优选实施方式。如图3所示,该方法包括:1、cpu上电后,加载cpu内部固化的可信基础固件atf模块,atf实现安全自检,自检通过后,通过验证trustos的镜像签名,安全启动trusted os;2、trusted os对cpu和rpmb安全存储区的初始化,完成对可信基础固件atf、硬件算法引擎、一次可编程区efuse、安全时钟、arm trust zonerpmb以及安全存储区的初始化;通过验证可信根ta的签名,安全启动可信根ta;3、可信根ta对平台扩展寄存器pcr进行复位,完成可信根ta自身的状态自检,准备接收和处理来自ree侧的度量请求命令;4、可信根ta完成自身各模块的初始化后,可信基础固件atf通过可信根ta实现对uefi-bios模块的度量启动,将信任链传递给uefi-bios的可信基;5、uefi-bios通过本模块的可信基,实现对可信引导程序trustgrub的度量启动,将信任链传递给引导程序trustgrub的可信基;6、可信引导程序trustgrub通过本模块的可信基,实现对可信内核模块trustedkernel的度量启动,将信任链传递给可信内核模块trustedkernel的可信基;7、可信内核模块trustedkernel通过本模块的可信基,实现对可信客户端的度量启动,将信任链传递给可信客户端的可信基;8、可信客户端通过本模块的可信基,实现对业务应用的度量启动。
45.至此,整个系统的信任链建立完毕。
46.图4为根据本发明示例性第四实施例的基于可信计算环境的可信计算方法的流程图。图4为图2和图3所示实施例的优选实施方式。如图4所示,可信基对被加载对象的度量启动,包括:1、可信基读取被加载对象的镜像或文件;发送度量请求命令给可信根ta;2、可信根ta的完整性度量模块对原始数据进行hash运算,将结果写入平台扩展寄存器pcr的指定槽位;3、完整性度量模块读取被加载模块的基准值,与pcr值进行比对,如果比对结果一致,则度量结果为:允许启动;通知度量报告管理模块,进行度量日志记录,并返回度量结果至可信基;4、如果比对结果不一致,则通过可信策略管理模块,读取可信策略列表,获取对应的度量策略配置,如果策略配置为告警,则运行启动,同时记录告警事件到度量日志中;如果策略配置为阻断,则终止启动,同时记录告警事件到度量日志中;返回度量结果给可信基;5、可信基根据允许或阻断的度量结果,决定继续或终止系统启动流程。
47.本发明还提供一种可读存储介质,所述可读存储介质包括执行指令,当电子设备的处理器执行所述执行指令时,所述电子设备执行所述的方法。
48.本发明还提供一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现所述方法的步骤。
49.以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
完整全部详细技术资料下载
当前第1页 1  2 
相关技术
  • 图形学习和自动行为协调平台的...
  • 一种面向企业设计资源的零件特...
  • 一种基于深度学习的红外视频畸...
  • 一种目标物体的识别处理方法、...
  • 一种模型训练方法、装置及电子...
  • 一种具有拆卸式滤网的5G边缘...
  • 声波参数曲线预测、测井曲线预...
  • 基于高空风资源影响的云层迁移...
  • 海洋环境数据的处理方法、装置...
  • 一种多芯片驱动方法、装置、设...
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1

4617作文网淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男子给前妻转账 现任妻子起诉要回网友建议重庆地铁不准乘客携带菜筐月嫂回应掌掴婴儿是在赶虫子重庆警方辟谣“男子杀人焚尸”国产伟哥去年销售近13亿新的一天从800个哈欠开始男孩疑遭霸凌 家长讨说法被踢出群高中生被打伤下体休学 邯郸通报男子持台球杆殴打2名女店员被抓19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警两大学生合买彩票中奖一人不认账德国打算提及普京时仅用姓名山西省委原副书记商黎光被逮捕武汉大学樱花即将进入盛花期今日春分张家界的山上“长”满了韩国人?特朗普谈“凯特王妃P图照”王树国3次鞠躬告别西交大师生白宫:哈马斯三号人物被杀代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了房客欠租失踪 房东直发愁倪萍分享减重40斤方法“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火手机成瘾是影响睡眠质量重要因素考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼网友洛杉矶偶遇贾玲呼北高速交通事故已致14人死亡西双版纳热带植物园回应蜉蝣大爆发男孩8年未见母亲被告知被遗忘张立群任西安交通大学校长恒大被罚41.75亿到底怎么缴沈阳一轿车冲入人行道致3死2伤奥运男篮美国塞尔维亚同组周杰伦一审败诉网易国标起草人:淀粉肠是低配版火腿肠外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万杨倩无缘巴黎奥运男子被猫抓伤后确诊“猫抓病”春分“立蛋”成功率更高?记者:伊万改变了国足氛围奥巴马现身唐宁街 黑色着装引猜测

4617作文网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化