ARM TrustZone
2014-04-02 04:46
375 查看
TrustZone是2004年ARM cortex-a5引入的。
TrustZone是ARM对ARM v6指令集的扩展,增加了一条指令,一个配置状态位,以及一个安全态。它的目的是把一些安全性要求较高的代码放到安全区里来执行。
内核态程序要进入安全区,需要执行SMI(secure monitor interrupt,在cp15安全状态寄存器中置s位)指令。用户态程序需要调用api接口,操作系统检查程序是否安全,通过则执行smi进行安全区。
s位还体现在AMBA总线上是什么意思?
安全监控程序的固件是独立与OS的,自足的,不可重入的。它负责保存上下文状态(主要是寄存器),包括把当前处理器配置信息保存到一组分编寄存器中。TrustZone增加了大约350个状态位的开销,上下文切换大约需要200个cycle.
ARM建议把安全监控程序放到单独的一块TCM中。TCM是什么?安全监控程序是自己开发的吗?安全区的缓存,TLB, TCM都是单独配置的,因此切换的性能是有保障的。
对中断处理也有影响。因为中断可以来自外设,也可以来自软件,因此要假定中断是不安全的(why)? ARM可以把中断也定义为安全和非安全的。安全代码只能被安全中断打断。
![](https://img-blog.csdn.net/20140402043753531)
![](http://www.arm.com/zh/images/TZ_-_Tier_One.jpg)
第一层架构
![](http://www.arm.com/zh/images/TZ_-_Tier_Two.jpg)
第二层架构
![](http://www.arm.com/zh/images/TZ_-_Tier_Three.jpg)
第三层架构
![](http://www.arm.com/zh/images/TrustZone_Hardware_Architecture.jpg)
硬件架构
![](http://www.arm.com/zh/images/TrustZone_Software_Architecture.jpg)
软件架构
![](http://news.mydrivers.com/img/20120814/s_c7e3bcd25fcb48308e3b48245b253a15.jpg)
要想完整的实现TrustZone还必须有其他条件配合,首先是TrustZone硬件,也就是类似Cortex-A5这样的处理器,然后就是配套的系统软件,这也是最关键的部分,主要有两家厂商在做。
一家是德国慕尼黑市的Giesecke & Devrient公司的MobiCore,另一家则是荷兰Trusted Logic Mobility公司的Trusted Execution Environment。这两家公司都是在ARM网站上推荐的。
注1:紧致内存是指片上快速存储区,与片上缓存具有同等的性能,但因为程序可完全控制紧致内存,因而比统计复用的缓存有更好的可预测性
TrustZone是ARM对ARM v6指令集的扩展,增加了一条指令,一个配置状态位,以及一个安全态。它的目的是把一些安全性要求较高的代码放到安全区里来执行。
内核态程序要进入安全区,需要执行SMI(secure monitor interrupt,在cp15安全状态寄存器中置s位)指令。用户态程序需要调用api接口,操作系统检查程序是否安全,通过则执行smi进行安全区。
s位还体现在AMBA总线上是什么意思?
安全监控程序的固件是独立与OS的,自足的,不可重入的。它负责保存上下文状态(主要是寄存器),包括把当前处理器配置信息保存到一组分编寄存器中。TrustZone增加了大约350个状态位的开销,上下文切换大约需要200个cycle.
ARM建议把安全监控程序放到单独的一块TCM中。TCM是什么?安全监控程序是自己开发的吗?安全区的缓存,TLB, TCM都是单独配置的,因此切换的性能是有保障的。
对中断处理也有影响。因为中断可以来自外设,也可以来自软件,因此要假定中断是不安全的(why)? ARM可以把中断也定义为安全和非安全的。安全代码只能被安全中断打断。
![](http://www.arm.com/zh/images/TZ_-_Tier_One.jpg)
第一层架构
![](http://www.arm.com/zh/images/TZ_-_Tier_Two.jpg)
第二层架构
![](http://www.arm.com/zh/images/TZ_-_Tier_Three.jpg)
第三层架构
![](http://www.arm.com/zh/images/TrustZone_Hardware_Architecture.jpg)
硬件架构
![](http://www.arm.com/zh/images/TrustZone_Software_Architecture.jpg)
软件架构
![](http://news.mydrivers.com/img/20120814/s_c7e3bcd25fcb48308e3b48245b253a15.jpg)
要想完整的实现TrustZone还必须有其他条件配合,首先是TrustZone硬件,也就是类似Cortex-A5这样的处理器,然后就是配套的系统软件,这也是最关键的部分,主要有两家厂商在做。
一家是德国慕尼黑市的Giesecke & Devrient公司的MobiCore,另一家则是荷兰Trusted Logic Mobility公司的Trusted Execution Environment。这两家公司都是在ARM网站上推荐的。
注1:紧致内存是指片上快速存储区,与片上缓存具有同等的性能,但因为程序可完全控制紧致内存,因而比统计复用的缓存有更好的可预测性
相关文章推荐
- ARM TrustZone
- ARM TRUSTZONE 续
- TEE and ARM TrustZone
- tzpc-arm trust zone
- ARM TrustZone技术简介 -- 3 (BL31 Secure Monitor简介)
- arm trustzone
- ARM TrustZone
- 研读:Regulating ARM TrustZone Devices in Restricted Spaces
- ARM TrustZone and KVM
- A technical report on TEE and ARM TrustZone
- ARM Trustzone
- ARM TrustZone技术简介 -- 1
- TrustZone Example for Versatile Express Cortex-A9x4 and VE-A9x4 FVP model - ARM®DS-5™
- An Exploration of ARM TrustZone Technology
- Arm Trust-Zone和Intel SGX
- 使用TrustZone技术的移动终端匿名认证协议论文PPT:DAA-TZ: An Efficient DAA Scheme for Mobile Devices using ARM TrustZone
- ARM TrustZone
- ARM TrustZone安全内核调研
- VS2005 编译环境报错,报无可用平台,解决方案(By popzone@ARMCE)
- ARM Linux 的timezoneinfo 数据库的移植