Ethan.Zhang · 1月7日

TF-M视频资料和TF-M常见问题汇总

最近越来越多的客户在问TF-M和PSA之间是什么关系,以及想了解更多TF-M的细节和规划,我们在这里对这些问题进行统一回答。

TF-M是什么?

TF-M的全称是Trusted Firmware for M,是一个开源的PSA的参考实现,主要是针对Cortex-M的CPU,是在2018年在香港Linaro connect上发布的,现在很多Armv8-M的SoC已经在使用TF-M
image.png

TF-M 代码链接:https://git.trustedfirmware.org/trusted-firmware-m.git/tree/

ATF和TF-M的差异是什么?

熟悉Arm Cortex-A的同学们基本都听说过Arm Trusted Firmware(ATF), 也是开源软件,主要是针对于Cortex-A CPU的,使用ATF可以快速把TrustZone使用起来,现在绝大部分的Armv8-A的SoC都在使用ATF,在ATF上层在集成Secure OS,例如豆荚科技,Trustonic,OP-TEE,瓶钵,以及一些自研的Secure OS等。
    但是Armv8-M和Armv8-A架构之间差异比较大,ATF不能适用于Armv8-M的CPU,为了让大家更方便的使用Armv8-M TrustZone,就做了一个开源的参考实现供大家使用和参考。

https://www.trustedfirmware.org/index.html

TF-M和PSA是什么关系?

PSA是包含四个部分,分别是安全需求分析,安全架构定义,安全实现,以及安全认证。可以简单认为TF-M是第三部分的参考实现,TF-M的设计原则是遵循了PSA-FF的要求,目前最新的TF-M版本是RC3,能够满足PSA Level 2的安全要求,同时实现了PSA-FF Isolation Level 2的要求,也就是实现了非安全区域和安全区域的隔离,同时在安全区域实现了APP RoT和PSA RoT之间的隔离。
image.png

TF-M是否只能运行在Armv8-M的CPU?

不是,TF-M最早期设计确实基于Armv8-M的架构开发的,但是Armv8-M和Armv7-M也兼容,如果SoC使用的Armv8-M的CPU,TF-M可以运行在Armv8-M的安全区域,但是有的SoC用的不是Armv8-M的CPU,有的是用的两个Armv7-M或Armv6-M的CPU,一个CPU作为非安全CPU,一个CPU作为安全CPU也可以实现安全隔离,那么TF-M也可以运行在安全的CPU,不过个人建议还是SoC升级到Armv8-M的CPU。

TF-M和RTOS是否需要绑定?

TF-M不需要和RTOS进行绑定,相对对立,可以认为一个SoC运行了两个操作系统:RTOS和TF-M,TF-M提供标准PSA API接口向RTOS提供安全服务。
               image.png

TF-M和RTOS怎么进行集成?

集成方式十分简单,TF-M的Doc里有集成文档,需要RTOS支持Armv8-M,并把TF-M的生成的文件编译到RTOS,现在TF-M已经与多家RTOS公司进行了集成。

https://git.trustedfirmware.org/trusted-firmware-m.git/tree/docs/user_guides/tfm_integration_guide.rst

不使用TF-M,能否满足PSA安全要求?

当然可以,PSA是一套安全准则,不限制于Arm架构,同时不限制于任何RTOS,以及Secure OS,TF-M只是PSA的一套参考实现,同时我们也非常鼓励更多公司参与到PSA生态,现在国内外已经有好几家公司都在提供PSA的secure OS,以及Security solution。

TF-M视频资料汇总

Linaro Connect Hongkong 2018

  1. Introduction to TF-M
  2. TF-M Core and Partition Manager
  3. TF-M Secure Storage
  4. TF-M Secure Boot

Linaro Connect Vancouver 2018

  1. Trusted Firmware for M, technical deep dive
  2. Trusted Firmware M: Current Topics View Resources
  3. Open CI for Trusted Firmware View Resources
  4. Trusted Firmware - Project Updates and Topics

Linaro Connect Bangkok 2019

  1. Trusted Firmware.org Project Update
  2. TF-M Services on Multi-Core System
  3. Trusted Firmware M - what's cooking?

Linaro Connect Sandiego 2019

  1. TF-M Remote Secure Services with Zephyr
  2. Secure Runtime Library on IoT Device
  3. Trusted Firmware Project Update

会持续更新,如果有任何问题,请随时沟通

1 阅读 540
推荐阅读
0 条评论
目录
qrcode
关注微信服务号
实时接收新的回答提醒和评论通知