RISC-V处理器的第一个可信执行环境:MultiZone Security

Hi!早啊!

之前我们学习的安全机制都是基于ARM的,但是最近RISCV的势头也是非常的强劲,所以今天介绍一个RISCV的TEE,下面简单做了一个介绍,感兴趣的可以在文末的Resources去获取到更加详细的资料。下面一起来看看吧~

RISC-V的多区域安全

RISC-V处理器的第一个可信执行环境(TEE)

对于需要强大硬件安全性的RISC-V应用程序,MultiZone®security为多个同等安全的域提供硬件强制软件定义的分离,并完全控制数据、程序和外围设备。

与传统解决方案相反,MultiZone®Security不需要额外的IP块或对现有固件进行更改。开源库、第三方二进制文件和遗留代码可以在几分钟内进行配置,以实现前所未有的安全性和安全性。

MultiZone®Security基于免费开放的标准,在GitHub上开源,并免费获得评估许可,商业使用免版税。

MultiZone Security是RISC-V的第一个可信执行环境,它为RISC-V开发了一个重量轻、基于策略的安全环境,可从小型单核物联网设备扩展到多核SMP Linux应用程序。

MultiZone Security

MultiZone®Security由以下组件组成:

  • MultiZone®nanoKernel –轻量级、可正式验证的裸内核,提供ram、rom、i/o和中断的策略驱动硬件强制分离。

  • MultiZone®Messenger–在无共享内存的基础上跨区域交换安全消息的通信基础设施

  • MultiZone®Configurator–将完全链接的区域可执行文件与策略和内核相结合,生成安全的引导固件映像。

  • MultiZone®Secure Boot –两阶段安全引导加载程序,用于验证固件映像的完整性和真实性(sha-256/sha-512/ECC)

(感觉这个算法差点意思)

MultiZone Security是如何工作的?

MultiZone Security可以无缝集成到现有的IDE中,例如Eclipse或基于命令行的工具集。

  • 应用程序块分别为每个区域编写、编译和链接,生成一组elf或hex文件。
  • 设置多区域策略是为了实现每个区域所需的ram、rom、i/o和中断隔离——RWX,粒度低至4字节
  • 最后,调用MultiZone Configurator将区域elf/hex文件与MultiZone运行时合并为签名的固件映像。
  • 整个系统可以使用现有的GNU或Eclipse工具集进行编写、编译和调试。

功能

  • 抢占式实时调度器:循环/协作,可配置时间刻度,cpu开销<1%
  • 可正式验证,完全以程序集形式编写,自包含-无第三方库依赖关系
  • 无限制数量的隔离受信任执行环境(区域)—硬件强制执行,策略定义
  • 每个区域最多32个内存映射资源,即闪存、ram、i/o、uart、gpio、定时器等。
  • 顶级配置和自然对齐配置的任意组合—最小粒度为4字节
  • 读、写、执行策略的任何组合—允许资源重叠,但不建议使用
  • 内置支持按区域配置的围栏,即缓存/管道/指令/加载/存储
  • 完全支持PLIC和CLIC中断–完全可配置的区域/中断映射
  • 完全支持安全的用户模式中断处理程序,即使没有“N”扩展
  • 完全支持低延迟矢量中断、可抢占中断和等待中断-挂起模式
  • 针对大多数受保护指令的内置陷阱和模拟,即CSR只读
  • 基于消息传递的安全区域间通信基础架构—无共享内存/缓冲区
  • 用于保护模式执行的C库包装——通过ECALL异常处理机制
  • 签名引导适用于两阶段引导室和/或公钥/信任根/PUF–SHA-256/ECC
  • 与任何能够运行Java 1.8的操作系统兼容的命令行配置工具

开发环境

  • Eclipse IDE,包括MCU和GNU工具链插件以及OpenOCD/JTAG/GDB实时调试
  • AndeSight™ 带ICE或OpenOCD的IDE
  • SiFive FreedomStudio IDE,包括MCU和GNU工具链插件以及OpenOCD/JTAG/GDB实时调试
  • Linux和Windows命令行工具(make、gcc、gdb等)–本机Linux、Windows所需的Java 1.8
  • X300(Rocket)、Andes N(X)25、SiFive E31和S51的内置板支持包

系统要求

  • 带“S”或“U”扩展的32位或64位RISC-V ISA
  • 符合1.10版的物理内存保护
  • 4KB闪存和1KB RAM

Resources

以下是相关的资料

猜你喜欢

转载自blog.csdn.net/weixin_45264425/article/details/132703332