从产品和供应链两个维度实现最为全面实时的安全管理,Lattice推出Sentry与SupplyGuard服务
扫描二维码
随时随地手机看文章
固件安全问题为何成为挑战?
正如文章开头提到的,目前我们面临着固件安全的重大挑战,安全危机数量为何加速增长?莱迪思半导体亚太区应用工程(AE)总监谢征帆先生分享了几个观点:第一是因为传统的安全性保护都在操作系统或者上层软件层面,固件层并没有受到很好的重视。第二个原因是因为联网的硬件产品越来越多,不管是云端、管道还是终端设备,基本上都有相应的固件存在。随着在线设备数量增加,暴露出来的漏洞数量也会增长。另外,以前很多的安全措施需要人员到现场操作,但由于近期新冠疫情影响,很多人员无法到现场对这些设备实施安全保护,只能进行远程管理、升级和操作,如果远程操作没有足够的安全性保护,就会有一些中短期的风险存在。
如何实现这些硬件产品的安全保护?Lattice想要从硬件产品本身的安全机制和产品流转的整个链条这两个维度上,全面确保其安全无虞。
在硬件产品内实现最高实时性和动态信任的安全保护
Sentry Solution Stack是Lattice推出的一整套的软硬件和服务的方案。据谢征帆先生分享,Sentry方案包含6个不同的层次,从底层的硬件平台,再到上层的IP核层面、软件工具...一直到最顶层的定制设计服务,贯穿了一个硬件产品的整体设计路径,从各个不同的环节来确保安全,形成了一个安全的解决方案栈。Sentry Solution Stack的最终的目的是要实现动态信任,同时实现端到端的供应链保护。动态信任的实现主要是依靠Sentry内部的一个RISC-V软核。这个软核可以调度不同硬件的block,例如监视器、Mux这样的底层模块,可以用相应的C代码实现客户所需要的功能。而且未来即使产品进行迭代升级需要新的安全保护,只要底层的基础模块没有变化,那么仅需改变相应的C代码就可以实现。
在安全保护的解决方案的实现上,除了Lattice提供的Sentry之外,行业内还有TPM和MCU的方式,谢征帆先生也分别从保护、检测和恢复三个角度进行了比较。首先从保护角度来讲,Sentry方案最大的优势就是满足客户对实时性的要求,不论是TPM还是微控制器,它们的控制流程和时序都是用串行的方式实现的,无法同时对多个外设进行监控和访问控制的保护,但Sentry能够以纳秒级的响应速度对外围的SPI flash、I2C和SPI的接口总线同时进行监测。从内部来讲,时钟基本上可以跑到80M甚至100M,基本上在一两个cycle就能够检测到非法访问事件,同时能够在第一时间能够把这些非法访问阻断掉。对于一些时间敏感的应用而言,如果用MCU或者TPM的话,就没有办法在第一时刻抓到这些漏洞。在检测方面,虽然MCU也能够在启动之前对受保护的芯片固件进行一个自动验证。但因为TPM是一个被动的芯片,无法去主动验证固件的可靠性。在恢复方面也存在着同样的问题:MCU能够做一些标准的固件回滚进行恢复,但遇到较大的破坏(例如DOS攻击和重复攻击)时,Sentry的效果会更加的好,能够实时作出保护,将固件恢复到正常状态。
覆盖整个芯片生命周期的安全保护
Sentry更多的是在芯片的本身的角度,来实现其安全功能的保护。而其实在芯片从生产、到OEM厂商、 CM生产、到客户现场交付、最终到差评报废,这整个的生命周期的链条中,都需要时时刻刻确保其安全性。这个周期非常长,涉及到不同类型的安全问题,非常的复杂和耗时。而Lattice推出的SupplyGuard服务,就是旨在通过这一个整套服务来帮助客户解决整个链条中的安全烦恼。
据谢征帆先生分享,传统的方式要实现整个供应链的安全,所有的CM厂商都需要安装一个HSM设备,通过HSM设备跟OEM之间建立一个比较安全的通信。基本上每个Site都需要一个HSM设备,但HSM设备通常价格昂贵,而且CM厂商也都需要确保是一个安全的环境,这样才能确保不同设定之间安全信息的传递。而SupplyGuard服务的亮点就是可以在一个非安全的环境中也可以构建授权的产品,没有经过OEM授权的组件就会被阻止。
首先从IC组装工厂开始,Lattice可以将一个Lock Key烧写到芯片中,同时也会将Unlock Key通过一个安全通道教给客户。客户在开发的最后一个阶段,需要使用Unlock Key进行加密和签名,然后将这个文件发给CM厂商进行批量组装。谢征帆先生表示,加密的代码,一定要烧写到跟它有对应的Key的芯片里面,这样就实现了一个双向的保护:既防止了非法的文件烧写到Lock的芯片里面,也防止了正版的代码烧写到空的非Lock芯片中。