APP下载

移动终端高安全可信计算平台架构

2015-07-06刘建伟程东旭李妍

中兴通讯技术 2015年3期
关键词:移动终端

刘建伟 程东旭 李妍

摘要:针对移动终端日益增长的高安全等级业务需求,提出一种基于可信赖平台模块(TPM)芯片的面向移动终端的高安全、高可信计算平台架构。基于当前多种移动终端可信功能拓展架构,提出了TPM芯片在移动终端可信链路中发挥核心作用的软硬件集成方案;进一步设计了集成TPM芯片的原型平台,对移动终端的高安全可信属性进行原理验证,并对此可信计算平台进行了要点分析。

关键词: 可信计算;集成式可信赖平台模块;移动终端

目前,随着移动终端互联的发展,各种无线移动数据业务持续增长,尤其是智能手机、平板电脑、PDA等手持设备成为了个人信息终端,一类高安全等级业务如手机支付、电子转账汇款、移动电子商务、移动电子政务等方兴未艾。但是,病毒、木马、黑客攻击等各种安全威胁层出不穷,对移动终端面向高安全等级的应用带来了严重威胁[1]。在信息安全领域,可信计算组(TCG)提出了一整套可信计算概念[2-3],要求可信平台中集成可信赖平台模块(TPM)芯片,作为整个系统可信度量的根,再逐级构建可信链路,将信任关系扩展到整个PC系统。目前,基于TPM芯片扩展移动终端、嵌入式终端以及计算机网络的可信概念也被提出来[4-5],用于解决信息安全领域日益增加的可信计算需求。因此,基于TPM芯片构建面向身份的可信计算平台架构,是移动终端用来安全等级的有效途径。

1 移动终端各种可信增强

架构对比

人们为了解决移动终端安全可信问题,提出了多种可信增强方案,大多数方案都以软硬件相结合的方式提高系统的安全性

1.1 嵌入式处理器内嵌可信分区架构

方案1为嵌入式处理器内嵌可信分区架构。基于ARM单芯片应用处理器内核的嵌入式处理器在移动终端设备中应用广泛,为了提升ARM处理器的安全可信性能,ARM公司在某些Cortex系列处理器核中设计了内嵌可信分区的TrustZone架构[6],该架构隔离了单芯片系统(SoC)硬件和软件资源,构成安全子系统分区和普通存储分区,为利用TrustZone技术的移动设备提供了一个可信执行环境。

但是,为了追求最佳性能,ARM处理器核的结构非常复杂,致使其通常不具备芯片级安全防护能力,也不具备证书认证、数据加密等安全应用所需密码算法引擎。并且基于TrustZone架构的可信应用难以移植到其他嵌入式处理器环境中,使得可信应用十分受限。

1.2 便携式TPM架构

方案2为便携式TPM架构。TCG组织制订的可信PC平台规范[7-9],要求TPM芯片集成在PC主板上,通过改造主板BIOS,构造TPM可信链路,但是,集成式TPM可信平台方案初期成本高,用户可选余地少。因此,Intel于2002年提出了便携式TPM的概念,便携式TPM也具有可信根安全存储、各种密钥生成以及数字签名验证等功能,便携式TPM最初设想是通过USB接口或PC卡接口与PC连接,构建灵活的可信PC平台。因为PC平台可信规范不适用于移动终端设备环境,为了解决移动终端安全可信问题,人们将便携式TPM方案移植到了移动终端中[10]。基于便携式TPM的移动终端可信架构如图1所示。

该方案中,移动终端上电后,引导程序(Bootloader)加载嵌入式操作系统代码,系统启动并加载可信升级管理部件,开始调用设备驱动程序访问便携式TPM模块,便携式TPM与嵌入式操作系统之间需要执行安全认证协议,构建可信计算环境。

由于移动终端启动过程中,嵌入式操作系统需要主动发起可信服务,而便携式TPM处于被动调用地位,理论上该方案仅能构建有限安全的可信环境,不适用于需要高安全可信的移动终端应用场景。

1.3 移植PC可信TPM应用架构

方案3为移植PC可信TPM应用架构。移动终端设备借用PC平台可信架构实现可信应用是很自然的推广[11]。移植PC可信TPM应用架构如图2所示。图2给出了TPM芯片集成到移动终端电路系统中的原理框图,嵌入式处理器通过低引脚数(LPC)接口、内部集成电路(I2C)或者串行外设接口(SPI)低速总线接口与TPM芯片连接,嵌入式处理器与系统其他组件的连接关系保持不变。

此架构需要嵌入式处理器支持Bootloader代码通过LPC、I2C或SPI等低速总线被直接读出,需要改造Bootloader,使其支持可信度量操作。移动终端上电后,TPM芯片对Bootloader代码进行度量,并将度量值报告给TPM。随后,TPM将控制权移交给Bootloader,由它对嵌入式操作系统代码进行度量并将度量值报告给TPM。随后,逐级进行可信度量,直到可信链扩展到整个嵌入式系统。

移动终端与PC平台相比,安全风险更高。如手机移动终端,丢失风险大;经常升级系统和安全应用程序,甚至更新Bootloader;手机故障维修时,甚至会被更换手机主板芯片,任意读取手机闪存(Flash)中的敏感数据等。鉴于移动终端安全应用风险更高,本文基于TPM芯片提出了更加安全可信的“方案4”移动终端计算平台架构。

1.4 高安全可信移动终端计算平台

架构

方案4为高安全可信移动终端计算平台架构。方案4要求TPM芯片对移动终端电路系统拥有绝对的控制权,要求进一步增强Bootloader的功能,Bootloader能够对TPM芯片进行身份认证。对嵌入式处理器的部分功能和接口提出扩展要求,如要求嵌入式处理器具有安全存储区。与方案3相比较,显著提升了移动终端可信计算平台的安全可信性能。

高安全可信移动终端计算平台架构如图3所示。移动终端上电后,TPM获得系统控制权,通过图3中控制信号复位嵌入式处理器,通过数据读取通道访问Bootloader代码,完成可信度量后,向TPM报告度量值。同时,释放对嵌入式处理器的复位操作,Bootloader获得控制权,通过认证通道完成对TPM的身份认证。接着,通过高速总线通道读取嵌入式操作系统代码进行可信度量,并将度量值报告给TPM。随后,加载嵌入式操作系统程序,并将控制权移交给它。最后,逐级进行可信度量,直到可信链扩展到整个嵌入式系统。

基于图3架构,本文提出了轻量级的Bootloader认证TPM芯片的安全协议。在移动终端设备生产初装过程中,将配套TPM芯片的存储根密钥(SRK)哈希值写入安全存储区,并且该安全存储区仅Bootloader代码可以访问。针对TPM的身份认证过程非常简洁高效,即TPM通过认证通道将自身的SRK哈希值传给Bootloader,Bootloader从安全存储区读回初装的SRK哈希值,且比对一致后确认TPM芯片身份可信(如未被非法替换)。此外,是能够标识TPM芯片唯一身份数据的哈希值都可以写入安全存储区,作为身份认证过程的比对数据。

2 基于TPM芯片的移动

终端高可信度量协议

TPM芯片是一款集成了密码算法引擎,真随机数发生器,能够存放密钥、可信度量值的非易失存储器,具有抵抗各种物理攻击能力的SoC芯片。本文通过在移动终端硬件平台上集成TPM芯片,以此作为移动终端可信链的源头,构建移动终端高安全可信度量协议,实现整个移动系统软硬件模块逐级可信,为最终的高安全等级应用提供可信的身份、安全的认证证书以及密码学相关应用支持。

图4所示为移动终端在高安全可信计算平台架构下,系统上电后,移动终端启动过程中,可信链的传递过程[12-13]。首先,在集成TPM芯片的移动终端电路系统设计中,要求TPM芯片先上电,并使它拥有整个电路系统的控制权,具体操作步骤如下:步骤1。由TPM中的可信度量根的核心(CRTM)代码读取Bootloader代码并进行可信度量,将报告传给TPM,TPM将控制权转移给Bootloader(操作a),在执行步骤2之前,Bootloader执行轻量级认证程序,对TPM芯片进行身份认证(操作b),确认TPM芯片未被摘除或非法替换。步骤2。Bootloader执行嵌入式操作系统代码的可信度量,并将度量值报告给TPM,然后加载嵌入式操作系统,并将控制权转移给嵌入式操作系统(操作c)。步骤3。嵌入式操作系统完成可信服务管理程序的可信度量,将度量值报告给TPM,并启动可信服务管理程序(操作d)。可信服务管理程序主要包括调用TPM密码服务的驱动程序以及可信服务应用编程接口(API)接口程序,并负责度量其他需要可信认证的应用程序。步骤4。可信服务管理程序完成多个需要可信认证应用的度量,并将度量值报告给TPM,TPM芯片内部执行可信软件栈比对可信链路中的所有可信度量值,只有当所有度量值都正确,才认为完成了整个可信链路的逐级传递,使得来源于TPM的可信属性逐级扩展到整个移动终端。

