TPM概述
TPM(Trusted Platform Module)安全芯片,是指符合TPM(可信赖平台模块)标准的安全芯片。标准由TCG(可信赖计算组织,Trusted Computing Group)提出,目前最新版本为2.0。
符合TPM的芯片首先必须具有产生加解密密钥的功能,此外还必须能够进行高速的资料加密和解密,以及充当保护BIOS和操作系统不被修改的辅助处理器。
TPM的可信基础来源于可信根,可信根(Root of trust)是无条件被信任的,系统并不检测可信根的行为,因此可信根是否真正值得信任,是系统可信的关键。TPM是一个含有密码运算部件和存储部件的小型系统,也可以作为另一个芯片的一部分出现,比如以太网接口。
TPM安全芯片包含了分别实现RSA、SHA等算法硬件处理引擎,它既是密钥生成器,又是密钥管理器件。TPM通过提供密钥管理和配置管理等特性,与配套的应用软件一起,主要用于完成计算平台的可靠性认证、防止未经授权的软件修改、用户身份认证、数字签名以及全面加密硬盘和可擦写等功能。TPM安装在输入/输出控制器,即连接外部设备与内存的总线中,让TPM可以监视每一个从外存装载入内存的软件。由于TPM处于硬件层,所以只要用户选择了打开TCG功能,任何行为都无法逃避监视。
通过TPM安全芯片对计算机系统提供保护的方法为:(1)在主板上设置TPM安全芯片;(2)启动信息处理设备时,由TPM芯片验证当前底层固件的完整性,如正确则完成正常的系统初始化后执行步骤(3),否则停止启动该信息处理设备;(3)由底层固件验证当前操作系统的完整性,如正确则正常运行操作系统,否则停止装入操作系统。总之,此方法是通过在信息处理设备的启动过程中对BIOS、底层固件、操作系统依次进行完整性验证,从而保证信息处理设备的安全启动之后,再利用TPM芯片内置的加密模块生成并管理系统中各种密钥,对应用模块进行加解密,以保证计算机等信息设备中应用模块的安全。
图2中,信息处理设备的CPU 与主板上的北桥相连,北桥与南桥和静态存储器(SRAM)分别直接相连[2],南桥分别与超级输入输出接口(SuperIO)、BIOS 模块和安全芯片通过LPC(Low Pin Count Bus)总线直接相连,同时,计算机主板上的CPU 通过读写控制线与安全芯片中的BIOS模块直接相连。安全芯片通过完整性校验检验主板上的BIOS模块是否被非法修改。上述方法能够对BIOS的完整性进行验证,但它仅仅避免了BIOS中的病毒对操作系统的破坏,安全芯片并不能防止BIOS本身被修改,只能在发现BIOS被修改后,停止启动计算机,因而该方法只是被动应对可能的攻击。