一种嵌入式平台的可信处理模块的制作方法

文档序号:12864120阅读:177来源:国知局
一种嵌入式平台的可信处理模块的制作方法与工艺

本发明涉及一种嵌入式平台的可信方案,特别是一种基于可信根的信任链传递与嵌入式平台启动流程相结合的嵌入式平台安全启动的控制原理和流程。



背景技术:

嵌入式系统在当前社会各个领域发挥着重要作用,是应用最广泛的一项技术。目前现有嵌入式计算机系统的主要处理芯片、操作系统和应用软件大多依赖于进口,芯片的未知“后门”,操作系统与应用软件的“漏洞”众人皆知。传统的信息安全解决方案只注重被动防御,忽略了问题产生的根本原因,使得安全问题始终无法得到合理解决。

可信计算技术在这种环境下应运而生,它在硬件架构平台中植入安全芯片作为可信的根源,通过信任链的传递使安全可信要素覆盖整个架构平台。在完整的可信计算中,系统从启动到运行的所有环节包括:上电引导程序、系统引导程序、系统程序、驱动程序、应用服务程序等,均需要严格保护并通过度量验证机制完成系统上电的信任链传递。

但是,现有的嵌入式处理环境中,要求系统的上电时间需要满足一定的要求,如果可信启动所有环节全部完成度量,势必会增加启动时间的开销,影响用户的使用需求。



技术实现要素:

本发明的目的在于提供一种嵌入式太平可信处理模块,用于解决现有技术中存在的嵌入式启动安全问题,以及安全度量时间过长的问题。

本发明一种嵌入式平台可信处理模块,其中,包括:嵌入式处理平台,用于作为嵌入式平台可信处理模块的主控单元;可信处理模块,用于控制嵌入式处理平台的可信处理,以保证嵌入式处理平台的安全启动;tpm模块,用于预存储嵌入式处理平台启动各阶段的可信根基准值,进行对启动镜像的杂凑运算,得到当前镜像的可信根计算值,并将结果发送给可信处理模块;度量日志记录模块,用于物理记录可信启动过程中的错误信息及嵌入式处理平台启动完成后的工作状态信息,由可信处理模块控制读写;电源模块,用于给嵌入式处理平台提供各种电压和时序,由可信处理模块控制;程序存储模块,用于存储嵌入式处理平台启动镜像的物理器件,保存嵌入式处理平台各启动阶段的镜像文件,由可信处理模块控制。

根据本发明的嵌入式平台可信处理模块的一实施例,其中,嵌入式处理平台包括:心跳信号产生模块,用于在嵌入式处理平台成功启动后产生一定频率的心跳信号,表示嵌入式处理平台的处理器已经正常启动并开始工作;spi通信模块,用于嵌入式处理平台成功启动后,与可信处理模块进行简单的数据通信,以传输状态数据及简单命令;处理模块:用于对嵌入式平台可信处理模块进行控制。

根据本发明的嵌入式平台可信处理模块的一实施例,其中,可信处理模块包括:主控模块,用于对可信处理模块内部各模块间进行管理和信息处理,协调各模块工作;spi通信模块,用于和嵌入式处理平台之间进行spi数据通信,通信内容包括状态数据及简单命令传输;日志记录模块,用于接收来自于可信处理模块与嵌入式处理平台的数据,并控制外部记录flash进行日志记录;主处理器心跳检测模块,用于检测嵌入式处理平台产生的心跳信号;程序读写控制模块,用于对嵌入式处理平台的镜像进行读写操作,并根据信任链管理模块设置读写权限,以对嵌入式处理平台的上电控制管理;信任链管理模块,用于对各启动阶段的镜像进行启动授权;可信根比较模块,用于读取tpm模块中的预存储的可信根基准值与经过杂凑运算后得到的计算值进行比较,并将结果反馈给主控模块;电源控制模块,用于控制电源模块,给嵌入式处理平台提供对应的时序。

