国家标准全国信息安全标准化技术委员会_信息安全国家标准
国家标准全国信息安全标准化技术委员会由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“信息安全国家标准”。
《可信计算规范
第2部分:可信平台主板功能接口规范》
编制说明
可信计算标准平台组
2011年09月
国家标准《可信计算规范
第2部分:可信平台主板功能接口规范》
编制说明
一、任务来源
可信计算技术解决了以往终端PC体系结构上的不安全,从基础上提高了可信性,正在成为计算机安全技术与产业的发展趋势,各个国家和IT企业巨头都积极投身于可信计算领域的技术研究、标准制定与可信计算产品开发,以企占领未来信息安全以至IT技术的制高点。
为了推进可信计算在中国快速、健康的发展,2008年2月,全国信息安全标准化技术委员会将“可信平台主板功能接口”课题下达给北京工业大学,课题负责人沈昌祥院士。沈昌祥院士组织成立了以企业为主体的“产学研用”结合的“可信平台主板功能接口”,研究制定“可信平台主板功能接口规范”。项目启动会于2008年12月17日在北京工业大学召开。
可信计算规范分为4个部分,第1部分:可信平台控制模块规范、第2部分:可信平台主板功能接口规范、第3部分:可信基础支撑软件规范、第4部分:可信网络连接架构规范。
本部分是该系列标准的第2部分,由北京工业大学、中国长城计算机深圳股份有限公司、武汉大学、南京百敖软件有限公司、航天科工706所等负责起草。参与标准制定的单位有中国电子科技集团公司信息化工程总体研究中心、北京龙芯中科技术服务中心有限公司、中安科技集团有限公司、瑞达信息安全产业股份有限公司、江南计算所、中船重工第707研究所、华为技术有限公司、北京超毅世纪网络技术有限公司、北京华大恒泰科技有限责任公司等。
二、编制原则
1)积极采用国家标准和国外先进标准的技术,并贯彻国家有关政策与法规; 2)标准编制要具有一定的先进性、科学性、可行性、实用性和可操作性;
3)标准内容要符合中国国情,广泛征求用户、企业、专家和管理部门的意见,并做好意见的正确处理;
4)面向市场,参编自愿;标准编制工作与意见处理,应坚持公平、公正,切实支持产业发展;
5)合理利用国内已有标准科技成果,处理好标准与知识产权的关系; 6)采用理论与实践相结合的工作方法,开展标准验证试点工作,并充分利用国内已有的各类可信计算重点项目、示范项目的建设经验,处理好标准的先进性和实用性之间的关系;
7)尽可能吸纳成熟的技术和已有共识的框架结构,适当的提出前瞻性的规范。8)标准结构和编写规则,按照GB/T1.1-2000执行。
三、工作过程
该标准的国标计划号为20090317-T-469。2009年4月20日-21日于北京工业大学,由北京工业大学、中国长城计算机深圳股份有限公司、南京百敖软件有限公司、武汉大学、航天科工706所、武汉瑞达信息安全产业股份有限公司、中国电子科技集团公司信息化工程总体研究中心、北京龙芯中科技术服务中心有限公司、中安科技集团有限公司等单位对可信平台主板功能接口的技术思路进行了首次讨论,召开项目启动会,并安排了后续工作。
2009年6月8日于北京工业大学,由北京工业大学、中国长城计算机深圳股份有限公司、南京百敖软件有限公司、武汉大学、航天科工706所、武汉瑞达信息安全产业股份有限公司、中国电子科技集团公司信息化工程总体研究中心、北京龙芯中科技术服务中心有限公司、中安科技集团有限公司等单位进一步讨论可信平台技术思路,并提出双系统体系结构的思想;根据沈院士的建议,组内讨论并形成了第一版《可信平台主板功能接口》草案。同时此次会议对标准的验证方案进行了讨论,确定标准验证方案及分工。明确分工。
2009年9月2日-4日于北京丰台,由北京工业大学、中国长城计算机深圳股份有限公司、南京百敖软件有限公司、武汉大学、航天科工706所、武汉瑞达信息安全产业股份有限公司、中国电子科技集团公司信息化工程总体研究中心、北京龙芯中科技术服务中心有限公司、中安科技集团有限公司等单位讨论6月份提出的草案的修改意见,并与沈院士讨论TPCM先启动的设计思路,认为此思路对我国可信计算具有一定创新意义;基于该设计思路对草案进行了讨论和完善,此次会议形成了工作组认可的统一版本。同时此次会议初步完成了TPCM平台主动度量功能与EFI BIOS的多度量功能。
2009年9月21日-23日,于江苏无锡,由北京工业大学、中国长城计算机深圳股份有限公司、南京百敖软件有限公司、武汉大学、航天科工706所、武汉瑞达信息安全产业股份有限公司、中国电子科技集团公司信息化工程总体研究中心、北京龙芯中科技术服务中心有限公司、中安科技集团有限公司等单位讨论相关的标准接口,完善验证方案,主要是对传统BIOS多代理度量验证方案进行了深入讨论并对后续工作进行分工。
2009年11月18日-20日于深圳长城电脑,由北京工业大学、中国长城计算机深圳股份有限公司、南京百敖软件有限公司、武汉大学、航天科工706所、武汉瑞达信息安全产业股份有限公司、中国电子科技集团公司信息化工程总体研究中心、北京龙芯中科技术服务中心有限公司、中安科技集团有限公司等单位进一步讨论可信平台主板功能和接口问题以及其与其它标准之间的接口问题,最终形成了可信平台主板功能接口报告、可信平台主板功能接口的最新标准文本和相应的标准编制说明。
2009年11月30日于北京通过安标委中期检查。
2009年12月11日-14日于北京工业大学召开全体会议,对标准文稿进行了全面讨论,增加了对外设控制的支持。
2010年3月18日-22日于南京百敖软件股份有限公司召开全体会议,核意见稿的发布问题。
集中讨论审
四、主要内容说明 4.1 研究背景
自主创新的可信计算平台和相关产品作为国家信息安全基础建设的重要组成部分,是国家信息安全战略的重要组成部分。我们只有掌握关键技术才能摆脱牵制,提升整个信息安全的核心竞争力。可信计算平台产品将会在政府、机关、军队、金融等各个领域中发挥出非凡的作用。
目前信息技术产业的市场垄断可能使可信计算技术成为一种新的、比以前更加难以突破的技术壁垒,国家需要尽力争取技术上的优势,才能够在该问题上尽可能地占据主动。在标准制定方面,要在国际上占据主动,就需要首先做出符合中国特色的标准。在专利方面,需要在自主知识产权相关的技术上下功夫做出自己的特色,这样才能在国际市场上享有更大的话语权,顺利地发展可信计算产业。
可信平台主板的CPU、主板及其I/O端口、OptionROM、BIOS、OS、APP都是平台需要控制的目标,与网络传输设备及其传输协议等可信网络连接TNC(Trusted Network Connect)也关联。但是,一些关键设备与核心技术掌握在国外大厂商手中,国内制定可信计算技术和方案设计缺乏信息自主和可控的信息处理主导权。急切需要从计算机体系结构和完整性度量策略、度量实现方法等方面创新。
4.2 编制思路
可信平台主机总体特性是以一个完整的、可控子系统方式运行在通用计算机系统中,结合密码学技术工具,通过在系统内建立和维护信任链,为通用计算机提供安全可信的运行环境。因此,相对于传统的普通计算机体系结构而言,它有独立的嵌入系统并且能够在主机最开始启动阶段主动对主机系统的状态变化进行现场信息采集,并以日志形式存储度量事件和结果,最终结合可信认证模型完成认证。在平台启动过程对状态变化的目标进程或要执行的代码进行某种度量、进程监控或执行结果基于状态的评估与反馈,对信任链的动态维护特性。例如,静态度量完毕的代码在动态内存中执行前遭受到木马或缓冲区溢出攻击而出现断链故障情形,系统可以及时地判断并响应。
可信平台主机的根本问题是可信根和可信传递。信任基于芯片内的可信根在系统中进行可信传递,从而建立信任链。通过扩展系统中的信任链提供基于度量的监控反馈服务,构建通用计算机平台的可信计算环境。上层用户通过可信平台提供可信软件服务,实现可信应用,保障应用操作过程的可控。除此之外,与可信计算关键技术配合完成的可信存储、平台身份验证以及平台配置信息验证,加强用户使用计算资源的访问控制策略。
在上面的定义中不包含基于操作系统的上层应用软件包。可信计算体系结构为上层的可信应用和相关的可信服务提供了一个基础平台,各种应用、服务软件可根据各自行业的应用场景完成。可信平台仅仅提供最基本的可信计算保障机制、敏感数据存储安全与密钥证书管理等基础服务设施。上层程序可以在可信软件服务包的基础上构建丰富的应用。
可信计算平台主板功能接口主要完成的功能目标是:在软件逻辑上建立基于可信平台控制模块(TPCM)的静态信任链,信任链的建立范围是基于TPCM开始,传递到操作系统内核(OS kernel)运行之前。其主要意义在于:开机第一时刻起,实现基于TPCM的信任链建立。
拟解决的关键问题包括: 可信计算平台主板框架; 可信计算平台信任传递的流程; 可信平台主板逻辑功能接口;
可信计算信任度量方法,以及结果的存储;
4.3 技术路线、实验方案
4.3.1 可信度量根植入TPCM TCG的相关规范(TCG Specification Architecture Overview)规定了三种可信根,分别是可信度量根、可信存储根和可信报告根;其中,可信存储根和可信报告根存储在不可篡改的可信平台模块(Trusted Platform Module,TPM)中,核心可信度量根(CRTM)存储在基本输入输出系统(Basic Input Output System,BIOS)中。可信度量根是建立可信链的重要部件。可信度量根是不需要度量的初始化可信部件,由该部件度量计算环境中的其它部件,开始信任链的建立和传递,在各计算模块之间实现信任的传递。所以如何设计可信度量根是重要的研究内容。
CPURAMMCHPCILAN 接口BIOSICHLPC图1 TCG可信计算架构
TPM 上图是TCG规范中提供的可信计算终端系统结构图,该终端系统除了包括CPU、南桥芯片ICH、北桥芯片MCH、外设部件互连标准(Peripheral Component Interconnect,PCI)接口、随机存取器(Random-Acce Memory)、局域网(Local Area Network,LAN)接口外,还包括TPM,其通过少针脚型接口(Low Pin Count,LPC)总线与ICH相连。因为TPM作为ICH的从设备由ICH启动,所以TPM无法从开机第一时刻起就进行度量,所以TCG将度量根CRTM存储在BIOS中,如下图所示。
BIOS中的CRTM和TPM中的RTR和RTS共同构成了TCG中的可信构建模块(TBB)。但是,目前普遍采用的BIOS都是EEPROM(电可擦写制度存储器),用户可以通过厂商提供的接口修改BIOS的内容。所以BIOS中的CRTM如果被修改,则整个信任传递的根就是不可信的,那么整个信任链的建立在实际意义上已经失败。
MotherboardTrusted Building BlockCRTM(BIOS)Reset VectorRTR/RTS(TPM)BindingBindingCPU 图2 TCG TBB结构图
根据TCG规范,可信计算环境的建立依赖于不可篡改的可信根以及基于可信根的信任链,而目前业界采用的TCG可信终端系统,其中的可信度量根存储在可以修改的BIOS中;因为信任链是一个单向传递链,其间任意一个节点出现问题,都会导致整个信任环境建立失败,因此,一旦该可信度量根被篡改,则无法在该可信终端系统中建立可信计算环境,导致可信终端系统存在安全隐患。
所以我们将度量根放入TPCM中,这样三个逻辑根(RTM、RTS、RTR)都存储在唯一的物理可信根TPCM中,实现防止外界篡改逻辑根的可能性。
4.3.2 TPCM先于CPU启动
如上所述,将度量根植入TPCM中只是第一步,而更重要的是要实现TPCM先于CPU执行BIOS启动,运行不可篡改的度量代码,从而度量BIOS代码,保证CPU执行的BIOS程序的完整性得到验证,从而完成信任链传递的第一步。
现有的可信终端系统中,TPM被安置在南桥的LPC总线上,作为南桥芯片的从设备,由南桥芯片启动,因此,TPM启动被搁置到CPU执行BIOS代码后,所以只能依靠存储在BIOS中的CRTM对南桥芯片自身的启动及启动之前的动作提供可信的计算环境;但是,BIOS中代码的脆弱性是值得注意的问题;并且,TCG规范中只提供了操作系统(Operating System,OS)层以下的可信传递流程,但并未给出信任传递的具体实现方法,且无法为OS层以上的计算提供可信的计算环境。
有鉴于此,本方案的目的在于提供一种全新的可信计算架构,以建立可信计算环境。可信终端基于我国自主研发的可信平台控制模块TPCM;其中TPCM存储核心可信度量根,防止外界篡改;TPCM中的RTM对BIOS的代码进行度量,并发送度量完成的指示;CPU再加载并执行BIOS中的代码;此方案需要修改计算机主板,实现嵌入式可信计算子系统先于CPU启动。所以我们构建TCB在构建时,原则上要求满足:
1、确保嵌入系统TPCM先于主机平台启动;
2、TPCM嵌入系统程序,支持完整性度量服务组件、认证服务组件和认证机制;
3、确保TPCM启动过程,主机平台处于等待状态;
4、TPCM能够通过最初始的物理接口信号和握手信号,能够合法读取主机BIOS代码,实现完整性度量和日志及代码或硬件配置完整性认证等;
5、通过以上完整性先决条件的认证完毕,发放控制字,主机正常引导。
4.3.3 基于多度量代理的信任链建立方法
信任链基于信任传递方法进行建立,在可信平台中信任链的建立过程包括从初始化开始,截止到OS内核引导。由于TCG规范中可实施的信任链传递,没有实现完整的信任传递过程,例如对操作系统内核和其它扩展模块的完整性度量以及应用软件的度量,都没有公开的参考资料。因此,提出多度量代理策略。度量代理作为信任链上的节点,建立和维护信任链。
通过分析,目前在TCG的三个根中,RTR和RTS存放在TPCM芯片中,RTM是存放在BIOS中。按照信任传递、一级验证一级、一级信任一级的思想,CRTM在对下一个可信部件度量完成以后,应该将控制权传递给下一个组件。但是目前TCG所定义的信任链传递关系在工程实现没有做到这一点。在平台启动过程中,CRTM作为一个集中者把对平台的控制权始终掌控在自己手中,没有将控制权释放给下一个阶段的被度量部件,因此也就没有体现出信任传递的思想。在这里,我们认为需要对信任链的建立进行重新分解、改造。将度量跟对平台的控制权逐渐下放到平台启动过程中的各个阶段上去,针对平台启动的不同阶段,由不同的度量代理分别进行度量,针对不同阶段所表现出的不同特征。
在方案中,采用基于多度量代理的信任链传递模型;也就是对平台不同的启动阶段,定义不同策略的扩展度量代理模块(EMM),对于整个平台而言,这些EMM一方面在平台启动阶段中各自执行着自己的功能,另一方面对用户而言,这些EMM在逻辑上体现出一个度量根的功能,这就是度量代理架构,如下图所示。可信计算子系统EMM4Pre-OS阶段l原有系统OS Kernel核OS内量j.度kEMM3i部件启动台平g.度量S Loader及OOS LoaderhEMM2fMain Blockd.度ockin BlaM量eEMM1cBoot Blockockot BloBa.度量bRTM完整性度量存储于信任传递TPCM执行流程
图3 多可信度量代理流程图
可信计算终端采用双系统体系结构,即由原始系统和可信计算子系统组成。可信计算子系统可将自身分为与所述普通系统对应的若干层次,对应所述层次设置代理度量根。代理度量根对其对应层次范围内的主体进行度量,保证各主体行为的可预期。采用双系统体系结构的可信计算终端,其可信链的建立基于TPCM中不可篡改的RTM,从第N(N为自然数)层到第N+1层建立可信链时,首先由第N层的可信扩展度量模块EMM(N)度量N+1层的可信扩展度量模块EMM(N+1),根据度量结果采用预定策略,例如只有在度量通过后才加载EMM(N+1)和N+1层,以此来实现可信链的建立。
4.3.4 基于完整性度量的信任模型
度量是系统自我免疫能力的技术实现。我们将可信定义为代码行为的可预期,而衡量可预期性的重要指标是代码数据完整性,所以我们通过对代码完整性的度量判断其是否被修改,如果与预期的结果一致,则信任部件。
1、平台配置寄存器
在可信密码模块内部设置一组受保护的平台配置寄存器(PCR),寄存器长度与杂凑算法输出长度一致,用于存储被度量模块的完整性度量值。 PCR初始值设置为固定值,通常为全0。 PCR的存储操作是严格受限的。
2、部件序列度量值存储
如果一个部件序列中的各部件完整性度量值存储在同一个PCR中,则采用一种专门压缩存储方式,即从第一个部件开始,将该部件完整性度量值与目标PCR的已有存储值拼接,进行杂凑运算,然后将所得结果再存储于该PCR中,依次类推,最后一个部件的完整性度量值存储操作完成后,所得PCR的值即为该部件序列的完整性度量值。
4.3.5 传统BIOS度量
传统BIOS 安全威胁来源主要有2 种:(1)BIOS自身。由于BIOS自身扩充功能设计障碍可能导致本地计算机硬件、磁盘数据或系统软件造成损害,但不会被远程恶意者所利用,如下图中的①。(2)BIOS外部,外部恶意者利用BIOS配置漏洞和设计缺陷,通过网络实施对本地计算机的侵入或破坏,如图中的②、③、④。
图4 BIOS威胁模型
作为计算机系统的核心固件,BIOS 安全问题日益突出,而一直未引起信息安全界足够重视。由Intel 首先提出的下一代BIOS 的标准EFI 和UEFI 将进一步扩展和增强BIOS 的功能,但有可能导致越来越多的BIOS 安全隐患。BIOS 安全问题将成为信息安全领域新的研究方向之一。TCG 组织已经将安全度量的核心可信根(core root of trust for measurement, CRTM)与BIOS 的启动区(BOOTBLOCK)捆绑在一起,而下一代安全BIOS 的研发也已经提上日程,因此对BIOS的完整性度量是非常有必要的。
每种BIOS的设计方案都会包含BootBlock引导模块、ESCD扩展系统控制数据模块、DMI桌面管理接口模块、MainBlock主模块,共四大组成模块。而2Mb BIOS在设计时,为了加入BIOS更新程序而特地留出BootExtension启动扩展模块,到用4Mb BIOS设计的时候就不再需要这个特地独立出来的BootExtension模块。
BootBlock通常被称为引导或启动模块,用于存放PC开机引导信息(这里并非指操作系统的引导程序)。BootBlock区域对于BIOS ROM而言是一个相对较独立的块,当BIOS ROM的部分信息被损坏时,提供给用户去恢复其内容的可能。ESCD(Extended System Control Data)是扩展系统控制数据模块。DMI(Desktop Management Interface)桌面管理接口模块。BootExtension被称为启动扩展模块,通常用于存放BIOS更新程序等等。BIOS的MainBlock主模块区域通常是用于存放以下这些东西:Kernel Module核心模块、ACPI Module高级配置和电源接口、EPA能源之星标志及OEM全屏开机画面文件、CPU micro codes处理器微代码、VGA、SCSI、LAN等子设备BIOS ROM的镜像、OEM定制模块以及多语种字体支持模块等
BootBlock部分就在BIOS文件的最后64K或128K,根据BIOS大小不同而不同。机器启动后,BootBlock被映射到F0000-FFFFF(64K)或者E0000-FFFFF(128K),然后机器调用FFFF0处的代码开始POST过程,BIOS的这个位置基本都是一条长跳转。在完成最基本的初始化之后,BootBlock进入解压缩模块,对BIOS的主模块进行完整性校验和解压缩,如果校验失败或者解压缩失败则会跳到BootBlock中的失败处理中,也就是一个最简单的引导模块,这个引导模块通常只支持很少的硬件设备,这个部分存在的意义就是在发现BIOS文件出现问题后有一个恢复的机会,但如果是主模块内部出现问题而不是文件封装出现问题,这部分的判断是不可能起作用的。可见BIOS BootBlock在BIOS运行过程中起着非常关键的作用,负责BIOS的基本启动、对MainBlock的解压缩和BIOS失效后的维护,可以说BootBlock是整个BIOS的最核心部分,它的安全性直接影响着后续的POST过程,因此对其进行完整性度量是非常有必要的。
ESCD是“Extended System Configuration Data”的缩写,意思是扩展系统配置数据,它是BIOS保留的以前的设备资源分配表,这些数据被存放在CMOS(一小块特殊的RAM,由主板上的电池来供电)之中。通常ESCD数据只在系统硬件配置发生改变后才会更新,例如,当插入一块新的扩展卡时,因为新板卡要占用系统资源,这时就可能会与以前的资源分配表产生冲突,系统在工作时就会表现出不稳定或错误提示。这时候通过设置ESCD能够让系统在下次启动电脑时让BIOS重新为所有扩展卡分配系统资源。
DMI又称为(Desktop Management Interface)桌面管理接口,就是帮助收集电脑系统信息的管理系统,用来让系统保存自身及外围设备相关数据。通过DMI可以在操作系统级查询到包括CPU、内存、I/O扩展槽等在内的系统配置信息。DMI通常将上述信息存储在BIOS中的一个DMI数据区中,这一数据区通常称为MIFD(Management Information Format Database)。DMI信息的收集必须在严格遵照SMBIOS规范的前提下进行。SMBIOS和DMI是由行业指导机构Desktop Management Task Force(DMTF)起草的开放性的技术标准,其中,DMI设计适用于任何的平台和操作系统。
BIOS MainBlock中包含了许多模块,如Kernel Module核心模块、ACPI Module高级配置和电源接口、EPA能源之星标志及OEM全屏开机画面文件、CPU micro codes处理器微代码、VGA、SCSI、LAN等子设备BIOS ROM的镜像、OEM定制模块以及多语种字体支持模块。这些模块通常是由不同的厂家发布并添加到BIOS ROM中的,因此有必要对其模块中的代码进行验证,通过完整性度量保证厂商的模块没有被恶意篡改。TCG组织要求对平台的启动部件完整性进行度量,包括CPU微码、Option ROM代码和配置信息等。也就是将BIOS BootBlock划分为很多小的子模块,对各个模块的完整性进行有效度量。
4.3.6 UEFI BIOS度量
EFI是可扩展固件接口(Extensible Firmware Interface)的简称,本质上来说它是定义了平台固件与操作系统之间接口的规范,是实现下一代架构的BIOS接口规范。也就是说它是一个开放的纯接口定义,不依赖于特定的BIOS厂商或者特定的BIOS实现。EFI规范最初是为INTEL安腾架构的计算机而设计,是始于1998年的IBI(Intel Boot Initiative)项目的产物。
UEFI联盟是工业界各大制造商在INTEL EFI规范和成果的基础上在2005年成立的非盈利性工业组织。当前UEFI联盟主导的厂商包括Intel,AMD等芯片制造商;Apple, Dell,HP和Lenovo等计算机设备制造商;同时还包括AMI, Insyde,Phoenix等传统BIOS厂商以及微软等操作系统提供方。
UEFI联盟在INTEL EFI规范1.1版的基础上制定了工业界普遍认可和接受的UEFI2.0版本,而最新的UEFI2.1版本也是UEFI联盟在UEFI2.0版本基础上制定的。
可信计算主板规范中加入了TPCM,而且TPCM在BIOS启动之前运行,确保了核心可信的独立。这部分内容在可信度量根植入TPCM,TCB建立部分进行了分析,在此就不赘述了。
UEFI BIOS相关内容分析:
1、现有的国产UEFI BIOS技术已经能完全支持TCG组织TCG EFI Platform规范,能有效的支持Windows Vsta BitLocker技术。故而从UEFI技术角度而言,实现类似功能的技术实现上是没有问题的。
2、在现有的UEFI BIOS上针对具体的主板进行基于TPCM先启动的双系统UEFI BIOS,需要对现有BIOS进行较大的改动。
3、对于成品UEFI BIOS在使用上不会与原有BIOS产生较大的差别。
4、UEFI由其设计克服了传统BIOS的诸多缺点,因而在业界广泛使用,将逐步取代传统BIOS成为主流;双系统的设计符合可信计算基本要求,将有极大的市场竞争力。
5、对于可用性而言,由于UEFI BIOS除设置BIOS阶段,基本不要求用户的介入,因此不存在可用性方面的忧虑。
UEFI BIOS相关度量流程
1、TPCM启动 RTM运行
当启动PC机时,通过相应的电路设计(如双电源供电),确保TPCM先于BIOS启动,TPCM为嵌入式设备,属于独立的系统。由TPCM相关规范保证RTM核心可信,当TPCM启动之后,运行自身RTM相关代码。
2、RTM度量UEFI BIOS完整性
TPCM通过预先定义好的UEFI BIOS结构,读取UEFI BIOS Image内容,UEFI BIOS Image内容中需要有特定GUID用于标示EMM1。针对特定部分RTM运行度量机制,度量UEFI BIOS中EMM1完整性。并将UEFI BIOS及EMM1有关信息记录到TPCM特定区域。TPCM中有关UEFI BIOS及EMM1有关记录信息,在UEFI BIOS启动之后将要传递给UEFI BIOS用于形成Event Log存储到ACPI表结构。
3、UEFI BIOS Pre-Boot 代码中EMM1运行
UEFI BIOS上电启动,执行自身核心代码,这部分代码负责执行从实模式切入保护模式,构建高级语言执行环境,搭建UEFI BIOS核心框架,运行UEFI BOIS Pre-Boot相关的代码,该部分代码中包含了EMM1。这部分代码已经被RTM度量过,因此在此启动时将不需要在此度量。按照Framework参考实现代码,该部分包括SEC阶段和PEI阶段代码。
4、Main Block运行,EMM1度量Main Block Pre-Boot部分代码执行后,要将后续需要执行的代码Main Block通过EMM1进行完整性度量,Main Block中包含了EMM2。该部分代码中包含了绝大多数的硬件驱动程序,EMM1 需要在这些驱动程序在装载和执行前对其完整性进行度量,并将度量结果以Event Log的形式反映到ACPI表中。按照Framework参考实现代码,该部分包括DXE阶段代码。
5、EMM2度量平台启动部件及OS Loader(EMM3包含其中)
EMM2对平台启动部件的度量方案和TCG组织的方案保持一致,EMM2的主要功能是度量平台启动部件以及与平台启动相关的描述信息,包括可BOOT平台的相关描述信息,Boot设备的描述,Boot Manger,OS Loader的 Loader等。EMM2还必须度量OS Loader(EMM3)。EMM3 负责对具体OS内核的度量。按照Framework参考实现代码,该部分包括BDS阶段代码。
6、EMM3度量OS kernel 不同的操作系统其OS Kernel不尽相同,针对不同的OS Kernel,OS Loader中的EMM3 有不同的实现方式,本规范没有明确规定EMM3 度量OS Kernel的细节。只是规定EMM3必须在OS Kernel加载前,对其进行完整性度量。
4.4 特色与创新
1)将可信度量根(RTM)植入TPCM中,实现TPCM先于CPU启动,执行不可篡改的度量根代码对BIOS空间进行度量。防止了TCG中,外界修改BIOS中CRTM代码的安全问题。同时,鉴于我国的信息安全薄弱性,采用此方案,通过由国家控制TPCM来得到主机信任链建立起点的控制权,从而可以缓解部分不利局面。
2)基于双系统体系结构的多度量根代理度量框架和流程。因为TPCM作为信任起点,其层次比较低,只依赖于其内部的度量根无法实现对整个启动流程度量,而必须设置多个度量代理,来帮助完成度量工作,并不断扩展信任链。所以本方案的主要创新点是基于多度量代理的方法实现信任传递。
3)方案在考虑BIOS的实现技术的时候,充分考虑了传统BIOS和EFI BIOS两种技术,将两种不同BIOS的技术方案在可信计算流程实现中可以互相兼容。从而降低了实现成本,同时也扩大了方案的应用范围。4)EFI BIOS a)TPCM优先启动:TPCM先于EFI BIOS启动并度量EFI BIOS,确保了CRTM的核心可信地位,且不依赖于软件实现。b)全信任链:在EFI BIOS启动过程中维护了全信任链,信任链传递过程中不存在空缺。
c)多度量代理点:使度量过程更具有操作性,更灵活。
d)OS Kernel度量:完成了对OS Kernel的度量,确保操作系统内核的可信。e)可扩展性:EFI实现具有灵活的扩展性,使BIOS易于维护和扩展开发。f)TPCM驱动程序接口定义:规定了统一的基于UEFI的硬件厂商提供给BIOS厂商的驱动接口,使接口更清晰。
4.5 可行性分析
TPCM度量Boot ROM代码:
主板改造:双电源改造方案对主板影响很小,改造后的主板与原主板兼容; 时间开销:TPCM运算速度大幅提高,缩短度量时间;LPC总线速度满足设计需求; 空间开销:RTM代码占用少量TPCM内部空间; 基于双系统体系结构的多度量根代理度量框架:
空间开销:EMM只占用少量存储空间; 时间开销:完整性度量算法占用时间少; 其它开销:
嵌入EMM代码现有系统的难度不大,可以实现自主可控; 嵌入EMM代码对现有系统影响很小;
改造后的系统与现有系统在框架、执行流程等方面可以兼容;
五、与其他标准之间的关系
《可信计算规范第2部分:可信平台主板功能接口》对系统从加电到操作系统内核加载前的信任传递进行了详细、全面的总结和规范,是基于《可信计算规范第1部分:可信平台控制模块》的主板层配套规范,是《可信计算规范第3部分:可信计算基础支撑软件》和《可信计算规范第4部分:可信网络连接架构》的基础。
全国文物保护标准化技术委员会秘书处工作细则第一章 总 则 第一条 根据《全国文物保护标准化技术委员会章程》,制定本工作细则。全国文物保护标准化技术委员会(以下简称“文标......
全国链传动标准化技术委员会 第三届六次全体会议纪要2005年11月7~11日武义全国链传动标准化技术委员会第三届六次全体会议,于2005年11月7~11日在浙江省武义县举行。参加会议的......
全国专业标准化技术委员会TC1 TC2 TC3 TC4 TC5 TC6 TC7 TC8 TC9 TC10 TC11 TC12 TC15 TC16 TC17 TC18 TC19 TC20 TC21 TC22 TC23 TC24 TC26 TC27 T......
上海市信息标准化技术委员会 2011年工作总结及2012年工作计划2011年,上海市信息标准化技术委员会(以下简称“信标委”)在上海市质量技术监督局和上海市工业与信息化委员会的领......
全国专业标准化技术委员会管理办法第一章 总则第一条 为加强对全国专业标准化技术委员会(以下简称技术委员会)的管理,充分发挥技术委员会的作用,根据《中华人民共和国标准化法......
