概述

2019年安全圈讨论度最高的热门词一定是“等保2.0”。等保2.0时代保护策略要变被动防御为主动防御,变层面防御为立体防御。

可信计算技术为主动防御提供了新的思路,也在等保2.0中被重点提及。我国网络安全领域著名专家、中国工程院院士沈昌祥在以《重启可信革命——主动免疫可信计算3.0》为主题的演讲中指出:“当前我国的信息安全的防护工作是比较传统的,也就是说称为老三样:防火墙、杀病毒、入侵监测,这样是解决不了安全问题的。”那么如何解决问题呢?引入可信计算,因为“可信计算包括三方面:可信可用,方能安全交互;主动免疫方能有效保护;自主创新方能安全可控”。所以要利用可信计算技术实现主动免疫。

1.1 概念

首先我们了解一下什么是可信。

可信在不同的机构下的定义是不同的。可信计算工作组TCG(Trusted Computing Group)对可信的定义可以描述为:对于一个特定的目标,实体的行为总是与预期的相符,则针对这个目标,该实体就是可信的。电气电子工程师学会IEEE(Institute of Electrical and Electronics Engineers)对可信的定义则是:一个计算机系统称为可信的是指其提供服务的可信赖性是能够进行论证的。国际标准化组织ISO/国际电工委员会IEC则如下定义可信:参与计算过程的各个部件、处理过程及操作都是可预测的,并可以阻止病毒和一定程度的物理影响。

可信计算模块

虽然以上各个机构对可信的定义不同,但总结起来看,都强调了实体行为、能力的可预测性和可验证性,即一个实体可信就是指其行为、能力需要符合预期并可验证其符合预期。

1.2 起源

可信计算最早起始于上世纪90年代中期,并于21世纪来到了中国。不过据中国工程院院士沈昌祥所述,中国其实早在1992年就开始了相关技术的研究,只不过那个时候不叫可信计算,沈院士申请立项的题目是:主动免疫的综合防护系统。到了2001年才真正的开始消化吸收TCG的技术理念,当时参与的企业有联想、兆日、瑞达等。从此可信计算在中国落了地,生了根,并且结出了许多丰硕的果实。

1.3 发展

随着可信计算的诞生到初步得到广泛认可,国际上成立了首个可信计算相关的联盟:可信计算平台联盟TCPA(Trusted Computing Platform Alliance),这个就是TCG的前身,该组织于2001年提出了可信平台模块TPM1.1技术标准。

TPM1.1推出后,一些以IT技术为主导的国际厂商相继推出了有关可信计算的产品,得到产品界及用户的普通认可,而TCPA的成员也迅速增加,到了2003年已经达到了200家之多,几乎所有国际主流的IT厂商都已加入该联盟。随后TCPA更名为TCG,并逐步完善了TPM1.2技术规范,把可信计算的触角延伸到了所有IT相关领域。

匹配TPM 1.2版标准的可信平台模块的组件

随着ICT技术的快速发展,TCG于2008年在TCG TPM WG成功开发TPM 2.0第一版标准库,之后于2011年7月和2012年2月先后两次提供草案和修订后的新版本草案给SC27专家征求意见和建议,并于2012年10月公开征求意见,2013年3月正式公开发布TPM2.0标准库,从此TPM进入2.0时代。

中国在可信计算方面的发展主要也经历3个阶段。

第一个阶段是对TCG技术理念的消化吸收,时间大致是从2001年起到2005年。这个阶段中国的一些IT厂商基于TCG技术开发出了一些产品,中国也成立了可信计算标准工作小组,推进可信计算相关的标准研究。

第二个阶段虽然时间短,但发展迅速。从2006年到2007年两年间,建立了自主技术理论和标准体系,成立了中国自己的可信计算组织,即中国可信计算工作组TCMU(China TCM Union),会员单位达到了11家。中国的可信计算以TCM(Trusted Cryptography Module)为基础,制订了《可信计算密码支撑平台技术规范》系列标准,并于2007年12月发布《可信计算密码支撑平台功能与接口技术规范》。在这个阶段,国内企业也相继推出了基于TCM技术规范的产品,有力支撑了相关标准。

