您可能正在为工业自动化设备、数字恒温器或其他一些连接的嵌入式系统设计组件。您已经考虑过要包含的功能,以使其与市场上的其他设备区分开来。但是您是否仔细考虑过它的安全性?
密码学专业知识在嵌入式设计领域不一定很常见。虽然了解一些基础知识是件好事,但强大的安全 IC 的可用性意味着您不必成为密码学专家即可保护您的产品免受黑客攻击。
首先,一些基础知识。像 OpenSSL。常用的安全套接字层 (SSL) 为 Web 服务器和浏览器之间的加密链接提供了技术,而 OpenSSL 为保护网络通信的应用程序提供了加密库。它可以处理消息摘要、随机数、数字证书和签名以及文件的加密和解密。它还可以用作命令行工具。OpenSSL 有很多好处:
它足够全面,可以满足大多数安全需求,提供密钥和证书管理以及加密操作
它提供了一种开源方法,这意味着它是免费的并得到社区的支持。它也被广泛使用,使其成为事实上的参考。
它与平台无关,因此适用于 PC 和服务器。它也适用于嵌入式系统,但在这些情况下,它确实需要大量内存。它可以纯粹通过软件实现,也可以通过专用硬件实现,例如安全 IC 或安全模块。
OpenSSL 本质上实现了 SSL 和传输层安全 (TLS) 协议。SSL 可确保 Internet 连接的安全,并保护在两个系统之间发送的敏感数据。在 SLL 之后出现以提供隐私和数据完整性,TLS 被认为是安全性方面的改进。当客户端和服务器之间的连接由 TLS 保护时,这意味着该连接是私有的,因为传输的数据是通过对称密码术加密的;公钥加密用于验证通信方的身份;并且该连接是可信的,因为对每条传输的消息都进行了消息完整性检查。如需更深入地了解 TLS,请阅读应用说明 6436,“使用安全配套 IC 保护 TLS 实施。”
安全 IC 满足三个关键要求
实施 OpenSSL 可能具有挑战性,因为 API 上没有大量可用的文档。一些设计人员选择在标准微控制器上运行加密算法。基于软件的密码学通常被认为相对容易实现。然而,由于现代密码学依赖于公共算法,密钥已成为非常有价值的资产——在标准微控制器上实施时,它们根本没有得到很好的保护。大多数标准微控制器对侧信道攻击很敏感,攻击者在尝试检索密钥时监控功耗或电磁辐射。在安全交易中使用强随机数是防止重放攻击的另一个重要因素。然而,对于标准微控制器,
对于连接的嵌入式设备,三个基本的安全要求是安全通信、安全存储以及受信任的设备和固件。对于许多嵌入式设计人员来说,这些基础知识也代表着挑战。安全通信需要大量的研发工作来开发通信堆栈。安全存储需要应用安全策略来访问密钥和证书。密钥需要受到物理保护,您还需要定义产品生命周期的哪个阶段可以对密钥进行编程、读取或删除。可能存在必须在设备进入现场之前对密钥进行编程且无法更改的情况,以及必须每六个月或每年更换一次的情况。而提供可信平台意味着您需要找到分发和存储证书的解决方案,这对于远程身份验证等功能至关重要。专用安全 IC 提供了一种更简单、更可靠的方式来实施 OpenSSL 和其他保护措施。这些 IC 包括安全微控制器,集成了可满足三个基本安全要求的功能。
支持 OpenSSL 的新型安全微控制器是 Maxim 的MAXQ1062 DeepCover ®加密控制器。该器件可用作嵌入式设计主微处理器的配套 IC,将微处理器从与安全相关的任务中卸载,其中许多任务是计算密集型的。MAXQ1062 包含的特性可实现:
安全通信:完整的 TLS 通信堆栈、高级加密标准 (AES) 批量加密和解密高达 20Mbps。借助市场上的 MAXQ1062 和类似解决方案,TLS 实现在安全协处理器和设计主处理器上运行的软件堆栈之间进行分离。然而,MAXQ1062 完全处理 TLS 的关键步骤,而其他解决方案则更多地留给主处理器上的软件堆栈。MAXQ1062也是唯一一款通过专用引擎支持批量加密的安全协处理器。
安全存储:防止入侵攻击、可定制且灵活的文件系统,可简化安全策略的实施
受信任的平台:唯一具有集成支持安全启动的解决方案,包括代码散列,而竞争解决方案仅提供构建块。该设备还包括可由 Maxim 代表您加载的根证书。
MAXQ1062有自己的嵌入式固件和主机软件库,提供了一个交钥匙解决方案,您无需编写自己的固件,甚至无需具备密码学实施专业知识。它的 TLS 命令集解释器提供了一组预编码命令。主机处理器可以通过 I 2调用这些命令(由加密、TLS 和存储服务组成)C 或 SPI 接口,支持更快的吞吐量。该设备的 8kB EEPROM 使用深埋在硅片中的密钥进行加密,因此存储在 EEPROM 中的密钥受到强有力的保护,可免受攻击,包括最具侵入性的攻击。EEPROM 还存储多个密钥和证书,从而更容易分发用于连接设备的证书。关于密钥的另一个要点:加密算法的强度取决于密钥长度。MAXQ1062采用521位椭圆曲线数字签名算法(ECDSA),提供比竞争产品更高级别的安全性。
硬件加密引擎是不够
市场正在提供越来越多的带有硬件加密引擎的高端通用微控制器。然而,仅仅因为微控制器具有硬件加密引擎并不意味着它是安全的。这些微控制器中的大多数缺乏强大的密钥保护,也容易受到侧信道攻击。MAXQ1062等安全协处理器具有安全密钥存储能力和高级保护功能,可为您的嵌入式设计提供所需的保护。
作者:Christophe Tremlet, Stephane di Vito
审核编辑:郭婷
全部0条评论
快来发表一下你的评论吧 !