一种可信系统的制作方法

文档序号:17664056发布日期:2019-05-15 22:35阅读:168来源:国知局

本发明属于可信计算领域,尤其涉及一种可信系统。



背景技术:

当前很多实际的安全操作系统已经被设计和开发出来。其中,最为重要的是基于flask体系结构的动态策略安全操作系统,以及随后出现的迄今最有影响力的安全操作系统securitylinux和它的实现机制lsm(linuxsecuritymodle)。但是上述系统安全方式全部是建立在被动检测的基础上的;操作系统以及开放的中央处理器一旦被入侵,整个系统的安全性则无法得到保障。安全系统首先可以做到自主可控,这是一个基本的条件,自主可控的软硬件平台可以杜绝了x86系列计算机的安全后门,但是安全防护技术仍然十分薄弱。以可信技术为支撑的安全可控软硬件技术正逐步发展起来,已成为个人终端抵御外界入侵的天然屏障。普通的平台只是提供了一个硬件基础,硬件、bios、系统易被非法篡改。



技术实现要素:

为了解决现有技术中的上述问题,本发明通过固件的方式实现可信平台控制模块;在已有计算机架构中,通过pcie接口接入可信平台控制模块就能够对整个系统进行主动的可信验证,从而大大的提高了整个系统的安全性;且这样的实现方式扩展性很强、制造成本低。基于此,本发明提出了一种可信系统,包括:中央处理器、可信平台控制模块、扩展度量模块emm、启动存储器、控制器、可信平台主板;所述可信系统的组件均设置于所述可信平台主板上;中央处理器和可信平台控制模块通过系统总线连接到控制器。

进一步的,所述系统还包括:随机存取存储器、时序控制电路、输入输出接口。

进一步的,控制器使得中央处理器和可信平台控制模块同步上电;在上电之前,通过控制器设置使得限制中央处理器启动而实现可信平台控制模块优先启动;方式二:可信平台控制模块采用微控制单元的方式封装形成,设置使得可信平台控制模块的优先级高于中央处理器。

进一步的,可信平台控制模块可靠地读取启动存储器代码的初始引导模块,可信平台控制模块中的度量根模块rtm对启动存储器代码中的初始引导模块进行完整性度量,并将度量结果保存在可信平台控制模块的存储空间中。

进一步的,所述扩展度量模块emm用于和度量根模块rtm配合以进行完整性度量,从而实现信任链传递。

进一步的,所述中央处理器用于完成可信系统的计算任务。

进一步的,所述中央处理器为多核处理器。

进一步的,控制器对中央处理器来自可信平台控制模块的总线访问请求进行仲裁。

进一步的,所述可信平台控制模块对总线的访问优先级高于所述中央处理器。

进一步的,所述总线包括控制总线和数据总线。

本发明的有益效果包括:通过固件的方式实现可信平台控制模块;在已有计算机架构中,通过pcie接口接入可信平台控制模块就能够对整个系统进行主动的可信验证,从而大大的提高了整个系统的安全性;且这样的实现方式扩展性很强、制造成本低。

【附图说明】

此处所说明的附图是用来提供对本发明的进一步理解,构成本申请的一部分,但并不构成对本发明的不当限定,在附图中:

图1是本发明的可信系统的架构示意图。

图2是本发明的tpcm接入可信系统的连接示意图。

图3是本发明的可信系统的硬件结构示意图。

【具体实施方式】

下面将结合附图以及具体实施例来详细说明本发明,其中的示意性实施例以及说明仅用来解释本发明,但并不作为对本发明的限定。

如图1所示,对本发明所应用的一种可信系统进行详细说明,所述系统包括:中央处理器、可信平台控制模块(tpcm)、扩展度量模块emm(emm1、emm2、emm3)、启动存储器、控制器、可信平台主板;所述可信系统的组件均设置于所述可信平台主板上;中央处理器和可信平台控制模块通过系统总线连接到控制器;

所述可信系统还包括:随机存取存储器、时序控制电路、输入输出接口;

优选的:控制器控制使得在中央处理器执行启动存储器代码之前,可信平台控制模块先启动,可信平台控制模块可靠地读取启动存储器代码的初始引导模块,可信平台控制模块中的度量根模块rtm对启动存储器代码中的初始引导模块进行完整性度量,并将度量结果保存在可信平台控制模块的存储空间中;

