CN101504705B - 可信平台模块及其计算机启动控制方法 - Google Patents

可信平台模块及其计算机启动控制方法 Download PDF

Info

Publication number
CN101504705B
CN101504705B CN2009100611324A CN200910061132A CN101504705B CN 101504705 B CN101504705 B CN 101504705B CN 2009100611324 A CN2009100611324 A CN 2009100611324A CN 200910061132 A CN200910061132 A CN 200910061132A CN 101504705 B CN101504705 B CN 101504705B
Authority
CN
China
Prior art keywords
platform module
computer
credible platform
trusted platform
module
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.)
Expired - Fee Related
Application number
CN2009100611324A
Other languages
English (en)
Other versions
CN101504705A (zh
Inventor
赵波
张焕国
李晶
文松
韩碧霞
黄祥梨
康路
李小菲
劳勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN2009100611324A priority Critical patent/CN101504705B/zh
Publication of CN101504705A publication Critical patent/CN101504705A/zh
Application granted granted Critical
Publication of CN101504705B publication Critical patent/CN101504705B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

本发明提供一种可信平台模块,及采用该模块实现的计算机启动控制方法,通过在传统的可信平台模块中加入启动控制模块,与原可信平台模块结合构成具有控制功能的新可信平台模块。新可信平台模块在计算机上电时第一个启动,并控制启动流程,改变了通常可信平台模块只是从设备的地位,使其成为主控设备。新可信平台模块在计算机启动之前即开始工作,提供底层安全,包括控制计算机CPU的电源和计算机CPU与计算机存储器之间的数据总线、对计算机的启动部件进行完整性校验。本发明还用硬件实现了SMS4对称密码算法,弥补了传统可信平台模块的不足。本发明的可信平台模块能够完全控制计算机启动流程,具有安全性高、加/解密运算快、运行可靠等优点。

Description

可信平台模块及其计算机启动控制方法
技术领域
本发明属于可信计算平台领域,特别涉及一种可信平台模块,及采用该模块实现的计算机启动控制方法。
背景技术
只有从信息系统的硬件和软件的底层采取安全措施,才能比较有效地确保信息系统的安全。因此要解决终端问题,必须从芯片、主板等硬件和BIOS、操作系统等底层软件综合采取措施,才能有效地提高其安全性。正是基于这一思想催生了可信计算技术。目前,可信计算已经成为信息安全领域的一个新潮流。
可信计算平台的基本思想是:首先构建一个信任根,信任根的可信性由物理安全和管理安全确保。再建立一条信任链,从信任根开始到硬件平台、到操作系统、再到应用,一级认证一级,一级信任一级,从而把这种信任扩展到整个计算机系统。可见,信任根的安全至关重要,它关系着整个计算机系统安全。
可信计算组织(Trusted Computing Group,TCG)规定使用可信平台模块(Trusted Platform Module,简称TPM)作为可信计算平台的信任根,并定义了其逻辑结构,如图1所示。它是一种系统芯片(SoC,System on Chip),即是在单个芯片上集成一个完整的系统,包括集成基础的CPU、I/O口和嵌入式操作系统,并且设置通过总线连接到I/O口的密码协处理器、密钥产生部件、HMAC引擎、随机数产生部件、SHA-I引擎、电源检测、选择开关、执行引擎、非易失存储器、易失存储器,完成可信度量的存储、可信度量的报告、系统监控、密钥产生、加密签名、数据的安全存储等功能。
在TCG的规范中,可信计算机由于结构的原因,TPM是被当作计算平台的一个从设备来使用的,它相当于计算机中的一个安全协处理器,当主机需要安全服务时,由TPM提供这种服务,一般包括安全存储、加/解密运算、数字签名、完整性验证等功能。而主机如果不向TPM要求这些服务,TPM就不能参与系统的安全管理工作。可见,这种结构只是对计算机的一种安全功能增强,TPM并没有真正成为系统的主控者,也就谈不上实现了基础的安全。为了达到基础的安全,必须使TPM成为计算机系统的控制者,由TPM确定系统各部件的安全性,并决定是否使部件获得执行。所以有必要改变TPM的结构,研究具备平台控制能力的TPM结构。本发明所述计算机是指广义的计算机,包括传统PC机和嵌入式平台。
发明内容
本发明的目的是要将TPM作为整个计算机系统(包括作为控制平台的TPM和作为工作平台的计算机)的可信根,使它能够控制计算机的启动,加强其对计算机的系统安全管理功能。
本发明所提供的可信平台模块包括有通过总线连接到I/O口的密码协处理器、密钥产生部件、HMAC引擎、随机数产生部件、SHA-I引擎、电源检测、选择开关、执行引擎、非易失存储器、易失存储器,并且设置通过总线连接到I/O口的启动控制模块,所述启动控制模块用于控制计算机CPU的复位信号,即在通过对计算机的引导程序和操作系统完整性校验之前,一直使计算机CPU的复位信号有效,使之不能启动;以及用于决定将计算机存储器的数据总线判给可信平台模块自身还是计算机CPU。
而且,设置有通过总线连接到I/O口的硬件对称密码引擎,用于为上层应用提供对称密码加/解密服务。
而且,所述硬件对称密码引擎采用SMS4对称密码引擎。
本发明还提供了采用上述可信平台模块实现的计算机启动控制方法,在可信平台模块控制下,计算机启动运行的过程包括以下步骤:
1)计算机系统上电;
2)可信平台模块控制计算机CPU的复位信号,使计算机CPU一直处于重启状态;
3)可信平台模块获得计算机存储器的数据总线的控制权;
4)可信平台模块读取计算机存储器中的启动部件信息并进行完整性校验;
5)若完整性校验通过,可信平台模块将计算机存储器的数据总线判给计算机CPU,然后取消控制计算机CPU的复位信号,让计算机CPU启动;若完整性校验未通过,提示计算机系统已被修改,结束启动。
而且,进行完整性校验的具体方式为,可信平台模块对从计算机存储器中读取的启动部件信息进行完整性测量,然后将测量结果与可信平台模块中预先存储的完整性测量报告比较,若相符,则启动部件信息通过了完整性校验;若不相符,则认为启动部件信息的完整性受到了破坏,完整性校验未通过。
本发明与现有技术相比具有以下的主要优点:
本发明提供的新型可信平台模块具有电源控制和总线控制功能,可以在计算机上电启动时作为第一个启动部件,改变了以往可信平台模块作为安全协处理器从设备的地位,完全控制了计算机系统的启动过程,为系统的基础安全提供了保障。本发明还针对可信平台模块作为普通计算平台从设备和不提供对称密码算法的缺点,在其内部加上对称密码引擎,在具有控制嵌入式平台启动流程功能基础上,还能够提供对称密码服务。采用本发明的新型可信平台模块,能够控制计算机启动流程,使加解密运算速度更快,能够为上层应用提供更适用的服务。这种新型可信平台模块符合TCG规范,能够广泛应用于传统PC机和嵌入式平台,尤其是适合嵌入式平台特性。
附图说明
图1为TCG规定的可信平台模块逻辑结构;
图2为本发明所提供可信平台模块结构;
图3为本发明可信平台模块与计算机的CPU和存储器的连接关系;
图4为本发明实施例的总线控制示意图;
图5为SMS4密码引擎的逻辑结构。
具体实施方式
以下结合附图详细说明本发明的技术方案:
参见图2,本发明所提供的可信平台模块,在现有通过总线连接到I/O口的密码协处理器、密钥产生部件、HMAC引擎、随机数产生部件、SHA-I引擎、电源检测、选择开关、执行引擎、非易失存储器、易失存储器等部件基础上,增设了通过总线连接到I/O口的启动控制模块。所述启动控制模块用于控制计算机CPU的复位信号,即在通过对计算机的引导程序和操作系统完整性校验之前,一直使计算机CPU的复位信号有效,使之不能启动;以及用于决定将计算机存储器的数据总线判给可信平台模块自身还是计算机CPU。因为可信平台模块采用成熟的系统芯片技术,具体实施时可以通过其内集成的CPU、I/O口和嵌入式操作系统实现电源控制和总线控制,即通过其CPU和嵌入式操作系统的工作发出信号,经I/O口向计算机CPU和数据总线输出。因此启动控制模块可以采用芯片编程技术实现,也可以采用软件固化技术在可信平台模块中设置硬件形式的模块。
参见图3,具体实施时可信平台模块一方面接入计算机CPU的复位引脚,可以向计算机CPU一直发送复位信号,使计算机CPU保持空转,实现电源控制;另一方面在计算机CPU和计算机存储器之间建立选择开关连接,替代计算机CPU和计算机存储器之间原本直接的数据总线连接,从而可以断开或接续计算机CPU与计算机存储器之间的数据总线。原有的其它模块按照传统可信平台模块的使用方法,通过I/O口和计算机建立通信即可。参见图4,具体实施时选择开关可以采用选择器实现,选择器是一个逻辑门电路:Y=(A&S)|(B&~S)。通过选择器,将来自可信平台模块的信号B和来自计算机CPU的信号A,在可信平台模块发出的控制信号S的作用下,经过二选一后向计算机存储设备输出信号Y。即通过控制信号S,让信号A和Y相连或者信号B和Y相连。
本发明注意到,在传统可信平台模块的结构中具有RSA引擎,而没有对称密码引擎,这说明它设置了公钥密码RSA,而没有明确设置对称密码。公钥密码和对称密码各有自己的优缺点。在应用中同时采用这两种密码互相配合,才能发挥更好的安全作用。而TCG在可信平台模块中只设置公钥密码,不明确设置对称密码,是一个缺陷。因此本发明提出进一步技术方案:设置有通过总线连接到I/O口的硬件对称密码引擎,用于为上层应用提供对称密码加/解密服务。就目前的计算机技术来看,上层应用主要是计算机存储器中存放的应用程序,硬件对称密码引擎可供应用程序需要时调用。
SMS4对称密码算法是2006年1月我国官方公布的第一个商用密码算法。该算法是一个迭代型分组算法,可以很好地应用于计算机的加解密工作中。SMS4的分组长度为128bits,密钥长度也为128bits。加密算法与密钥扩展算法都采用32轮非线性迭代结构。解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序。因此,本发明建议使用SMS4密码算法作为可信平台模块的对称密码算法,也就是硬件对称密码引擎采用SMS4对称密码引擎实现。参见图5,本发明提供SMS4密码引擎的逻辑结构以供参考,加密引擎的设计分为四大模块:系统接口模块,输入缓冲区模块,输出缓冲区模块,密码算法模块。系统接口模块是计算机与加密引擎通讯的桥梁,用于接入到系统总线建立通信,在本发明实施例中就是接入到可信平台模块中与I/O口连通的总线,从而为上层应用提供支持。本发明实施例中,计算机与加密引擎的通讯通过对加密引擎中的寄存器操作实现,而对这些寄存器的操作则在系统接口模块中实现。缓冲区模块作用一是屏蔽系统传输速度与密码算法模块处理速度的差异;二是提供数据缓冲功能。密码算法模块用于具体进行加解密操作,实现SMS4密码算法。为了使密码算法模块的独立性更好,密码算法模块可划分为:前处理模块,算法模块,后处理模块。前处理模块负责输入缓冲区与算法模块的通讯,屏蔽了缓冲区字长(32bits)与算法模块字长(128bits)的差异,同时简化了算法模块的接口设计和复杂性。后处理模块负责输出缓冲区与算法模块的通讯,其功能与前处理模块相似。加密算法模块和系统接口模块之间还有控制信号和状态信号保证加密工作过程。
本发明提供采用上述可信平台模块实现的计算机启动控制方法,即在可信平台模块控制下计算机启动运行的过程,包括以下步骤:
1)计算机系统上电;
2)可信平台模块控制计算机CPU的复位信号,使计算机CPU一直处于重启状态;
3)可信平台模块获得计算机存储器的数据总线的控制权;
4)可信平台模块读取计算机存储器中的启动部件信息并进行完整性校验;
5)若完整性校验通过,可信平台模块将计算机存储器的数据总线判给计算机CPU,然后取消控制计算机CPU的复位信号,让计算机CPU启动;若完整性校验未通过,提示计算机系统已被修改,结束启动。让计算机CPU启动或是结束启动
进行完整性校验是可信平台模块作为可信根的一个重要应用,本发明利用完整性校验保证计算机安全启动,具体方式为:可信平台模块对从计算机存储器中读取的启动部件信息进行完整性测量,然后将测量结果与可信平台模块中预先存储的完整性测量报告比较,若相符,则启动部件信息通过了完整性校验;若不相符,则认为启动部件信息的完整性受到了破坏,完整性校验未通过。所谓启动部件信息,是指计算机正常启动的关键信息,如果启动部件信息是完整未更改的,计算机就可以安全启动。一般校验的启动部件信息可以包括引导程序和操作系统的信息。如果是用于嵌入式平台,因为其可以清晰的分为引导程序、操作系统和根文件系统三个要素,校验的启动部件信息可以包括引导程序、操作系统和根文件系统的信息。具体实施时,可信平台模块预先对引导程序、操作系统和根文件系统分别进行完整性测量,并将完整性测量报告存储在可信平台模块中;在嵌入式平台启动时,可信平台模块再分别对引导程序、操作系统和根文件系统分别进行完整性测量,根据两次测量结果的比较判断完整型校验是否通过。若引导程序、操作系统或根文件系统通过了可信平台模块的完整性校验,可认为其是可信的,校验通过,可信平台模块允许嵌入式平台执行;若不相同,则认为引导程序、操作系统或根文件系统的完整性受到了破坏,校验失败,可信平台模块不允许嵌入式平台执行。