第三个阶段从2008年至今,发展到了我们的可信计算3.0时代。这个阶段在TCMU成员的共同努力下,已经形成基本完整的产业体系,包括芯片、计算终端、可信网络和应用、可信计算测评等。

关键技术

可信计算经过这么多年的发展,对应的关键技术发展思路逐步清晰,但仍然有许多未解决的技术问题待进一步深入研究。目前可信计算主要的研究思路是:

可信计算技术研究思路

2.1  安全芯片

国际上,TCG的解决方案是引入TPM硬件安全芯片,以此为起点构建可信计算整个体系结构。美国微软公司则利用其微内核机制建立可信的执行环境,为其世界闻名的Windows系统提供平台安全和隐私保护的支持。这就是微软的NGSCB可信计算研究计划。

中国创新性的提出TCM技术方案,使用自主研发的安全芯片,构建可信计算密码支撑平台,做到了自主密码为基础,控制芯片为支柱,双融主板为平台,可信软件为核心,可信连接为纽带,策略管控成体系,安全可信保应用。

2.2  终端平台可信技术

终端平台可信技术需要解决的核心问题是基于安全芯片的从系统引导、操作系统、应用程序到后续动态运行的整个链条的完整性度量。完整性度量主要分为静态度量和动态度量两个方面。在静态度量方面,主要有IBM研究院提出的IMA、PRIMA架构,而动态度量最著名的是卡内基梅隆大学提出的BIND系统。

2.2.1. PRIMA架构

IBM最早根据TCG提出以TPM为“根”,逐级度量启动过程中硬件、引导、操作系统及应用的思想而实现的IMA架构可以对系统启动的所有程序进行度量,但其最大的缺点是系统效率太低。为解决效率问题,IBM又提出了PRIMA架构,其特点是将度量与信息流访问控制模型相结合,从而度量对象大幅度精简,达到了效率提高的目的。二者的主要区别如下图所示:

IMA和PRIMA的主要区别

2.2.2. BIND系统

为解决静态度量无法保证程序在运行过程中的可信问题,BIND系统被卡内基梅隆大学研制出来。其主要工作原理为:

● 扩展编程语言的度量语义

● 编程时添加这些度量标记

● 启动编译好的程序

● BIND系统被激活

● 动态的执行对程序的完整性度量

● 根据度量结果决定程序的停止和运行

下图为BIND系统提供的编程接口:

BIND系统提供的编程接口

从上图可以看出,BING系统提供的编程接口并不复杂。BIND系统实现了一定程度的动态度量,但它需要编程人员在编程时使用上述接口手动添加标记,这对编程人员提出了“特殊”的要求,比较难以落地。

2.2.3. vTPM

近年来,随着虚拟技术的发展和终端平台上虚拟应用的越来越普及,虚拟平台度量技术也得到不断的研究而逐渐成为热点。在虚拟度量技术方面有代表性的是LKIM系统、HIMA、HyperSentry和IBM提出的vTPM,后者应用相对比较广泛。

vTPM即虚拟的TPM,在物理的TPM的基础上,使用虚拟技术为每个虚拟机提供一个独立的TPM,从而解决了多个虚拟机共享TPM的资源冲突问题。其主要的架构如下图所示:

vTPM基本架构

从上图可以看出,物理TPM的驱动存在于物理层中,同时利用vTPM管理器创建多个虚拟的TPM实例,这些实例与域U进行交互,使得虚拟机的可信成为可能。不过这种方案也有其缺点,最主要的问题就是vTPM和TPM之间缺乏有效的绑定。

2.3  平台间信任扩展技术

构建了终端平台的可信之后,需要将终端平台的可信扩展到远程平台,这里主要使用的方法便是远程证明。远程证明主要由平台身份证明和平台状态证明组成。

2.3.1. 平台身份证明技术

远程平台身份证明技术主要有Privacy CA和DAA。Privacy CA是基于TPM1.1规范的,使用平台证书直接证明自己可信的身份。这个方案最大的问题是无法隐匿平台。基于CL签名的直接匿名证明协议DAA(Direct Anonymous Attestation)解决了平台隐匿问题,但其解决方案中使用的签名长度太长,导致计算量大,效率并不高。所以就有了各种改良的DAA。由Brickel提出的基于椭圆曲线及双线性映射对的一种优化的DAA方案有效降低了原来DAA签名中的长度过长和计算量大问题,提高和通信和计算性能。