最后,可信服务管理程序驻留系统内存中,执行主动度量功能[14-15],即对运行中需要可信认证的应用程序进行不定时的可信度量,确保这些程序被木马或病毒修改运行代码后能够被及时发现,并执行补救措施。因为需要访问其他可信应用的程序运行空间,要求嵌入式操作系统赋予可信服务管理程序足够的特权等级。

3 构建FPGA硬件平台

进行可信架构原型验证

为了验证和评估高安全可信移动终端计算平台架构的可行性和安全性,基于Altera公司的Stratix IV E系列的EP4SE530H40型现场可编程门阵列(FPGA)搭建了原型验证平台。鉴于此款FPGA集成了超大容量逻辑单元(531200 Logic Elements),我们将TPM模块和移动终端主处理器系统都集成到该款FPGA中(嵌入式处理器选用32位精简指令集(RISC)CPU——NiosII CPU软核),如图5所示。图中虚线框部分为硬件模拟的TPM模块,TPM模块的随机数发生器(RNG)采用M序列伪随机数发生器来代替,非易失存储器采用预先加载初始数据的静态随机存取存储器(SRAM)知识产权(IP)核来代替,不影响仿真验证的真实性。

移动终端主处理器系统中的安全存储区也采用预先加载初始数据的SRAM IP核组件,访问控制逻辑确保只有Bootloader程序能够访存安全存储区。TPM模块通过扩展访存接口能够控制移动终端主处理器系统的时钟复位电路,能够读取Bootloader代码,能够与总线从设备接口模块互通数据。基于图5原型验证平台我们实现了方案4的可信移动终端电路基本功能,验证了基于TPM芯片的移动终端高可信度量协议,实现了可信链的逐级传递,并扩展到整个系统。如果进一步采用基于FPGA的部分动态重配置技术,能够对整个移动终端主处理器硬件系统进行完全的可信度量[16]。

4 移动终端高安全可信

计算平台要点分析

关于移动终端高安全可信计算平台的设计和应用要注意以下要点。

首先,设计上注意TPM芯片在上电初始必须首先运行,必须控制移动终端主嵌入式处理器的运行。

其次,Bootloader必须对TPM芯片进行身份认证,因为TPM芯片存在被非法替换的风险。如果移动终端是智能手机,现在专业的维修人员在对手机进行硬件维修时,能够轻易的更换手机主板上的芯片。

再次,关于高安全可信移动终端计算平台系统升级操作,需要保证安全可信并在用户授权情况下稳妥进行。如果升级TPM芯片,需要经过当前TPM芯片的授权,再经过Bootloader程序认证,才能将新TPM芯片的平台唯一标识数据的哈希值写入安全存储区,随后才能进行TPM芯片的升级更换操作。如果升级Bootloader程序,须经TPM授权,将要更新的Bootloader的度量值写入TPM非易失存储区,再由原Bootloader程序将自身加载到主程序RAM,在主程序RAM获得执行后在线更新写入新Bootloader代码。再进一步,如果升级嵌入式操作系统代码,只需要经过TPM授权,将其度量值写入TPM的非易失存储区,再执行升级操作即可。

为了达到尽可能高的安全可信性能,移动终端的嵌入式处理器需要进行适当的可信增强改进,面向移动终端应用的TPM芯片也需要小型化和低功耗设计。

最后,虽然移动终端高可信设计初始阶段成本较高,但是,一旦制订并完善了移动终端可信计算平台行业规范,形成可信增强嵌入式处理器接口应用标准,则整个高安全可信移动终端计算平台的成本就会大幅下降。另外,采用移动终端集成TPM芯片的可信增强方案,也便于政府相关安全部门通过TPM芯片对可信安全业务进行监管。同时,政府相关安全部门作为可信的第三方,也便于安全可信认证协议的实施。

