CN110730079A - 基于可信计算模块的嵌入式***安全启动和可信度量的*** - Google Patents
基于可信计算模块的嵌入式***安全启动和可信度量的*** Download PDFInfo
- Publication number
- CN110730079A CN110730079A CN201910984516.7A CN201910984516A CN110730079A CN 110730079 A CN110730079 A CN 110730079A CN 201910984516 A CN201910984516 A CN 201910984516A CN 110730079 A CN110730079 A CN 110730079A
- Authority
- CN
- China
- Prior art keywords
- internet
- things
- trusted computing
- computing module
- management platform
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及智能终端的可信运行技术领域,尤其涉及一种基于可信计算模块的嵌入式***安全启动和可信度量的***;包括信长城可信计算管理平台,包括物联网可信计算模块;物联网可信计算模块,用于写入根证书P0;写入方案商标识公钥P1;写入智能终端标识公钥P2和私钥r2;物联网应用管理平台,用于刷写智能终端主控MCU的BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定;启动校验和身份认证;以及智能终端,用于下载固件。本发明所公开的基于可信计算模块的嵌入式***安全启动和可信度量的***,与现有技术的方式相比,可信计算模块较易设计;对原***的改动较小;可更新固件镜像。
Description
技术领域
本发明涉及智能终端的可信运行技术领域,尤其涉及一种基于可信计算模块的嵌入式***安全启动和可信度量的***。
背景技术
信息技术的高速发展,带来了信息产业的空前繁荣;但危害信息安全的事件也不断发生,信息安全形势日益严峻。当前比较流行的***安全保障技术有强制访问控制技术、以及加密技术,但这些都是运行于***上层,他们能够实现安全机制的前提是***本身是安全的,如果***自身在启动时就由于被恶意程序篡改等原因进入一种不可信的状态,则基于此***的应用程序和上层安全机制都是不可信的。因此,***的安全启动技术已逐步被引起重视,它是可信计算的核心部分。同时,对于运行过程中的可信度量也是可信计算的一个重要组成部分。
中国专利CN201120295129.1提出了一种兼容多种可信计算模式的可信计算***,包含固件设置模块,固件下载模块,固件存储模块和可信计算单元,所述可信计算单元上设有与固件下载模块和总线进行通讯的通信接口;所述固件设置模块,用于设置可信计算单元的工作模式;所述固件存储模块,存储有可信计算标准固件;所述固件下载模块,用于从固件存储模块中下载与固件设置模块设置的可信计算单元的工作模式相对应的固件到可信计算单元中;所述可信计算单元,用于与总线进行数据传输,且承载固件下载模块下载的固件;使得可信计算***在商业应用上具有更好的适应性,拥有极大的灵活性,且大大降低了成本。
可信计算组织(TCG)为了从基础上提高计算平台的安全可信性,定义了一个可信第三方,具有安全存储以及加解密引擎的可信平台模块(TPM),并且从硬件组件和软件两方面入手,解决跨平台和跨操作环境束缚,开发不依赖任何特定计算平台的可信计算环境。此解决方案对于PC端是非常有效的。
由于嵌入式领域的安全研究起步稍晚,针对嵌入式智能终端的安全研究还不完善,特别是***层面的软件防御措施还有待加强,恰巧***层面的安全又是整个设备的安全基石。而智能终端固有的一些特点使得PC上的安全防御措施和技术很难在这些设备中得到实施。应对这些安全威胁,应该在嵌入式设备中建立一套防御体系,杜绝一些非法且恶意的程序,防止这些带有攻击威胁的程序运行,或者至少在这些程序运行后能够被检测出。目前在嵌入式平台上主要的解决方案是:设计只读的块设备存储启动镜像,启动时从该只读设备中读取未受更改的镜像,只读设备在出厂时镜像一次性烧写,以后的启动中镜像都无法被篡改,可验证其启动镜像的完整性。此类两种措施一是增加了额外的硬件开销,对于成本控制严格的设备负担太大,二是需要加载的镜像一次性烧写,无法实现正常的***更新及镜像更新。其客观缺点为:
(1)软算法安全性较差,信任根容易被篡改;
(2)面向PC的TPM、TPCM流程对于嵌入式平台过于繁琐,实用性较差;
(3)设计只读的块设备存储启动镜像的解决办法无法实现正常的***更新。
因此,为了解决上述问题,急需发明一种新的基于可信计算模块的嵌入式***安全启动和可信度量的***。
发明内容
本发明的目的在于:提供一种基于可信计算模块的嵌入式***安全启动和可信度量的***,具有流程简单、安全性高、允许嵌入式平台更新固件的特点。
本发明提供了下述方案:
一种基于可信计算模块的嵌入式***安全启动和可信度量的***,包括:
信长城可信计算管理平台,包括物联网可信计算模块;
物联网可信计算模块,用于写入根证书P0;写入方案商标识公钥P1;写入智能终端标识公钥P2和私钥r2;
物联网应用管理平台,用于刷写智能终端主控MCU的BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定;启动校验和身份认证;
以及智能终端,用于下载固件。
优选地,所述的基于可信计算模块的嵌入式***安全启动和可信度量的***还包括:物联网应用管理平台用于进行远程度量操作;进行固件在线升级操作。
优选地,物联网可信计算模块用于写入根证书P0,具体为:
信长城可信计算管理平台随机生成一对密钥r0和P0;
信长城可信计算管理平台利用可信计算量产工具将P0写入物联网可信计算模块;
P0对应的私钥r0保存在信长城可信计算管理平台。
优选地,物联网可信计算模块用于写入方案商标识公钥P1,具体为:
信长城可信计算管理平台生成密钥对r1和P1,利用r0对P1进行签名得到Sign0;
信长城可信计算管理平台将r1、P1和Sign0发送给物联网应用管理平台;
物联网应用管理平台将P1写入物联网可信计算模块,r1由物联网应用管理平台保存。
优选地,智能终端主控MCU刷写BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定,具体为:
物联网应用管理平台计算BootLoader和属性信息的hash值H0,并用r1对H0签名得到Sign1;
物联网应用管理平台管理平台将BootLoader刷写至智能终端主控MCU;
物联网应用管理平台管理平台将Sign1、H0发送给物联网可信计算模块;
物联网可信计算模块基于P0验证Sign1的有效性,若有效,则将H0和属性信息保存至Flash。
优选地,智能终端主控MCU下载固件,具体为:
物联网应用管理平台利用r1对固件hash值签名,得到Sign2;
物联网应用管理平台将固件发送给智能终端主控MCU;
智能终端主控MCU的BootLoader计算固件的hash值得到H1,并将H1和Sign2发送给物联网可信计算模块,验证签名的有效性;若签名有效,物联网可信计算模块保存H1,BootLoader将固件写入Flash,完成固件的下载。
优选地,物联网可信计算模块用于写入智能终端标识公钥P2和私钥r2,具体为:
物联网应用管理平台生成密钥对r2和P2,用r1对r2和P2构成的组合签名得到Sign3;
将r2、P2和Sign3发送给智能终端主控MCU;
智能终端主控MCU利用物联网可信计算模块验证r2、P2和Sign3的有效性,若有效,则将r2、P2保存至物联网可信计算模块。
优选地,智能终端启动校验和身份认证,具体为:
智能终端上电后,物联网可信计算模块计算BootLoader的hash值与H0比较,若一致表示BootLoader完整,则允许BootLoader启动;
BootLoader计算固件的hash值,并将hash值传至可信计算模块,物联网可信计算模块与H1匹配,并将结果返回给BootLoader;
BootLoader判断固件是否完整,如果完整则启动固件;
固件启动后,请求物联网可信计算模块生成身份认证签名;
物联网可信计算模块判断是否完成了BootLoader和固件的完整性度量,若已完成,则利用r2生成身份认证签名Sign4,否则返回错误;
固件利用通信模组将Sign4发送至物联网应用管理平台;
物联网应用管理平台收到智能终端的认证请求后,验证Sign4,若验证通过,则完成身份认证。
优选地,物联网应用管理平台用于进行远程度量操作,具体为:
管理平台向终端发起远程度量命令;
终端主控根据命令计算摘要值,并交由可信计算模块进行比对;
可信计算模块对摘要值进行比对,如果要求度量BootLoader则主动计算BootLoader的摘要值,并与之前保存的值进行比对,若比对成功,则将结果进行签名;
可信计算模块将结果和签名值返回给主控MCU;
主控MCU将结果上传至管理平台,管理平台验证签名的有效性,并检查度量值合规性;若是合规的,则应用管理平台随机生成一个自动发起的时间值,并将此值和要度量的内容利用终端的P2进行加密得到EncCheckParas;
管理平台将EncCheckParas发送至终端,终端将MCU将其发送至可信计算模块;
可信计算模块解密EncCheckParas得到CheckParas,并设置主动度量计划;
当设置的主动度量时间到,可信模块发起主动度量,并将度量结果进行签名。
优选地,进行固件在线升级操作,具体为:
物联网应用管理平台首先利用r1对新的固件的hash值进行签名,得到Sign5;
物联网应用管理平台将新的固件及签名发送至智能终端;
智能终端主控MCU计算固件hash值,并将hash值和Sign5发送至物联网可信计算模块;
物联网可信计算模块使用P1对Sign5进行验签,若验签通过则保存固件hash值;若验签通过,启动固件替换流程,并重启智能终端主控MCU。
本发明产生的有益效果:
本发明所公开的基于可信计算模块的嵌入式***安全启动和可信度量的***,包括:信长城可信计算管理平台,包括物联网可信计算模块;物联网可信计算模块,用于写入根证书P0;写入方案商标识公钥P1;写入智能终端标识公钥P2和私钥r2;物联网应用管理平台,用于刷写智能终端主控MCU的BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定;启动校验和身份认证;以及智能终端,用于下载固件;智能终端启动校验和身份认证;与现有技术的方式相比,整体流程较为简单;可信计算模块较易设计;对原***的改动较小;可更新固件镜像。
附图说明
图1为本发明的基于可信计算模块的嵌入式***安全启动和可信度量的***的结构框图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
参见图1所示,一种基于可信计算模块的嵌入式***安全启动和可信度量的***,包括:
信长城可信计算管理平台,包括物联网可信计算模块;
物联网可信计算模块,用于写入根证书P0;写入方案商标识公钥P1;写入智能终端标识公钥P2和私钥r2;
物联网应用管理平台,用于刷写智能终端主控MCU的BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定;启动校验和身份认证;
以及智能终端,用于下载固件。
所述的基于可信计算模块的嵌入式***安全启动和可信度量的***还包括:
物联网应用管理平台进行远程度量操作;
进行固件在线升级操作。
物联网可信计算模块写入根证书P0的步骤,具体为:
信长城可信计算管理平台随机生成一对密钥r0和P0;
信长城可信计算管理平台利用可信计算量产工具将P0写入物联网可信计算模块;
P0对应的私钥r0保存在信长城可信计算管理平台。
物联网可信计算模块写入方案商标识公钥P1的步骤,具体为:
信长城可信计算管理平台生成密钥对r1和P1,利用r0对P1进行签名得到Sign0;
信长城可信计算管理平台将r1、P1和Sign0发送给物联网应用管理平台;
物联网应用管理平台将P1写入物联网可信计算模块,r1由物联网应用管理平台保存。
智能终端主控MCU刷写BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定的步骤,具体为:
物联网应用管理平台计算BootLoader和属性信息的hash值H0,并用r1对H0签名得到Sign1;
物联网应用管理平台管理平台将BootLoader刷写至智能终端主控MCU;
物联网应用管理平台管理平台将Sign1、H0发送给物联网可信计算模块;
物联网可信计算模块基于P0验证Sign1的有效性,若有效,则将H0和属性信息保存至Flash。
智能终端主控MCU下载固件的步骤,具体为:
物联网应用管理平台利用r1对固件hash值签名,得到Sign2;
物联网应用管理平台将固件发送给智能终端主控MCU;
智能终端主控MCU的BootLoader计算固件的hash值得到H1,并将H1和Sign2发送给物联网可信计算模块,验证签名的有效性;若签名有效,物联网可信计算模块保存H1,BootLoader将固件写入Flash,完成固件的下载。
物联网可信计算模块写入智能终端标识公钥P2和私钥r2的步骤,具体为:
物联网应用管理平台生成密钥对r2和P2,用r1对r2和P2构成的组合签名得到Sign3;
将r2、P2和Sign3发送给智能终端主控MCU;
智能终端主控MCU利用物联网可信计算模块验证r2、P2和Sign3的有效性,若有效,则将r2、P2保存至物联网可信计算模块。
智能终端启动校验和身份认证的步骤,具体为:
智能终端上电后,物联网可信计算模块计算BootLoader的hash值与H0比较,若一致表示BootLoader完整,则允许BootLoader启动;
BootLoader计算固件的hash值,并将hash值传至可信计算模块,物联网可信计算模块与H1匹配,并将结果返回给BootLoader;
BootLoader判断固件是否完整,如果完整则启动固件;
固件启动后,请求物联网可信计算模块生成身份认证签名;
物联网可信计算模块判断是否完成了BootLoader和固件的完整性度量,若已完成,则利用r2生成身份认证签名Sign4,否则返回错误;
固件利用通信模组将Sign4发送至物联网应用管理平台;
物联网应用管理平台收到智能终端的认证请求后,验证Sign4,若验证通过,则完成身份认证。
物联网应用管理平台进行远程度量操作的步骤,具体为:
管理平台向终端发起远程度量命令;
终端主控根据命令计算摘要值,并交由可信计算模块进行比对;
可信计算模块对摘要值进行比对,如果要求度量BootLoader则主动计算BootLoader的摘要值,并与之前保存的值进行比对,若比对成功,则将结果进行签名;
可信计算模块将结果和签名值返回给主控MCU;
主控MCU将结果上传至管理平台,管理平台验证签名的有效性,并检查度量值合规性;若是合规的,则应用管理平台随机生成一个自动发起的时间值,并将此值和要度量的内容利用终端的P2进行加密得到EncCheckParas;
管理平台将EncCheckParas发送至终端,终端将MCU将其发送至可信计算模块;
可信计算模块解密EncCheckParas得到CheckParas,并设置主动度量计划;
当设置的主动度量时间到,可信模块发起主动度量,并将度量结果进行签名。
进行固件在线升级操作的步骤,具体为:
物联网应用管理平台首先利用r1对新的固件的hash值进行签名,得到Sign5;
物联网应用管理平台将新的固件及签名发送至智能终端;
智能终端主控MCU计算固件hash值,并将hash值和Sign5发送至物联网可信计算模块;
物联网可信计算模块使用P1对Sign5进行验签,若验签通过则保存固件hash值;若验签通过,启动固件替换流程,并重启智能终端主控MCU。
本实施例中所述基于可信计算模块的嵌入式***安全启动和可信度量的***,包括以下步骤:物联网可信计算模块写入根证书P0;物联网可信计算模块写入方案商标识公钥P1;智能终端主控MCU刷写BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定;智能终端主控MCU下载固件;物联网可信计算模块写入智能终端标识公钥P2和私钥r2;智能终端启动校验和身份认证;与现有技术的方式相比,整体流程较为简单;可信计算模块较易设计;对原***的改动较小;可更新固件镜像。
本实施例中所述基于可信计算模块的嵌入式***安全启动和可信度量的***,整体架构由智能终端、物联网应用管理平台、信长城可信计算管理平台构成。信长城可信计算管理平台负责生成一对公私钥r0、P0用于方案商身份密钥对r1、P1的签发。物联网应用管理平台负责智能终端主控MCU BootLoader的刷写以及身份认证等操作。为了实现可信计算目的,本方案需要基于以下条件:物联网可信计算模块可以读写BootLoader存储器。
本实施例中所述基于可信计算模块的嵌入式***安全启动和可信度量的***,主要流程为:
1、物联网可信计算模块写入根证书P0
(1)信长城可信计算管理平台随机生成一对密钥r0和P0;
(2)信长城可信计算管理平台利用可信计算量产工具将P0写入物联网可信计算模块。
P0对应的私钥r0保存在信长城可信计算管理平台。
2、物联网可信计算模块写入方案商标识公钥P1
P1是方案商身份对应的公钥,对应的私钥为r1。
(1)信长城可信计算管理平台生成密钥对r1和P1,利用r0对P1进行签名得到Sign0;
(2)信长城可信计算管理平台将r1、P1和Sign0发送给物联网应用管理平台;
(3)物联网应用管理平台利用专用工具将P1写入物联网可信计算模块(可信计算模块首先验证Sign0的有效性,如果有效则写入P1),r1由物联网应用管理平台保存。
3、智能终端主控MCU刷写BootLoader、及物联网可信计算模块与智能终端主控MCU绑定
(1)物联网应用管理平台计算BootLoader和属性信息的hash值H0,并用r1对H0签名得到Sign1;
(2)物联网应用管理平台管理平台利用量产工具将BootLoader刷写至智能终端主控MCU;
(3)物联网应用管理平台管理平台利用量产工具将Sign1、H0及其他属性信息发送给物联网可信计算模块;
(4)物联网可信计算模块基于P0验证Sign1的有效性,若有效,则将H0和属性信息保存至Flash。
4、智能终端主控MCU下载固件
(1)物联网应用管理平台利用r1对固件hash值签名,得到Sign2;
(2)物联网应用管理平台利用下载工具将固件发送给智能终端主控MCU;
(3)智能终端主控MCU的BootLoader计算固件的hash值得到H1,并将H1和Sign2发送给物联网可信计算模块,验证签名的有效性;
(4)若签名有效,物联网可信计算模块保存H1,BootLoader将固件写入Flash,完成固件的下载。
5、物联网可信计算模块写入智能终端标识公钥P2和私钥r2
智能终端公私钥对用于智能终端身份认证与数据加密。
(1)物联网应用管理平台生成密钥对r2和P2,用r1对r2和P2构成的组合签名得到Sign3;
(2)将r2、P2和Sign3发送给智能终端主控MCU;
(3)智能终端主控MCU利用物联网可信计算模块验证r2、P2和Sign3的有效性,若有效,则将r2、P2保存至物联网可信计算模块。
6、智能终端启动校验、身份认证
(1)智能终端上电后,物联网可信计算模块计算BootLoader的hash值与H0比较,若一致表示BootLoader完整,则允许BootLoader启动;
(2)BootLoader计算固件的hash值,并将hash值传至可信计算模块,物联网可信计算模块与H1匹配,并将结果返回给BootLoader;
(3)BootLoader判断固件是否完整,如果完整则启动固件;
(4)固件启动后,请求物联网可信计算模块生成身份认证签名;
(5)物联网可信计算模块判断是否完成了BootLoader和固件的完整性度量,若已完成,则利用r2生成身份认证签名Sign4,否则返回错误;
(6)固件利用通信模组将Sign4发送至物联网应用管理平台;
(7)物联网应用管理平台收到智能终端的认证请求后,验证Sign4,若验证通过,则完成身份认证。
7、远程度量
远程度量由应用管理平台远程发起和自动发起相结合,有效杜绝终端出现漏洞时非法应用规避度量的行为。基本流程为:
(1)管理平台向终端发起远程度量命令;
(2)终端主控根据命令计算摘要值,并交由可信计算模块进行比对;
(3)可信计算模块对摘要值进行比对,如果要求度量BootLoader则主动计算BootLoader的摘要值,并与之前保存的值进行比对,若比对成功,则将结果进行签名
(4)可信计算模块将结果和签名值返回给主控MCU;
(5)主控MCU将结果上传至管理平台,管理平台验证签名的有效性,并检查度量值合规性;
(6)若是合规的,则应用管理平台随机生成一个自动发起的时间值,并将此值和要度量的内容利用终端的P2进行加密得到EncCheckParas;
(7)管理平台将EncCheckParas发送至终端,终端将MCU将其发送至可信计算模块;
(8)可信计算模块解密EncCheckParas得到CheckParas,并设置主动度量计划。
(9)当设置的主动度量时间到,可信模块发起主动度量,并将度量结果进行签名,后续流程(4)-(7)。
8、固件在线升级
(1)物联网应用管理平台首先利用r1对新的固件的hash值进行签名,得到Sign5;
(2)物联网应用管理平台将新的固件及签名发送至智能终端;
(3)智能终端主控MCU计算固件hash值,并将hash值和Sign5发送至物联网可信计算模块;
(4)物联网可信计算模块使用P1对Sign5进行验签,若验签通过则保存固件hash值;
(5)若验签通过,启动固件替换流程,并重启智能终端主控MCU。
本实施例中所述基于可信计算模块的嵌入式***安全启动和可信度量的***的创新点有:(1)物联网可信计算模块,此模块可基于国芯的CC3310、华大的CIU981024等安全芯片进行设计;
(2)物联网可信计算模块写入根证书P0流程;
(3)物联网可信计算模块写入方案商标识公钥P1流程;
(4)智能终端主控MCU刷写BootLoader、及物联网可信计算模块与智能终端主控MCU绑定流程;
(5)智能终端主控MCU下载固件流程;
(6)物联网可信计算模块写入智能终端标识公钥P2和私钥r2流程;
(7)智能终端启动校验、身份认证流程;
(8)远程度量流程。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:包括:
信长城可信计算管理平台,包括物联网可信计算模块;
物联网可信计算模块,用于写入根证书P0;写入方案商标识公钥P1;写入智能终端标识公钥P2和私钥r2;
物联网应用管理平台,用于刷写智能终端主控MCU的BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定;启动校验和身份认证;
以及智能终端,用于下载固件。
2.根据权利要求1所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:还包括:
物联网应用管理平台用于进行远程度量操作;进行固件在线升级操作。
3.根据权利要求2所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:物联网可信计算模块用于写入根证书P0,具体为:
信长城可信计算管理平台随机生成一对密钥r0和P0;
信长城可信计算管理平台利用可信计算量产工具将P0写入物联网可信计算模块;
P0对应的私钥r0保存在信长城可信计算管理平台。
4.根据权利要求3所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:物联网可信计算模块用于写入方案商标识公钥P1,具体为:
信长城可信计算管理平台生成密钥对r1和P1,利用r0对P1进行签名得到Sign0;
信长城可信计算管理平台将r1、P1和Sign0发送给物联网应用管理平台;
物联网应用管理平台将P1写入物联网可信计算模块,r1由物联网应用管理平台保存。
5.根据权利要求4所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:智能终端主控MCU刷写BootLoader,完成物联网可信计算模块与智能终端主控MCU的绑定,具体为:
物联网应用管理平台计算BootLoader和属性信息的hash值H0,并用r1对H0签名得到Sign1;
物联网应用管理平台管理平台将BootLoader刷写至智能终端主控MCU;
物联网应用管理平台管理平台将Sign1、H0发送给物联网可信计算模块;
物联网可信计算模块基于P0验证Sign1的有效性,若有效,则将H0和属性信息保存至Flash。
6.根据权利要求5所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:智能终端主控MCU下载固件,具体为:
物联网应用管理平台利用r1对固件hash值签名,得到Sign2;
物联网应用管理平台将固件发送给智能终端主控MCU;
智能终端主控MCU的BootLoader计算固件的hash值得到H1,并将H1和Sign2发送给物联网可信计算模块,验证签名的有效性;若签名有效,物联网可信计算模块保存H1,BootLoader将固件写入Flash,完成固件的下载。
7.根据权利要求6所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:物联网可信计算模块用于写入智能终端标识公钥P2和私钥r2,具体为:
物联网应用管理平台生成密钥对r2和P2,用r1对r2和P2构成的组合签名得到Sign3;
将r2、P2和Sign3发送给智能终端主控MCU;
智能终端主控MCU利用物联网可信计算模块验证r2、P2和Sign3的有效性,若有效,则将r2、P2保存至物联网可信计算模块。
8.根据权利要求7所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:智能终端启动校验和身份认证,具体为:
智能终端上电后,物联网可信计算模块计算BootLoader的hash值与H0比较,若一致表示BootLoader完整,则允许BootLoader启动;
BootLoader计算固件的hash值,并将hash值传至可信计算模块,物联网可信计算模块与H1匹配,并将结果返回给BootLoader;
BootLoader判断固件是否完整,如果完整则启动固件;
固件启动后,请求物联网可信计算模块生成身份认证签名;
物联网可信计算模块判断是否完成了BootLoader和固件的完整性度量,若已完成,则利用r2生成身份认证签名Sign4,否则返回错误;
固件利用通信模组将Sign4发送至物联网应用管理平台;
物联网应用管理平台收到智能终端的认证请求后,验证Sign4,若验证通过,则完成身份认证。
9.根据权利要求8所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:物联网应用管理平台用于进行远程度量操作具体为:
管理平台向终端发起远程度量命令;
终端主控根据命令计算摘要值,并交由可信计算模块进行比对;
可信计算模块对摘要值进行比对,如果要求度量BootLoader则主动计算BootLoader的摘要值,并与之前保存的值进行比对,若比对成功,则将结果进行签名;
可信计算模块将结果和签名值返回给主控MCU;
主控MCU将结果上传至管理平台,管理平台验证签名的有效性,并检查度量值合规性;若是合规的,则应用管理平台随机生成一个自动发起的时间值,并将此值和要度量的内容利用终端的P2进行加密得到EncCheckParas;
管理平台将EncCheckParas发送至终端,终端将MCU将其发送至可信计算模块;
可信计算模块解密EncCheckParas得到CheckParas,并设置主动度量计划;
当设置的主动度量时间到,可信模块发起主动度量,并将度量结果进行签名。
10.根据权利要求9所述的基于可信计算模块的嵌入式***安全启动和可信度量的***,其特征在于:进行固件在线升级操作,具体为:
物联网应用管理平台首先利用r1对新的固件的hash值进行签名,得到Sign5;
物联网应用管理平台将新的固件及签名发送至智能终端;
智能终端主控MCU计算固件hash值,并将hash值和Sign5发送至物联网可信计算模块;
物联网可信计算模块使用P1对Sign5进行验签,若验签通过则保存固件hash值;若验签通过,启动固件替换流程,并重启智能终端主控MCU。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910984516.7A CN110730079B (zh) | 2019-10-16 | 2019-10-16 | 基于可信计算模块的嵌入式***安全启动和可信度量的*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910984516.7A CN110730079B (zh) | 2019-10-16 | 2019-10-16 | 基于可信计算模块的嵌入式***安全启动和可信度量的*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110730079A true CN110730079A (zh) | 2020-01-24 |
CN110730079B CN110730079B (zh) | 2023-06-02 |
Family
ID=69221417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910984516.7A Active CN110730079B (zh) | 2019-10-16 | 2019-10-16 | 基于可信计算模块的嵌入式***安全启动和可信度量的*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110730079B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112910651A (zh) * | 2021-01-15 | 2021-06-04 | 烽火通信科技股份有限公司 | 一种智慧灯杆与接入设备id自动绑定方法及*** |
CN113438240A (zh) * | 2021-06-25 | 2021-09-24 | 北京八分量信息科技有限公司 | 一种物联网信息防止入侵的免疫***及其方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222181A (zh) * | 2010-04-15 | 2011-10-19 | 北京同方微电子有限公司 | 一种在嵌入式设备中实现可信计算平台的方法 |
US20120210113A1 (en) * | 2011-02-14 | 2012-08-16 | Research In Motion Limited | Managing booting of secure devices with untrusted software |
CN103530548A (zh) * | 2013-10-22 | 2014-01-22 | 山东神思电子技术股份有限公司 | 基于移动可信计算模块的嵌入式终端可信启动方法 |
CN104156659A (zh) * | 2014-08-14 | 2014-11-19 | 电子科技大学 | 一种嵌入式***的安全启动方法 |
CN109889589A (zh) * | 2019-02-18 | 2019-06-14 | 闪联信息技术工程中心有限公司 | 一种基于区块链实现嵌入式硬件ota升级***及方法 |
-
2019
- 2019-10-16 CN CN201910984516.7A patent/CN110730079B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102222181A (zh) * | 2010-04-15 | 2011-10-19 | 北京同方微电子有限公司 | 一种在嵌入式设备中实现可信计算平台的方法 |
US20120210113A1 (en) * | 2011-02-14 | 2012-08-16 | Research In Motion Limited | Managing booting of secure devices with untrusted software |
CN103530548A (zh) * | 2013-10-22 | 2014-01-22 | 山东神思电子技术股份有限公司 | 基于移动可信计算模块的嵌入式终端可信启动方法 |
CN104156659A (zh) * | 2014-08-14 | 2014-11-19 | 电子科技大学 | 一种嵌入式***的安全启动方法 |
CN109889589A (zh) * | 2019-02-18 | 2019-06-14 | 闪联信息技术工程中心有限公司 | 一种基于区块链实现嵌入式硬件ota升级***及方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112910651A (zh) * | 2021-01-15 | 2021-06-04 | 烽火通信科技股份有限公司 | 一种智慧灯杆与接入设备id自动绑定方法及*** |
CN112910651B (zh) * | 2021-01-15 | 2022-07-01 | 烽火通信科技股份有限公司 | 一种智慧灯杆与接入设备id自动绑定方法及*** |
CN113438240A (zh) * | 2021-06-25 | 2021-09-24 | 北京八分量信息科技有限公司 | 一种物联网信息防止入侵的免疫***及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110730079B (zh) | 2023-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108399339B (zh) | 一种基于安全芯片的可信启动方法 | |
JP5079803B2 (ja) | ゲーム装置を認証するシステムおよび方法 | |
TW201516733A (zh) | 用以核對uefi認證變量變化之系統及方法 | |
US11803366B2 (en) | Firmware updating system and method | |
KR101867789B1 (ko) | 보안 배터리 인증 | |
CN106168899A (zh) | 用于更新嵌入式控制设备的方法和更新网关 | |
US20080168275A1 (en) | Securely Recovering a Computing Device | |
US20110246778A1 (en) | Providing security mechanisms for virtual machine images | |
US20060136708A1 (en) | Information processing system, program product, and information processing method | |
CN110795126A (zh) | 一种固件安全升级*** | |
TW201905688A (zh) | 授權將於目標計算裝置上執行之操作的設備 | |
EP3343424B1 (en) | Control board secure start method, and software package upgrade method and device | |
CN106104561B (zh) | 允许针对bios的安装使用测试密钥的方法和设备 | |
CN102833745B (zh) | 一种软件安全升级的方法、通信设备和通信*** | |
CN112148314B (zh) | 一种嵌入式***的镜像验证方法、装置、设备及存储介质 | |
CN110730079A (zh) | 基于可信计算模块的嵌入式***安全启动和可信度量的*** | |
WO2022083046A1 (zh) | 智能电表校验方法、装置、智能电表及计算机存储介质 | |
CN116070217A (zh) | 一种用于芯片模块的安全启动***及其启动方法 | |
CN115329321A (zh) | 一种固件的启动方法、芯片及计算设备 | |
CN110740041B (zh) | 基于可信计算模块的嵌入式***安全启动与可信度量的方法 | |
CN106412121A (zh) | 应用于智能冰箱上的***安全升级方法 | |
CN112417422B (zh) | 安全芯片升级方法及计算机可读存储介质 | |
KR102680666B1 (ko) | 차량 보안 시동 방법, 장치, 전자 제어 유닛 및 저장 매체 | |
CN111400771A (zh) | 目标分区的校验方法及装置、存储介质、计算机设备 | |
CN115618360A (zh) | 一种服务器防篡改安全启动方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: A1501, 15 / F, No. 22, Zhongguancun Street, Haidian District, Beijing 100089 Applicant after: Beijing xinchangcheng Technology Development Co.,Ltd. Address before: 100080 room 1505, 15 / F, block B, 3 Haidian Street, Haidian District, Beijing Applicant before: BEIJING RENXINZHENG TECHNOLOGY CO.,LTD. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |