CN101901318B - 一种可信硬件设备及其使用方法 - Google Patents
一种可信硬件设备及其使用方法 Download PDFInfo
- Publication number
- CN101901318B CN101901318B CN2010102375117A CN201010237511A CN101901318B CN 101901318 B CN101901318 B CN 101901318B CN 2010102375117 A CN2010102375117 A CN 2010102375117A CN 201010237511 A CN201010237511 A CN 201010237511A CN 101901318 B CN101901318 B CN 101901318B
- Authority
- CN
- China
- Prior art keywords
- hardware equipment
- trusted
- trusted hardware
- calculating platform
- credible calculating
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000011217 control strategy Methods 0.000 claims abstract description 50
- 230000006870 function Effects 0.000 claims abstract description 22
- 238000004891 communication Methods 0.000 claims description 105
- 238000007689 inspection Methods 0.000 claims description 54
- 238000005259 measurement Methods 0.000 claims description 44
- 238000003860 storage Methods 0.000 claims description 39
- 238000013500 data storage Methods 0.000 claims description 36
- 230000005540 biological transmission Effects 0.000 claims description 33
- 238000012790 confirmation Methods 0.000 claims description 27
- 230000008859 change Effects 0.000 claims description 9
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 230000002452 interceptive effect Effects 0.000 claims description 8
- 238000011084 recovery Methods 0.000 claims description 7
- 238000003825 pressing Methods 0.000 claims description 3
- 230000009471 action Effects 0.000 claims description 2
- 235000016936 Dendrocalamus strictus Nutrition 0.000 claims 1
- 230000003993 interaction Effects 0.000 abstract 1
- 238000013461 design Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种可信硬件设备及其使用方法属于可信计算领域。可信硬件设备中具有控制功能的可信模块,负责对可信硬件设备进行工作状态检查和完整性检查。检查内容包括但不限于基本硬件功能电路的固件代码、工作模式配置信息、控制策略配置信息、会话密钥、设备证书、基于可信交互的受控功能和基本硬件功能电路的工作状态等。可信模块可以验证可信计算平台数字签名或者加密的包括固件代码、工作模式配置信息、控制策略配置信息、会话密钥和设备证书的数据包,将验证后的数据包存储于可信硬件设备的固件存储单元、配置存储单元、策略存储单元和保密数据存储单元中。本发明为可信计算平台提供一个判断硬件设备可信性和可信度的判断手段。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种可信硬件设备。
背景技术
目前,发生信息安全事故的技术原因主要是现在的计算机软、硬件结构简化,从而导致资源非法使用。为了解决信息安全隐患,可信计算需要从提高终端自身防护能力着手,从源头解决信息安全问题。例如:硬件设备(特别是SOC芯片),是整个计算系统的基础。其他的系统软件、应用软件甚至信息安全系统都建立在芯片之上,如果硬件不安全的话,我们的所有努力都会付之东流。国外的硬件设备、芯片,我们不可能研究得非常清楚,更无法了解其安全状况。由于国内的芯片设计与生产工具几乎完全被国外产品垄断,我们能保证硬件设计方案的安全性,但无法保证设计与生产流程的安全。表面上很平常的一件硬件设备,很有可能就包含着逻辑炸弹、嗅探器,不知道它在收集什么信息也不知道它什么时候会爆发。所以长期使用外国的硬件、芯片或者设计与生产平台,会使我们在安全方面处于被动局面。因此研究开发具有自主知识产权的可信硬件设备有助于实现计算环境的自主可控。
本发明中提供一种可信硬件设备具体实施方法,配合可信计算平台的可信平台控制模块共同使用,以达到硬件设备可信受控的目的。可信平台控制模块及其控制方法也属于本发明的发明人共同设计,用于提供对可信硬件设备和可信计算平台的控制功能,是控制操作的实施者,也是可信计算平台上的可信根基,保障可信计算平台信任链的源头可信,为平台的可信性提供判断依据。
发明内容:
1、所述可信硬件设备,由改造之前的用于表征硬件设备功能的基本硬件功能电路构成,其特征在于硬件组成单元进一步包括:电路工作状态检查点、可信模块、策略存储单元、配置存储单元、固件存储单元、保密数据存储单元、平台总线接口、外部总线接口、总线控制器、恢复默认值按钮和更新按钮;
电路工作状态检查点,嵌入到基本硬件功能电路,通过信号线连接到可信模块,检查基本硬件功能电路的关键模块的输入输出信号;
可信硬件设备的总线控制器,至少包括4个端口,分别是第一端口、第二端口、第三端口和第四端口,第一端口连接平台总线接口,第二端口通过连接到外部总线接口,第三端口通过连接到可信模块,第四端口通过连接到基本硬件功能电路、固件存储单元、配置存储单元、策略存储单元和保密数据存储单元;
可信模块,分别连接电路工作状态检查点、恢复默认值按钮、更新按钮和总线控制器的第三端口;
可信计算平台,包括但不局限于,可信个人计算机、可信服务器、可信终端、可信嵌入式设备、可信网络设备;
恢复默认值按钮和更新按钮,连接到可信硬件设备内部的可信模块;
总线控制器通过第一端口,连接到平台总线接口,然后连接到可信硬件设备之外的可信计算平台;
总线控制器通过第二端口,连接到外部总线接口,然后连接到硬件设备;
总线控制器通过第四端口,连接到策略存储单元、配置存储单元、固件存储单元、保密数据存储单元和基本硬件功能电路;
由总线控制器第四端口所连接的策略存储单元、配置存储单元、固件存储单元、保密数据存储单元和基本硬件功能电路,之间相互连接;
可信模块通过总线控制器的第三端口,从总线控制器内部连接到第四端口,再连接到策略存储单元、配置存储单元、固件存储单元、保密数据存储单元和基本硬件功能电路;
可信模块通过总线控制器的第三端口,从总线控制器内连接到第一端口,再连接到平台总线接口,最终连接到可信计算平台;
可信模块通过第三端口,向总线控制器发送控制信号,控制第一端口与第四端口之间的连通和断开、控制第二端口与第四端口之间的连通和断开、控制第二端口与第三端口之间的连通和断开,第一端口与第三端口之间始终连通;
总线控制器过滤来自可信硬件设备之外的,针对策略存储单元、配置存储单元、固件存储单元、保密数据存储单元的读写操作;
可信硬件设备的可信模块包括以下硬件单元:
执行引擎:用于执行固件,实现对可信模块内部的各个硬件单元的操作;
密码算法引擎:是加解密功能的硬件单元,用于建立可信硬件设备和可信计算平台之间的加密通道,产生的密钥存储在可信模块的非易失性存储单元和可信硬件设备的保密数据存储单元中;
接口:用于连接恢复默认值按钮、更新按钮、总线控制器的第三端口、电路功能状态检查点、策略存储单元、配置存储单元、固件存储单元和保密数据存储单元;
非易失性存储单元:用于可信模块存储会话密钥、可信硬件设备的证书和完整性度量结果,具有掉电不丢失的特性;
易失性存储单元:用于为可信模块的执行引擎,提供存储运算数据的临时性存储单元;
2、所述可信硬件设备的使用方法,其特征在于,由可信硬件设备的可信模块控制可信硬件设备实现以下使用方法:可信硬件设备的初始化与自检;可信计算平台对可信硬件设备的身份检查;可信计算平台对可信硬件设备的完整性检查;工作状态的检查和可信计算平台对可信硬件设备的更新操作;详细使用方法如下:
可信计算平台通常是指可信计算机的主机系统,包括:主板、处理器、设备控制器、存储设备或输入输出设备。
当可信硬件设备连接到可信计算平台时,以及每次可信计算平台上电启动时,所有连接在可信计算平台的可信硬件设备,首先进行初始化和自检操作,然后等待可信计算平台对可信硬件设备进行身份检查;通过身份检查后,可信硬件设备才能在可信计算平台上正常使用,禁止访问者对没有通过身份检查的可信硬件设备进行访问;
可信计算平台根据输入输出系统、访问者、操作系统或者应用程序的请求,对可信硬件设备进行完整性检查、工作状态检查和更新操作;
可信计算平台与可信硬件设备之间进行通信时,需要约定择通信方式。没有特殊说明时,可信计算平台与可信硬件设备之间选择原始数据的通信方式。具体的通信方式包括:原始数据的通信方式、公开协议的通信方式、私有协议的通信方式、数字签名的通信方式、加密的通信方式和数字签名且加密的通信方式。
通信方式说明如下:
1)原始数据的通信方式,适用于可信计算平台与可信硬件设备之间数据与信号的传输过程中,不做特殊要求的情况;本通信方式用于初始化与自检命令、工作状态检查和完整性检查命令、请求信号、确认信号、错误信号、执行结果或返回数据的传输;
方法:通信双方均通过信号线传输原始数据。
2)公开协议的数据通信,适用于可信计算平台与可信硬件设备之间数据与信号的传输过程中,需要保证数据和信号的传输格式标准化的情况。本通信方式用于初始化与自检命令、工作状态和完整性检查命令、请求信号、确认信号、错误信号、执行结果或返回数据的传输;
方法:通信双方均按照约定的公开协议所要求的数据传输格式,进行数据传输。
3)私有协议的数据通信,适用于可信计算平台与可信硬件设备之间数据与信号的传输过程中,需要保证数据和信号的传输过程标准化,但标准不公开的情况。本通信方式用于初始化与自检命令、工作状态检查和完整性检查命令、请求信号、确认信号、错误信号、执行结果或者返回数据的传输;
方法:通信双方均按照双方自定义的非公开协议所要求的数据传输格式,进行数据传输。
4)数字签名的数据通信,适用于可信计算平台与可信硬件设备之间数据与信号的传输过程中,需要保证数据与信号的完整性和发送方身份合法性的情况。本通信方式用于发送固件代码、工作模式配置信息、控制策略配置信息、固件代码切换信号、工作模式切换信号、控制策略切换信号或者会话密钥切换信号,用于可信计算平台与可信硬件设备之间,以及在可信计算平台与连接在可信硬件设备的外部总线接口的硬件设备之间,发送需要数字签名保护的数据与信号。
方法:通信双方的数字签名通信方式流程如下:
a、发送方使用约定的完整性度量算法对传输数据和信号进行完整性度量,计算出完整性度量值,然后发送方利用约定的会话密钥和密码算法对完整性度量值进行加密,得到数字签名信息。
b、发送方将数字签名信息、需要传输的数据和信号,发送给接收方。
c、接收方使用约定的完整性度量算法对收到的传输的数据和信号进行完整性度量,计算出完整性度量值,然后利用约定的会话密钥和密码算法对收到的数字签名信息进行解密,并将接收方计算出的完整性度量值与解密得到的完整性度量值与进行比较。
d、如果接收方计算出的完整性度量值和解密得到的完整性度量值一致,则认定接收到的数据和信号是真实的、完整的和有效的,并且数据和信号是来自于合法的发送方。
5)加密的通信方式,适用于可信计算平台与可信硬件设备之间数据与信号的传输过程中,需要保证数据与信号的机密性的情况。本通信方式用于可信硬件设备向可信计算平台返回工作状态检查结果和完整性检查结果,用于可信计算平台向可信硬件设备发送固件代码、保密数据、工作模式配置信息、控制策略配置信息、会话密钥和可信硬件设备的证书,用于可信计算平台与可信硬件设备之间,以及在可信计算平台与连接在可信硬件设备的外部总线接口的硬件设备之间,发送需要加密保护的数据与信号。
方法:通信双方的加密的通信方式流程如下:
a、发送方使用约定的会话密钥和密码算法,对传输的数据与信号进行加密,然后发送方将加密后的数据与信号发送给接收方。
b、接收方使用约定的会话密钥和密码算法对收到的加密数据与信号进行解密。
c、接收方解密出来的数据与信号,即为发送方发送的数据与信号。
6)数字签名且加密的通信方式,适用于在可信计算平台与可信硬件设备之间数据与信号的传输过程中,需要保证数据与信号的完整性、机密性和发送方身份合法性的情况。本通信方式用于可信硬件设备向可信计算平台返回工作状态检查结果和完整性检查结果,用于可信计算平台向可信硬件设备发送固件代码、保密数据、工作模式配置信息、控制策略配置信息、会话密钥和可信硬件设备的证书,用于可信计算平台与可信硬件设备之间,以及可信计算平台与连接在可信硬件设备的外部总线接口的硬件设备之间,发送需要数字签名保护和加密保护的数据与信号。
方法:通信双方的数字签名且加密的通信方式流程如下:
a、发送方使用约定的完整性度量算法对传输的数据与信号进行完整性度量,计算出完整性度量值,然后发送方利用约定的会话密钥和密码算法对完整性度量值进行加密,得到数字签名信息。
b、发送方使用约定的会话密钥和密码算法对需要传输的数据与信号进行加密。
c、发送方将数字签名信息和加密后的数据与信号,发送给接收方。
d、接收方使用约定的会话密钥和约定的密码算法对接收到的加密数据与信号进行解密,并利用约定的完整性度量算法对解密出的数据和信号进行完整性度量,计算出完整性度量值。
e、接收方使用约定的会话密钥和密码算法对收到的数字签名信息进行解密,并将解密的完整性度量值与d步骤中计算出的完整性度量值进行比较。
f、如果接收方计算出的完整性度量值和解密得到的完整性度量值一致,则认定接收到的数据和信号是真实的、完整的和有效的,并且数据和信号是来自于合法的发送方。
可信计算平台的访问者包括:可信计算平台的管理员和用户;
可信硬件设备的控制策略包括:通过设置可信硬件设备的总线控制器的带宽,达到控制通过可信硬件设备的平台总线接口和外部总线接口的数据流量;断开或者连通可信硬件设备的总线控制器的第二端口与第三端口之间的电路、第二端口与第四端口之间的电路;以及对流经可信硬件设备的总线控制器的数据进行过滤。
可信硬件设备通常通过较短的数据线连接到可信计算平台,两者之间通常情况下不会出现数据传输故障,即不会出现传输中断、传输数据无法接收等情况。因此正常情况下可以不考虑两者之间传输数据丢失,或者无法接收的情况。数据传输丢失或者无法接收数据,不属于可信硬件设备的正常工作状态。
A、可信硬件设备的初始化与自检:
A.1可信硬件设备上电时,可信模块先上电,并立即进行初始化,然后可信模块对可信硬件设备进行完整性检查,完整性检查内容包括:固件存储单元中的初始化默认的固件代码、策略存储单元中的初始化默认的控制策略配置信息、配置存储单元中的初始化默认的工作模式配置信息和保密数据存储单元中的可信硬件设备的证书与初始化默认的会话密钥,并将完整性度量结果存储在可信模块的非易失性存储单元;
A.2可信硬件设备的固件代码、初始化默认的控制策略配置信息、初始化默认的工作模式配置信息、可信硬件设备的证书和初始化默认的会话密钥的完整性检查结束后,可信模块读取策略存储单元中的初始化默认的控制策略配置信息,配置总线控制器,对可信硬件设备的输入输出操作进行访问控制,并检查总线控制器的第二端口与第三端口、第二端口与第四端口之间是否处于断开状态,如果处于连通状态,则控制总线控制器断开第二端口与第三端口、第二端口与第四端口之间的连接电路;
A.3可信硬件设备的可信模块对可信硬件设备的总线控制器配置完成后,可信模块通过总线控制器的第三端口和第四端口,向基本硬件功能电路发送初始化命令;然后基本硬件功能电路通过信号线,读取、执行固件存储单元中的初始化默认的固件代码和配置存储单元中的初始化默认的工作模式配置信息;
A.4基本硬件功能电路的初始工作结束后,可信模块还要通过电路工作状态检查点检查基本硬件功能电路的初始工作状态,是否与初始化默认的工作模式配置信息对应;通过检查总线控制器的工作状态,判断可信硬件设备的控制策略,是否与初始化默认的控制策略配置信息对应;检查可信模块对基本功能电路的控制功能和可信模块对总线总裁器的控制功能;最后,将基本硬件功能电路的初始化工作状态和可信硬件设备的控制策略的检查结果存储在可信模块的非易失性存储单元;
A.5操作完毕。
B、可信计算平台对可信硬件设备的身份检查:
B.1可信硬件设备的初始化与自检通过之后,可信计算平台通过平台总线接口,检测到可信硬件设备的存在,并通过可信硬件设备的平台总线接口、总线控制器的第一端口和总线控制器的第三端口,向可信硬件设备的可信模块,发送交互请求信号;
B.2当可信硬件设备的可信模块,收到可信计算平台发送的交互请求信号后,可信模块向可信计算平台发送确认信号,完成可信计算平台和可信硬件设备之间初步的相互确认,建立两者之间的通信关系;否则,不发送确认信号;
B.3可信计算平台收到可信硬件设备发送的确认信号后,立即向可信硬件设备的可信模块发送身份检查命令和返回信息的通信方式;返回信息的通信方式包括:原始数据的通信方式、公开协议的通信方式、私有协议的通信方式、数字签名的通信方式、加密的通信方式和数字签名且加密的通信方式。如果可信计算平台没有收到确认信号,则再次向向可信硬件设备发送交互请求信号,如果仍然没有收到可信硬件设备发送的确认信号,则终止当前正在进行的可信计算平台对可信硬件设备的身份检查操作,禁止访问者对该可信硬件设备的访问操作,并向访问者发送报警信号,等待访问者对该可信硬件设备的检查或更换;
B.4当可信硬件设备的可信模块,接收到可信计算平台发送的身份检查命令和返回信息的通信方式后,可信模块按照返回信息的通信方式要求,立即将可信硬件设备的证书发送给可信计算平台;如果可信硬件设备的可信模块,没有接收到可信计算平台发送的身份检查命令和返回信息的通信方式,则可信硬件设备的可信模块再次向可信计算平台发送确认信号,如果仍然没有收到可信计算平台发送的身份检查命令和返回信息的通信方式,则可信硬件设备终止当前正在进行的身份检查操作;
B.5可信计算平台将收到的可信硬件设备的证书,与可信计算平台的访问者提供的可信硬件设备的证书进行比较,判断可信硬件设备的身份合法性;如果可信硬件设备身份合法,则认定可信硬件设备中存在一个合法的可信模块;否则认为该可信硬件设备没有通过身份检查,可信计算平台禁止对该可信硬件设备进行除了初始化与自检和身份检查之外的任何访问操作;;可信硬件设备的证书包括:设备标识号、生产厂家标识号、设备类型号和会话公钥。
B.6操作完毕。
C、可信计算平台对可信硬件设备的完整性检查和工作状态检查:
C.1当可信计算平台对可信硬件设备的身份合法性的检查通过后,可信计算平台根据访问者的请求,向可信硬件设备的可信模块发送完整性检查和工作状态检查的命令,以及返回信息的通信方式;可信计算平台对可信硬件设备的身份合法性的检查通过之前,可信计算平台拒绝执行访问者提出的针对该可信硬件设备的任何使用请求。如果可信计算平台对可信硬件设备的身份检查没有通过,则可信计算平台不对可信硬件设备进行完整性检查和工作状态检查操作;
C.2可信硬件设备的可信模块接收到可信计算平台发送的完整性检查和工作状态检查的命令后,进行以下操作:可信硬件设备的可信模块通过可信硬件设备的电路工作状态检查点,读取流经电路工作状态检查点的数据,判断基本硬件功能电路当前的工作状态;可信硬件设备的可信模块通过总线控制器和密码算法引擎,对策略存储单元中所有的策略配置信息、配置存储单元中所有的工作模式配置信息、固件存储单元中所有的固件代码,以及保密数据存储单元中所有的会话密钥和可信硬件设备的证书,进行完整性度量;可信硬件设备的可信模块将完整性度量结果,存储在可信模块的非易失性存储单元;可信硬件设备的可信模块按照返回信息的通信方式的要求,将完整性度量结果和工作状态检查结果发送给可信计算平台;如果可信硬件设备的可信模块没有接收到完整性检查和工作状态检查命令,则不进行任何操作;
C.3可信计算平台将收到的可信硬件设备的完整性检查结果和工作状态检查结果,与访问者提供的该可信硬件设备的完整性检查参考值和工作状态检查参考值进行比较。如果比较结果一致,则可信计算平台对可信硬件设备的完整性检查和工作状态检查通过,因此该可信硬件设备被认为是可以被信赖的硬件设备,至此,可信计算平台可以正常的使用该可信硬件设备;反之,如果可信计算平台对可信硬件设备的工作状态检查和完整性检查,任何一个检查没有通过,则可信计算平台对可信硬件设备的完整性检查和工作状态检查立即终止,可信计算平台禁止访问者和可信计算平台上的硬件设备,使用该可信硬件设备,并向访问者发送可信硬件设备检查失败的警告,等待访问者对该可信硬件设备进行检查、恢复或更换;
C.4当访问者收到可信硬件设备完整性检查失败或者工作状态检查失败的警告后,访问者必须手动按下可信硬件设备的恢复默认值按钮,将可信硬件设备的工作状态和控制策略强制恢复到的初始化默认的状态;强制恢复操作包括:可信硬件设备的可信模块,立即从可信硬件设备的固件存储单元中读取初始化默认的固件代码,从配置存储单元中读取初始化默认的工作模式配置信息,从策略存储单元中读取初始化默认的控制策略配置信息,从保密数据存储单元中读取初始化默认的会话密钥,然后可信模块使用初始化默认的固件代码和工作模式配置信息对可信硬件设备的基本硬件功能电路进行配置,使用初始化默认的控制策略配置信息对可信硬件设备的总线控制器进行配置,使用初始化默认的会话密钥,用于数据通讯;然后可信硬件设备的可信模块对可信硬件设备重新执行初始化与自检操作,然后由可信计算平台再次对可信硬件设备进行身份检查、完整性检查和工作状态的检查;如果问者没有收到检查失败的警告,则可信计算平台继续执行对可信硬件设备的完整性检查和工作状态检查;
C.5如果访问者强制可信硬件设备恢复到初始化默认状态之后,仍然不能通过可信计算平台对该可信硬件设备的完整性检查和工作状态检查,则可信计算平台禁止用户继续使用该可信硬件设备,并向用户发出警告信号,由用户对该可信硬件设备进行更换;更换后的可信硬件设备,需要重新进行初始化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备进行的完整性检查和工作状态检查;
D、可信计算平台对可信硬件设备的更新操作:
发送更新数据的操作方法:
D.1当可信计算平台对可信硬件设备发送更新数据,进行更新时,需要先约定可信计算平台与可信硬件设备之间的通信方式;更新数据为:可信硬件设备的固件代码、工作模式配置信息、控制策略配置信息或者会话密钥。
D.2可信计算平台通过约定的通信方式,向可信硬件设备发送更新的固件代码、工作模式配置信息、控制策略配置信息或者会话密钥的命令;
D.3可信硬件设备收到可信计算平台发送的更新的固件代码、工作模式配置信息、控制策略配置信息或者会话密钥的命令后,并通过约定的通信方式,向可信计算平台发送反馈信号;如果可信硬件设备没有收到更新命令,则可信硬件设备不向可信计算平台发送任何信号;
D.4当可信计算平台收到反馈信号后,通过约定的通信方式,向可信硬件设备的可信模块发送更新数据和更新数据的编号;如果可信计算平台没有收到反馈信号,则可信计算平台重新向可信硬件设备发送更新命令。如果仍然无法接收到可信硬件设备的反馈信号,则可信计算平台停止此次对可信硬件设备的更新操作,并通知访问者,由访问者检查、恢复或者更换该可信硬件设备;当用户对可信硬件设备进行强制恢复或者更换后,需要重新执行可信硬件设备的初始化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备的完整性检查和工作状态检查,并且在上述检查通过后,才可以执行可信计算平台对可信硬件设备的更新操作;如果更换的设备仍然无法使用,要么继续更换新的可信硬件设备,要么不再使用该类型的可信硬件设备;
D.5可信硬件设备的可信模块,将收到的更新数据中的固件代码存储到固件存储单元,将更新数据中的工作模式配置信息存储到配置存储单元,将更新数据中的控制策略配置信息存储到策略存储单元,将更新数据中的会话密钥存储到保密数据存储单元,将更新数据的编号存储到保密数据存储单元;并立即通过约定的通信方式,向可信计算平台发送确认信号,否则立即向可信计算平台发送重新发送更新数据和更新数据编号的请求;如果可信硬件设备的可信模块没有收到更新数据和更新数据的编号,则可信硬件设备的可信模块向可信计算平台发送重发更新数据的请求;如果重新发送请求后,可信硬件设备的可信模块仍然不能收到可信计算平台发送的更新数据和更新数据的编号,则可信硬件设备终止此次更新操作;
发送切换信号的操作方法:
D.6当可信计算平台收到可信硬件设备发送的确认信号时,可信计算平台通过约定的通信方式,向可信硬件设备发送更新数据的切换命令和更新数据的编号,并等待可信硬件设备的确认信号;切换信号为:固件代码的切换信号、工作模式的切换信号、控制策略的切换信号或者会话密钥的切换信号;如果可信计算平台没有收到可信硬件设备发送的确认信号,则可信计算平台重新向可信硬件设备发送切换信号和更新数据的编号。如果仍然无法接收到可信硬件设备的反馈信号,则可信计算平台停止此次对可信硬件设备的更新操作,并通知访问者,由访问者检查、恢复或者更换该可信硬件设备;当用户对可信硬件设备进行强制恢复或者更换后,需要重新执行可信硬件设备的初始化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备的完整性检查和工作状态检查,并且在上述检查通过后,才可以执行可信计算平台对可信硬件设备的更新操作;如果更换的设备仍然无法使用,要么继续更换新的可信硬件设备,要么不再使用该类型的可信硬件设备;
D.7当可信硬件设备的可信模块收到可信计算平台发送的更新数据的切换信号和更新数据的编号后,可信硬件设备的可信模块立即通过约定的通信方式,向可信计算平台发送确认信号;否则,立即通过约定的通信方式,向可信计算平台发送重发更新数据的切换信号和更新数据的编号的请求;如果可信硬件设备的可信模块仍然无法收到切换信号和更新数据的编号,则可信硬件设备终止可信计算平台对可信硬件设备的更新操作;
D.8当可信计算平台收到可信硬件设备的可信模块发送的确认信号时,可信计算平台立即通过指示灯或者中断信号,向访问者发送按动可信硬件设备的更新按钮的提示信号;如果可信计算平台没有收到可信硬件设备发送的确认信号,则可信计算平台重新向可信硬件设备发送切换信号和更新数据的编号。如果仍然无法接收到可信硬件设备的反馈信号,则可信计算平台停止此次对可信硬件设备的更新操作,并通知访问者,由访问者检查、恢复或者更换该可信硬件设备;当用户对可信硬件设备进行强制恢复或者更换后,需要重新执行可信硬件设备的初始化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备的完整性检查和工作状态检查,并且在上述检查通过后,才可以执行可信计算平台对可信硬件设备的更新操作;如果更换的设备仍然无法使用,要么继续更换新的可信硬件设备,要么不再使用该类型的可信硬件设备;
D.9当访问者按下可信硬件设备的更新按钮后,可信硬件设备的可信模块立即根据更新数据的编号,从策略存储单元中读取对应的控制策略配置信息,对可信硬件设备的总线控制器进行控制策略配置操作;同时,可信硬件设备的可信模块从固件存储单元中读取与更新数据编号对应的固件代码,以及从配置存储单元中读取与更新数据编号对应的工作模式配置信息,对可信硬件设备的基本功能电路进行配置,进而完成了可信硬件设备的工作状态和控制策略的切换操作;切换操作执行完毕后,可信硬件设备通过约定的通信方式,向可信计算平台发送更新数据切换操作执行完毕的信号;
D.10如果访问者在可信计算平台规定的时间内,没有按动可信硬件设备的更新按钮,则可信计算平台取消此次更新操作,并通过操作系统或者指示灯通知访问者;
删除更新数据的操作方法:
D.11如果可信计算平台要删除可信硬件设备中不再继续使用的更新数据时,则可信计算平台通过约定的通信方式,向可信硬件设备的可信模块发送删除更新数据的命令和更新数据的编号;初始化默认的固件代码、工作模式配置信息、控制策略配置信息和会话密钥,以及可信硬件设备的证书不能被删除。
D.12可信硬件设备收到可信计算平台发送的删除可信硬件设备的更新数据的命令和更新数据的编号后;并由可信硬件设备的可信模块检查更新编号对应的更新数据是否正在被可信硬件设备使用;如果没有正在被使用,则删除固件存储单元、配置存储单元、策略存储单元和保密数据存储单元中与更新数据编号对应的更新数据,并向可信计算平台发送删除成功的返回信号;如果更新数据的编号对应的数据不存在或者正在使用,则取消此次删除操作,并向可信计算平台发送删除数据不存在或者正在使用的返回信号;
D.13当可信计算平台收到可信硬件设备发送的删除更新数据成功的返回信号后,结束对可信硬件设备的数据更新操作;当可信计算平台收到可信硬件设备发送的删除数据不存在或者正在使用的返回信号后,可信计算平台对可信硬件设备进行的删除更新数据的操作结束;
本发明效果:
1)本发明中的可信硬件设备可以提供实时的完整性自检功能、工作状态检查功能、控制策略工作状态检查功能,并通过检查硬件设备工作状态、工作模式配置信息完整性、控制策略信息的完整性,保证硬件设备身份可信和行为可信。
2)所述可信硬件设备结合可信计算平台的控制功能和可信管道技术,可以实现在可信环境或非可信环境下的多种可信通信方式,实现了可信的数据通讯、设备控制、任务处理等功能。
3)所述可信硬件设备具有工作模式和控制策略动态切换功能,可以满足不同安全等级要求,向访问者提供满足需求的功能服务。
4)本发明可以通过微小改动计算平台结构的情况下,实现对可信硬件设备的认证功能,具有计算平台硬件结构通用性和高安全性的优点。
附图说明
图1可信硬件设备与可信计算平台的连接关系,描述了可信计算平台与可信硬件设备之间的连接关系。
图2可信硬件设备结构图,描述可信硬件设备的主要硬件组成单元以及硬件单元之间的控制关系。其中,图2中的黑色小方块代表嵌入到基本硬件功能电路中的电路工作状态检查点。
图3可信硬件设备的可信模块,描述可信硬件设备的可信模块的硬件组成结构。
具体实施方式
下面结合附图以及实施案例对本发明进行详细的说明。
一、可信硬件设备构成
可信硬件设备主要包括硬件电路部分、固件代码部分、控制策略部分和工作模式配置部分。如图1所示,硬件电路部分包括:可信模块(TM)、策略存储单元、配置存储单元、固件存储单元、保密数据存储单元、总线控制器、基本硬件功能电路、电路工作状态检查点、外部总线接口、平台总线接口、恢复默认值按钮和更新按钮构成。
1.硬件电路部分实现方法:
1)可信模块硬件结构实现方法如下:
执行引擎:选用一个32位的RI SC处理器(ARM9处理器)。
内部总线:使用32位AMBA总线。
密码算法引擎包括:椭圆曲线ECC算法、RAS算法、SHA-1算法、HMAC算法、3DES算法、SCH算法、SMS4算法和自定义算法。
可信模块的接口采用32位数据线,一端连接到AMBA总线上,另一端连接到可信硬件设备中的通讯总线上。
可信硬件设备的重要数据信息包括:会话密钥、可信硬件设备的证书、可信硬件设备固件、工作模式配置信息、控制策略配置信息、工作模式配置信息和控制策略配置信息的完整性参考值、功能电路工作状态参考值;
2)可信硬件设备硬件结构实现方法如下:
基本硬件功能电路:以网络设备为例,选择10/100/1000自适应网络IP模块。
电路工作状态检查点:从网络IP模块中,各个单元模块的输入输出接口中,引出32位的数据线,用于构成监测点,主要检测流经各个单元模块的数据。
选用1G的FALSH,分别用于实现策略存储单元、配置存储单元、固件存储单元和保密数据存储单元。
总线接口:包括对内的平台总线接口和对外的外部总线接口两种。对内接口采用的是PCI-E接口,连接到可信计算平台的设备控制器上。对外接口采用的是RJ45接口,连接到其他网络设备上。
总线控制器:通过可信硬件设备的内部总线,连接到可信模块、平台总线接口、外部总线接口和基本硬件功能电路,由可信模块控制总线控制器,实现对平台总线接口和外部总线接口的控制。
2.可信硬件设备出厂前进行以下设置:
1)可信模块(TM)向总线控制器发送禁用信号,断开第二端口与第三端口、第二端口与第四端口之间的信号线,断开可信硬件设备与可信计算平台之外的实体的通讯功能。
2)通过可信模块(TM)检查固件存储单元、配置存储单元、策略存储单元和保密数据存储单元的可用性和完好性。
3)通过可信模块(TM)向可信硬件设备中的保密数据存储单元中载入会话密钥,向策略存储单元中载入控制策略配置信息,向配置单元中载入工作模式配置信息,向固件代码存储单元中载入固件代码。
4)通过可信模块(TM)对保密数据存储单元中的密钥和证书,策略存储单元中的策略配置信息,配置存储单元中的工作模式配置信息和固件存储单元中的固件代码进行一次完整性检查。
5)可信模块(TM)通过电路工作状态检查点,检查基本硬件功能电路的工作状态。
6)控制策略配置信息和工作模式配置信息都包括动态的配置信息和初始化默认配置信息。
7)初始化默认的工作模式配置信息只能用于计算平台对可信硬件设备的检测,以及计算平台与可信硬件设备内部可信模块的基本交互。
8)初始化默认的策略控制配置只打开了可信硬件设备和计算平台之间的通讯总线接口,关闭了可信硬件设备与除可信计算平台之外的所有通讯总线接口。
9)动态的工作模式配置信息是通过计算平台的可信平台控制模块验证后下发的,用于实时更新可信硬件设备的工作状态。
10)动态的控制策略配置信息是通过计算平台的可信平台控制模块产生或者经验证可信后下发的,用于实时更新可信硬件设备对外的交互权限。
二、可信硬件设备的使用
首先对可信计算平台与可信硬件设备之间的通信方式进行定义:原始数据的通信方式(编号0xF1)、公开协议的通信方式(编号0xF2)、私有协议的通信方式(编号0xF3)、数字签名的通信方式(编号0xF4)、加密的通信方式(编号0xF5)和数字签名且加密的通信方式(编号0xF6)。
数字签名的通信方式(编号0xF4)时:选用sha1算法进行完整性度量,选用RSA密码算法对完整性度量结果进行加解密。
加密的通信方式(编号0xF5)时:选用ECC或者RSA作为加解密的算法。
数字签名且加密的通信方式(编号0xF6)时:选用Sha1算法进行完整性度量,选用RSA算法对完整性数据进行加解密的算法,选用ECC作为数据加解密的算法。
可信硬件设备支持的受控命令定义:可信硬件设备的上电初始化与自检命令(编号0xE1)、可信计算平台对可信硬件设备的身份检查命令(编号0xE2)、可信计算平台对可信硬件设备的完整性检查和工作状态检查命令(编号0xE3)、可信计算平台对可信硬件设备的更新操作命令(编号0xE4)和删除更新数据的命令(编号0xE5)。
可信硬件设备中的固件存储单元中有初始化默认的固件代码(编号:0xA1)和一个更新的固件代码(编号:0xA2),用户提供的初始化默认的固件代码的完整性参考值为(假设数值为:0xFFFF FFFF 1111 0001),用户提供的更新的固件代码的完整性参考值为(假设数值为:0xFFFF FFFF 1111 0002);
可信硬件设备中的策略存储单元中有初始化默认的控制策略配置信息(编号:0xB1)和一个更新的控制策略配置信息(编号:0xB2),用户提供的初始化默认的控制策略配置信息的完整性参考值为(假设数值为:0xFFFFFFFF 22220001),用户提供的更新的控制策略配置信息的完整性参考值为(假设数值为:0xFFFF FFFF 2222 0002);
可信硬件设备中的配置存储单元中有初始化默认的工作模式配置信息(编号:0xC1)和一个更新的工作模式配置信息(编号:0xC2),用户提供的初始化默认的工作模式配置信息的完整性参考值为(假设数值为:0xFFFFFFFF 333 0001),用户提供的更新的工作模式配置信息的完整性参考值为(假设数值为:0xFFFF FFFF 3333 0002),初始化默认的工作模式配置信息对应的基本硬件功能电路的工作状态检查结果参考值为(0xFFFF FFFF 6666 0001),更新的工作模式配置信息对应的基本硬件功能电路的工作状态检查结果参考值为(0xFFFF FFFF 6666 0002);
可信硬件设备中的保密数据存储单元中有初始化默认的会话密钥(编号:0xD1)和一个更新的会话密钥(编号:0xD2)用户提供的初始化默认的会话密钥的完整性参考值为(假设数值为:0xFFFF FFFF 4444 0001),用户提供的更新的会话密钥的完整性参考值为(假设数值为:0xFFFF FFFF 4444 0002);
可信硬件设备中的保密数据存储单元中可信硬件设备的证书的完整性参考值为(假设数值为:0xFFFF FFFF 5555 0001);
可信硬件设备的切换信号包括:固件代码切换信号(编号0x91)、控制策略切换信号(编号0x92)、工作模式切换信号(编号0x93)和会话密钥切换信号(编号0x94);
1、可信硬件设备上电初始化与自检
可信硬件设备上电工作时,初始化与自检流程如下:
1)可信硬件设备上电,可信模块进行初始化,然后可信模块对可信硬件设备的固件存储单元中的初始化默认的固件代码、策略存储单元中的初始化默认的控制策略配置信息、配置存储单元中的初始化默认的工作模式配置信息和保密数据存储单元中的可信硬件设备的证书与初始化默认的会话密钥,进行完整性检查,得出初始化默认的固件代码的完整性度量结果(0xFFFF FFFF1111 0001)、初始化默认的控制策略配置信息的完整性度量结果(0xFFFF FFFF2222 0001)、初始化默认的工作模式配置信息的完整性度量结果(0xFFFF FFFF3333 0001)、可信硬件设备的证书的完整性度量结果(0xFFFF FFFF 5555 0001)与初始化默认的会话密钥的完整性度量结果(0xFFFF FFFF 4444 0001)。并将完整性度量结果存储在可信模块的非易失性存储单元;
2)可信模块根据初始化默认的控制策略配置信息(编号:0xB1),配置总线控制器,并设置总线控制器的第二端口、第三端口和第四端口为断开的状态。
3)可信模块通过总线控制器,向基本硬件功能电路发送初始化命令,然后基本硬件功能电路根据初始化默认的工作模式配置信息(编号:0xC1),进行初始化;
2、可信计算平台对可信硬件设备的身份检查:
4)可信计算平台通过可信硬件设备的平台总线接口,向可信硬件设备发送交互请求信号0x01(16进制数);
5)当可信硬件设备收到交互请求信号0x01后,立即向可信计算平台发送确认信号0x02;
6)可信计算平台收到确认信号0x02后,立即向可信硬件设备发送身份检查命令(0xE2)和返回信息的通信方式(0xF4);
7)可信硬件设备的可信模块,接收到身份检查命令(0xE2)和返回信息的通信方式(0xF4)后,按照返回信息的传输方式(0xF4)要求,立即将可信硬件设备的证书发送给可信计算平台;
8)可信计算平台将可信硬件设备的证书与访问者提供的可信硬件设备的证书进行比较,判断出可信硬件设备的身份是合法的,认定可信硬件设备中存在一个合法的可信模块;
完成上述第1)步骤到第8)步骤的操作后,可以计算平台可以接收访问者发送的对可信硬件设备的完整性检查和工作状态检查的命令。
3、可信计算平台对可信硬件设备的完整性检查和工作状态检查:
9)可信计算平台向可信硬件设备发送完整性检查和工作状态检查的命令(0xE3),以及返回信息的通信方式(编号0xF6);
10)可信硬件设备的可信模块接收到检查命令(0xE3)后,通过可信硬件设备的电路工作状态检查点,检查基本硬件功能电路当前的工作状态,得到结果(0xFFFF FFFF 6666 0001);通过总线控制器和密码算法引擎对固件存储单元中所有的固件代码(编号0xA1和编号0xA2)、策略存储单元中现有的策略配置信息(编号0xB1和编号0xB2)、配置存储单元中所有的工作模式配置信息(编号0xC1和编号0xC2),以及保密数据存储单元中所有的会话密钥(编号0xD1和编号0xD2)和可信硬件设备的证书,进行完整性度量;将完整性度量结果(0xFFFF FFFF 1111 0001、0xFFFF FFFF 1111 0002、0xFFFF FFFF 22220001、0xFFFF FFFF 2222 0002、0xFFFF FFFF 3333 0001、0xFFFF FFFF 33330002、0xFFFF FFFF 4444 0001、0xFFFF FFFF 4444 0002、0xFFFF FFFF 55550001)存储在可信模块的非易失性存储单元;按照返回信息的通信方式的要求(编号0xF6),将完整性度量结果和工作状态检查结果发送给可信计算平台;
11)当可信计算平台对可信硬件设备的完整性检查和工作状态检查通过后,可信硬件设备被认为是可以被信赖的硬件设备,至此,可信计算平台可以正常的使用该可信硬件设备;
4、可信计算平台对可信硬件设备的更新操作:
下发更新数据的操作方法:
12)约定可信计算平台与可信硬件设备之间的通信方式(编号0xF6);
13)可信计算平台通过约定的通信方式(编号0xF6),向可信硬件设备发送更新命令;
14)可信硬件设备收到更新命令(编号0xE4)后,通过约定的通信方式(编号0xF6),向可信计算平台发送反馈信号(0x06);
15)当可信计算平台收到反馈信号后(0x06),通过约定的通信方式(编号0xF6),向可信硬件设备的可信模块下发更新数据和更新数据的编号;更新数据包括:固件代码(编号0xA3,对应的完整性参考值为0xFFFF FFFF 11110003)、控制策略配置信息(编号0xB3,对应的完整性参考值为0xFFFF FFFF22220003)、工作模式配置信息(编号0xC3,对应的完整性参考值为0xFFFFFFFF 3333 0003)、和会话密钥(编号0xD3,对应的完整性参考值为0xFFFF FFFF4444 0003);
16)可信硬件设备的可信模块将收到的更新数据和更新数据的编号,分别存储在固件存储单元、配置存储单元、策略存储单元和保密数据存储单元,并立即通过约定的通信方式(0xF6),向可信计算平台发送确认信号(0x07),否则发送重发更新数据的请求(0x08);
发送切换信号的操作方法;
17)可信计算平台收到确认信号后(0x07),通过约定的通信方式(0xF6),向可信硬件设备发送切换信号(0x91、0x92、0x93或0x94)和更新数据的编号(0xA3、0xB3、0xC3或0xD3),并等待可信硬件设备的确认信号(0x0A);
18)可信硬件设备的可信模块收到切换信号和更新数据的编号后,立即通过约定的通信方式(0xF6),向可信计算平台发送确认信号(0x0B);否则,立即通过约定的通信方式(0xF6),向可信计算平台发送重发切换信号和更新数据的编号的请求(0x0C);
19)可信计算平台收到确认信号(0x0B)后,立即向访问者发送按动可信硬件设备的更新按钮的提示信号(每秒闪烁一次的指示灯信号);
20)当访问者按下可信硬件设备的更新按钮后,可信硬件设备的可信模块立即对总线控制器进行控制策略切换操作,并命令可信硬件设备的基本功能电路执行固件代码切换和工作模式切换;切换操作执行后,可信硬件设备通过约定的通信方式,向可信计算平台发送确认信号(0x0D);
21)如果访问者在规定的时间内,没有按动可信硬件设备的更新按钮,则可信计算平台取消此次更新操作,并通过操作系统或者指示灯通知访问者;
删除更新数据的操作方法:
22)如果可信计算平台要删除可信硬件设备中不再使用的更新数据中的固件代码(编号0xA2),则通过约定的通信方式(0xF6),向可信硬件设备发送删除更新数据的命令(编号:0xE5)和更新数据的编号0xA2;
23)可信硬件设备收到删除更新数据的命令(0xE5)和更新数据的编号(0xA2)后,由可信模块检查更新编号(0xA2)对应的更新数据是否正在使用;此时更新数据0xA2没有使用,则删除固件存储单元中更新数据编号为0xA2对应的更新数据;
24)删除更新数据的操作结束后,可信硬件设备通过约定的通信方式(编号0xF6)向可信计算平台发送确认信号(0x0E);
25)至此,操作结束。
Claims (2)
1.可信硬件设备,包括基本硬件功能电路,其特征在于进一步包括:电路工作状态检查点、可信模块、策略存储单元、配置存储单元、固件存储单元、保密数据存储单元、平台总线接口、外部总线接口、总线控制器、恢复默认值按钮和更新按钮;
电路工作状态检查点,嵌入到基本硬件功能电路,通过信号线连接到可信模块,检查基本硬件功能电路的关键模块的输入输出信号;
可信硬件设备的总线控制器,至少包括4个端口,分别是第一端口、第二端口、第三端口和第四端口,第一端口连接平台总线接口,第二端口连接到外部总线接口,第三端口连接到可信模块,第四端口连接到基本硬件功能电路、固件存储单元、配置存储单元、策略存储单元和保密数据存储单元;
可信模块,分别连接电路工作状态检查点、恢复默认值按钮、更新按钮和总线控制器的第三端口;
恢复默认值按钮和更新按钮,连接到可信硬件设备内部的可信模块;
总线控制器通过第一端口,连接到平台总线接口,然后连接到可信硬件设备之外的可信计算平台;可信计算平台,是可信个人计算机、可信服务器、可信嵌入式设备或可信网络设备;
总线控制器通过第二端口,连接到外部总线接口,然后连接到硬件设备;
总线控制器通过第四端口,连接到策略存储单元、配置存储单元、固件存储单元、保密数据存储单元和基本硬件功能电路;
所述的策略存储单元、配置存储单元、固件存储单元、保密数据存储单元和基本硬件功能电路之间相互连接;
可信模块通过总线控制器的第三端口,从总线控制器内部连接到第四端口,再连接到策略存储单元、配置存储单元、固件存储单元、保密数据存储单元和基本硬件功能电路;
可信模块通过总线控制器的第三端口,从总线控制器内连接到第一端口,再连接到平台总线接口,最终连接到可信计算平台;
可信模块通过第三端口,向总线控制器发送控制信号,控制第一端口与第四端口之间的连通和断开、控制第二端口与第四端口之间的连通和断开、控制第二端口与第三端口之间的连通和断开,第一端口与第三端口之间始终连通;
总线控制器过滤来自可信硬件设备之外的,针对策略存储单元、配置存储单元、固件存储单元、保密数据存储单元的读写操作;
可信硬件设备的可信模块包括以下硬件单元:
执行引擎:用于执行固件,实现对可信模块内部的各个硬件单元的操作;
密码算法引擎:是加解密功能的硬件单元,用于建立可信硬件设备和可信计算平台之间的加密通道,产生的密钥存储在可信模块的非易失性存储单元和可信硬件设备的保密数据存储单元中;
接口:用于连接恢复默认值按钮、更新按钮、总线控制器的第三端口、电路功能状态检查点、策略存储单元、配置存储单元、固件存储单元和保密数据存储单元;
非易失性存储单元:用于可信模块存储会话密钥、可信硬件设备的证书和完整性度量结果,具有掉电不丢失的特性;
易失性存储单元:用于为可信模块的执行引擎,提供存储运算数据的临时性存储单元。
2.根据权利要求1所述的可信硬件设备的使用方法,其特征在于,可信硬件设备连接到可信计算平台时,以及每次可信计算平台上电启动时,所有连接在可信计算平台的可信硬件设备,首先进行初始化和自检操作,然后可信计算平台对可信硬件设备进行身份检查;通过身份检查后,可信硬件设备才能在可信计算平台上正常使用,禁止访问者对没有通过身份检查的可信硬件设备进行访问;
可信计算平台根据输入输出系统、访问者、操作系统或应用程序的请求,对可信硬件设备进行完整性检查、工作状态检查和更新操作;
可信计算平台与可信硬件设备之间进行通信时,需要先选择通信方式;通信方式包括:普通的数据通信方式、公开协议的数据通信方式、私有协议的数据通信方式、数字签名的数据通信方式、加密的数据通信方式和数字签名且加密数据通信方式;
具体步骤如下:
A、可信硬件设备的初始化与自检:
A.1可信硬件设备上电时,可信模块首先进行初始化,然后可信模块对可信硬件设备进行完整性检查,检查内容包括:固件存储单元中的初始化默认的固件代码、策略存储单元中的初始化默认的控制策略配置信息、配置存储单元中的初始化默认的工作模式配置信息和保密数据存储单元中的可信硬件设备的证书与初始化默认的会话密钥,并将完整性度量结果存储在可信模块的非易失性存储单元;
A.2可信模块对可信硬件设备的完整性检查结束后,可信模块根据初始化默认的控制策略配置信息,配置总线控制器,并断开总线控制器的第二端口、第三端口和第四端口的开关;
A.3可信模块对可信硬件设备的总线控制器配置完成后,可信模块通过总线控制器,向基本硬件功能电路发送初始化信号,基本硬件功能电路根据初始化默认的工作模式配置信息,开始进行初始化;
B、可信计算平台对可信硬件设备的身份检查:
B.1可信硬件设备的初始化与自检结束之后,可信计算平台通过可信硬件设备的平台总线接口,向可信硬件设备发送交互请求信号;
B.2当可信硬件设备收到交互请求信号后,立即向可信计算平台发送确认信号;否则,不发送确认信号;
B.3可信计算平台收到确认信号后,立即向可信硬件设备发送身份检查命令和返回信息的通信方式;如果可信计算平台没有收到确认信号,则再次向向可信硬件设备发送交互请求信号,如果仍然没有收到可信硬件设备发送的确认信号,则终止当前正在进行的可信计算平台对可信硬件设备的身份检查操作,禁止访问者对该可信硬件设备的访问操作,并向访问者发送报警信号,等待访问者对该可信硬件设备的检查或更换;
B.4当可信硬件设备的可信模块,接收到可信计算平台发送的身份检查命令和返回信息的通信方式后,按照返回信息的传输方式要求,立即将可信硬件设备的证书发送给可信计算平台;如果可信硬件设备的可信模块,没有接收到可信计算平台发送的身份检查命令和返回信息的通信方式,则可信硬件设备的可信模块再次向可信计算平台发送确认信号,如果仍然没有收到可信计算平台发送的身份检查命令和返回信息的通信方式,则可信硬件设备终止当前正在进行的身份检查操作;
B.5可信计算平台将可信硬件设备的证书与访问者提供的可信硬件设备的证书进行比较,判断可信硬件设备的身份合法性;如果可信硬件设备身份合法,则认定可信硬件设备中存在一个合法的可信模块;否则认为该可信硬件设备没有通过身份检查,可信计算平台禁止对该可信硬件设备进行除了初始化与自检和身份检查之外的任何访问操作;
C、可信计算平台对可信硬件设备的完整性检查和工作状态检查:
C.1当可信计算平台对可信硬件设备的身份检查通过后,可信计算平台向可信硬件设备发送完整性检查和工作状态检查的命令,以及一个不重复的随机数和返回信息的通信方式;如果可信计算平台对可信硬件设备的身份检查没有通过,则可信计算平台不对可信硬件设备进行完整性检查和工作状态检查操作;
C.2可信硬件设备的可信模块接收到完整性检查和工作状态检查命令后,进行以下操作:通过可信硬件设备的电路工作状态检查点,检查基本硬件功能电路当前的工作状态;通过总线控制器和密码算法引擎对策略存储单元中所有的策略配置信息、配置存储单元中所有的工作模式配置信息、固件存储单元中所有的固件代码,以及保密数据存储单元中所有的会话密钥和可信硬件设备的证书,进行完整性度量;将完整性度量结果存储在可信模块的非易失性存储单元;对可信计算平台发送的随机数进行加1操作;按照返回信息的通信方式的要求,将完整性度量结果、工作状态检查结果和加1后的随机数发送给可信计算平台;如果可信硬件设备的可信模块没有接收到完整性检查和工作状态检查命令,则不进行任何操作;
C.3当可信计算平台对可信硬件设备的完整性检查、工作状态检查和随机数加1操作的检查通过后,可信硬件设备被认为是可以被信赖的硬件设备,至此,可信计算平台可以正常的使用该可信硬件设备;反之,如果可信计算平台对可信硬件设备的工作状态检查、完整性检查和随机数加1操作的检查中,任何一个检查没有通过,则可信计算平台对可信硬件设备的完整性检查和工作状态检查立即终止,可信计算平台禁止使用该可信硬件设备,并向访问者发送可信硬件设备检查失败的警告,等待访问者对该可信硬件设备进行检查、恢复或更换;
C.4当访问者收到检查失败的警告后,必须手动按下可信硬件设备的恢复默认值按钮,将可信硬件设备强制恢复到的初始化默认状态,然后可信硬件设备重新执行初始化与自检,并由可信计算平台再次对可信硬件设备进行身份检查、完整性检查和工作状态的检查;如果访问者没有收到检查失败的警告,则可信计算平台继续执行对可信硬件设备的完整性检查和工作状态检查;
C.5如果访问者强制可信硬件设备恢复到初始化默认状态之后,仍然不能通过可信计算平台对该可信硬件设备的完整性检查和工作状态检查,则可信计算平台禁止用户继续使用该可信硬件设备,并向用户发出警告信号,由用户对该可信硬件设备进行更换;更换后的可信硬件设备,需要重新进行初始 化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备进行的完整性检查和工作状态检查;
D、可信计算平台对可信硬件设备的更新操作:
下发更新数据的操作方法:
D.1当可信计算平台对可信硬件设备进行固件代码、工作模式配置信息、控制策略配置信息或会话密钥的更新时,需要先约定可信计算平台与可信硬件设备之间的通信方式;
D.2可信计算平台通过约定的通信方式,向可信硬件设备发送更新命令;
D.3可信硬件设备收到更新命令后,通过约定的通信方式,向可信计算平台发送反馈信号;如果可信硬件设备没有收到更新命令,则可信硬件设备不向可信计算平台发送任何信号;
D.4当可信计算平台收到反馈信号后,通过约定的通信方式,向可信硬件设备的可信模块下发更新数据和更新数据的编号;更新数据包括:固件代码、工作模式配置信息、控制策略配置信息或会话密钥;如果可信计算平台没有收到反馈信号,则可信计算平台重新向可信硬件设备发送更新命令;如果仍然无法接收到可信硬件设备的反馈信号,则可信计算平台停止此次对可信硬件设备的更新操作,并通知访问者,由访问者检查、恢复或者更换该可信硬件设备;当用户对可信硬件设备进行强制恢复或者更换后,需要重新执行可信硬件设备的初始化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备的完整性检查和工作状态检查,并且在上述检查通过后,才可以执行可信计算平台对可信硬件设备的更新操作;如果更换的设备仍然无法使用,要么继续更换新的可信硬件设备,要么不再使用该类型的可信硬件设备;
D.5可信硬件设备的可信模块将收到的更新数据和更新数据的编号,分别存储在固件存储单元、配置存储单元、策略存储单元和保密数据存储单元,并立即通过约定的通信方式,向可信计算平台发送确认信号;如果可信硬件设备的可信模块没有收到更新数据和更新数据的编号,则可信硬件设备的可信模块向可信计算平台发送重发更新数据的请求;如果重新发送请求后,可信硬件设备的可信模块仍然不能收到可信计算平台发送的更新数据和更新数据的编号,则可信硬件设备终止此次更新操作;
发送切换信号的操作方法:
D.6可信计算平台收到确认信号后,通过约定的通信方式,向可信硬件设备发送切换信号和更新数据的编号,并等待可信硬件设备的确认信号;切换信号包括:固件代码切换信号、工作模式切换信号、控制策略切换信号和会话密钥切换信号;如果可信计算平台没有收到可信硬件设备发送的确认信号,则可信计算平台重新向可信硬件设备发送切换信号和更新数据的编号;如果仍然无法接收到可信硬件设备的反馈信号,则可信计算平台停止此次对可信硬件设备的更新操作,并通知访问者,由访问者检查、恢复或者更换该可信硬件设备;当用户对可信硬件设备进行强制恢复或者更换后,需要重新执行可信硬件设备的初始化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备的完整性检查和工作状态检查,并且在上述检查通过后,才可以执行可信计算平台对可信硬件设备的更新操作;如果更换的设备仍然无法使用,要么继续更换新的可信硬件设备,要么不再使用该类型的可信硬件设备;
D.7可信硬件设备的可信模块收到切换信号和更新数据的编号后,立即通过约定的通信方式,向可信计算平台发送确认信号;否则,可信硬件设备立即通过约定的通信方式,向可信计算平台发送重发切换信号和更新数据的编号的请求;如果可信硬件设备的可信模块仍然无法收到切换信号和更新数据的编号,则可信硬件设备终止可信计算平台对可信硬件设备的更新操作;
D.8可信计算平台收到确认信号后,立即向访问者发送按动可信硬件设备的更新按钮的提示信号;如果可信计算平台没有收到可信硬件设备发送的确认信号,则可信计算平台重新向可信硬件设备发送切换信号和更新数据的编号;如果仍然无法接收到可信硬件设备的反馈信号,则可信计算平台停止此次对可信硬件设备的更新操作,并通知访问者,由访问者检查、恢复或者更换该可信硬件设备;当用户对可信硬件设备进行强制恢复或者更换后,需要重新执行可信硬件设备的初始化与自检、可信计算平台对可信硬件设备的身份检查,以及可信计算平台对可信硬件设备的完整性检查和工作状态检查,并且在上述检查通过后,才可以执行可信计算平台对可信硬件设备的更新操作;如果更换的设备仍然无法使用,要么继续更换新的可信硬件设备,要么不再使用该类型的可信硬件设备;
D.9当访问者按下可信硬件设备的更新按钮后,可信硬件设备的可信模块立即对总线控制器进行控制策略切换操作,并命令可信硬件设备的基本功能 电路执行固件代码切换和工作模式切换;切换操作执行后,可信硬件设备通过约定的通信方式,向可信计算平台发送确认信号;如果访问者在可信计算平台规定的时间内,没有按动可信硬件设备的更新按钮,则可信计算平台取消此次更新操作,并通过操作系统通知访问者;
删除更新数据的操作方法:
D.11如果可信计算平台需要删除可信硬件设备中不再使用的更新数据,则通过约定的通信方式,向可信硬件设备发送删除更新数据的命令和更新数据的编号;
D.12可信硬件设备根据删除更新数据的命令和更新数据的编号,由可信模块检查更新数据的编号对应的更新数据是否正在使用;如果不使用,则删除固件存储单元、配置存储单元、策略存储单元和保密数据存储单元中与更新数据编号对应的更新数据,并向可信计算平台发送删除成功的返回信号;如果更新数据的编号对应的数据不存在或者正在使用,则取消此次删除操作,并向可信计算平台发送删除数据不存在或者正在使用的返回信号;
D.13当可信计算平台收到可信硬件设备发送的删除更新数据成功的返回信号后,结束对可信硬件设备的数据更新操作;当可信计算平台收到可信硬件设备发送的删除数据不存在或者正在使用的返回信号后,可信计算平台对可信硬件设备进行的删除更新数据的操作结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102375117A CN101901318B (zh) | 2010-07-23 | 2010-07-23 | 一种可信硬件设备及其使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102375117A CN101901318B (zh) | 2010-07-23 | 2010-07-23 | 一种可信硬件设备及其使用方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101901318A CN101901318A (zh) | 2010-12-01 |
CN101901318B true CN101901318B (zh) | 2011-11-30 |
Family
ID=43226847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102375117A Expired - Fee Related CN101901318B (zh) | 2010-07-23 | 2010-07-23 | 一种可信硬件设备及其使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101901318B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063592B (zh) * | 2011-01-07 | 2013-03-06 | 北京工业大学 | 一种可信平台及其对硬件设备的控制方法 |
CN102063593B (zh) * | 2011-01-07 | 2013-01-09 | 北京工业大学 | 主动控制功能的可信设备及其认证方法 |
CN102811436B (zh) * | 2011-06-03 | 2017-06-27 | 联想(北京)有限公司 | 一种固件更新方法及装置 |
US8375221B1 (en) | 2011-07-29 | 2013-02-12 | Microsoft Corporation | Firmware-based trusted platform module for arm processor architectures and trustzone security extensions |
CN102546180A (zh) * | 2012-01-04 | 2012-07-04 | 贾松仁 | 基于ecc跳码的质量安全监管系统及方法 |
CN102779254B (zh) * | 2012-07-06 | 2015-08-26 | 深圳市锐能微科技有限公司 | 一种芯片及其内部模块加密系统 |
US9100192B2 (en) * | 2013-06-07 | 2015-08-04 | Qualcomm Incorporated | Apparatus and method for provisioning an endorsement key certificate for a firmware trusted platform module |
CN105303094B (zh) * | 2015-05-07 | 2016-11-09 | 同方计算机有限公司 | 一种usb主控芯片的安全自验系统及自验方法 |
CN104935608A (zh) * | 2015-07-07 | 2015-09-23 | 成都睿峰科技有限公司 | 一种云计算网络中的身份认证方法 |
CN105260289A (zh) * | 2015-11-02 | 2016-01-20 | 浪潮电子信息产业股份有限公司 | 一种可信服务器硬件平台可信状态提示方法 |
CN107547486A (zh) * | 2016-06-28 | 2018-01-05 | 深圳市中兴微电子技术有限公司 | 一种网络设备身份识别方法及装置 |
CN106301574B (zh) * | 2016-08-24 | 2018-12-14 | 中京天裕科技(北京)有限公司 | 一种can工业光纤加密转换器及其fpga加密算法实现方法 |
CN107437997B (zh) * | 2017-08-15 | 2023-06-20 | 国民技术股份有限公司 | 一种射频通信装置及方法 |
CN109828767A (zh) * | 2017-11-23 | 2019-05-31 | 同方威视技术股份有限公司 | 电子关锁设备及其固件升级方法 |
JP7007570B2 (ja) * | 2017-12-27 | 2022-01-24 | 株式会社ソシオネクスト | 処理装置、半導体集積回路及び状態監視方法 |
CN110389871B (zh) * | 2019-07-24 | 2023-08-01 | 北京交大思诺科技股份有限公司 | 一种具备系统完整性确认功能的安全计算机平台 |
CN113012008B (zh) | 2020-09-15 | 2022-06-03 | 支付宝(杭州)信息技术有限公司 | 一种基于可信硬件的身份管理方法、装置及设备 |
CN112448819A (zh) * | 2020-11-06 | 2021-03-05 | 支付宝(杭州)信息技术有限公司 | 物联网设备的校验、签名文件的生成方法及装置 |
CN113992324A (zh) * | 2021-09-16 | 2022-01-28 | 深圳市有方科技股份有限公司 | 对IoT设备的硬件加密模块的配置方法及相关设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101504705A (zh) * | 2009-03-17 | 2009-08-12 | 武汉大学 | 可信平台模块及其计算机启动控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8239182B2 (en) * | 2007-12-04 | 2012-08-07 | Spansion Llc | Data transmission system-on-chip memory model based validation |
-
2010
- 2010-07-23 CN CN2010102375117A patent/CN101901318B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101504705A (zh) * | 2009-03-17 | 2009-08-12 | 武汉大学 | 可信平台模块及其计算机启动控制方法 |
Non-Patent Citations (3)
Title |
---|
于昇等.基于可信计算平台的身份管理框架.《计算机应用研究》.2009,第26卷(第9期),3493-3496. * |
刘威鹏等.基于可信计算的终端安全体系结构研究与进展.《计算机科学》.2007,第34卷(第10期),257-263,封四. * |
张兴等.一种新的可信平台控制模块设计方案.《武汉大学学报信息科学版》.2008,第33卷(第10期),1011-1014. * |
Also Published As
Publication number | Publication date |
---|---|
CN101901318A (zh) | 2010-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101901318B (zh) | 一种可信硬件设备及其使用方法 | |
TWI643508B (zh) | 用於物聯網智能設備的智慧路由系統 | |
CN106789015B (zh) | 一种智能配电网通信安全系统 | |
CN102708324B (zh) | 一种屏幕锁解锁系统及方法 | |
CN105099705B (zh) | 一种基于usb协议的安全通信方法及其系统 | |
CN110336774A (zh) | 混合加密解密方法、设备及系统 | |
CN105101169A (zh) | 可信执行环境处理信息的方法、装置、终端及sim卡 | |
CN112822177B (zh) | 数据传输方法、装置、设备和存储介质 | |
CN105162808A (zh) | 一种基于国密算法的安全登录方法 | |
CN100550030C (zh) | 在便携式终端主机上添加可信平台的方法 | |
CN104299300A (zh) | 基于nfc的安全智能锁系统的开锁和关锁方法 | |
CN113596009A (zh) | 零信任访问方法、系统、零信任安全代理、终端及介质 | |
CN202759475U (zh) | 数据发送装置、数据接收装置、数据传输系统以及服务器 | |
CN108011867B (zh) | 一种铁路信号的安全加密方法及系统 | |
CN104834874A (zh) | 建立安全执行环境之间的物理局部性 | |
CN104899500A (zh) | 一种电梯用户权限管理系统和方法 | |
CN103077018B (zh) | 一种基于安卓系统的设备接口的控制方法及系统 | |
CN105306493A (zh) | 基于加密机制的ipc服务实现方法及系统 | |
CN102360407A (zh) | 一种手机与电脑的通讯方法 | |
CN103227804A (zh) | 使用帐户代理模块连接超级用户帐户命令解译器的方法 | |
CN201741156U (zh) | 一种可信硬件设备 | |
CN100596350C (zh) | 工业控制数据的加密解密方法 | |
CN107317925B (zh) | 移动终端 | |
CN113542081B (zh) | 一种安全的智能家居控制方法和系统 | |
CN113472737B (zh) | 边缘设备的数据处理方法、装置及电子设备 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111130 |
|
CF01 | Termination of patent right due to non-payment of annual fee |