本发明提供了一种将信任链传递与嵌入式平台启动流程相结合的主动度量方案,该方案通过对嵌入式处理平台不同启动阶段的主动度量,得到可信根值,然后授予不同启动程序控制权,最终实现系统的安全启动。

附图说明

图1所示为本发明一种嵌入式平台可信处理模块的示意图;

图2所示为嵌入式处理平台的模块示意图;

图3所示为可信处理模块的示意图;

图4为可信处理模块整体工作流程;

图5为可信处理模块内部分状态转移图

图6为本发明可信处理模块内部分模块工作流程图;

图7为本发明实施例硬件结构图;

图8为本发明实施例电路工作流程图;

附图标记:

1嵌入式处理平台2可信处理模块

3tpm模块4度量日志记录模块

5电源模块6程序存储模块

11心跳信号产生模块12spi通信模块

13其它模块

21主控模块22spi通信模块

23日志记录模块24主处理器心跳检测模块

25程序读写控制模块26信任链管理模块

27可信根比较模块28电源控制模块

s0~s7:本发明中可信处理模块状态转移图

s10~s70:本发明可信处理模块施行步骤

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

图1所示为本发明一种嵌入式平台可信处理模块的示意图,如图1所示,本发明一种嵌入式平台可信处理模块包括:嵌入式处理平台1:是嵌入式系统的核心,作为整个嵌入式系统的主要控制单元,一般是arm处理器或arm+fpga的嵌入式核心,在本发明中用来表示普遍应用的嵌入式处理器。可信处理模块2:是本发明的核心处理单元,用于控制嵌入式处理平台1的可信处理,保证嵌入式处理平台1可以安全启动。tpm模块3:用于预存储嵌入式处理平台1启动各阶段的可信根基准值,同时进行对启动镜像的杂凑运算,得到当前镜像的可信根计算值,并将结果发送给可信处理模块2。度量日志记录模块4:用于物理记录可信启动过程中的错误信息及嵌入式处理平台1启动完成后的工作状态信息,由可信处理模块2中的专门模块控制读写,其一般由简单的存储器件构成,如eeprom或flash芯片。电源模块5:用于给嵌入式处理平台1提供各种电压和时序,由可信处理模块2中的专门控制模块控制。程序存储模块6:用于存储嵌入式处理平台1启动镜像的物理器件,一般是flash器件,其中保存着嵌入式处理平台1各启动阶段的镜像文件,其读写由可信处理模块2中的专门功能模块控制。

图2所示为嵌入式处理平台的模块示意图,如图2所示,嵌入式处理平台1还包括:心跳信号产生模块11:用来在嵌入式处理平台1成功启动后产生一定频率的心跳信号,表示嵌入式处理平台1的处理器已经正常启动并开始工作。spi通信模块12:用于嵌入式处理平台1成功启动后,与可信处理模块进行简单的数据通信,可用来传输状态数据及简单命令。其它模块13:用来实现嵌入式处理平台1的其他功能,包括读取上电启动引脚、读取启动镜像等其他功能,以及与启动无关的所有功能。

图3所示为可信处理模块的示意图,如图3所示,可信处理模块2包括:主控模块21:用于对可信处理模块2内部各模块间进行管理和信息处理,协调各模块工作。spi通信模块22:用于和嵌入式处理平台1之间进行spi数据通信,通信内容包括状态数据及简单命令传输。日志记录模块23:用于接收来自于可信处理模块2与嵌入式处理平台1的数据,然后控制外部记录flash进行日志记录。主处理器心跳检测模块24:用于检测嵌入式处理平台1产生的心跳信号。程序读写控制模块25:用于对嵌入式处理平台1的镜像进行读写操作,并根据信任链管理模块26设置读写权限,实现对嵌入式处理平台1的上电控制管理。信任链管理模块26:用于对各启动阶段的镜像进行启动授权。可信根比较模块27:用于读取tpm模块3中的预存储的可信根基准值与经过杂凑运算后得到的计算值进行比较,并将结果反馈给主控模块21。电源控制模块28:用于控制电源模块5,给嵌入式处理平台1提供对应的时序,实现上电控制。

