如何设置 TrustZone 开发环境

rui*_*ker 4 arm soc trusted-computing trustzone

我想开始玩ARM TrustZone,所以我想设置一个开发环境,不幸的是我觉得我仍然缺少一些东西,我不知道如何把所有东西放在一起。

这是我现在的照片:

  • 需要带有 Cortex-A 处理器的 SoC
    • 没有板子可以开发吗?即模拟器?
  • TrustZone 是一种硬件和软件技术
    • 如果我得到一块 SoC 板,是否已经涵盖了硬件部分?
    • 软件(OS/Kernel)部分可以用GlobalPlatform、OpenTEE等解决。
  • 可信应用开发
    • 有哪些 IDE?
    • 他们如何部署到董事会?

我知道这是一个相当广泛的问题,我很乐意获得在线资料的链接


编辑:

我的问题的某些部分得到了部分回答,但最重要的事情还没有得到回答:我详细描述的图片是否正确和完整?是/否,为什么?

不,这不是我应该使用哪个基于 ARM 的开发板的副本

Oli*_*erM 5

对于模拟器,如果预算充足,可以使用 ARM Fast Model ( https://developer.arm.com/products/system-design/fast-models )。
QEmu 可能有一些 Trustzone 支持,但我不确定 Trustzone 实现的可靠性(在 QEmu 上工作的可能不适用于真实硬件)。joakim-bech(致力于可信操作系统开源实现的首席工程师之一)在他的stackoverflow 响应中说它应该可以工作;他还在博客文章TEE Development With No Hardware - 这可能吗?...

我建议您查看Optee - Open Portable Trusted Execution Environment支持的平台列表:https : //github.com/OP-TEE/optee_os#3-platforms-supported

您其他问题的答案实际上取决于您使用的平台、预算、开发环境等

低于 150 美元:

如果你想坚持使用 Windows,你可能需要自己构建 qEmu(qEmu 似乎支持 Windows,但我不确定 Windows 已经构建的二进制文件是否支持 Trustzone)。在硬件板方面,我使用Hikey 板(目前售价 119 美元)进行 Trustzone 开发。
使用 Linux 进行开发可能会为您节省一些时间,因为对于此预算,您可能必须使用通常主要支持 Linux 的开源解决方案。

开始为 OP-TEE 开发可信应用程序:
我使用了这个演示文稿:https : //www.slideshare.net/linaroorg/lcu14103-how-to-create-and-run-trusted-applications-on-optee
我更新了/改进了原始示例代码,我的更改可以在这里找到:https : //github.com/oliviermartin/lcu14_optee_hello_world