Claims (6)

1.一种可信平台模块,包括有通过总线连接到I/O口的密码协处理器、密钥产生部件、基于散列函数的消息认证码引擎、随机数产生部件、SHA-1引擎、电源检测、选择开关、执行引擎、非易失存储器、易失存储器,其特征在于:设置通过总线连接到I/O口的启动控制模块,所述启动控制模块用于控制计算机CPU的复位信号,即在通过对计算机的引导程序和操作系统完整性校验之前,一直使计算机CPU的复位信号有效,使之不能启动;以及用于决定将计算机存储器的数据总线判给可信平台模块自身还是计算机CPU。
2.根据权利要求1所述的可信平台模块,其特征在于:设置有通过总线连接到I/O口的硬件对称密码引擎,用于为上层应用提供对称密码加/解密服务。
3.根据权利要求2所述的可信平台模块,其特征在于:所述硬件对称密码引擎采用SMS4对称密码引擎。
4.采用权利要求1或2或3所述可信平台模块实现的计算机启动控制方法,其特征在于:在可信平台模块控制下,计算机启动运行的过程包括以下步骤,
1)计算机系统上电;
2)可信平台模块控制计算机CPU的复位信号,使计算机CPU一直处于重启状态;
3)可信平台模块获得计算机存储器的数据总线的控制权;
4)可信平台模块读取计算机存储器中的启动部件信息并进行完整性校验;
5)若完整性校验通过,可信平台模块将计算机存储器的数据总线判给计算机CPU,然后取消控制计算机CPU的复位信号,让计算机CPU启动;若完整性校验未通过,提示计算机系统已被修改,结束启动。
5.根据权利要求4所述的计算机启动控制方法,其特征在于:进行完整性校验的具体方式为,可信平台模块对从计算机存储器中读取的启动部件信息进行完整性测量,然后将测量结果与可信平台模块中预先存储的完整性测量报告比较,若相符,则启动部件信息通过了完整性校验;若不相符,则认为启动部件信息的完整性受到了破坏,完整性校验未通过。
6.根据权利要求4或5所述的计算机启动控制方法,其特征在于:所述启动部件信息包括引导程序和操作系统的信息。 
CN2009100611324A 2009-03-17 2009-03-17 可信平台模块及其计算机启动控制方法 Expired - Fee Related CN101504705B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100611324A CN101504705B (zh) 2009-03-17 2009-03-17 可信平台模块及其计算机启动控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100611324A CN101504705B (zh) 2009-03-17 2009-03-17 可信平台模块及其计算机启动控制方法

