18lickc新利
的意见

确保卸载引擎一个健壮的安全的SoC系统

保护卸载引擎需要软件和硬件解决方案。

受欢迎程度

欢迎来到安全卸载引擎博客系列中,我们将探索不同方法安全实现和观察系统的例子包括节奏Tensilica Xtensa处理器。在这个博客中,我们将看看为什么重要的是要构建一个健壮的安全的SoC和介绍一些常见的方法获得卸载引擎。在后续文章中,我们将详细看看这些方法。

今天,安全不是马后炮,但是一个重要的设计挑战。它需要与其他SoC设计。SoC必须保护等几种类型的攻击的基于软件的攻击,包括恶意代码、内存缓冲区溢出攻击,物理攻击,包括总线攻击,销篡改,蛮力获得基于时间调试端口和侧信道攻击,力量分析,等等。这些攻击的共同目标是获得IP和敏感数据,系统的控制,导致服务中断。

典型的SoC由主机CPU和一个或多个需求方充当卸载引擎。因为这些处理器可以可重复编程的,黑客试图引入恶意软件针对应用程序软件,并试图窃取专有的IP,读取内存内容或访问数据互连总线。基于软件的安全性是不足以防范这些攻击。安全需要实现软硬件结合的解决方案。

一些最常采用的安全措施,可以实现应对上述威胁是密码学,硬件分区和隔离和硬件的信任根(腐烂)。

密码学

密码不是一个新概念。它已经存在了。密码可以使用作为一个对策来防止攻击获得内存总线和阅读的内容,包括固件、IP、敏感数据,等密码学的主要目标是确保机密性、完整性和真实性。通常,固件、IP和数据都存储在加密的形式签署的保密和散列资产的完整性和真实性。当需要时,对其签名然后解密加密的图像验证使用。

节奏Tensilica Xtensa处理器可以运行加密算法本身或通过使用自定义指令使用Tensilica指令扩展(领带)语言。密码学中也可以实现Xtensa处理器通过使用eTIE加速器,作为与固定RTL紧密耦合的自治加速器性能。另一种方法是使用专用的加密引擎从第三方合作伙伴。

硬件分区和隔离

hardware-enforced隔离的资产是通过分区的处理器核心为两个虚拟世界,世界安全与不安全的世界。内存区域,存储软件IP、敏感数据和需要保护的资源可以分为安全的世界,而剩下的资源分为不安全的世界。只有信任代码运行在安全的世界,并访问所有处理器资源而不受信任的代码将不安全的世界的一部分,只可以访问这些资源的不安全的世界。

Xtensa LX处理器支持Xtensa LX安全模式(XLS)支持硬件隔离。XLS创建了两个分区的处理器,一个安全的方式执行身份验证代码和不可信的第三方代码的不安全的模式。代码运行在安全模式下访问所有处理器资源而不安全的模式中运行的代码只有访问不安全的资源。

硬件腐烂

硬件的信任根(腐烂)函数作为系统中的所有安全操作的基础。腐烂确保系统总是从一个靴子认证引导映像和靴子到一个已知状态然后执行只有可信固件。一些腐烂的组件系统包括:

  • 硬件加密引擎
  • E-fuse内存或OTP存储器存储的关键
  • 可选TRNG / PUF生成密钥
  • 安全的JTAG调试

腐烂可以提供的主机CPU或专用硬件安全模块,但这样的解决方案可能不会在所有情况下都是安全的。更健壮的安全系统,它是值得的延长腐烂卸载引擎的能力。

节奏与超出半导体提供安全引导子系统在Xtensa处理器。安全子系统是基于捷安公司安全平台,使安全引导和安全的JTAG,并提供加密引擎,支持各种加密和散列算法。

在下一篇博文中,我们将更详细地查看密码,看看如何实现加密的一些示例。



留下一个回复


(注意:这个名字会显示公开)

Baidu