论文部分内容阅读
近年来,随着计算机技术的不断发展与计算机设备的不断普及,人们可以更加方便的利用计算机来进行通信、购物、网上交易等活动。这些活动的开展必然会将大量敏感且私密的信息交由计算机来处理。然而如今的计算机系统并不安全,在使用计算机的过程中会遭受各方面的恶意攻击。一旦信息发生泄漏,将会给计算机相关企业及其用户带来巨大损失。所以如今对于计算机的安全问题也越来越受社会所重视。中央处理器作为计算机系统的核心部件,它管理外部各个设备并负责数据的处理与交换。如果能对处理器进行安全方面的增强,建立一套完整的安全机制,那么计算机系统的安全性也会大幅提高。虽然在工业界以及学术界都针对处理器安全问题提出了很多增强方案,但是在安全方面并没有做到尽善尽美,仍然留有很多安全漏洞需要填补。本文针对ARM公司提出的TrustZone安全体系结构展开分析,认为其在安全区域划分与鉴定粒度、存储加密、区域隔离粒度等方面仍然存在不足。针对上述几个问题,本文分别提出了相应的安全增强措施,从而达到改善处理器安全性的目的。本文的主要工作和贡献有:1、设计实现了内存地址空间分配及安全性鉴定模块。针对TrustZone中对于总线事务安全鉴定粒度太大的问题,本模块将内存地址空间进行了更加细致的划分,使之能对划分的区域进行安全与非安全两种属性的安全设定,增强了安全鉴定的粒度。2、设计了存储加密模块。CPU已经逐渐成为安全系统的安全原点,通常可以认为其中的数据是安全的。但是如果数据需要从CPU中流出,则需要相应的加密技术来保证数据的安全性与完整性。TrustZone架构没有对内存接口数据安全性进行定义。本文设计了一个存储加密模块来提高TrustZone内存数据的安全性,该模块采用AES加密算法对出入内存的数据进行加解密,并采用了流水线技术对模块进行性能优化,使其对于系统性能的影响做到最小。3、构建了一套应用级隔离加密系统。在TrustZone系统中,应用程序直接分为安全域与非安全域应用程序两类。某一类的应用程序之间没有隔离的手段,存在安全风险。本文提出一种进一步隔离同类应用程序的技术,并构建了一套应用隔离系统,该系统利用前面设计的模块对每个应用都使用不同的密钥进行加密,从而达到应用与应用间隔离的效果。