可信根构建方法及应用技术

技术编号:26653236 阅读:37 留言:0更新日期:2020-12-09 00:56
本发明专利技术公开了基于熔断机制和TPM芯片的硬件可信根构建方法及其应用,其中硬件可信根构建方法包括:1、根据公钥密码算法生成第一公钥;2、对第一公钥进行hash运算,得到第一公钥hash值;3、将第一公钥hash值烧入芯片的熔断区域;4、对芯片操作系统的内核镜像和初始文件系统进行拼接,生成第一拼接文件,并计算其hash值,采用第一私钥对第一拼接文件的hash值进行签名,生成签名文件;5、将第一拼接文件、第一公钥、签名文件拼接为第二拼接文件,将所述第二拼接文件作为系统镜像烧入芯片。该方法能够解决工控终端硬件可信根构建难题,保障整个工控终端可信计算的安全可信。

【技术实现步骤摘要】
可信根构建方法及应用
本专利技术属于工控安全可信计算
,具体涉及基于熔断机制和TPM芯片的可信根构建方法及其应用。
技术介绍
工控系统作为网络战的主要攻击目标,始终处在网络打击破坏的前沿。我国以电力为代表的工控系统现有安全防护主要侧重边界防护,工控系统本体的安全防护手段不足,无法有效应对不断涌现的各类高隐蔽APT攻击,而物联网等新技术的应用又使攻击面进一步扩大。同时,网络安全法、等级保护2.0对自主可控、安全可信提出了新的要求。因此,亟需开展适应工控系统的主动防护技术研究。在网络安全防护领域,以可信计算为代表的主动防御技术已有一定的发展,但在嵌入式工控领域,其面临不少挑战:(1)本体安全形势严峻,可信计算等主动防御技术被明确写入等保要求,现有的TPM(TrustedPlatformModule)及TrustZone等方案缺乏主动度量机制,可信根构建不完备,属于CPU调用的从设备,没有解决硬件可信根构建的难题,而一旦硬件可信根不成立,整个后续的可信机制都难以保障,因此硬件可信根构建是可信计算的基础。以TPCM为代表的可信计算,方案完备,但只适应于新设计的硬件主版,无法解决大量存量的、不支持TPCM的工控终端的硬件可信根构建问题;(2)工控系统硬件资源匮乏,嵌入式操作系统只有几兆大小,传统可信计算方案TSS(TrustedSoftwareStack)过于庞大,难以实施在嵌入式操作系统中。
技术实现思路
专利技术目的:本专利技术旨在提供一种硬件可信根构建方法,该方法基于硬件熔断机制和TPM可信芯片,能够解决工控终端硬件可信根构建难题,保障整个工控终端可信计算的安全可信。技术方案:本专利技术一方面公开了一种硬件可信根构建方法,包括:A1、根据公钥密码算法生成第一公钥;A2、对第一公钥进行hash运算,得到第一公钥hash值;A3、将第一公钥hash值烧入芯片的熔断区域;A4、对芯片操作系统的内核镜像和初始文件系统进行拼接,生成第一拼接文件;计算第一拼接文件的hash值,采用第一私钥对第一拼接文件的hash值进行签名,生成签名文件;所述第一公钥与第一私钥为互相解密的密钥对;A5、将第一拼接文件、第一公钥、签名文件拼接为第二拼接文件,将所述第二拼接文件作为系统镜像烧入芯片。具体地,所述公钥密码算法为国密SM2椭圆曲线算法。具体地,采用SM3凑杂算法对第一公钥进行hash运算。本专利技术还公开了一种TPM芯片,所述芯片采用上述方法构建硬件可信根。本专利技术还公开了一种嵌入式工控终端,所述工控终端主板上的TPM芯片采用上述方法构建硬件可信根。另一方面,本专利技术还公开了上述工控终端的启动方法,所述启动由工控终端TPM芯片的片上系统执行,包括:B1、从所述TPM芯片熔断区域读取第一公钥的hash值,从系统镜像中读取第一公钥,验证第一公钥的合法性;如第一公钥验证结果为非法,阻止工控终端的启动;B2、如第一公钥验证结果为合法,对系统镜像中的签名文件进行验证,如验证不通过,阻止工控终端的启动;B3、如系统镜像中的签名文件验证通过,则可信验证通过,内核镜像和初始文件系统获取控制权。具体地,验证第一公钥合法性的步骤为:计算系统镜像中读取的第一公钥的hash值;与从熔断区域读取的第一公钥的hash值进行对比;二者相等则第一公钥合法,否则为非法。具体地,对系统镜像中的签名文件进行验证的步骤为:采用第一公钥解密系统镜像中的签名文件,得到hash-cal;计算系统镜像中第一拼接文件和第一公钥的hash值;如果计算结果与hash-cal一致,验证通过;否则,验证不通过。另一方面,本专利技术还公开了上述工控终端的可信验签方法,所述可信验签由工控终端应用程序运行的操作系统执行;首先为静态度量,防止重要文件在外存中被篡改,包括:C1、工控终端上操作重要文件时,获取预先配置在TPM芯片中的第二公钥;所述操作重要文件包括:启动可执行程序、加载库文件、打开配置文件或执行脚本文件;C2、采用第二公钥解密重要文件对应的签名文件,得到hash-cal-2;所述签名文件为采用第二私钥对重要文件的hash值进行签名后生成的文件,所述签名文件与重要文件一起发布至工控终端;所述第二公钥与第二私钥为互相解密的密钥对;C3、计算待操作的重要文件的hash值,如果计算结果与hash-cal-2一致,则可信验签通过;否则,可信验签不通过。其次为动态度量,防止动态的内存攻击,包括:C4、可执行程序启动后,在初始化阶段计算内存中与所述可执行程序文件对应的代码段、只读数据段或敏感数据段的hash值;C5、当所述可执行程序运行过程中有文件操作时,重新计算内存中与所述可执行程序文件对应的代码段、只读数据段或敏感数据段的hash值,并与初始化阶段计算的hash值比较,如果二者不一致,所述可执行程序对应的内存有篡改。本专利技术还公开了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述可信根构建方法的步骤。有益效果:本专利技术公开的硬件可信根构建方法,利用硬件熔断机制一次写入多次读取的特性,能够保障公钥不被篡改,解决了适用于工控终端硬件可信根构建的难题,能够实现从芯片到系统启动的逐级主动可信验证。附图说明图1为硬件可信根构建方法的流程图;图2为TPM芯片中内容区域示意图;图3为工控终端启动流程图;图4为工控终端可信验签流程图。具体实施方式下面结合附图和具体实施方式,进一步阐明本专利技术。实施例一:嵌入式工控终端大都采用RM、POWERPC等指令架构以及相应的硬件,当前主流的嵌入式芯片均提供了熔断机制,能够保证芯片熔断区域只能一次写入,可以多次读取,进而确保写入的值不会被随意篡改。位于芯片内部ROM的片上系统,在芯片每次开机启动时可以做主动校验,基于此,本实施例公开了一种硬件可信根构建方法,如图1所示,包括以下步骤:A1、根据公钥密码算法生成第一公钥;本实施例中采用国密SM2椭圆曲线算法来生成第一公钥SM2PUB-KEY,大小为769字节;A2、对第一公钥进行hash运算,得到第一公钥hash值;本实施例中采用SM3凑杂算法对第一公钥进行hash运算,即第一公钥的hash值为:SM3(SM2PUB-KEY),大小为64个字节:A3、基于芯片厂家提供的熔断区域访问接口,将第一公钥hash值烧入芯片的熔断区域;熔断区域中烧入第一公钥的hash值而不是第一公钥本身,是基于所占大小的考虑;A4、对芯片操作系统的内核镜像和初始文件系统进行拼接,生成第一拼接文件;计算第一拼接文件的hash值,采用第一私钥对第一拼接文件的hash值进行签名,生成签名文件;所述第一公钥与第一私钥为互相解密的密钥对;如果为Linux系统,其内核镜像为vmlinuz.img文件,本文档来自技高网...