我国在平台身份证明技术方面也取得了长足的进步,由冯登国等提出的我国首个基于q-SDH假设的双线性对DAA方案,有效解决了远程证明协议的安全性和效率问题。

跨域DAA架构

除了基于q-SDH假设的DAA方案外,冯登国等还提出了一种跨域的DAA方案,如上图所示,解决了多个信任域TPM匿名认证问题。

2.3.2. 平台状态证明技术

平台状态证明技术的研究热点主要是基于属性的平台完整性状态证明协议,即PBA(Property-based Attestation)。不过除此之外还有TCG提出的二进制直接远程证明方法、基于Java语言的语义证明、针对嵌入式设备提出的基于软件证明和我国研究人员提出的基于系统行为的证明协议。

TCG提出的二进制直接远程证明方法是将系统配置散列值直接传递给验证方验证,其缺点是会暴露平台配置,并且不易扩展。为此Liqun Chen等提出了一种具体的基于属性的证明协议,其原理是将系统配置传递给可信第三方TTP(Trusted Third Party),由TTP得出其具有的属性,并发放相应的属性证书,从而在验证方需要验证平台可信性时,将属性证书发送给验证方以证明平台的可信性。

2.4  可信网络接入技术

随着人类进入21世纪,网络已经无处不在,据不完全统计,目前世界上联网的设备有数十亿之多,而联网设备的类型也由原来的PC机扩展到各种各样的嵌入式设备、移动终端和智能终端等等。在可信计算领域,可信网络的接入技术也有了很大的发展。

可信网络接入技术在国际上,有TCG组织提出的TNC规范,而国内与之对应的则是TCA方案。

2.4.1. TNC

TNC是由TCG发布的可信网络连接规范,由2004 年5 月成立的可信网络连接分组TNC-SG(TNC Sub Group)提出,目的就是将终端平台的可信状态延续到网络中,使信任链从终端平台扩展到网络。下表为TNC各个版本的发布时间及主要内容汇总:

TNC主要发展历程

TNC规范架构中主要包括3个逻辑实体、3层划分和相关接口组件组成.该架构的主要思路是将完整性评估层与完整性度量层添加到传统的网络接入层次之上,从而实现对接入的终端平台的身份和完整性验证。TNC基础架构图如下:

TNC基础架构

其中,访问请求者AR(Access Requestor),策略执行点PEP(Policy Enforcement Point)和策略决策点PDP(Policy Decision Point)组成了3个逻辑实现。访问请求者是请求访问受保护网络的逻辑实体。策略执行点是执行PDP的访问授权决策的网络实体。策略决策点是根据特定的网络访问策略检查访问请求者的访问认证,决定是否授权访问的网络实体。

整个网络接入过程是:

■ AR发出访问请求,收集平台完整性可信信息,发送给PDP,申请建立网络连接;

■ PDP根据本地安全策略对AR的访问请求进行决策判定,判定依据包括AR的身份与AR的平台完整性状态,判定结果为允许或禁止或隔离;

■ PEP控制对被保护网络的访问,执行PDP的访问控制决策。

2.4.2. TCA

TNC方法首先进行的过程是用户认证,该过程除了对用户身份进行验证,还要为后续终端平台的凭证认证过程及终端平台完整性验证过程提供安全的通信通道。VPN和IEEE 802.1x是TNC采用来进行认证和建立通道,进而传输终端平台认证消息。AR并不直接验证访问控制器的身份和终端平台的完整性,这降低了TNC的安全性。

为了实现可信计算网络平台安全、可信赖的运行,针对TNC的不足,建立自主的可信网络连接体系,2007年4月,我国启动了自主可信网络连接标准的制定工作,由此诞生了TCA。TCA是我国以自主密码为基础、控制芯片为支柱、双融主板为平台、可信软件为核心、可信连接为纽带建立的可信计算体系不可或缺的一部分。对应的国家标准GB/T 29828―2013《信息安全技术 可信计算规范 可信连接架构》也于2013年11月12日正式发布。

TCA的工作原理

如上图所示,TCA的工作步骤简述如下:

应用及前景

