【可信计算】第六次课:可信平台控制模块(TPCM)

可信平台控制模块

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可信平台控制模块与外部的交互

在这里插入图片描述

可信平台控制模块功能组成

TPCM模块是一个逻辑概念,由功能组件、基础软件和硬件组成。
在这里插入图片描述
在这里插入图片描述

可信平台控制模块接口

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

计算机引导过程

  • BIOS:Basic Input Output System, 可以理解为写死在主板上或者硬件上的一段程序, 当然后来也可以升级(修改), 机器开机之后运行的第一个程序就是BIOS, BIOS加载CMOS上的参数,并寻找第一个可启动的设备(磁盘)。
  • MBR:Mast Boot Record, 主引导分区,位置就是第一个可开机装置(磁盘)的第一个扇区, 通常大小为512byte,旧的磁盘一个扇区都是512B, 最新的有4KB,这个扇区有两部分:MBR和分区纪录表,64byte,最多纪录4个分区。
  • MBR是安装开机管理程序的地方,所谓开机管理程序,可以理解为bootloader,bootloader的作用是加载核心文件,也就是引导操作系统开始工作。
  • boot loader的主要任务有下面几项:
    提供菜单:用户可以选择不同的开机选项。
    载入OSLoader,为执行操作系统核心代码作准备(这个是我们通用的流程)
    或者转交其他loader:将引导加载功能转交给其他loader负责。

启动时计算机内存和磁盘布局:
在这里插入图片描述
加载程序的内存地址空间:
在这里插入图片描述
在这里插入图片描述
BIOS初始化过程:
在这里插入图片描述
主引导记录(MBR)格式:
在这里插入图片描述
分区引导扇区格式:
在这里插入图片描述
加载程序(bootloader):
在这里插入图片描述

计算机系统可信启动过程

常见的计算机系统启动部分有BIOS和UEFI两类。BIOS是英文"Basic Input Output System"的缩略词,直译过来后中文名称就是"基本输入输出系统"。UEFI全称Unified Extensible Firmware Interface,即“统一的可扩展固件接口”,是一种详细描述全新类型接口的标准,是适用于电脑的标准固件接口,旨在代替BIOS(基本输入/输出系统),UEFI旨在提高软件互操作性和解决BIOS的局限性。

注:UEFI相比BIOS的优势
1、通过保护预启动或预引导进程,抵御bootkit攻击,从而提高安全。
2、缩短了启动时间和从休眠状态恢复的时间。
3、支持容量超过2.2 TB的驱动器。
4、支持64位的现代固件设备驱动程序,系统在启动过程中可以使用它们来对超过172亿GB的内存进行寻址。
5、UEFI硬件可与BIOS结合使用。

  • 所有的电脑都会有一个BIOS,用于加载电脑最基本的程序代码,担负着初始化硬件,检测硬件功能以及引导操作系统的任务。而UEFI就是与BIOS相对的概念,这种接口用于操作系统自动从预启动的操作环境,加载到一种操作系统上,从而达到开机程序化繁为简节省时间的目的。传统BIOS技术正在逐步被UEFI取而代之,在最近新出厂的电脑中,很多已经使用UEFI,使用UEFI模式安装操作系统是趋势所在。
  • 本质上,UEFI就是为了替代BIOS而生的,在功能上,UEFI的扩展性和执行能力,远比简陋的BIOS高级,最直观的是你可以在UEFI界面下看到图形界面,可以使用鼠标操作,可以让启动时自检过程大为简化,这就是最基本的区别。

可信平台主板功能

当我们构建了可信平台控制模块后,还需要一个能够承载TPCM模块的物理部件,这就是可信平台主板。可信平台主板功能规范适用于基于可信平台控制模块的可信平台主板的设计、 生产和使用方法。

可信平台主板是由可信平台控制模块和其他通用部件组成, 实现从开机到操作系统内核加载前的平台可信引导功能。 通用部件主要包括: 中央处理器、 随机存取存储器(RAM) 、 输入输出接口、Boot ROM 固件等。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

