博客专栏  >  移动开发   >  ARM TrustZone技术

ARM TrustZone技术

介绍ARM TrustZone技术原理,并以OP-TEE作为参考的TEE方案,从芯片层面和软件层面介绍基于TrustZone技术的TEE方案是如何实现对数据的芯片级别的保护

关注
0 已关注
53篇博文
  • trustzone与OP-TEE介绍导读

    如果系统芯片支持trustzone技术且支持TEE,那么TEE将在系统中提供一个安全的运行环境,用于保护系统中的重要数据和安全操作。通常一个完成的系统除了有bootloader和kernel,reco...

    2017-06-25 14:23
    1101
  • trustzone的硬件框架和安全扩展

    trustzone的技术是为了提高系统的安全性而提出的。而对做到对外部资源和内存资源的硬件隔离就是trustzone的核心。这些硬件隔离包括:中断隔离,片上RAM和ROM的隔离,片外RAM和ROM的隔...

    2017-06-03 21:43
    629
  • 1. ATF(ARM Trusted firmware)完成启动流程

    ATF将系统启动从最底层进行了完整的统一划分,将secure monitor的功能放到了bl31中进行,这样当系统完全启动之后,在CA或者TEE OS中触发了smc或者是其他的中断之后,首先是遍历注册...

    2017-05-18 14:54
    869
  • 2. ATF(ARM Trusted firmware)启动---bl1

    ATF(ARM Trusted Firmware)是一针对ARM芯片给出的底层的开源固件代码。固件将整个系统分成三种安全等级,分别为:EL0,EL1,EL2,并规定了每个安全等级中运行的Image名字...

    2017-05-18 15:05
    629
  • 3. ATF(ARM Trusted firmware)启动---bl2

    BL2 image将会为后续image的加载执行相关的初始化操作。主要是内存,MMU,串口以及EL3软件运行环境的设置,并且加载bl3x的image到RAM中。通过查看bl2.ld.S文件就可以发现,...

    2017-05-18 15:21
    482
  • 4. ATF(ARM Trusted firmware)启动---bl2到bl31的跳转

    在bl2_main函数中的最后一句是: smc(BL1_SMC_RUN_IMAGE, (unsigned long)next_bl_ep_info, 0, 0, 0, 0, 0, 0);   该函数将...

    2017-05-18 15:32
    345
  • 5. ATF(ARM Trusted firmware)启动---bl31

    在bl2中通过调用smc指令后会跳转到bl31中进行执行,bl31最终主要的作用是建立EL3 runtime software,在该阶段会建立各种类型的smc调用注册并完成对应的cortex状态切换。...

    2017-05-18 15:37
    728
  • 6. ATF(ARM Trusted firmware)启动---bl32(OP-TEE)

    在bl31中的runtime_svc_init函数会初始化OP-TEE对应的service,通过调用该service的init函数来完成OP-TEE的启动。 1. opteed_setup OP-...

    2017-05-18 15:48
    547
  • 0.使用Qemu运行OP-TEE

    由于在线支付和互联网的发展,在手机和互联网电视领域,甚至物联网领域安全越来越显得重要。而android一直被诟病的就是运行速度慢和安 全问题。关于安全问题,这点无可厚非,谁叫android是开源的呢?...

    2017-05-09 20:02
    923
  • 1.OP-TEE代码结构

    OpenTee的源代码可以从github上获取,在Linux中使用repo的方式可以获取到完整的OpenTee的所有源代码。repo链接如下: repo init -u https://github...

    2017-05-09 20:11
    718
  • 2. OP-TEE中添加自己的TA和CA

    本文主要讲述了如何在OP-TEE中添加自有的TA和CA,并实现能够在qemu+OP-TEE上运行

    2017-05-10 12:46
    1117
  • 3.OP-TEE+qemu的编译--工程编译target依赖关系

    完成了自主添加CA和TA并成功运行之后,始终有一个疑问就是,整个工程是如何编译出来的,linux kernel在什么时候被编译,OP-TEE OS image是怎么编译出来的,TA和CA是如何编译出来...

    2017-05-10 13:06
    433
  • 4. OP-TEE+qemu的编译--bios.bin镜像的编译

    bios.bin镜像是启动的时候会被使用到的主要image,在编译目标run-only中,最终借助qemu-system-arm命令来启动OP-TEE和linux kern,以及挂载rootfs,在运...

    2017-05-10 13:27
    351
  • 5.OP-TEE+qemu的启动过程分析--run-only目标执行

    OP-TEE+qemu的启动过程分析--run-only目标执行 使用qemu模拟运行OP-TEE的时候,是通过在在build目录中执行make run-only来实现的。 1.run-only目...

    2017-05-10 15:21
    474
  • 6.OP-TEE+qemu的启动过程分析--加载bios.bin

    通过以上章节明了了使用qemu运行OP-TEE需要的相关image的编译过程以及如何启动。本文将开始介绍启动过程中bios.bin的加载过程。   通过调用qemu-system-arm启动qemu...

    2017-05-10 15:31
    280
  • 7.OP-TEE+qemu的启动过程分析--加载optee_os和rootfs

    启动过程中entry.S文件通过汇报调用main_init_sec函数将optee-os image. kernel image和rootfs加载到RAM中,并定位device tree地址信息,以备...

    2017-05-10 15:47
    300
  • 8.OP-TEE+qemu的启动过程分析--启动linux kernel

    在bios_qemu_tz_arm/bios/entry.s文件中,当执行完OP-TEE OS的启动之后,会调用main_init_ns函数来完成linux kernel的启动,该函数的主要内容和相关...

    2017-05-10 16:10
    314
  • 9.OP-TEE中CA接口调用的完整流程----系统各层面关系

    二级厂商需要实现自有feature的时候,需要添加自己的TA和CA接口,当CA部分的接口需要提供给APP层面调用的时候,一般做法是在framwork中建立特定的service,在service中调用C...

    2017-05-11 20:58
    630
  • 11.OP-TEE OS启动(二)

    如果系统中有ATF,则generic_boot_init_primary函数执行完成之后需要返回OP-TEE的向量表。如果不止ATF则不需返回向量表。OP-TEE启动过程中主体初始化操作都是在gene...

    2017-05-23 11:39
    371
  • 12.OP-TEE OS启动(三)--service_init

    通过分析tee.map文件可知,在编译完成之后,在initcall1段中存放的内容如下:   遍历整个OP-TEE目录可知,使用service_init(宏,使用__define_initcall...

    2017-05-23 19:34
    360
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部