CN201741155U - 一种可信计算平台 - Google Patents
一种可信计算平台 Download PDFInfo
- Publication number
- CN201741155U CN201741155U CN 201020272739 CN201020272739U CN201741155U CN 201741155 U CN201741155 U CN 201741155U CN 201020272739 CN201020272739 CN 201020272739 CN 201020272739 U CN201020272739 U CN 201020272739U CN 201741155 U CN201741155 U CN 201741155U
- Authority
- CN
- China
- Prior art keywords
- control module
- credible
- trusted
- platform control
- processor
- 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 - Lifetime
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
可信计算平台是可信计算机系统的一个关键组成部分。它是整个信任链的载体,可信计算平台包括:处理器、可信平台控制模块、时钟频率发生器、显示设备控制器、内存设备、北桥控制器、南桥控制器、外围设备和BOOT ROM;在可信计算平台上,可信平台控制模块、处理器、内存设备、显示设备控制器和南桥控制器的输入输出接口,分别连接到北桥控制器。本实用新型专利中可信平台控制模块作为主设备与CPU一同连接在可信计算平台的北桥控制器,为在信任链的建立过程中,实现可信平台控制模块的主动度量提供硬件条件。
Description
技术领域
本实用新型涉及信息安全领域,具体为一种可信平台。
背景技术
在基于网络的信息系统中,终端计算机只有从芯片、主板等硬件BIOS、操作系统等底层软件综合采取措施,才能有效的提高其安全性,正是基于这一技术问题催生了可信计算的诞生,其基本思想是在计算机系统中首先建立一信任根,再建立一条信任链,一级测量认证一级,一级信任一级,把信任关系扩大到整个计算机系统,从而确保计算机系统的可信。因此,信任根和信任链传递是可信计算的基本问题。
在技术领域,信任链传递技术得到了广泛的研究和较大的发展。TCPA和TCG已经制定了关于可信计算平台技术规范。在该规范中,解决了系统可信根的问题,提出了可信传递的概念,阐述了系统从加电开始应该如何开展可信度量,并将系统运行控制权转移到操作系统直至应用的基本原则和过程。由于现实应用的迫切需要,在信任链相关的研究领域,国际上的研究活动非常活跃,TCG的可信计算技术的核心思想是通过硬件实现的信任根支持软件可信性的实现一级软件可信性对外证明的实现。国内方面也相继研究出来了相关的可信产品,国内对基于TPM的操作系统扩展可信路径机制、基于TPM的可信文件系统等进行了经验型研究并取得了相应的成果,这些工作及响应的成果为信任链理论模型的研究奠定了一定的基础。
TCG提出的信任链,是以信任根TPM芯片为核心,起点为CRTM。CRTM可以看成是引导BIOS的程序,是一段简单的可控的代码模块,认为气绝对可信。从加电开始,CRTM引导BIOS并验证BIOS的完整性,如果BIOS代码段完整没有被篡改,就说明BIOS与最初的状态一致,因此认为其是安全的,则把CPU控制权交给BIOS代码。BIOS运行其代码,进行计算机硬件的初始化,当BIOS运行即将结束且需要递交CPU控制权时,它要验证OS Loader的完整性,确保其没有被篡改过,是安全的,验证通过之后再把CPU控制权交给OS Loader代码。类似的,再到OS,再到应用程序,这样以一级验证一级,一级信任一级的方式,实现了信任链的传递,最终形成一个可信的运行环境,从根本上保证了计算机系统的安全性。
然而,以上这种传递信任链的度量方法存在着以下几点不足:
1.以上这种链式的信任链传递方式存在信任度衰减问题,即伴随着信任链的传递各部分的信任度有锐减的现象,这是链式传递的弊端。
2.以上这种以一级度量一级传递信任链的方式来保证系统的安全性,并不能防御TOCTOU(Time Of Check to Time Of Use)攻击。TOCTOU攻击即攻击者利用软件度量和软件程序使用这两个时间点的时间差,对程序内存进行篡改,从而导致TPCM所提供的平台信息无法反映平台的实际运行情况。这种传统的度量信任链及传递方式并不能防御这种攻击。
实用新型内容
本实用新型的目的是针对上述现有技术的不足,提出了一种新型的信任链验证方法。有效地解决随着信任链的传递信任度衰减的问题以及防御TOCTOU攻击。
为了实现上述目的,本实用新型采用的技术方案如下:
1、一种可信计算平台,其特征在于,硬件组成包括:处理器、可信平台控制模块、时钟频率发生器、显示设备控制器、内存设备、北桥控制器、南桥控制器、外围设备和BOOT ROM;
在可信计算平台上,可信平台控制模块、处理器、内存设备、显示设备控制器和南桥控制器的输入输出接口,分别连接到北桥控制器;
时钟频率发生器的端口1连接到可信平台控制模块的频率信号输入接口1,时钟频率发生器的端口2分别连接到可信平台控制模块的频率信号输入接口2和处理器的频率信号输入接口;
可信平台控制模块的输入输出接口,连接到处理器的控制接口;
可信平台控制模块包括:微处理器、密码算法引擎、非易失性存储单元、易失性存储单元、通信总线、输入输出接口、频率信号输入接口1和频率信号输入接口2;
可信平台控制模块的微处理器,用于执行可信平台控制模块内部的固件代码;
可信平台控制模块的密码算法引擎,用于为可信计算平台提供数据加解密和数字签名服务;
可信平台控制模块的的非易失性存储单元,用于存储掉电不丢失的数据,包括固件代码、完整性度量结果、完整性度量参考值、两个相邻信任节点之间的时间间隔参考值、两个相邻的检查节点之间的时间间隔参考值、加密密钥和会话密钥;
可信平台控制模块的易失性存储单元,用于可信平台控制模块固件代码运行过程中,生成数据的临时性存储;
可信平台控制模块的内部总线,用于连接可信平台控制模块内部各个单元;
可信平台控制模块的输入输出接口,用于可信平台控制模块与可信计算平台之间进行数据交互;
可信平台控制模块的频率信号输入接口1,用于从可信计算平台接收可信平台控制模块的工作频率;
可信平台控制模块的频率信号输入接口2,用于从可信计算平台采集可信计算平台的处理器的工作频率,同时也用于统计处理器的执行时间;
外围设备和BOOT ROM分别通过信号线连接到南桥设备控制器。
BOOT ROM是可信计算平台的输入输出系统BIOS的存储载体,一般多为可读写的非易失性存储单元;
外围设备中至少包括外部存储设备;外围设备存储器除用于用户数据存储外,还用于存储信任链中各个信任节点的备份代码;
本实用新型效果:
在本实用新型中可信计算平台及其信任链验证方法的效果如下:可信平台控制模块通过主设备模式连接在可信计算平台的北桥设备控制器上,通过北桥设备控制器和南桥设备控制器可以实时的对信任链进行完整性度量操作和保护。
附图说明:
图1描述的是可信平台控制模块的从设备的连接方式。
图2描述的是可信平台控制模块的主设备的连接方式
图3描述的是可信平台控制模块的组成结构
图4是本实用新型可信平台信任链传递验证方法中尾随方式进行信任链保护示意图,Cn,n=1、2、3、4,代表处理器对信任链的建立流程,P1、P2、...、P25表示在信任链中插入的检查点,D1、D2、...、D21表示信任链中检查点P1到P25之间的代码块;
具体实施方式:
下面结合附图以及实施案例对本实用新型进行详细的说明。
一、可信计算平台的硬件构成
一种可信计算平台,其特征在于,硬件组成包括:处理器、可信平台控制模块、时钟频率发生器、显示设备控制器、内存设备、北桥控制器、南桥控制器、外围设备和BOOT ROM;
在实际应用中,具体配置如下:
1)可信计算平台的主板选用华硕P5K-VM,一款Intel G33的主板;
2)处理器选用Intel的酷睿2处理器,需要在处理器的时钟输入信号接口和复位接口设置一个控制开关,用于可信平台控制模块对处理器的停止、继续、和复位控制;
3)内存设备选用金士顿的1GByte的内存单元;
4)时钟频率发生器选用适用于处理器的双端口的时钟晶振,其中一个端口用于向可信平台控制模块提供时钟频率,另一个端口向处理器提供时钟频率;
5)显示设备控制器,选用nVidia Geforce系列显卡系列显卡;
6)北桥控制器,选用的是Inter G33芯片组;
7)南桥控制器,选用的是Intel ICH9南桥芯片;
5)外存设备,选用迈拓的500Gbyte的硬盘;
二、信任链的验证方法:
可信计算平台的信任链中有基本输入输出系统(BIOS)、磁盘主引导记录区(MBR)、操作系统引导程序(OS Loader)、操作系统内核(OS kernel)和应用程序(Application),一个五种信任节点,其中BIOS、MBR、OS Loader和OS Kernel是可信计算平台启动阶段重要的信任节点。
在启动阶段,可信平台控制模块通过时钟信号采集到处理器的工作频率是2GHZ,BIOS长度400Kbytes,MBR长度512Bytes,OS Loader长度1Mbytes,OS Kernel长度100Mbytes,操作系统是Windows XP。可信平台控制模块与处理器之间的控制信号编号为:处理器停止执行的编号:Ox001h,复位的控制信号的编号:Ox002h,继续执行的控制信号的编号:Ox003h;处理器对可信平台控制模块的中断请求信号为Ox004h。
如图4所示:
BIOS的完整性参考值是Data_BIOS、MBR的完整性参考值是Data_MBR、OSLoader的完整性参考值是Data_Loader和OS Kernel的完整性参考值是Data_Kernel;
BIOS代码中的预先设置的时间间隔是0.02秒,即BIOS中需要设置7个检查点(P1、P2、...、P7),一共6个代码块,分别是Code1、Code2、Code3、Code4、Code5和Code6,完整性度量结果分别是D1、D2、D3、...、D6,统计时间分别是T1、T2、T3、...、T6;
MBR代码中的预先设置的时间间隔是0.001秒,即BIOS中需要设置6个检查点(P8、P9、P10、...P13),一个5个代码块,分别是Code7、Code8、Code9、Code10和Code11,完整性度量结果分别是D7、D8、D9、...、和D11,统计时间分别是T7、T8、T9、...、和T11;
OS Loader中预先设置的时间间隔是0.01秒,即BIOS中需要设置5个检查点(P14、P15、...、和P18),一个4个代码块,分别是Code12、Code13、Code14和Code15,完整性度量结果分别是D12、D13、D14和D15,统计时间分别是T12、T13、T14和T15;
OS kernel中预先设置的时间间隔是0.2秒,即BIOS中需要设置7个检查点(P19、P20、P21、...、P25),一个6个代码块,分别是Code16、Code17、Code18、Code19 Code20和Code21,完整性度量结果分别是D1、D2、D3、...、D21,统计时间分别是T1、T2、T3、...、T21;
A、可信计算平台首次使用时,执行时间统计和完整性度量的操作:
完整性度量是一种通过杂凑算法,检查代码是否被篡改的手段。
1)可信计算平台上电启动,可信平台控制模块通过信号输入端口2,接收对可信计算平台的处理器的工作时钟信号,并对处理器的工作时钟信号进行10分频,得到200MHZ的信号;
2)在可信计算平台启动阶段,可信平台控制模块通过统计处理器执行信任链中各个信任节点的时钟周期的个数分别是:BIOS中每条指令的读取时间是0.3微秒,从硬盘写一条指令用时0.01微秒;从内存中读取一条指令的时间是0.001微秒;处理器执行一条单字节长度的指令用时0.0005微秒;
3)可信平台控制模块对信任链中的BIOS、MBR、OS Loader、OS Kernel分别进行完整功能性度量,完整性度量结果分别是Data1、Data2、Data3和Data4,编号分别是0x0000,0001h、0x0000,0002h、0x0000,0003h和0x0000,0004h,均存储在可信平台控制模块的非易失性存储单元中;
4)BIOS的大小为400Kbytes,读出用时0.12秒,执行用时约为0.001秒,总用时0.121秒,编号为0x000,0005h;MBR大小512Bytes,从硬盘读到内存的时间为0.00512秒,从内存读到CPU的时间为0.000512秒,执行时间约为0.0000005秒,总时间为0.0056325秒,编号为0x000,0006h;OS Loader大小为4Mbytes,从硬盘读到内存的时间为0.04秒,从内存读到CPU的时间为0.004秒,执行时间约为0.004秒,总时间为0.048秒,编号为0x000,0007h;OS Kernel大小为100Mbytes,从硬盘读到内存时间为1秒,从内存读到CPU时间为0.1秒,执行时间约为0.1秒,总时间为1.2秒,编号为0x000,0008h;从可信计算平台启动到信任链建立完成,需要的总时间为1.3746325秒,编号为0x000,0009h(上述时间为本方法采用后的时间)。
5)BIOS、MBR、OS Loader和OS Kernel的完整性参考值分别为Data1、Data2、Data3、和Data4,分别与完整性参考值Data_BIOS、Data_MBR、Data_Loader和Data_Kernel一一对应,且完全一致;
B、可信平台控制模块向信任链中各个信任节点插入检查点:
6)可信计算平台首次使用时的执行时间统计和完整性度量结束之后,可信平台控制模块通过输入输出接口,向可信计算平台的处理器的控制接口发送重新启动的控制信号,同时对可信计算平台进行复位操作;
7)可信计算平台重新上电启动,可信平台控制模块依次地对信任链的各个信任节点的代码BIOS、MBR、OS Loader和OS Kernel分别进行完整性度量操作,完整性度量结果分别是Data1、Data2、Data3、和Data4,与完整性参考值结果一致;
8)可信平台控制模块对信任链的各个信任节点的完整性度量通过之后,可信平台控制模块通过输入输出接口,向处理器的控制接口发送停止的控制信号0x001h;收到停止的控制信号0x001h后,处理器停止执行代码,直到收到可信平台控制模块发送的复位的控制信号0x002h或者继续执行的控制信号0x003h;
9)通过预先设置的两个相邻的检查点的时间间隔,计算出中本实例中的可信计算平台的信任链中需要设置25个检查点;即需要度量21个代码块的完整性度量结果,并统计21个代码块的执行时间;完整性度量结果分别是D1、D2、D3、...、D21,统计时间分别是T1、T2、T3、...、T21。
BIOS代码中的预先设置的时间间隔是0.02秒,即BIOS中需要设置7个检查点,一共6个代码块,分别是Code1、Code2、Code3、Code4、Code5和Code6;
MBR代码中的预先设置的时间间隔是0.001秒,即BIOS中需要设置6个检查点,一个5个代码块,分别是Code7、Code8、Code9、Code10和Code11;
OS Loader中预先设置的时间间隔是0.01秒,即BIOS中需要设置5个检查点,一个4个代码块,分别是Code12、Code13、Code14和Code15;
OS kernel中预先设置的时间间隔是0.2秒,即BIOS中需要设置7个检查点,一个6个代码块,分别是Code16、Code17、Code18、Code19 Code20和Code21;
C、可信计算平台启动阶段,可信平台控制模块对信任链的主动检查:
10)可信平台控制模块向信任链中各个信任节点插入检查点的操作结束之后,可信计算平台重新上电启动,处理器开始执行启动代码,可信平台控制模块开始对处理器工作时钟进行计数;
11)当处理器执行到信任链的信任节点中的检查点时,处理器通过控制接口向可信平台控制模块的输入输出接口发送中断请求信号0x004h,并且暂停执行操作;
12)可信平台控制模块收到处理器的中断请求信号0x004h后,停止对处理器工作时钟进行统计,将时间统计结果与预先设置的时间间隔进行比较;BIOS中的7个检查点之间的6个代码块的运行时间和预先设置的时间间隔一直,则根据本实例中预先设置的奇数代码块检查原则,可信平台控制模块检查奇数块的完整性,检查结果分别是D1、D3和D5;MBR中设置了6个检查点,一共5个代码块,本实例中的预先设置的检查原则是偶数检查原则,代码块的完整性度量结果是D8和D10;OS Loader中设置了5个检查点,一共4代码块,本实例中的预先设置的检查原则是奇数检查原则,代码块的完整性度量结果是D13和D15;OS Loader中设置了7个检查点,一共6代码段,本实例中的预先设置的检查原则是奇数检查原则,代码块的完整性度量结果是D17、D19和D21;
13)从完整性度量结果观察到,BIOS、MBR、OS Loader和OS Kernel的完整性度量结果Data1、Data2、Data3、Data4与完整性参考值Data_BIOS、Data_MBR、Data_Loader和Data_Kernel一致,则认为本次启动过程中,可信计算平台的信任链未被篡改;
D、可信平台控制模块删除和改变信任链中的检查点:
14)当需要删除当前信任链的BIOS信任节点中的检查点时,可信平台控制模块从硬盘设备中,读取需要BIOS的信任节点的备份代码Data_BIOS_SP;
15)可信平台控制模块对BIOS信任节点的备份代码Data_BIOS_SP进行完整性度量,将完整性度量结果Data5与完整性参考值Data_BIOS进行比较,得出两个数据一致;
16)然后,可信平台控制模块使用Data_BIOS_SP和Data5,替换之前存储在可信平台控制模块的非易失性存储单元中的Data_BIOS、Data1和P1、P2、P3、P4、P5、P6和P7的位置以及时间间隔;
17)当需要在信任链中BIOS信任节点中添加检查点P1时,可信平台控制模块首先执行22)、23)和24)步骤的方法,对信任节点BIOS中的检查点P1、P2、P3、P4、P5、P6和P7进行删除操作,然后再根据新设置的两个相邻的信任节点之间的时间间隔T1、T2、T3、T4和T5,使用7)、8)、9)、10)和11)步骤中的方法,对信任节点BIOS进行插入检查点P1、P2、P3和P4的操作,并对任意两个相邻的检查点之间的信任节点的代码进行完整性度量,然后将完整性度量结果D1、D2和D3,以及时间间隔T1、T2和T3分别存储在可信平台控制模块的非易失性存储单元;
18)操作执行结束;
运行效果分析:
1)在可信计算平台初始化之后的信任链的建立过程中,在处理器正常进行信任链建立,并执行完整性度量的情况下,就本实例分析结果得出,由于执行了25个检查点语句,同时根据预先设置的检查原则,由可信平台控制模块对信任链多进行了10个代码块的度量操作,因此信任链的建立时间有所增加,但是安全性得到了提高,防止信任链中的信任节点度量之后,再被非法篡改;如果试验中仅仅针对运行时间出现问题的代码块进行完整性度量,则信任链建立时间大幅度减少的同时,也同样能够降低信任链被篡改的风险;
2)在可信计算平台初始化之后的信任链的建立过程中,如果处理器只执行信任链的信任节点,而不进行对信任节点的度量操作,则采用分块的度量方式会相对与效果分析1)中的执行效果,会有更大的时间结余,结余时间会接近于50%。如果同样只针对时间间隔出现异常的代码块进行完整性度量,则结余时间会远大于50%。
Claims (1)
1.一种可信计算平台,其特征在于,硬件组成包括:处理器、可信平台控制模块、时钟频率发生器、显示设备控制器、内存设备、北桥控制器、南桥控制器、外围设备和BOOT ROM;
在可信计算平台上,可信平台控制模块、处理器、内存设备、显示设备控制器和南桥控制器的输入输出接口,分别连接到北桥控制器;
时钟频率发生器的端口1连接到可信平台控制模块的频率信号输入接口1,时钟频率发生器的端口2分别连接到可信平台控制模块的频率信号输入接口2和处理器的频率信号输入接口;
可信平台控制模块的输入输出接口,连接到处理器的控制接口;
外围设备和BOOT ROM分别通过信号线连接到南桥设备控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201020272739 CN201741155U (zh) | 2010-07-23 | 2010-07-23 | 一种可信计算平台 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201020272739 CN201741155U (zh) | 2010-07-23 | 2010-07-23 | 一种可信计算平台 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN201741155U true CN201741155U (zh) | 2011-02-09 |
Family
ID=43556431
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201020272739 Expired - Lifetime CN201741155U (zh) | 2010-07-23 | 2010-07-23 | 一种可信计算平台 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN201741155U (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718806A (zh) * | 2016-01-26 | 2016-06-29 | 浪潮电子信息产业股份有限公司 | 一种基于国产bmc和tpm2.0实现可信主动度量的方法 |
CN109861970A (zh) * | 2018-12-18 | 2019-06-07 | 北京可信华泰信息技术有限公司 | 一种基于可信策略的系统 |
-
2010
- 2010-07-23 CN CN 201020272739 patent/CN201741155U/zh not_active Expired - Lifetime
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105718806A (zh) * | 2016-01-26 | 2016-06-29 | 浪潮电子信息产业股份有限公司 | 一种基于国产bmc和tpm2.0实现可信主动度量的方法 |
CN109861970A (zh) * | 2018-12-18 | 2019-06-07 | 北京可信华泰信息技术有限公司 | 一种基于可信策略的系统 |
CN109861970B (zh) * | 2018-12-18 | 2022-04-22 | 北京可信华泰信息技术有限公司 | 一种基于可信策略的系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101901319B (zh) | 一种可信计算平台以及信任链传递验证方法 | |
Eldefrawy et al. | Smart: secure and minimal architecture for (establishing dynamic) root of trust. | |
Frigo et al. | Grand pwning unit: Accelerating microarchitectural attacks with the GPU | |
CN107357666B (zh) | 一种基于硬件保护的多核并行系统处理方法 | |
KR101689204B1 (ko) | 디바이스의 펌웨어 무결성 검증 | |
US9489512B2 (en) | Trustzone-based integrity measurements and verification using a software-based trusted platform module | |
CN106127056A (zh) | 一种国产bmc芯片可信固件的设计方法 | |
US20140129818A1 (en) | Electronic device and booting method | |
CN104794393A (zh) | 一种嵌入式分区映像安全认证及内核可信引导方法及其设备 | |
CN103049293B (zh) | 一种嵌入式可信系统的启动方法 | |
CN102136043A (zh) | 一种计算机系统及其度量方法 | |
CN102436566A (zh) | 一种动态可信度量方法及安全嵌入式系统 | |
CN109992973B (zh) | 一种利用oprom机制的启动度量方法及装置 | |
CN109784070A (zh) | 一种可信硬件结构 | |
Luo et al. | On security of trustzone-m-based iot systems | |
CN103425505B (zh) | 一种ic卡电能表在线升级方法及系统 | |
CN103488937A (zh) | 一种度量方法、电子设备及度量系统 | |
CN103955649B (zh) | 一种安全启动终端设备的方法 | |
CN201741155U (zh) | 一种可信计算平台 | |
US12032478B2 (en) | Electronic apparatus for time series data management, and method and storage medium | |
CN103258164A (zh) | 一种嵌入式可信系统的启动方法 | |
CN103795905A (zh) | 一种网络摄像机可信启动方法 | |
WO2023045744A1 (zh) | 加固方法、注册方法、运行方法、电子设备和存储介质 | |
Zhang et al. | Flash controller-based secure execution environment for protecting code confidentiality | |
CN110399726A (zh) | Tpm物理芯片检测方法、装置、设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20110209 |