可替换的:所述系统总线为pcie总线;方式一:控制器使得中央处理器和可信平台控制模块同步上电;在上电之前,通过控制器设置使得限制中央处理器启动而实现可信平台控制模块优先启动;方式二:可信平台控制模块采用微控制单元的方式封装形成,设置使得可信平台控制模块的优先级高于中央处理器;

优选的:所述控制器设置为bmccpld电路控制方式;

所述扩展度量模块emm用于和度量根模块rtm配合以进行完整性度量,从而实现信任链传递;

所述中央处理器用于完成可信系统的计算任务;优选的:所述中央处理器为多核处理器;

优选的:总线包括控制总线和数据总线;

可信平台控制模块tpcm包括可信平台控制芯片、可信平台控制固件、可信平台控制支撑软件、辅助工具等;所述可信平台控制芯片为计算芯片,包括内部处理单元、sram,还包括spi、gpio等用于接入可信平台主板;构建于可信平台控制芯片上的可信平台控制固件为嵌入式/片上操作系统,用于对主动度量控制等任务进行调度和执行,从而实现整个系统的可信;所述可信平台控制支撑软件运行于嵌入式/片上操作系统内核层、提供软件层面的交互接口,可信平台控制固件通过可信平台控制支撑软件和中央处理器操作系统内的可信软件基进行数据交互;所述辅助工具包括调试设备、固件刷写、固件签名等;

优选的:所述可信平台控制固件包括指令处理模块、初始化模块、输入输出驱动模块、可信功能模块、主动度量模块;其中:指令处理模块负责对外部实体发送的指令进行解析和执行;初始化模块负责模块初始化、模块自检、平台状态初始化等;输入输出驱动模块主要是模块内输入输出的驱动函数库;主动度量模块负责对bootrom的主动度量;可信功能模块主要提供基本的可信支撑;

优选的:所述可信平台控制模块最少但不限于控制以下输入输出接口的开启或关闭:usb、ps/2、pcie、pci、sata、串口、网络接口;

所述控制器用于对可信平台主板上的组件进行控制;包括中央处理器和可信平台控制模块的启动顺序、权限高低等;

所述启动存储器用于存储中央处理器启动所需代码以及保存部分扩展度量模块代码;优选的:所述启动所需代码为mbr、bootloader等;

优选的:所述扩展度量模块以rom的形式实现,所述扩展度量模块中保存了静态度量中涉及的度量代码;

优选的:所述扩展度量模块包含2个独立的物理部分;一部分位于启动存储器中,另一部分独立的接入控制器;其中:所述一部分的启动顺序早于所述另一部分;

如图2所示,可信平台控制模块通过pcie总线接入可信系统的主板,并通过pcie总线和设置于中央处理器上的操作系统中的可信软件基tsb进行命令和数据交互;通过多路复用器对gpio/spi/i2c进行复用的方式,实现对控制器和/或bios的度量以及与控制器进行连接;

优选的:可信平台控制模块tpcm以可插拔卡的方式接入可信系统的主板;在基于可信平台控制模块的动态度量过程中,可信平台控制模块通过可信软件基tsb获取的监测数据对中央处理器及其操作系统、应用程序依次的进行动态度量;

优选的:可信平台控制模块内部的存储空间是可信平台控制模块自身可见的、中央处理器内部的存储空间是中央处理器自身可见的;可信平台控制模块和中央处理器通过总线共享可信平台主板上的只读、可读写存储器;

优选的:可信平台主板上的只读、可读写存储器通过地址映射的方式被映射到连续的地址空间中;所述部分连续的地址空间对中央处理器为可见的,而另一部分连续的地址空间对中央处理器为不可见的;通过这样的方式使得中央处理器和可信平台控制模块之间存储隔离;

优选的:所述可信平台控制模块具有高于中央处理器的访问权限,所述可信平台控制模块能够只读的访问中央处理器的存储空间;优选的:位于主板上的控制器对所述中央处理器和可信平台控制模块发送的读写指令进行仲裁;

优选的:所述可信平台控制模块以固态硬盘的形式实现;