图4为可信处理模块整体工作流程,如图4所示,本发明嵌入式平台可信处理模块可信处理流程主要为:

(1)系统上电复位,可信处理模块芯片先上电,嵌入式处理平台不上电

(2)读取对嵌入式处理平台的第一阶段代码,并进行度量

(3)根据度量结果执行下一步操作:如果度量错误,则记录错误日志报警,并停止上电操作;如果度量正确,则授予当前启动代码启动权限,并进行下一阶段度量

(4)重复进行(2)~(3)步,直到所有启动阶段的启动镜像完成度量,并完成对应的授权

(5)所有启动阶段的镜像完成度量并授予启动权限后,由电源控制模块发出控制信息完成对嵌入式处理平台的上电启动,之后嵌入式处理平台读取相应镜像,完成启动

以下结合工作流程详细说明本发明主要模块可信处理模块工作状态

可信处理模块上电状态s0:表示可信处理模块初始上电状态,此状态下整个系统只有可信处理模块及其相应支持电路上电,并完成可信处理模块的初始化

程序读写控制模块的读取镜像状态s1:表示程序读取模块在主控模块控制下,对不同启动阶段的启动镜像进行读取,并将读取结果直接送到tpm单元

可信根比较模块比较状态s2:表示可信处理模块读取tpm中记录的可信根基准值,并将杂凑运算的运算值进行比较的

信任链管理模块状态s3:经过比较运算值与基准值后,对当前启动阶段代码授予启动权限

电源控制模块状态s4:在对所有阶段启动镜像完成度量后,电源控制模块发出上电信号,控制电源模块产生对应的上电时序

主处理器心跳检测模块状态s5:在完成对主处理器的上电后,由主处理器心跳检测模块检测主处理器是否有心跳信号产生,如果没有,则跳转到s4状态重新进行上电,如果上电正常启动,则进入下一状态

进行spi通信状态s6:在嵌入式处理平台正常上电工作后,其与可信处理模块之间进行spi数据通信,主要传输一些工作状态数据等,传输的状态及一些运行数据将被记录到日志记录模块中

日志记录模块状态s7:用来记录度量信息数据或者工作状态信息,数据都来自于主控模块

s0~s7这8个工作状态,由主控模块进行状态跳转控制,主控模块依据不同的模块反馈信号,实现不同模块的工作状态切换,图5为可信处理模块内部分状态转移图。

图6为本发明可信处理模块内部分模块工作流程,如图6所示,本发明还提供一种嵌入式平台系统可信启动的实现方法,包括:

程序读写控制模块读取步骤s10:用于读取嵌入式处理平台的各阶段启动镜像,将读出的镜像传入tpm进行杂凑运算,或者依据启动权限传送到嵌入式处理平台,具体传入哪个位置,由主控制器控制实现

可信根比较步骤s20:用于将进行完杂凑运算的可信根计算值与tpm中预先存储的可信根基准值比较

信任链管理步骤s30:用于根据可信根比较结果,授予当前启动阶段启动代码的启动权限

电源控制步骤s40:根据所有启动阶段的镜像文件度量结果,发出是否上电启动,以及产生什么时序的控制信号,控制电源模块产生对应时序,完成对嵌入式处理平台的上电

主处理器心跳信号检测步骤s50:用于给主处理器完成上电后,检测其是否发出心跳信号,进而判断处理器是否正常启动工作

spi通信步骤s60:用于主处理器开始工作后,主处理器与可信处理模块进行数据通信,通信的内容包括工作状态,以及其他简单的命令交互数据

日志记录步骤s70:用于记录启动阶段和主处理器工作阶段的工作和启动日志

其中,程序读写控制模块读取步骤s10包括:

可信度量程序读写:用于可信度量阶段,将启动镜像从程序存储模块读出,然后送入tpm进行杂凑运算

嵌入式处理平台上电镜像读取:用于可信处理过程完成后,读出启动镜像到嵌入式处理平台,使其完成启动过程

其中,可信根比较步骤s20包括:

比较步骤:完成杂凑运算的可信根计算值与基准值的比较

日志产生步骤:根据比较结果,产生度量日志

其中,主处理器心跳信号检测步骤s50包括:

心跳检测步骤:检测启动后的主处理器是否有一定频率的心跳信号发出

检测后处理步骤:用来进行心跳检测后的操作,如果检测到信号,则正常工作,不采取操作;如果没检测到信号,则向主控模块发出信号,使其控制电源控制模块,重新产生上电时序,使主处理器二次启动

其中日志记录步骤s70包括:

度量日志记录:在启动可信度量阶段,记录每个启动镜像的度量结果日志

工作日志记录:在主处理器的工作阶段,记录通过spi协议传过来的工作状态日志

图7所示为发明一种嵌入式平台可信处理模块的另一实施例的示意图,如图7所示,为本发明的实施示例,该示例表示系统的硬件构成,主要包括:zynq芯片作为嵌入式处理平台、actel芯片作为可信处理模块、启动flash作为程序存储模块、jw172作为tpm单元、日志flash作为日志存储单元、主电源组件作为电源模块,这个硬件系统是完全按照本发明的方法对应设计的。

其中,启动flash中存放这zynq平台ps启动的fsbl、uboot、os以及pl端配置的bitstream文件。

系统上电后,actel控制器作为完整性度量可信根,tpm作为完整性报告可信根,通过辅助电源aux先开始工作,并控制复位输出信号和电源使能信号,使zynq处理器处于复位状态。由actel控制器发起主动度量过程。

主动度量过程,即在系统上电后,actel控制器首先掌握系统的控制权,对zynq平台启动所需的第一个软件fsbl(firststagebootloader)进行完整性度量,保证其安全可信,然后再将系统的控制权交给该软件,开始启动系统后续的软件流程。

其中,图8为本发明实施例电路工作流程图,如图8所示,工作流程大致如下:

(1)平台上电后,actel控制器取设备的主控权,控制主处理器zynq处于断电状态;

(2)actel控制器读取主处理器启动所需的启动数据文件fsbl,根据文件大小,调用tpm处理器提供的sm3杂凑算法分包进行杂凑运算获取最终的杂凑值;

(3)将此次计算得到的杂凑值与actel控制器本地预存的fsbl文件的基准值进行比较;

(4)若一致,则主动度量通过,将设备控制权交给fsbl启动软件,完成信任链的传递;若不同,则主动度量失败,在日志flash存储器中记录审计日志,并对外报警。

主动度量完成后,actel释放控制权交还给zynq控制器,同时控制上电使能信号使zynq处理器上电,并结束复位。zynq处理器通过spi总线接口加载启动flash中的有效数据,并正常运行具体的业务功能。

综上所述,本发明提供的嵌入式平台的安全可信方案及其实现方法是可信计算、安全启动的一个创新,结合嵌入式平台启动特点,与信任链传递模型,建立对启动文件系统的分阶段度量及验证授权,最终使嵌入式平台安全上电启动。该方法即保证了嵌入式系统启动的安全性,又能满足嵌入式系统对上电时间的约束。同时具有上电检测、二次启动、日志记录报警等功能,保证了嵌入式系统主处理器的可靠启动,以及对未经安全验证的启动镜像的警报和检测记录。

总之,本发明中的主动度量可信启动方法,及其工作原理,能对现有的可信计算及安全启动方法有一定的改善作用,该方法可以广泛的应用到对安全性要求较高的嵌入式设备中,适用于多种工作环境满足不同的工作需求。具有较高的技术和应用价值。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

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