Publications (2)

Publication Number Publication Date
CN101504705A CN101504705A (zh) 2009-08-12
CN101504705B true CN101504705B (zh) 2011-05-11

Family

ID=40976947

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100611324A Expired - Fee Related CN101504705B (zh) 2009-03-17 2009-03-17 可信平台模块及其计算机启动控制方法

Country Status (1)

Country Link
CN (1) CN101504705B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901318B (zh) * 2010-07-23 2011-11-30 北京工业大学 一种可信硬件设备及其使用方法
CN103020531B (zh) * 2012-12-06 2015-05-27 中国科学院信息工程研究所 Android智能终端运行环境可信控制方法及系统
CN104301211A (zh) * 2014-09-26 2015-01-21 广东广联电子科技有限公司 一种物联网网关和智能家居系统
CN104657236A (zh) * 2015-03-11 2015-05-27 深圳市新岸通讯技术有限公司 基于32位MCU的嵌入式Linux文件系统及其运行方法
CN104834845A (zh) * 2015-05-12 2015-08-12 武汉上博科技有限公司 一种可信工业相机的实现方法
CN105335670A (zh) * 2015-10-29 2016-02-17 深圳国微技术有限公司 一种实时完整性校验方法和校验电路及安全芯片
CN105930732B (zh) * 2016-04-12 2018-11-06 中国电子科技集团公司第五十四研究所 一种适合vpx设备业务板卡的可信启动方法
CN107769917A (zh) * 2016-08-22 2018-03-06 普天信息技术有限公司 一种用于无线终端的可信平台和方法
CN108268286A (zh) * 2016-12-29 2018-07-10 联想(上海)信息技术有限公司 计算机系统启动方法及计算机系统
CN107330333B (zh) * 2017-06-06 2020-04-03 百富计算机技术(深圳)有限公司 保证pos机固件安全的方法及装置
CN107403098A (zh) * 2017-06-13 2017-11-28 北京溢思得瑞智能科技研究院有限公司 可信工业控制计算机启动阶段的主动安全防护方法及可信工业控制计算机
CN107358124B (zh) * 2017-06-14 2020-05-22 北京多思安全芯片科技有限公司 一种处理器
CN108449249B (zh) * 2018-02-26 2021-06-11 深圳市元征科技股份有限公司 一种总线控制系统及方法
CN110414244B (zh) * 2018-04-28 2023-07-21 阿里巴巴集团控股有限公司 加密卡、电子设备及加密服务方法
CN109491712B (zh) * 2018-11-01 2021-09-10 北京京航计算通讯研究所 一种适用于VxWorks环境的可信引导方法
CN111259401B (zh) * 2018-11-30 2023-05-02 阿里巴巴集团控股有限公司 可信度量方法、装置、系统、存储介质及计算机设备
CN110933057B (zh) * 2019-11-21 2021-11-23 深圳渊联技术有限公司 物联网安全终端及其安全控制方法
CN111177709A (zh) * 2019-12-31 2020-05-19 全球能源互联网研究院有限公司 一种终端可信组件的执行方法、装置及计算机设备
CN111241548B (zh) * 2020-01-07 2022-09-09 飞腾信息技术有限公司 计算机启动方法
CN113779652A (zh) * 2020-06-09 2021-12-10 华为技术有限公司 数据完整性保护的方法和装置