5 结束语

本文在分析多种移动终端可信增强架构的基础上,提出并验证了移动终端高安全可信计算平台架构的软硬件系统设计可行性,并给出了基于该架构的可信链传递协议,确保基于该架构具有足够高的安全可信软硬件基础,在此基础上构建的可信应用能够很好满足一类高安全等级业务需求。该架构在具有多处理器核的移动终端设备上的适用性需要进一步的研究和完善,其上的主动度量技术也是下一阶段重点研究方向。

参考文献

[1] 梁克非. 对智能移动终端进行信息安全等级保护可行性初探 [C]. 第二届全国信息安全等级保护技术大会, 2013-06-21, 中国,安徽,合肥. 2013:135-137

[2] TCG Specification Architecture Overview [S]. Specification Revision 1.4, 2007

[3] TPM 2.0 Mobile Reference Architecture [S]. Level 00 Revision 142, 2014

[4] KIM M, JU H, KIM Y, PARK J, PARK Y. Design and Implementation of Mobile Trusted Module for Trusted Mobile Computing [J]. IEEE Transactions on Consumer Electronics, 2010, 56(1):1254-1269

[5] LI M, LIU J, HAN L. A USB Flash Disk-Based Model of Mobile TPM with Mass Storage [C]//Proceedings of the Management and Service Science, 2009. MASS '09. International Conference. Sept. 20-22, 2009, Wuhan, China: IEEE, 2009: 1-3

[6] ARM. TrustZone Website [DB/OL]. [2015-01-31]. http://www.arm.com/zh/products/processors/technologies/trustzone/index.php

[7] TPM Main Part 1 Design Principles [S]. Specification Version 1.2, Revision 116, 2011

[8] TPM Main Part 2 TPM Structures [S]. Specification version 1.2, Level 2 Revision 116, 2011

[9] TCG PC Client Specific TPM Interface Specification (TIS) [S]. Specification Version 1.3, 2013

[10] 菅骁翔, 高宏, 刘文煌. 基于便携式TPM的可信计算机研究 [J]. 计算机工程与应用, 2006,42(36):70-71

[11] 刘海雷, 王震宇, 马鸣锦, 刘鑫杰. 嵌入式可信终端TPM接口的研究与实现 [J]. 计算机工程与设计, 2008, 29(13):3316-3318

[12] TANG K, XU X, GUO C. The Secure Boot of Embedded System Based on Mobile Trusted Module [C]//Proceedings of the Second International Conference on Intelligent System Design and Engineering Application. Jan.6-7, 2012, Sanya, Hainan, China: IEEE, 2012: 1331-1334

[13] LI J, ZHANG H G, ZHAO B. Research of reliable trusted boot in embedded systems [C]//Proceedings of the 2011 International Conference on Computer Science and Network Technology. Dec. 24-26, 2011, Harbin, China: IEEE, 2011: 2033-2037

[14] LIU C, FAN M, FENG Y, WANG G. Dynamic Integrity Measurement Model Based on Trusted Computing [C]//Proceedings of the 2008 International Conference on Computational Intelligence and Security, Vol 1. Dec. 13-17, 2008, Suzhou, China: IEEE, 2008: 281-284

[15] 邓锐, 陈左宁. 基于策略嵌入和可信计算的完整性主动动态度量架构 [J]. 计算机应用研究, 2013, 30(1):261-264

[16] GLAS B, KLIMM A, MULLER-GLASER K, BECKER J. Configuration Measurement for FPGA-based Trusted Platforms [C]//Proceedings of the 2009 IEEE/IFIP International Symposium on Rapid System Prototyping. June 23-26, 2009, Paris, France: IEEE, 2009:123-129

猜你喜欢

移动终端
基于移动互联网开发人才培养模式的探索
移动互联网时代高校营销专业教学面临的机遇与挑战
基于移动终端平台的编辑学习和交流方法
国内移动数字出版发展现状及对策研究
基于移动终端的高校移动学习体系构建研究
移动终端云计算应用分析
手机APP在学生信息化管理中的应用探索
中职学校学生管理系统手机运用平台的研究
政府办公区域无线网络覆盖的设计
基于移动终端的换物平台设计与应用研究