trustzone与OP-TEE介绍导读

        历经一年多时间的系统整理合补充,《手机安全和可信应用开发指南:TrustZone与OP-TEE技术详解 》一书得以出版,书中详细介绍了TEE以及系统安全中的所有内容,全书按照从硬件到软件,从用户空间到内核空间的顺序对TEE技术详细阐述,读者可从用户空间到TEE内核一步一步了解系统安全的所有内容,同时书中也提供了相关的示例代码,读者可根据自身实际需求开发TA。目前该书已在天猫、京东、当当同步上线,链接如下:

当当购买地址

京东购买地址

天猫购买地址

非常感谢在此期间大家的支持以及各位友人的支持和帮助!!!。 

          如果系统芯片支持trustzone技术且支持TEE,那么TEE将在系统中提供一个安全的运行环境,用于保护系统中的重要数据和安全操作。通常一个完成的系统除了有bootloader和kernel,recovery以及上层android系统之外还需要有TEE OS。系统启动的时候使用secure boot功能来保护整个系统的image不被恶意篡改。OP-TEE是借助trustzone技术实现的一种TEE方案。而TEE又属于整个系统中的一个部分,可以看作是与linux kernel同一个层面。本文将介绍如何有序的阅读OP-TEE相关的文章以便理解整个OP-TEE的具体实现。本系列的所有code和demo都是基于OP-TEE 2.4版本,不同版本的OP-TEE可能目录结果或者内容有所不同,所以在使用本博文中的用例时,请务必核对版本

本专栏中所有的示例代码中都有相关的patch,读者只需合入build/qemu.mk和build/common.mk的补丁就可以完成相关的集成操作

    由于OP-TEE的更新导致示例代码无法正常运行,读者可按照《0.使用Qemu运行OP-TEE》一文中的配置获取到代码,提供的示例代码的补丁已经在op-tee tag 3.0.0中更新

1. 环境搭建篇

  《0.使用Qemu运行OP-TEE

2. OP-TEE的使用篇

  《2.OP-TEE中添加自己的TA和CA

  《35.OP-TEE中基本算法接口调用实现

  《36.OP-TEE中secure-stroage的使用

3. OP-TEE编译篇

  《1.OP-TEE代码结构

  《3.OP-TEE+qemu的编译--工程编译target依赖关系

  《4.OP-TEE+qemu的编译--bios.bin镜像的编译

4. qemu运行OP-TEE的启动过程篇

  《5.OP-TEE+qemu的启动过程分析--run-only目标执行

  《6.OP-TEE+qemu的启动过程分析--加载bios.bin

  《7.OP-TEE+qemu的启动过程分析--加载optee_os和rootfs

  《8.OP-TEE+qemu的启动过程分析--启动linux-kernel

5. OP-TEE OS的启动过程篇

  《10.OP-TEE-OS启动(一)

  《11.OP-TEE-OS启动(二)

  《12.OP-TEE-OS启动(三)--service-init

  《13.OP-TEE-OS启动(四)--service-init_late

  《14.OP-TEE-OS启动(五)--driver-init和driver-init_late

6. OP-TEE实现的硬件基础篇

  《trustzone的硬件框架和安全扩展

7. ATF的启动以及OP-TEE的加载篇

  《1.ATF(ARM-Trusted-firmware)完成启动流程

  《2.ATF(ARM-Trusted-firmware)启动---bl1

  《3.ATF(ARM-Trusted-firmware)启动---bl2

  《4.ATF(ARM-Trusted-firmware)启动---bl2到bl31的跳转

  《5.ATF(ARM-Trusted-firmware)启动---bl31

  《6.ATF(ARM-Trusted-firmware)启动---bl32(OP-TEE)

8. secure world与normal world执行流程篇

  《9.OP-TEE中CA接口调用的完整流程----系统各层面关系

9. REE侧userspace接口篇

  《19.OP-TEE中TA与CA执行流程详解-------软件架构篇

  《20.OP-TEE中TA与CA执行流程-------CA部分的代码篇

  《21.OP-TEE中TA与CA执行流程-------libteec介绍

  《22.OP-TEE中TA与CA执行流程-------tee-supplicant(一)

  《23.OP-TEE中TA与CA执行流程-------tee-supplicant(TA请求具体请求的处理)

10 REE侧op-tee驱动篇

  《24.OP-TEE驱动篇----驱动编译,加载和初始化(一)

  《25.OP-TEE驱动篇----驱动编译,加载和初始化(二)

  《26.OP-TEE驱动篇----libteec和tee_supplicant调用驱动流程和重要结构体

  《27.OP-TEE驱动篇----libteec接口在驱动中的实现

  《28.OP-TEE驱动篇----tee_supplicant接口在驱动中的实现

11. normal world与secure world切换过程篇

  《18.OP-TEE中secur-world和non-secure-world的切换过程

12. REE和TEE对中断的处理篇

  《15.OP-TEE中的中断处理(一)------中断配置和向量表的配置

  《16.OP-TEE中的中断处理(二)------系统FIQ事件的处理

  《17.OP-TEE中的中断处理(三)------系统IRQ事件的处理

13.TEE侧对smc的处理篇

  《29.secure-world对smc请求的处理------monitor模式中的处理

  《30.secure-world对smc请求的处理------OP-TEE对fast-smc请求的处理

  《31.secure-world对smc请求的处理------OP-TEE对标准smc(std-smc)请求的处理

14. REE侧userspace的请求在TEE侧的实现篇

  《32.secure-world对smc请求的处理------open-session操作在OP-TEE中的实现

  《33.secure-world对smc请求的处理------invoke-command操作在OP-TEE中的实现

15. TEE侧userspace与kernelspace调用篇

  《34.OP-TEE中system-call的实现

16. OP-TEE中的安全存储的实现

  《36.OP-TEE中secure-stroage的使用

  《37.OP-TEE中secure-stroage------安全存储使用的key的产生

  《38.OP-TEE中secure-stroage------安全文件数据格式和操作过程

  《39.OP-TEE中secure-stroage------安全文件数据的打开过程(open)

  《40.OP-TEE中secure-stroage------读写安全文件数据(read and write)

  《41.OP-TEE中secure-stroage------安全文件中数据的加密操作

  《42.OP-TEE中secure-stroage------安全文件的创建

17. TA镜像文件的签名和验签

43.TA镜像文件的签名

44.TA镜像文件加载时的验证

猜你喜欢

转载自blog.csdn.net/shuaifengyun/article/details/73716352
今日推荐