Also Published As

Publication number Publication date
CN101504705A (zh) 2009-08-12

Similar Documents

Publication Publication Date Title
CN101504705B (zh) 可信平台模块及其计算机启动控制方法
US9887844B2 (en) Method for safeguarding a system-on-a-chip
US11361660B2 (en) Verifying identity of an emergency vehicle during operation
US11218330B2 (en) Generating an identity for a computing device using a physical unclonable function
US9195806B1 (en) Security server for configuring and programming secure microprocessors
US9596085B2 (en) Secure battery authentication
US20130124840A1 (en) Secure boot up of a computer based on a hardware based root of trust
CN102609665B (zh) 对用户程序签名及验证用户程序签名的方法及装置
KR101484110B1 (ko) 메모리 컨트롤러 및 그에 따른 메모리 장치
CN101882189B (zh) 一种保证程序完整性的嵌入式系统及其实现方法
US9280687B2 (en) Pre-boot authentication using a cryptographic processor
CN101996154A (zh) 支持可重组安全设计的通用处理器
CN102456111A (zh) 一种Linux操作系统许可控制的方法及系统
JP7087172B2 (ja) Pqaロック解除
CN100334519C (zh) 建立可信输入输出通道的方法
CN112417521B (zh) 基于fpga+处理器架构的信息安全系统及其工作方法
CN101582765A (zh) 绑定用户的便携式可信移动装置
CN110932853B (zh) 一种基于可信模块的密钥管理装置和密钥管理方法
Jiang et al. Implementing a arm-based secure boot scheme for the isolated execution environment
CN116707885A (zh) 一种基于tpcm生成随机密钥的安全可信启动方法及系统
CN111814157B (zh) 数据安全处理系统、方法、存储介质、处理器及硬件安全卡
CN109583196B (zh) 一种密钥生成方法
CN101894233B (zh) 一种可信赖的可重构器件及其使用方法
CN109598150B (zh) 一种密钥使用方法
CN108228219A (zh) 一种带外刷新bios时验证bios合法性的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Assignee: Kunshan Bairun Technology Co., Ltd.

Assignor: Wuhan University

Contract record no.: 2012320010045

Denomination of invention: Trusted platform module and its computer starting control method

Granted publication date: 20110511

License type: Common License

Open date: 20090812

Record date: 20120322

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110511

Termination date: 20130317