Arm TrustZone技能
经由多年的发展,Arm的TrustZone技能已经被运用在数十亿颗运用场置器上,可以说这一安全设计保护着我们身边各种设备的代码和资料。由于该技能将硬件逼迫隔离技能集成在CPU中,所以为各大Arm处理器供应了系统级的高效安全方案,并利用该技能打造TEE(可信实行环境)。
通过TrustZone,可将SoC上的软硬件资源分为安全和非安全两个分区,须要保密的安全操作在安全分区实行,而一些OS、运用程序等操作则在非安全分区实行。在处理器的设计上,每个物理处理器核心都被分为一个安全核和非安全核两个虚拟核。

得益于这一硬件隔离机制,Arm处理器可以将生物信息等敏感信息存储在TrustZone内,比如指纹信息等,通过软件管理程序来管理隔离分区。对付可信实行环境而言,须要知足三个目标,包括数据保密性、数据完全性和代码完全性。
RISC-V PMP技能
传统的RISC-V处理器并没有供应像Arm TrustZone这样的隔离技能,但还是为开拓者供应了安全拓展的能力,可以利用PMP、IOPMP等办法进一步加强RISC-V处理器对物理内存的保护。
PMP作为一种内存保护机制,可以用于M模式和S/U模式下的内存访问,但只有M模式下才有权限配置PMP。通过至多16个CSR寄存器,可以配置至多16个Zone的内存访问权限。如此一来,在操作系统中,PMP可以实现不同进程之间的内存隔离,避免一个进程访问另一个进程的敏感数据。比较起Arm TrustZone的两个分区,其软件安全方案要更加灵巧。
然而,PM只是对付CPU核心存取的一个保护机制,常日一个硬件平台内,总线上还存在其他的I/O Agent,比如DSP/GPU、DMA、NIC等。攻击者通过掌握某个I/O Agent的软件或者固件,可以避开PMP来盗取数据。
所以为理解决这个安全威胁,RISC-V须要通过增加IOPMP来完成对内存访问的保护,不同的主设备与总线之间都须要增加一个IOPMP。IOPMP可以像PMP一样定义访问权限,检讨读写传输是否符合访问规则。
写在末了
业内对付处理器信息安全设计的探索,从来没有止步过。得益于RISC-V架构的拓展性,不少厂商也都推出了自己的安全设计办理方案,此外也有单独的硬件IP模块,也有OpenTtitan、OP-TEE这样的开源项目供应统一的芯片安全设计参考。未来随着AI打算、量子打算的遍及,芯片信息安全注定会面临更大的寻衅,即便是现有的设计方案也要做好迭代的准备。