信任链传递

a) TPCM 先于Boot ROM 被执行前启动, 由 TPCM 中的 RTM 度量Boot ROM 中的初始引导模块(Boot Block) , 生成度量结果和日志, 并存储于 TPCM 中;
b) 如果度量通过,TPCM 发送控制信号, 使 CPU、 控制器和动态存储器等复位; 平台加载并执行 Boot ROM 中的 Boot Block 代码;
c) Boot Block 中的 EMM1 获得系统执行控制权, 信任从 RTM 传递到 EMM1;
d) EMM1 度量 Boot ROM 版本信息和 主引导模块(Main Block)中的 EMM2 代码;EMM1 存储度量结果到TPCM 中的 PCR 并存储度量日志;
e) 如果度量通过,平台加载并执行 Main Block 中 EMM2 的代码;
f) Main Block 中的 EMM2 获得系统执行控制权, 信任从 EMM1 传递到 EMM2;
h) 平台加载并执行 OS Loader 的代码;
i) OS Loader 中的 EMM3 获得系统执行控制权, 信任从 EMM2 传递到 EMM3;
j) EMM3 度量操作系统内核, 生成度量结果和日志, 度量结果存储到 TPCM 的 PCR 中, 度量事件日志保存到 LSA 中;
k) 平台加载并执行 OS Kernel 的代码;
l) OS Kernel 中的 EMM4 获得系统执行控制权, 信任从 EMM3 传递到 EMM4。
在这里插入图片描述

信任链建立要求

a) 信任链的建立过程必须以可信度量根 RTM 为起点;
b) 当需要装载并运行一个部件前, 应由 RTM 或者 EMM 对该部件进行完整性度量, 然后再将其加载和运行;
c) TPCM 中 PCR 存储的杂凑值应与系统引导过程中的度量事件和度量顺序相对应;
d) TPCM 中 PCR 存储的杂凑值应与系统引导过程中生成的度量日志相对应;
e) 在每次开机时应重新生成 LSA 中的度量日志和 TPCM 中 PCR 存储的杂凑值。

完整性度量方法

信任链基于可信度量根 RTM 建立, 通过扩展度量模块 EMM 实现信任传递。 RTM 和 EMM 采用杂凑算法对部件代码进行完整性计算, 并存储度量结果, 实现完整性度量。
在这里插入图片描述
完整性度量流程:
a) RTM 或者 EMM 使用杂凑算法对“部件i”的二进制代码进行计算;
b) RTM 或者 EMM 生成在第a) 步中对“部件i”的计算结果“度量事件i 描述”; 该描述包括杂凑算法的结果, “度量值i”, 以及本次度量事件的上下文信息“度量事件i 上下文”;
c) RTM 或者 EMM 通过接口调用 TPCM, 将“度量值i” 扩展存储到预先定义与部件i 相关的PCR[i]中。扩展(Extend) 存储方式详细规则见 GB/T29829—2013 的5.7.4;
d) RTM 或者 EMM 将“度量事件i 描述”存储于 LSA 中。
完成上述4 个步骤的整个过程为一次完整性度量事件。

完整性度量存储:
完整性度量事件日志应存放于系统的 LSA (Log Storage Area)中。
在这里插入图片描述

可信平台主板功能接口(Driver 结构)

可信平台主板功能接口包括与底层 TPCM 的接口和与上层应用之间的接口。 在 TPCM 上建立设备驱动层(TPCM Device Driver: TDD) 实现主板可信应用功能对底层 TPCM 的调用。在 TDD 之上, 可建立服务提供层(TPCM Service Provider) 对 TDD 进行再封装, 为上层应用提供更高层次的接口, 简化上层编程实现。
在这里插入图片描述

完整性度量

