您的位置 首页 5G

对ARM TrustZone的了解

TrustZone是ARM对ARM6的扩展,其实只是增加了一条指令,一个配置状态位,以及一个新的有别于核心态和用户态的安全态。ARM并没有把TrustZone…

TrustZoneARM对ARM6的扩展,其实仅仅添加了一条指令,一个装备状况位,以及一个新的有别于核心态和用户态的安全态。ARM并没有把TrustZone规划成能够处理一切的安全问题,它的方针是期望TrustZone能把一些安全性要求高的代码放在安全区域里履行,这也便是TrustZone姓名的由来。

ARM把TrustZone固化在硬件里的道理是:

体系的安全性不能全赖软件来确保,而且改写现有的不安全的软件,使之更安全也不大可行。

较为可行的计划便是引进一块安全的硬件逻辑,而且只让一小块软>件操控此安全逻辑。

这样既维护了既有出资,也把体系的安全危险降到最小。

由于操作体系和一般使用都能够运转在安全态,所以安全态不同于传统的运转态环状的特权区分,因而ARM把安全态描绘成一个平行区域,称之为安全区,又称为安全监控形式。

核心态程序要进入到安全区运转,有必要履行安全监控中止( secure monitor interrupt, SMI) 指令,而使用程序则有必要经过API 函数来调用SMI 指令,此刻,操作体系要担任查看使用程序是否安全,若经过查看则履行SMI 指令进入到安全区。这样,整个体系的安全性就全由操作体系担任了。换句话说,TrustZone需求软件的支撑,才干到达安全方针。

履行SMI 指令的详细动作是,SMI 在CP15的安全状况存放器中设置S位.。S位扩展还体现在AMBA总线上,这样外设也能够完结对TrustZone的支撑。

安全监控程序(固件)是独立于操作体系的、自足的、不行重入的一小段代码。只需CP15安全状况存放的S位处于置1状况,安全监控程序就要起作用(监测一切处理器操作)。首要监控程序要担任保存>上下文状况,即存放器内容(一般保存到紧致内存TCM中),而且把当时处理器装备信息保存到CP15的独自一组分编(banked)存放器中。TrustZone的开支是添加了大约350位状况信息,完结上下文切换需求200时钟周期。

由于TrustZone为安全区装备了独自的缓存、TLB和紧致内存TCM,上下文切换并不会导致这些功用构件内容的倒换,也即不会导致体系功用的下降。

ARM主张把安全监控程序及其运转时需求的内存置于一个TCM块中,以使推迟更低且更可猜测。

安全扩展关于中止处理也有影响。由于中止既能够来自外设,也可来自软件,那就有必要假定中止有或许形成安全漏洞,这样,在安全代码履行时,就不能简略地让任何中止切入进来。ARM主张的计划是,把中止也分为安全的和非安全的,安全代码只能被安全中止打断。当然,也能够把一切中止都提升为安全的,但那样会引进不必要的推迟。

TrustZone是体系结构的扩展,体系软件能够使用这一扩展供给安全支撑,TrustZone自身并不能完结安全保证功用,但这一处理计划硬件完结不杂乱,也不添加许多功耗,仍是具有很好性价比的安全嵌入式处理计划。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/5g/275621.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部