在嵌入式系统设计中,安全一词可能有许多不同的含义。在大多数嵌入式系统中,安全性可能包括但不限于以下方面:
通信保护
这种保护可以防止数据传输被未授权方看到或截获,并可能包括其他技术,如加密技术。
数据保护
这种保护防止未授权方访问存储在设备内部的秘密数据。
固件保护
这种保护防止芯片上的固件被逆向工程。
操作保护
这种保护防止关键操作受到恶意故意破坏。
防篡改保护
在许多安全敏感的产品中,需要防篡改功能,以防止对设备的操作或保护机制被覆盖。
TrustZone技术可以直接解决嵌入式系统以下一些安全需求:
数据保护
敏感数据可以存储在安全内存空间中,并且只能被安全软件访问。非安全软件只能通过提供给非安全域的安全API访问,且只能在安全检查或身份验证后访问。
固件保护
预加载的固件可以存储在安全存储器中,以防止它被反向工程和恶意攻击所破坏。Armv8-M的TrustZone技术还可以与额外的保护技术一起工作。例如,设备级读出保护(一种目前业界普遍使用的技术)可以与Armv8-M的TrustZone技术一起使用,以保护最终产品的完整固件。
操作保护
用于关键操作的软件可以预加载为安全固件,并且适当的外设可以配置为仅允许来自安全状态的访问。通过这种方式,可以防止来自非安全方面的入侵。
安全启动
安全启动机制使您对平台有信心,因为它将始终从安全内存中引