当前位置:文档之家› 可信计算平台理论及其体系架构(节选)

可信计算平台理论及其体系架构(节选)

可信计算平台理论及其体系架构2.1 可信计算平台2.1.1 可信计算可信的概念,根据TCG(Trusted Computing Group)从行为学角度的定义为:如果一个实体的行为总是以期望的方式,达到预期的目的,我们认为它是可信的。

TCG的可信概念是行为可信,建立在以可信测量、可信报告、可信管理等为基础的可信计算平台概念上。

可信的概念体现着信息安全观念的发展[5][17],这种安全观念的发展在于建立一种新的体系,即计算机系统的信息安全应该由用户决定,而不是由计算机硬件生产商和操作系统等软件开发商来决定。

一个系统是否可信与是否安全是有区别的。

如果一个系统是安全的,说明该系统在安全技术领域中实施了一定条件下相对较为安全的功能,且具有相对较为安全的服务能力,但该系统所提供的这些安全功能和服务能力是否真的安全,该系统的用户并不能确定的对系统建立信任。

如果一个系统是可信的,说明该系统不仅实施了一定条件下相对较为安全的功能,且具有相对较为安全的服务能力,还向该系统的用户提供了用于考察该系统是否可信的能力,能够做到让系统的用户和管理者建立对系统的安全信任,让用户在使用系统提供的安全功能的同时,还对系统产生信任。

2.1.2可信计算平台技术背景所谓平台是一种能向用户发布信息或从用户那里接收信息的实体。

可信计算平台则是能够提供可信计算服务的计算机软硬件综合实体,它能向系统提供可靠性、可用性和信息的安全性。

可信计算平台是指一种能提供可信计算服务的计算机软硬件平台,它基于可信平台模块TPM(Trusted Platform Module),以密码技术为支持,以安全操作系统为核心,目标是成为信息安全领域中起关键作用的体系结构。

现有计算平台是开放平台,它具有广泛的灵活性,但基于其硬件和第三方很难建立起完整的信任关系,这是现有计算平台安全性缺陷的根本所在。

为保证信息安全,一些机构和组织研发出封闭式平台,但这种平台的局限性很大,它要求必须使用专用的硬件设备和专用的软件程序,用户必须通过专用接口进行通讯,这种方案通常只能用于特定的应用环境,如军事应用环境等某些特定的应用环境。

封闭式平台的好处是安全性较高,但其缺点也很致命,它不能被广泛的用户普及使用。

基于这两方面基础上提出了可信计算平台。

可信计算产品主要用于电子商务、安全风险管理、数字版权管理[18][19][20]、安全监测与应急响应等领域。

2.1.3 可信计算平台功能结构TCG认为如果从一个初始的“信任根”出发,在平台计算环境的每一次转换时,这种信任状态都可以通过传递的方式保持下去而不被破坏[21],那么平台上的计算环境将保持在可信的状态中,在可信环境下的各种可信的操作也不会破坏平台的可信状态,平台本身的完整性也就可以得到保证,平台将一直处于安全状态,这称为信任的传递机制。

可信不是指行动的可靠性,它是指经常性的活动,即行为,一次行动可以得出安全性结论,但不能得出可信性结论,安全是可信的必要条件,但不充分。

可信的概念涵盖了主题、客体和行为三个方面的内容。

另外,可信概念还表现在对事前的预警、事中的监督和事后的审查过程中。

因此,计算机安全的概念[22]可以表示为:⑴把计算机的可信概念定义为行为可信概念;⑵把计算机的可信平台概念定义为行为完整性和系统完整性。

可信计算平台是一个对本地用户和远程用户都可信的平台。

为了让用户相信在计算平台中已经正确安装并正确运行着一个用户期望的启动过程、一个用户选择的操作系统和一系列用户选择的安全功能,在用户和计算平台之间必须建立信任关系[23]。

平台的可信主要体现在以下四方面:⑴身份认证[24],体现了平台对使用者的信任;⑵平台软硬件配置的正确性,体现了使用者对平台运行环境的信任;⑶应用程序的完整性和合法性,体现了应用程序运行的可信;⑷平台之间的可验证性,体现了网络环境下平台之间的相互信任。

TCG认为,可信计算平台应具有数据完整性、数据安全存储和平台身份证明等方面的功能。

一个可信计算平台必须具备四个基本技术特征:安全输入输出、存储器屏蔽、密封存储和平台身份的远程证明。

可信计算的基本思想是:首先构建一个信任根,再建立一条信任链,从信任根开始到硬件平台,到操作系统,再到应用,一级认证一级,一级信任一级,把这种信任扩展到整个计算机系统,从而确保整个计算机系统的可信,可信计算机系统如图2-1所示。

可信应用系统可信操作系统可信硬件平台可信根图2-1计算机的可信结构图可信计算平台是集合可信硬件和可信软件包括可信操作系统在内的一个可被本地用户和远程实体信赖的平台,它是可信软硬件的综合实体。

可信计算平台重要基础部件主要包括可信平台模块TPM和TCG软件协议栈TSS(TCG SoftwareStack)[25]。

可信计算平台可信的核心是被称为可信平台模块TPM的安全芯片[26]。

在TPM中,有一系列平台配置寄存器PCR(Platform Configuration Register),在TCG最新的TPM 1.2版103修订版规范中要求TPM至少支持24个PCR[14],而其之前的版本则只要求支持16个PCR[27],这些PCR是保证平台完整性的基础。

每个PCR都是一个拥有160比特的存储空间,都处于TPM 内部,属受保护区域,为易失性存储器。

平台完整性度量的结果以SHA-1运算摘要的形式保存在PCR中。

