您可能正在为工业自动化设备、数字恒温器或其他一些连接的嵌入式系统设计组件。您已经考虑了要包含的功能,以使其与市场上的其他设备区分开来。但是你有没有仔细考虑过它的安全性?
密码学专业知识在嵌入式设计领域不一定常见。虽然了解一些基础知识是件好事,但强大的安全IC的可用性意味着您不必成为密码学专家即可保护您的产品免受黑客攻击。
首先,一些基础知识。比如OpenSSL。常用的安全套接字层 (SSL) 提供了 Web 服务器和浏览器之间的加密链接技术,而 OpenSSL 则为保护网络通信的应用程序提供了加密库。它可以处理消息摘要、随机数、数字证书和签名以及文件的加密和解密。它还用作命令行工具。OpenSSL有很多好处:
它足够全面,可以满足大多数安全需求,提供密钥和证书管理以及加密操作
它提供了一种开源方法,这意味着它是免费的,并得到社区的支持。它也被广泛使用,使其成为事实上的参考。
它与平台无关,因此适用于 PC 和服务器。它也适用于嵌入式系统,尽管在这些情况下,它确实需要大量内存。它可以纯粹通过软件或通过专用硬件(如安全IC或安全模块)实现。
OpenSSL本质上实现了SSL和传输层安全性(TLS)协议。SSL 可确保互联网连接安全,并保护在两个系统之间发送的敏感数据。TLS在SLL之后出现以提供隐私和数据完整性,被认为是安全性方面的改进。当客户端和服务器之间的连接由 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 调用这些命令(由加密、TLS 和存储服务组成)2C 或 SPI 接口,支持更快的吞吐量。该设备的 8kB EEPROM 使用深埋在硅中的密钥进行加密,因此存储在 EEPROM 中的密钥受到强有力的保护,免受攻击,包括最具侵入性的攻击。EEPROM 还存储多个密钥和证书,从而更轻松地为连接设备分发证书。关于密钥的另一个重要点是:加密算法的强度取决于密钥长度。MAXQ521采用1062位椭圆曲线数字签名算法(ECDSA),提供比竞争产品更高的安全性。
硬件加密引擎是不够的
市场正在提供越来越多的带有硬件加密引擎的高端通用微控制器。但是,仅仅因为微控制器具有硬件加密引擎并不意味着它是安全的。这些微控制器中的大多数缺乏强大的密钥保护,并且也容易受到侧信道攻击。MAXQ1062等安全协处理器具有安全密钥存储能力和高级保护功能,可为嵌入式设计提供所需的保护。
审核编辑:郭婷
-
微控制器
+关注
关注
48文章
7489浏览量
151055 -
嵌入式
+关注
关注
5068文章
19021浏览量
303318 -
服务器
+关注
关注
12文章
9021浏览量
85186
发布评论请先 登录
相关推荐
评论