目前,国际上主流的台式机、笔记本已经标配上了TPM安全芯片,国内支持TCM安全芯片的安全主机已经全面量产,多数的国内外移动终端也都有了安全芯片的支持。与可信计算相关的应用不断的被挖掘出来,前景一片大好。

3.1  信息安全

可信计算与信息安全密不可分。其中,TPM模块产生的密钥难于攻击,在用户身份验证方面起着至关重要的作用。可信计算的可信链条机制,从信任根开始,直到应用程序启动运行,可以防止病毒运行和恶意代码执行。可信计算运算和防御并行的双体系架构,在计算的同时进行安全防护,使计算结果总是与预期一致,整个过程可测可控,不被干扰,实现了主动免疫。网络接入方面,TCG提出的TNC架构及我国提出的TCA架构都保证了接入的安全性。这样从单个终端平台的可信、到远程平台协同的可信、再到整网可信,完成了整个系统的闭环。

3.2  云计算

可信计算技术能够用来支持分布式环境下的云计算,解决云计算的安全问题。

在需要多种身份实体认证机制的需求下,可信计算平台可以起到非常好的辅助作用,可信计算能够提供比用户名+口令更强的认证,可信计算包含的专用主密钥,对存储在云计算系统中的其他信息提供保护。TPM存储硬件证书使得基于可信计算技术进行客户设备以及其他设备的认证成为可能,这对确保云计算的安全非常关键。

云计算的特点之一就是会有大量有自己目标和行为的用户访问云服务,用户需要注册进入一个或几个角色,只所以使用角色是为了降低访问控制模型的复杂性。这些不同角色的用户应该来自可信计算平台,因为可信计算平台上的安全机制保证了用户自身的隐私和安全。用户从基于 TPM或TCM 的可信计算平台来登录云计算系统,从而获取权威证书,当希望同远程其它实体进行通信时,其信息传送通过可信机制得到保护。

云计算系统中的数据是其核心价值提供的基础,这些重要数据可以使用TPM模块的密钥进行加密存储,这样针对这些数据的攻击就变得异常困难。除此之外,对外传输中的数据同样使用加密技术来确保传输过程的数据安全。可信计算提供的认证和完整性检验确保了数据不被修改。

3.3  数字版权管理

随着信息社会的发展及数字化程度的不断提高,数字版权保护问题越来越突出,为解决相关问题,数字版权管理(Digital Right Management, DRM)技术成为该产业链的关键。DRM已经成为数字内容行业的基础设施,是实施数字版权保护的技术解决方案。DRM的主要作用是保证数字内容只能由购买者在指定的授权生命周期内合法使用,未购买或超出周期使用的行为都会被禁止。现在的DRM客户端基本上都是在开放计算平台上部署,如:通用电脑和手机等移动终端,数字内容的使用过程需要由客户端的DRM应用程序参与,负责解密使用和相关权利包的解析验证。由于 DRM客户端安装在通用电脑和个人手机上,所以其运行环境是无法保证安全的,所以需使用额外的技术手段来确保DRM的可信。

可信计算技术的发展为上述问题的解决提供了很好的技术支撑。在授权许可证分发和数字内容的使用这两个重点环节中已有学者使用了可信计算技术来进行保护,同时可信计算参与到DRM的用户身份认证及密钥协商协议,完成DRM客户端的身份认证及完整性验证,有效保护了数字版权内容的分发。

3.4  区块链

可信计算保护数据隐私性的属性,使其变为区块链技术生态中的重要一环。可信计算相关技术目前多与分布式计算类项目、数据类项目以及 layer2 链下解决方案相结合。目前,此类项目的关注重点多在于 PC 端 CPU,应用广泛。

综上所述,可信计算已渗透到IT领域的各个方面,发展前景广阔。但我们不得不认识到,可信计算至今还有许多未解决的问题,如技术本身方面,安全芯片功能过于复杂,兼容性及标准符合性难于解决;理论模型等研究发展缓慢,突破不大。应用方面,在DRM中仍然存在着无法自由使用不经授权的软件、损害了开源软件的作用;在用户身份验证方面,因为被信任的应用者可以知道每个用户的真实信息,如果其滥用这些用户信息,就存在着用户隐私泄漏的问题。(冯全宝

声明:本文来自威努特工控安全,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。