物联网安全(最终)提供 ROI
在电子行业,“安全性”一词一般用于描述针对恶意软件或蛮力攻击展开的保护。在某种程度上说,这是一种狭隘的观点。安全性还包括针对反向工程的保护、软件许可保护、静态及动态数据保护、远程设备证明以及其他功能。以固件和数据保护作为示例。固件必须锁定,以防出现 IP 盗窃或非法代码实施行为。需要对传输中的数据实施保护,以防遭受欺骗或中间人攻击。这些功能与许多其他安全性功能一样,都依赖加密密钥。因此,安全存储这些密钥就至关重要。可采用基于软件或硬件的技术来进行保护。在仅使用软件的方法中,密钥被存储在设备内存中。这种方法在低价值资产中使用广泛,因为其能以最低的前期成本提供基础安全保护。但是,存储在设备内存中的密钥很容易因系统其他地方的安全隐患而受到威胁。要针对此问题开发更加高级的保护,过程极为复杂。对于基于硬件的方法,加密密钥会在独立 IC 受到保护、不可访问的区域生成。尽管此架构会产生额外的 BOM 成本,安全硬件要素却可以降低开发复杂性,并消除因主机处理器的加密工作负载产生的费用。在这些基于硬件的加密设备中,最为人所知的恰好就是行业标准:即 Trusted Computing Group (TCG) 提供的可信平台模块 (TPM)。
TPM 内部构成
本质上,TPM 是一种安全单片机,用于存储加密密钥、密码和证书之类的构件,设备将使用这些构件来证明其身份(身份验证),以及证明其未受影响(证明)。这为远程设备验证/证明和安全启动等功能提供了基础(图 1)。
远程设备验证和证明
对于物联网设备而言,远程设备验证和证明至关重要,因为它允许设备安全连接至只有很少或无用户配置的网络。为了实现这种功能,我们采用基于设备独一无二、保密的机密密钥的安全算法来为数字证书签名。该证书之后被发送至证书颁发机构 (CA),以便其验证设备签名,并签署证书。由两方签署之后,其他互联端点即知道这是可信源,随之接受来自原始设备的通信。这一过程被称为公钥基础设施 (PKI)。在此过程中,TPM 提供多项优势。第一,存储在 TPM 硬件不可访问区域的加密密钥无法被篡改,能够长时间保持设备的身份。此功能对间隔几周或几月不尝试认证的设备尤其有用(例如设备在离开制造商工厂后到达最终用户之前的这一段时间)。第二,TPM 也提供存储数字证书的安全存储空间,确保它们不会被更改。因此,验证和证明是可行的。
安全启动
虽然 TPM 不能控制或运行设备软件,但应用可使用 TPM 来存储敏感信息。TPM 中包含的最常见的数据集之一就是预运行时配置数据。该数据集支持所谓的安全启动功能。安全启动时,与系统启动流程有关的序列和/或文件类型信息可以作为秘密信息存储在 TPM 中。如果在设备尝试启动期间,违反了这些参数,TPM 会向其他程序发出通知,例如操作系统。由此,操作系统可以执行限制访问数据或应用的政策,或者完全取消启动流程。在针对不合法代码执行操作(例如恶意软件)或被盗的锁定设备展开保护时,此功能尤其有用。
实现系统的整体安全性
TPM 的目的只是保护系统最敏感的资产。系统仍可能因应用或操作系统中的漏洞受到攻击。此外,存储在设备中的数据也仍可能被无关用户访问。对于想要将 TPM 保护扩展至整个系统的物联网开发人员而言,解决方法之一就是 WIBU-SYSTEMS AG 提供的 CodeMeter ASIC。ASIC 为智能卡芯片,它支持 SPI 和 USB 通信,可与多种嵌入式设备和消费类设备轻松集成(图 2)。
和 TPM 一样,CodeMeter ASIC 是一种 EAL 5+ 安全硬件元素,包含用于生成加密密钥的 FIPS 140-1 随机数生成器 (RNG),还支持 128 位 AES、256 位 SHA 和 224 位 ECC 加密算法。ASIC 可由其附带的软件加以区别。CodeMeter 保护套件允许开发人员对其系统软件中的所有或部分可执行文件进行加密,以免受到调试和反向工程。CodeMeter 保护套件可与一系列通用及实时 OS 配合使用,且会根据系统需求提供不同变量。集成软件的过程是一次性过程,对系统性能产生的影响有限,且与加密程度无关。WIBU-SYSTEMS AG 还为其平台提供一个 API。API 以 ANSI C 源代码提供,支持开发特殊功能或在其他安全性技术中集成,例如英特尔® 博锐技术、英特尔® 高级加密标准新指令(英特尔® AES-NI),以及英特尔® 软件防护扩展(英特尔® SGX)。CodeMeter ASIC 被用作安全硬件锚,与具体的实施状况无关。
安全(最终)提供 ROI
能够区分 CodeMeter ASIC 和传统 TPM 的另一个重要功能即是其作为数字版权管理平台的能力。在 ASIC 最少的 128 KB 字节中,约 60 KB 被保留用于存储许可信息。因此,物联网 OEM 能够为最终用户提供功能,并长时间控制其访问权限,还支持下列许可模式:
- 单用户许可
- 网络许可
- 基于功能的许可
- 按次计费许可
- 基于时间的许可
- 指定用户许可
Kontron 是目前在其 APPROTECT 安全性解决方案中采用 CodeMeter ASIC 且从其功能中获益的物联网设备 OEM。Kontron APPROTECT 是一种全包式安全性解决方案,针对 IP 盗窃、篡改、反向工程以及版权/许可侵权提供保护。通过直接将 CodeMeter ASIC 集成到多种嵌入式计算模块的主板上,加密密钥可用于确认设备是否已获准运行某种软件(图 3)。当然,它也提供基础系统安全性。
为自己买单的安全性
因为缺乏对开发社区的了解,以及对无法收回成本的感知,物联网安全性饱受困扰。目前提供的硬件安全性模块可以同时解决这两个问题。凭借硬件安全性模块,物联网设备开发人员能够降低对整个 IC 进行加密的复杂性,将保护范围扩展至整个系统。业务公司可利用软件许可模型,对业务实施转型。该软件许可模型能为此安全性和某些功能买单。