在这里插入图片描述
EMM1 度量 Main Block:
在这里插入图片描述
EMM2 度量平台启动部件和操作系统加载器 :
平台启动部件包含了能够使平台硬件环境正常运行的基本部件, 包括 BIOS POST 代码、 板载固件代码。PCR[1]平台部件代码度量对象:
在这里插入图片描述
PCR[2]平台部件数据配置信息对象
在这里插入图片描述
PCR[3]Option ROM 代码度量对象
在这里插入图片描述
PCR[4]Option ROM 配置信息度量对象
在这里插入图片描述
PCR[5]状态迁移度量对象
在这里插入图片描述

度量操作系统装载器Boot Loader

操作系统装载器被调用前, 必须被 Boot ROM 中的 EMM2 度量。度量流程如下:
在这里插入图片描述
EMM2 通过调用 TPCM 中的杂凑算法, 对位于外部存储器中的操作系统装载器进行完整性度量。 EMM2 通过 TPCM 厂商提供的驱动程序访问 TPCM 的密码运算功能, 该驱动程序应由 TPCM 制造厂商提供。

位于外部存储器内部的操作系统装载器是操作系统启动前的代码, 负责装载、 校验和启动操作系统内核。 操作系统装载器包含了磁盘启动扇区和必要启动文件。 磁盘启动扇区又包含了主引导扇区和其他辅助扇区, 必要启动文件包含了操作系统装载器运行所需要的辅助文件, 对磁盘主引导记录的度量为必须, 对必要启动文件的度量为可选。
在这里插入图片描述
EMM3 度量操作系统内核
位于操作系统装载器中的 EMM3 负责对操作系统内核进行度量, 保证操作系统内核程序的完整性。
—操作系统内核代码:
包括操作系统内核程序和运行时监控程序;
度量值扩展到 PCR[14]。
—操作系统核心配置信息和数据:
包括操作系统内核程序和运行时监控程序使用的配置信息和数据;
•度量值扩展到 PCR[15]

TPCM(Trusted Platform Module,可信平台模块)是一种被广泛应用于计算机硬件领域的安全芯片,用于提供计算机启动过程中的可信验证和保护。基于TPCM可信启动的研究与实现主要涉及以下几个方面。 首先,研究人员需要深入理解TPCM的工作原理和安全机制。TPCM是一种在主板上的硬件芯片,通过其内部的加密算法和密钥管理模块,实现对密钥、数据和软件的可信验证和保护。研究人员需要了解TPCM芯片的设计和功能,以便在研究和实现中充分利用其提供的安全性能。 其次,研究人员需要探索TPCM可信启动的相关技术和方案。可信启动是指计算机在启动过程中对各个软件和硬件组件进行验证和检查,确保系统只加载合法和受信任的组件。基于TPCM可信启动方案通常包括引导代码的验证、系统启动配置的验证以及启动链的可信验证等步骤。研究人员需要深入分析和设计这些验证过程,并提出相应的安全策略和算法。 再次,研究人员需要实现和测试基于TPCM可信启动的原型系统。通过设计和实现原型系统,研究人员可以验证和评估其可信启动方案的有效性和实用性。原型系统应包括TPCM芯片的驱动程序、安全引导代码和验证模块等关键组件,能够模拟计算机系统的启动过程,并能够进行可信验证和保护。 最后,研究人员需要评估基于TPCM可信启动的系统性能和安全性。性能评估主要包括系统启动时间、验证过程的开销和资源消耗等指标。安全性评估主要包括对攻击和威胁的抵抗能力以及系统漏洞和弱点的分析。评估结果可以帮助研究人员改进和优化可信启动方案,提高系统的安全性和性能。 总之,基于TPCM可信启动的研究与实现是一项重要的安全技术,在计算机系统的可信验证和保护方面具有广泛的应用前景。通过深入研究和实现可信启动方案,可以提高计算机系统的安全性和可信性,防范各种攻击和威胁,保护用户的数据和隐私。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Godams

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值