PCR在系统启动时自动复位,为了在某个特定的PCR中存储无限量的度量摘要信息,在PCR中保存的方式,要求新值必须基于原有的旧值和即将写入的新值,这个操作被称为扩展,对PCR的扩展运算要求保持完整性度量发生的次序。

对PCR的操作需要使用TPM的保护功能,直接把一个值赋给一个PCR是禁止的。

完整性度量的日志信息被保存在TPM外部,该信息保存了每次完整性度量的信息及对PCR的扩展操作信息,不仅保存度量数据本身,还包括度量的次序、对象等。

可信计算平台对外提供安全服务,如平台完整性报告、平台身份认证、基于可信硬件模块的平台数据安全服务等。

可信计算平台,至少要包括三种功能:保护功能,证明功能,完整性度量机制[14]。

⑴保护功能保护功能是指一套命令集合,该命令集合拥有高级权限,能够访问受保护的区域。

保护区域指的是可以对敏感数据进行安全操作的区域,在保护区域中的数据只能通过保护功能的命令才能访问。

在可信计算平台中,保护功能和保护存储可以用于保存和报告完整性度量的结果,此外,保护功能还包括了密钥管理、随机数发生器以及数据密封等。

⑵证明功能证明功能是一个对信息的准确性进行验证的过程。

外部实体能够认证受保护的区域、保护功能和可信根。

在证明时,需要提供被证明实体的特征信息,对于平台来说,特征即为影响平台完整性的状态信息。

在所有形式的认证过程中,都必须保证使用的被证明实体信息是可靠的。

⑶完整性度量机制平台完整性是可信计算平台的一个重要特性,完整性度量机制主要包括完整性度量计算、存储、报告和验证[14][28][29]。

可信计算平台构建平台可信性的重要思想就是通过完整性度量机制,将平台信任根的可信性和控制权逐级传递形成信任链,并将平台可信性传递到整个平台各个部分的软硬件组件,确保平台可信。

2.2可信平台模块可信平台模块TPM是可信计算技术的核心[30],它通常具有密码运算能力和存储能力,内部拥有受保护的安全存储单元,是一个含有密码运算部件和存储部件的小型片上系统,它具有独立运行的CPU运算部件,作为可信平台的构件,TPM是整个可信计算平台的基石,TPM向操作系统、TSS等提供诸多安全方面的支持,通过TPM的功能支持,可信计算平台能够提供各种安全服务,它可作为密码运算引擎,用于对外提供加、解密的密码运算服务,可存储敏感数据。

可信平台模块TPM主要完成系统启动,用户认证,系统监控,加密签名等安全信任功能。

TPM是一个小型的计算机系统,一般是一种片上系统SOC(Systemon Chip),而且它必须是物理可信的。

2.2.1可信平台模块的功能可信平台模块TPM主要提供五项功能[31]:⑴密码功能要求TPM至少实现三种加密算法,即RSA,SHA-1,HMAC;⑵平台完整性报告安全存储和描述一个指定平台配置的哈希值报告;⑶安全存储指受保护的密钥和数据的安全存储;⑷初始化和管理功能指能够管理TPM的各个状态,并能实现所需的状态转换;⑸随机数为系统提供所需的随机数。

从TCG发布的TPM Specification Version 1.2版开始增加了辅助功能:⑴单调计数器和适时标记;⑵非易失性存储器;⑶审计。

TPM为数据交互的安全,提供四种安全保护方式[14]:⑴绑定(Binding)绑定是一种传统的使用公钥对数据加密的方式,加密后的数据只能由私钥解密。

如果私钥是由TPM管理的非可移植密钥,那么加密数据将只能在产生该密钥对的TPM平台中解密。

也可以使用可移植的密钥,然后把密钥移植到其他的TPM平台上,加密的数据即可在那个其他的平台中解密。

⑵签名(Signing)签名也是一种传统的保护形式,它使用只用于签名的密钥的私钥对信息的摘要值执行签名,这种私钥不能误用于作加密私钥,只能用于加密哈希摘要值,应注意避免混用。

⑶密封(Sealing)密封比绑定更进一步,密封使用非对称密钥的公钥加密信息,并在加密的信息中加入信息发送者的平台配置信息。

只有平台配置符合在加密信息中所要求的设置才能对加密信息执行解封。

密封是TPM强有力的一种保护功能,它对加密信息的解密,要求必须对环境进行配置状态的验证,验证通过后才能获准执行解密。

⑷密封签名(Sealed-Signing)密封签名是使用只用于签名的非对称密钥的私钥对信息的摘要值执行签名,并在签名的过程中加入当前操作平台的配置信息,验证者可以通过该信息确认签名是否是在一个安全的平台配置环境下生成的。

密封签名也是TPM特有的一个功能。

2.2.2可信平台模块的组成结构TPM的组成和连接[14][15][26][32]如图2-2所示。

图2-2 可信平台模块组成结构各部件说明如下:⑴I/O控制部件输入输出控制部件,即I/O控制部件,用于管理总线上的信息流,它能在TPM的外部总线和内部总线间交换数据时进行编码、解码转换,并将数据信息发送到TPM内部的相应部件。

I/O控制部件所接受的参数数据要求完全符合命令规范,否则将返回出错代码TPM_BAD_PARAMETER。

⑵密码协处理器(Cryptographic Co-Processor)密码协处理器负责实施TPM内的密码运算,包括:RSA的非对称密钥发生器,RSA非对称加密、解密等。

该部件内含一个执行运算的RSA 引擎,能实现RSA运算。

它还包含一个对称加密引擎,能在传输会话中加密授权信息保证会话的机密性。

相关主题