安全保护需从概念生成阶段即融入到产品之中,并贯穿产品的整个生命周期。随着全新AI应用和用例的不断涌现,运行这些应用的设备需要适应不断变化的威胁形势。为了满足高级保护需求,安全机制必须是多方面的、“嵌入式的”,并且必须涵盖整个系统,从包含神经网络处理片上系统(SoC)的边缘设备,直到运行在边缘设备之上、负责将其数据传输到云端的应用。
首先,系统设计人员在向AI产品中增加安全特性时必须要考虑一些在绝大多数AI产品中(包括AI)属于基础功能的安全促成因素,以便为产品提供全程保护:离线时、加电时和运行时,包括与其他设备或云通信期间。建立系统的完整性对于创建满足预期的可信系统至关重要。
例如,作为基本安全功能之一的安全引导程序可用于确定产品的软件或固件是完整的(“具有完整性”)。完整性可确保当产品重启时,可按制造商的预期采取行动 — 而不是遵从黑客篡改的流程。安全引导系统使用固件上的加密签名来确定其真实性。虽然安全引导系统主要使用固件,但也可利用加密加速器等硬件功能甚至基于硬件的安全引导引擎来实现更高的安全性和更快的启动速度。通过使用具有可追溯到固件提供商的信任链的公钥签名算法,安全引导方案的灵活性将得到最大限度地提升。当密钥被泄露时,公钥签名算法允许您通过撤销和重新发布签名密钥来取代代码签名授权。确保安全性的基本前提是根公钥受到安全引导系统的保护、不得更改。保护硬件中的公钥将能够确保可信身份根是可以建立的并且是不可伪造的。
如果密钥不通过密钥管理系统进行保护,那么,最佳加密算法可能会遭到破坏。如想实现高级保护,密钥应驻留在硬件可信根中。硬件可信根中的权限和策略将强制应用层客户端只能通过良好定义的应用编程接口(API)来间接管理密钥。要想实现持续密钥保护,您需确保对导入的密钥进行身份验证并封装任何导出的密钥。例如,PKCS#11接口便是用于嵌入式硬件安全模块(HSM)的常用密钥管理API,可用于管理密钥的策略、许可及使用。
第三个基本功能与安全更新有关。无论是在云端还是在边缘,AI应用都将变得越来越复杂,数据和模型都将需要实时持续更新。安全的新模型分发过程需要通过端到端的安全机制提供保护。因此,您必须能以可信的方式更新产品,以修复错误、关闭漏洞并演进产品功能,这一点至关重要。灵活的安全更新功能甚至可用于允许在售后启用硬件或固件的可选特性。
解决了基本安全问题后,设计人员必须要考虑如何在AI系统中生成数据和系数。许多神经网络的运行均依赖于音频、静止图像或视频流及其他实时数据。这些大型数据集常具有与之相关的重要隐私问题,因此,保护内存(如DRAM存储器)或者本地磁盘或闪存系统上的大数据很关键。要想实现这一目标,您需要以强大的管理解决方案为支撑的高带宽内存加密技术(通常基于AES)。同样,您也可使用加密和身份验证系统、在基于硬件可信根的强大密钥管理系统的支持下来保护模型。
为确保边缘设备和云之间实现安全可靠的通信,设计人员使用了包含相互身份识别与验证技术的协议,例如客户端验证的传输层协议(TLS)。TLS会话握手将执行身份识别与验证,如果成功通过验证,它将生成双方认可的共享会话密钥,以允许系统之间开展经过身份验证的安全数据通信。硬件可信根可确保用于身份识别与验证的凭证之安全性,以及数据本身的机密性和真实性。许多情况下,系统与云端的通信将需要高带宽。随着AI处理过渡到网络边缘,高级安全保护也许扩展至此,包括额外身份验证,以防面向神经网络的输入被篡改,并确保AI训练模型不被篡改。