论文部分内容阅读
UEFI(Unified Extensible Firmware Interface)是由Intel推出的一种在计算机系统中替代BIOS的升级方案。同传统BIOS相比,它具备了极大的可扩展性和可定制性。UEFI采用高度模块化设计,用户只要符合UEFI标准,即可方便快捷地开发出应用程序和驱动程序。TPM(Trusted Platform Module)可信平台模块被认为是可信计算领域的核心模块。它是新式计算机主板上嵌入的一枚重要安全芯片,内部包含处理器单元、存储单元、密钥管理单元等丰富资源。限于目前很多旧式主板缺少TPM,硬件TPM无法在平台上同时运行多个保护实例,并且TPM的硬件调试和可扩展性得不到满足,因此采用软件方式实现TPM成为目前研究领域的热点问题。本文主要阐述了UEFI、TPM等工业标准的发展和研究现况,详细讨论了UEFI架构技术和TPM核心技术。以此为基础,本文详细讨论UEFI下虚拟TPM的驱动程序设计和其实例应用。在虚拟TPM驱动程序设计中,首先在详细分析了标准UEFI驱动模型基础上,按照驱动模型规范,本文提出一种虚拟TPM核心驱动程序框架设计方案。其次,根据虚拟TPM模块需要实现了UEFI系统下的随机数发生器。最后,在分析驱动绑定协议和设备路径协议基础上,实现了用于满足虚拟TPM核心功能的用户自定义协议—虚拟TPM协议。实现过程中,本文提出一种UEFI驱动程序与UEFI Shell应用程序数据通信的解决方案。为了进一步应用虚拟TPM设计,本文通过特有的数据结构和算法设计并实现了两个基于UEFI Shell的安全领域方面的应用—文件加密系统和文件监控系统。实验在基于Windows平台下的UEFI模拟器完成,实验结果完全达到了预期效果。