一种基于改进的TPM的嵌入式系统可信计算体系结构

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 一种基于改进的TPM的嵌入式系统可信计算体系结构

前言

目前,信息系统使用的一些传统信息安全技术是缺乏主动防御功能,导致大部分安全问题在没有统一的安全系统的情况下滞后解决。随着物联网(IoT)的发展,各种嵌入式系统的应用不断增长,如传感器网络、智能卡、移动设备、医疗设备、航空电子设备、汽车和智能电网控制系统等。

一方面,嵌入式系统对互联网/移动互联网开放,并在物联网中具有外部攻击通道。另一方面,嵌入式系统的体系结构过于简单,其资源权限可以任意使用,其可执行程序很容易包含恶意代码来控制系统。

因此,嵌入式系统可能会带来安全问题。解决嵌入式系统的安全性是物联网时代嵌入式应用领域的一个新挑战。要解决物联网中嵌入式系统的安全性,需要改进体系结构,加强对病毒或恶意代码的主动监控和防范机制,提高整个系统的安全性。

可信计算组织(TCG)为PC信息安全问题提出了一套可信的计算概念和方法,需要一个可信的平台包括TPM芯片信任的根,然后建立一个信任链级扩展信任关系到整个电脑系统实现一个可信的安全计算环境在整个平台保证计算的操作正常执行。

目前,可信的概念扩大嵌入式和移动终端TPM芯片也提出解决日益增长的可信计算需求的嵌入式信息安全领域,如使徒等提出一个嵌入式系统硬件架构能够提供安全和信任以及物理攻击保护使用信任区分离。

本文借鉴可信PC架构的缺点,改进原TPM提出嵌入式系统基于嵌入式可信密码模块(eTCM)与中国的密码系统,并创建FPGA硬件平台验证可信架构的原型系统。

基于改进的TPM的可信嵌入式系统体系结构

由于嵌入式系统对功能、可靠性、成本、尺寸和能耗都有严格的要求,而TCG制作的原始TPM存在缺乏主能力和密码计算复杂(仅使用RSA而不使用对称密码)等缺陷。因此,原始的PTM并不完全适合于嵌入式系统,因此有必要改进TPM。除了原始的功能,改进的TPM应该为嵌入式系统的一些新特性。

在本文中,我们提出了一种基于改进的TPM和中国密码系统的可信嵌入式计算架构,如图1所示(一种层次结构)。

在体系结构中,我们采用对称和非对称加密相结合,形成嵌入式可信加密模块(eTCM),并提出了基于加密系统为信任根的嵌入式可信平台控制模块(eTPCM),建立了嵌入式信息系统的信任链,以确保应用程序和关键信息的安全性。

包含密码系统的eTCM是可信计算平台中必要和关键的基本组件,提供了独立密码算法的支持。eTCM包括硬件和固件,可以与eTPCM集成在一个IP核心中,作为一个改进的TPM。

嵌入式系统可信平台模块

本文结合原始TPM和中国密码系统,为嵌入式系统设计了一个嵌入式系统可信平台模块。由eTCM和eTPCM组成的模块是对原始TPM的改进。改进后的TPM具有主动控制能力、更快的对称加解密速度、提高了系统的可靠性,支持实现链型和星型信任测量模型,有效减少信任转移中的衰减和时间。

改进后的嵌入式系统可信平台模块的架构如图2所示。根据中国可信计算密码系统,eTCM中非对称密码学中使用的椭圆曲线密码学算法包括三个子算法:数字签名算法SM2-1、密钥交换协议SM2-2、公共密钥加密算法SM2-3。

SM4用于对称密码算法。哈希算法用于SM3。加密机制用于保护系统中的敏感数据和用户敏感数据。eTPCM被用作可信根,以提供一系列可信的计算功能,如完整性度量、安全存储、可信报告和加密服务等。

在eTPCM中,采用对称和非对称密码学的结合来提高安全性和效率,并实现了主动控制和测量。总线仲裁模块用于控制嵌入式系统中的主处理器和改进的TPM访问外部内存。

即eTPCM由于控制对外部内存的读写而处于活动位置,并且可以分别验证系统中的每个组件。

在原始TPM的基础上添加了一个物理保护的备份内存来存储操作系统的引导程序和关键数据,在验证期间,如果它们被篡改,可以很容易地恢复到外部主存,从而提高了系统的可靠性。

eTPCM可信的测量协议

本文以eTPCM作为嵌入式系统的信任源,建立了一个安全信任测量协议,以逐步实现整个硬件和软件模块的各级信任。在电路设计中,eTPCM需要在嵌入式主处理器之前启动,以便控制整个电路系统(改变了以前的TPM是一个无源设备的传统思想)。可信的链转移过程如图3所示。

具体步骤如下。

  • 步骤1:引导加载程序代码由eTPCM中可信测量根的核心(RTM)代码读取,并将报告转移到eTPCM。如果成功,控件将转移到引导加载程序,请转到步骤2。否则,引导加载程序代码不受信任,需要从要重新测量的备份内存中恢复它。
  • 步骤2:引导加载程序执行嵌入式操作系统核心代码的可信度量,并将度量值报告给eTPCM。如果成功,将加载操作系统,并将控制转移到操作系统,转到步骤3。否则,操作系统核心代码不受信任,需要恢复和重新测量。
  • 步骤3:嵌入式操作系统完成了受信任的操作系统

在可信度量协议中,信任转移链与链型和星型模型相结合。系统级采用链型可信测量模型,应用级采用星型模型,克服了由于eTPCM处理器通常性能较低,仅使用星型模型导致测量时间较长的缺陷。

该应用程序由用户内核中的可信服务管理器进行度量,并由嵌入式系统主机处理器进行计算,大大减少了度量时间。

6实验测试和验证

6.1验证平台建设

为了验证和评估嵌入式系统的可行性和安全性值得信任的计算架构,Altera层IV E系列EP4SE530H40 FPGA执行改进TPM功能和应用于信任的PDA与ARM处理器完成测试,取得了良好的结果。原型系统验证平台如图4所示。在可信的PDA开始时,请注意以下几点:

  • (1)改进后的TPM必须在开机前运行,ARM处理器必须通过它来控制运行。
  • (2)由于eTPCM需要读取外部内存数据进行可靠性验证,因此ARM处理器和eTPCM都需要访问外部内存,因此需要对外部内存总线进行仲裁。
  • (3)如果您要升级引导加载程序,它必须得到eTPCM的授权

在受信任的PDA中,平台充当从属服务器,计算机系统的启动过程由改进后的TPM控制。

平台启动之前,启动程序,操作系统被测量的改进TPM的完整性和完整性的测量结果与之前存储的值在改进的TPM来确定他们是否可信,只有确定被信任的程序可以运行。如果在完整性验证过程中出现错误,改进后的TPM将自动调用备份-恢复模块来实现系统恢复。

在系统通过完整性验证后,改进的TPM允许ARM处理器运行,受信任的PDA正常启动工作。

在系统执行过程中,改进后的TPM仍然处于监控状态,一旦检测到异常,就可以随时终止可信的PDA对外部内存的读写。

从PDA的可信启动过程和加密解密引擎的使用出发,改进的带有总线仲裁模块和备份恢复的TPM大大提高了控制能力,加快了对称加密解密的速度。

6.2实验结果分析

在本实验中,eTPCM需要在开始时对底层配置进行信任测量,测量过程不能太长,如果是,虽然验证可以完成,但应用程序的意义丢失。

  • (1)验证嵌入式系统引导程序和操作系统内核:实验中验证后的程序大小约为1MB,其中引导程序约为60KB,OS内核约为800KB。通过实际验证,实验系统的整个启动过程需要的时间小于0.2s,验证速度接近10MB/s,可以满足嵌入式应用的要求。
  • (2)测试对称加密解密速度:对称加密解密引擎SM4在改进的TPM硬件中实现,通过测试引擎的执行速度高达7.2MB/s。与我们在PDA中使用软件实现的SM4算法的74.6KB/s相比,使用硬件对称加解密引擎的结果大大提高了加解密速度。

7结论

本文从硬件的角度提出了一种嵌入式系统的可信体系结构,并提出了一种基于中国加密系统的嵌入式可信加密模块(eTCM)和嵌入式可信平台控制模块(eTPCM)。

它们相互结合,完成对原始TPM的改进。

改进后的TPM不仅符合TCG规范,而且还增强了它对嵌入式系统的控制,并且更符合嵌入式系统的特性。

实验分析表明,改进后的TPM设计对于嵌入式系统是非常有效的。

本文着重介绍了在嵌入式系统环境下TPM的改进和功能设计。

下一步是研究改进后的可信平台模块的硬件安全性。

原论文名字:A Trusted Computing Architecture of Embedded System Based on Improved TPM

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
6月前
|
存储
嵌入式微处理器的系统架构中指令系统
嵌入式微处理器的系统架构中指令系统
68 0
|
5月前
|
前端开发 安全 Linux
【虚拟化】典型虚拟化系统
【虚拟化】典型虚拟化系统
91 0
|
6月前
|
存储 量子技术
用DPU应用程序实现QRAM
用DPU应用程序实现QRAM
112 1
|
6月前
|
物联网 开发工具
嵌入式系统微处理器选型方案
嵌入式系统微处理器选型方案
99 1
|
6月前
|
缓存 开发者
嵌入式微处理器的系统架构中微处理器的内核架构
嵌入式微处理器的系统架构中微处理器的内核架构
93 0
|
6月前
|
存储 物联网 C语言
嵌入式微处理器的系统架构中冯诺依曼计算机系统
嵌入式微处理器的系统架构中冯诺依曼计算机系统
52 0
|
6月前
|
存储 传感器 内存技术
嵌入式微处理器的系统架构
嵌入式微处理器的系统架构
54 0
|
6月前
|
安全 物联网 数据安全/隐私保护
智能终端信息安全概念(八):硬件安全技术—芯片自主化与安全硬件架构
智能终端信息安全概念(八):硬件安全技术—芯片自主化与安全硬件架构
120 0
|
6月前
|
人工智能 物联网 网络架构
探索未来:硬件架构之路
探索未来:硬件架构之路
167 0
|
Ubuntu 算法 数据可视化
第三代软件硬件及系统选型
欢迎来到我们的 QML & C++ 项目!这个项目结合了 QML(Qt Meta-Object Language)和 C++ 的强大功能,旨在开发出色的用户界面和高性能的后端逻辑。 在项目中,我们利用 QML 的声明式语法和可视化设计能力创建出现代化的用户界面。通过直观的编码和可重用的组件,我们能够迅速开发出丰富多样的界面效果和动画效果。同时,我们利用 QML 强大的集成能力,轻松将 C++ 的底层逻辑和数据模型集成到前端界面中。 在后端方面,我们使用 C++ 编写高性能的算法、数据处理和计算逻辑。C++ 是一种强大的编程语言,能够提供卓越的性能和可扩展性。我们的团队致力于优化代码,减少资