
虚拟可信平台技术一、核心概念二、技术架构与原理1. 完整性度量与报告2. 验证过程三、五种远程证实方法1. 基于二进制代码的证实2. 基于软件源代码的证实3. 基于属性的证实4. 基于模型的证实5. 基于程序行为的证实四、在虚拟可信平台中的特殊考虑1. 递归证实问题2. vTPM的角色3. 证书链管理五、技术发展趋势六、简单理解图示七、总结要点一、核心概念远程证实是指远程验证方对目标平台或虚拟机的可信状态进行验证的技术。它的核心思想是让远程方能够确认目标平台是否运行在预期的、未被篡改的安全状态下而不需要物理接触该平台。二、技术架构与原理1. 完整性度量与报告度量机制在平台启动和运行过程中系统会逐级度量关键组件如BIOS、引导程序、操作系统内核、应用程序等的哈希值存储机制度量值被记录在度量列表ML中同时通过“扩展操作”存入TPM的PCR寄存器报告机制当需要证明时平台将度量列表和TPM对PCR值的数字签名一起发送给验证方2. 验证过程平台启动 → 逐级度量 → 存储到PCR → 接收验证请求 → 签名报告 → 发送给验证方 ↓ 验证方验证签名 → 计算ML哈希 → 比对PCR值 → 判断平台状态三、五种远程证实方法1. 基于二进制代码的证实思想验证平台运行的软件二进制文件是否与预期一致流程软件开发商提供二进制文件的哈希值和对应的安全属性证书平台运行时计算实际哈希值验证方比对哈希值并检查证书优点实现简单直接缺点无法处理合法的软件更新或配置差异2. 基于软件源代码的证实思想验证源代码层面的一致性而非仅仅是二进制流程将源代码哈希值和对应的安全属性绑定到证书同时提供源代码到二进制代码的编译证明验证方可以验证源代码属性和生成的二进制优点允许不同的编译选项和优化缺点需要可信的编译环境和证明3. 基于属性的证实思想验证方不关心具体的软件哈希值而是关心平台是否具备所需的安全属性关键转变从“你运行了什么软件”变为“你的平台有什么安全能力”属性示例支持强制访问控制MAC遵循隐私保护协议提供进程强隔离支持加密存储优势允许平台进行合法的软件更新关注实际安全能力而非具体实现更适合动态变化的环境4. 基于模型的证实思想验证系统是否遵循特定的安全策略模型原理为系统定义形式化的安全模型如Bell-LaPadula模型、Biba模型等远程方验证系统的实际行为是否符合模型规范实施方式系统提供策略执行证明验证方检查证明的逻辑一致性适用场景对安全策略有严格形式化要求的场景5. 基于程序行为的证实思想通过分析程序的依赖关系和输入输出行为来推断其正确性两个层面的依赖系统级依赖程序运行所需的操作系统组件、库文件、配置文件等语言级依赖程序内部的函数调用关系、数据流依赖验证方法定位程序的所有依赖项为每个依赖项建立预期的输入输出转换规则验证实际运行中每个依赖项的转换是否正确如果所有依赖项都正确则推断整个程序行为正确优势可以处理部分代码更新只要依赖关系不变四、在虚拟可信平台中的特殊考虑1. 递归证实问题在虚拟化环境中存在多层可信链硬件TPM → VMM/Hypervisor → vTPM实例 → 客户机OS → 应用程序远程证实需要考虑整个信任链的完整性这就是“递归证实”。2. vTPM的角色vTPM为每个虚拟机提供独立的可信根远程证实时需要同时验证物理TPM和VMM的可信性vTPM实例的真实性虚拟机内部状态的可信性3. 证书链管理为了证明vTPM的可信性需要建立从物理TPM到vTPM的证书链课件中提出了四种方案方案1将vTPM的EK证书链接到物理TPM的AIK证书方案2为vTPM颁发基于物理TPM AIK的AIK证书方案3通过本地CA为vTPM的EK颁发证书不绑定物理TPM方案4使用安全协处理器替代物理TPM五、技术发展趋势从静态到动态早期关注启动时的静态完整性现在扩展到运行时的动态行为验证从具体到抽象具体哈希值 → 软件属性 → 安全策略 → 行为模式隐私保护增强如DAA直接匿名证明技术可以在不泄露平台身份的情况下证明其可信性与云计算融合支持虚拟机的动态迁移、弹性伸缩等云特性同时保持可信证明六、简单理解图示传统方法验证“指纹”哈希值是否匹配 ↓ 属性证实验证“身份证”安全属性是否有效 ↓ 行为证实验证“做事方式”程序行为是否正确七、总结要点远程证实技术的发展体现了从具体实现验证到安全属性验证的思想转变其核心目标是在开放、动态的计算环境中让远程方能够可信地验证目标平台的安全状态而不仅仅是检查静态的软件哈希值。在虚拟化环境中这一技术需要解决多层信任链的递归验证问题并通过证书链管理将虚拟TPM的可信性根植于物理TPM。