可信平台控制模块通过只读的访问中央处理器的存储空间以获取主动度量所需的数据,可信平台控制模块基于度量策略对所述数据进行度量,并将度量结果保存在所述可信平台控制模块的存储空间中;中央处理器不能访问所述可信平台控制模块的系统存储区;通过这样的方式,保证了可信平台控制模块的独立性,进而保证了其安全性;

优选的:主动度量所需的数据被存放在可信平台控制模块的用户数据存储区中,所述中央处理器和可信平台控制模块基于所述可信平台控制模块的用户数据存储区进行数据交互,从而进行基于主板的模块间通信;

优选的:中央处理器和可信平台控制模块通过地址映射的共享存储空间进行数据交互;所述共享存储空间被映射为对中央处理器和可信平台控制模块均可见;

中央处理器和可信平台控制模块的存储空间均包含系统存储区和用户数据存储区,系统存储区对硬盘用户(使用标准磁盘存储功能的用户)不可见,且采用多种安全存储密钥对其中内容实现分块保护;

用户数据存储区中保存的用户数据为硬盘用户行为产生的数据,使用和区域(用户)对应的介质密钥m-key来进行数据加解密;优选的:用户存储区包含一个或多个区域,每个区域对应一个或者多个用户;每个区域有其对应的介质密钥;通过这样的方式实现了固态硬盘对于用户的物理独立,从而保证了用户存储空间的安全性;

所述采用多种安全存储密钥对其中内容实现分块保护,具体为:可信平台控制模块的系统存储区中包含可信平台控制固件存储区、固态硬盘固件存储区、敏感数据存储区、策略存储区、nv存储区、日志存储区、tsb程序存储区、oprom存储区;

所述可信平台控制固件存储区使用r-key进行加密;

所述固态硬盘固件使用s-key进行加密,s-key必须在可信固件和安全信息成功加载过后,才能进行使用;

所述敏感数据存储区间主要保存背书密钥(ek)及存储根密钥(smk)等关键数据,并且受r-key密钥的加密保护;

所述策略存储区为不可篡改区域,用于存储可信平台控制模块侧可信软件基下发的配置策略;所述配置策略用于对可信平台控制模块进行配置;

所述nv存储区即为非易失性存储区,可以用来存储用于进行度量和加密的证书和密钥;

所述日志存储区用于存储完整性度量日志和命令操作记录信息;

所述oprom存储区用来存储扩展rom程序;

如图3所示,可信系统的硬件结构中包含:中央处理器、主机接口hif、片上存储器、内存等通过总线连接;可信平台控制模块tpcm通过主机接口hif接入总线;

优选的:所述主机接口hif为pcie主机接口;

优选的:所述可信系统还包括spi负责为tcm提供低速数据访问接口,主要用于传输度量信息、核心数据等;smx负责提供国密算法计算能力,主要包括sm2/sm3/sm4三类算法;otp负责存储硬件配置信息和芯片唯一的根密钥以及用于验签的部分公钥数据;cpu负责运行业务逻辑控制的执行;gpio负责向外部发出控制信号与状态信号;ldpc负责提供数据纠错恢复能力,提升系统可靠性;ddr连接外部sdram,扩大了平台的ram容量;timer定时器对片内时钟脉冲计数;onchipmemory片上内存,主要用于缓存中转数据和内部固件使用;dma通过专用总线将存储器与具有dma能力的外设连接起来;raid负责对flash上的数据提供更高级别保护,提升系统可靠性;rom主要包括量产时候的首次验签功能和量产过后的系统安全引导功能;trng真随机数发生器,用于随机生成一个随机数。主要用于密钥生成应用;i2c负责为tpcm提供低速数据访问接口,主要用于自定义命令交互;

优选的:介质密钥m-key由加密密钥en-key保护;加密密钥en-key必须在用户pin码和安全信息全部匹配正确后才能正确获取;安全信息通过根密钥r-key进行加密保护。通过这样的一套机制,保证每一个用户都有独立的加密密钥en-key和介质密钥m-key,同时又受到整套密钥管理体系和加密系统的保护;

在本发明所提供的几个实施例中,应该理解到,所揭露的方法和终端,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

另外,在不发生矛盾的情况下,上述几个实施例中的技术方案可以相互组合和替换。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个模块或装置也可以由一个模块或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1