【技术保护点】
1.可信根构建方法,所述可信根为硬件可信根,其特征在于,包括:/nA1、根据公钥密码算法生成第一公钥;/nA2、对第一公钥进行hash运算,得到第一公钥hash值;/nA3、将第一公钥hash值烧入芯片的熔断区域;/nA4、对芯片操作系统的内核镜像和初始文件系统进行拼接,生成第一拼接文件;计算第一拼接文件的hash值,采用第一私钥对第一拼接文件的hash值进行签名,生成签名文件;所述第一公钥与第一私钥为互相解密的密钥对;/nA5、将第一拼接文件、第一公钥、签名文件拼接为第二拼接文件,将所述第二拼接文件作为系统镜像烧入芯片。/n

【技术特征摘要】
1.可信根构建方法,所述可信根为硬件可信根,其特征在于,包括:
A1、根据公钥密码算法生成第一公钥;
A2、对第一公钥进行hash运算,得到第一公钥hash值;
A3、将第一公钥hash值烧入芯片的熔断区域;
A4、对芯片操作系统的内核镜像和初始文件系统进行拼接,生成第一拼接文件;计算第一拼接文件的hash值,采用第一私钥对第一拼接文件的hash值进行签名,生成签名文件;所述第一公钥与第一私钥为互相解密的密钥对;
A5、将第一拼接文件、第一公钥、签名文件拼接为第二拼接文件,将所述第二拼接文件作为系统镜像烧入芯片。


2.根据权利要求1所述的可信根构建方法,其特征在于,所述公钥密码算法为国密SM2椭圆曲线算法。


3.一种TPM芯片,其特征在于,所述TPM芯片采用如权利要求1或2所述的方法构建硬件可信根。


4.终端,所述终端为嵌入式工控终端,其特征在于,所述工控终端主板上的TPM芯片采用如权利要求1或2所述的方法构建硬件可信根。


5.如权利要求4所述工控终端的启动方法,所述启动由工控终端TPM芯片的片上系统执行,其特征在于,包括:
B1、从所述TPM芯片熔断区域读取第一公钥的hash值,从系统镜像中读取第一公钥,验证第一公钥的合法性;如第一公钥验证结果为非法,阻止工控终端的启动;
B2、如第一公钥验证结果为合法,对系统镜像中的签名文件进行验证,如验证不通过,阻止工控终端的启动;
B3、如系统镜像中的签名文件验证通过,则可信验证通过,内核镜像和初始文件系统获取控制权。


6.根据权利要求5所述的工控终端启动方法,其特征在于,验证第一公钥合法性的步骤为:
计算系统镜像中读取的第一公钥的hash值;与从熔断区域读取的第一公钥的hash值...

【专利技术属性】
技术研发人员:刘苇陶洪铸祁龙云王治华杨维永魏兴慎周劼英汪明张晓朱世顺吕小亮闫珺王海清王晔叶金波金明辉高峰
申请(专利权)人:国电南瑞科技股份有限公司南京南瑞信息通信科技有限公司国家电网有限公司
类型:发明
国别省市:江苏;32

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

1