1. 课程导入
在服务器、笔记本、手机、路由器乃至工业控制设备中,安全启动、磁盘加密、身份认证、远程证明这些能力背后,往往都站着一个不起眼却极其关键的小芯片或固件模块——TPM(Trusted Platform Module,可信平台模块)。本课程围绕TPM展开系统工程视角的讲解,而本章作为导入,先回答四个问题:TPM是什么、它如何发展而来、它在信息安全体系中处于什么位置、以及这门课将沿着怎样的路径展开。
一、TPM的定义:不是“加密芯片”那么简单
TPM是由可信计算组织(TCG,Trusted Computing Group)制定规范的一种安全密码处理器。它通常以独立芯片、固件TPM(fTPM)或虚拟TPM(vTPM)的形式存在,核心职责是提供受保护的密钥存储、密码运算和平台状态度量。与普通加密芯片相比,TPM的特殊之处在于它把“平台可信”作为设计目标:它不仅做加解密,还通过PCR(Platform Configuration Register,平台配置寄存器)记录平台启动链的度量值,从而让外部实体能够判断这台机器是否运行在预期状态。
可以用一句话概括:TPM是一个被动的、受硬件保护的可信根,它为平台提供身份、度量和密钥保护三类基础能力。所谓“被动”,是指TPM不会主动阻止系统运行,它只负责记录和证明;是否信任,由验证方决定。
1. 身份标识:EK(Endorsement Key,背书密钥)证明“这是一个真实的TPM”;
2. 平台度量:PCR记录启动链各阶段哈希,形成可信度量链;
3. 密钥保护:SRK(Storage Root Key,存储根密钥)及其下密钥树,实现密钥不出TPM。
二、发展历程:从TPM 1.1到TPM 2.0
TPM并非一夜出现。1999年TCPA成立,2003年更名为TCG,随后发布TPM 1.1规范。TPM 1.1主要面向PC平台,使用RSA和SHA-1,算法相对单一,且存在一些授权协议上的争议。2009年前后,TPM 1.2成为主流,被大量商用笔记本采用,用于BitLocker等磁盘加密场景,但SHA-1逐渐暴露出碰撞风险,算法敏捷性不足的问题日益突出。
2014年,TPM 2.0规范正式发布,这是一次结构性升级。TPM 2.0不再绑定单一算法,而是支持算法敏捷性,可同时使用RSA、ECC、SHA-1、SHA-256、AES等;它引入了更灵活的授权策略、NV存储、会话机制和命令审计。更重要的是,TPM 2.0不再局限于PC,而是覆盖服务器、嵌入式、移动和虚拟化场景。Windows 11将TPM 2.0列为系统要求,进一步推动了它的普及。
| 阶段 | 代表规范 | 主要特征 | 典型应用 |
|---|---|---|---|
| 1999—2003 | TCPA / TPM 1.1 | RSA+SHA-1,PC导向 | 早期可信PC |
| 2005—2014 | TPM 1.2 | 商用普及,支持BitLocker | 笔记本磁盘加密 |
| 2014至今 | TPM 2.0 | 算法敏捷、多场景、vTPM | 服务器、云、Windows 11 |
三、在信息安全体系中的定位
要理解TPM的定位,可以把它放进“可信计算”的层次中看。传统安全依赖软件层防护,如杀毒、防火墙、访问控制,但软件本身可能被篡改。TPM提供的是更底层的硬件可信根:CRTM(Core Root of Trust for Measurement)从BIOS/Boot ROM开始度量,逐级传递信任,形成从硬件到操作系统的信任链。
因此,TPM不是替代防火墙或杀毒软件,而是为它们提供可信基座。它解决的是“我能否相信这台机器当前的状态”这一问题。在远程证明场景中,服务器可以要求客户端提交由TPM签名的PCR值,再结合预期基线判断其是否合规。这种能力在零信任架构、云平台可信启动、设备身份认证中越来越重要。
四、课程整体学习路径
本课程共30章,整体遵循“概念—原理—实现—集成—运维—复盘”的路径。前几章建立TPM 2.0的体系结构与密码学基础;中段深入PCR度量、密钥层次、授权会话、NV存储、命令审计等核心机制;后段进入系统集成,包括Linux TSS栈、Windows TBS、虚拟化vTPM、远程证明与云平台落地;最后通过排障与复盘章节,把零散知识串成可操作的工程能力。
- 基础篇:TPM定义、发展、体系结构、密码算法与规范结构。
- 核心篇:PCR与度量、密钥层次、授权策略、会话与审计、NV存储。
- 集成篇:Linux TSS、Windows TBS、安全启动、磁盘加密、vTPM与云。
- 进阶篇:远程证明、设备身份、零信任接入、性能与合规。
- 实战篇:典型故障排查、日志分析、参数调优与项目复盘。
tpm2_getcap properties-fixed若返回TPM 2.0属性,说明环境可用;若报错,先检查BIOS中TPM是否启用。
五、常见误区与导入复盘
初学者常把TPM等同于“加密芯片”,认为装了TPM数据就安全了。实际上,TPM只提供密钥保护和度量证明,若系统本身被攻破,攻击者仍可能通过合法接口滥用密钥。另一个误区是认为TPM 1.2和2.0只是版本号差异,实际上两者在算法敏捷性、授权模型和命令集上差异巨大,很多现代方案只支持2.0。
tpm2_getcap提示权限不足,可尝试sudo或检查/dev/tpm0、/dev/tpmrm0是否存在;若设备不存在,优先排查BIOS/UEFI中的PTT、fTPM或dTPM开关。
本章作为导入,目标是建立一张“地图”:知道TPM是什么、从哪来、在安全体系中站在哪一层、以及后续30章会经过哪些站点。接下来,课程将从TPM 2.0的体系结构开始,逐步深入每一个关键机制。