基于基于ARM的可信计算的实现的可信计算的实现
随着计算机应用的不断发展,安全威胁问题越来越严重,传统的单纯依靠软件来抵抗安全威胁往往不能解决问
题。可信计算的基本思想是从芯片、硬件结构和操作系统等方面制定安全规范保证计算机和网络结构的安全。
可信计算平台基于可信平台模块(TPM),以密码算法技术作为基础、安全操作系统作为核心,通过信任域的不断
扩展形成安全的平台。
引言
随着计算机应用的不断发展,安全威胁问题越来越严重,传统的单纯依靠软件来抵抗安全威胁往往不能解决问题。可信计算的
基本思想是从芯片、硬件结构和操作系统等方面制定安全规范保证计算机和网络结构的安全。可信计算平台基于可信平台模块
(TPM),以密码算法技术作为基础、安全操作系统作为核心,通过信任域的不断扩展形成安全的平台。
目前市场上的TPM芯片主要应用在PC终端上,但是随着嵌入式系统的不断发展,TPM在嵌入式系统上的应用也越来越广,程
序员在编写可信计算应用程序的时候,其切入点应该是TSS,本文就TPM和TSS的概念、TSS在ARM平台上的移植、调用
TSS的API编写应用程序以及如何与TPM进行交互做了详细的介绍,最终实现了在嵌入式arm平台上的可信计算。
TPM芯片结构和TSS体系结构概述
可信计算的核心是TPM,它是一种安全加密芯片,提供了一种基于硬件的方法来管理用户权限、网络访问、数据保护等。
TPM芯片用来存储数字密钥、认证和密码,有了TPM不管是虚拟的还是物理的攻击都将变得更加困难。如图1所示,TPM芯片
主要由以下几部分组成:I/O组件、非易失性存储、身份密钥、程序代码、随机数产生器、Sha-1算法引擎、RSA密钥产生、
RSA引擎、Opt-In选择组件、执行引擎。
图1 TPM芯片结构
TPM芯片里的资源是有限的,它仅仅对外提供了一些基本的功能接口。为了充分应用TPM的内部功能,需要在TPM外部套接
一个可信计算软件栈TSS,TSS作为可信计算平台上TPM的支持软件,其规范定义了一种能够让访问TPM变得简单和直接的
体系结构。本文构建的嵌入式平台为三星的arm9TDMI-S3C2410处理器,TPM芯片为Atmel公司的AT97SC3204T。
由图2可知,TSS的运行模式分为两种:用户模式和内核模式。用户模式下,通常根据用户的要求来加载和执行用户应用程序
和服务,有时候这些用户应用程序和服务也可以作为启动服务被载入。在内核模式下,通常运行设备驱动和操作系统的核心组
件。
图2 TSS体系结构