锁定物联网设计需要的不仅仅是加密消息传递。开发人员需要通过身份验证,安全会话和安全消息传递来扩展底层密钥的安全性。然而,完整安全链的设计,实现和功能方面的复杂性导致许多项目为了成本和时间安排而损害安全性。
然而,这种妥协的需求正在减少部分原因是开发人员可以使用这些设备在物联网设备和其他深度嵌入式系统中轻松实现全面的安全功能。其中一个器件是maxim integrated的maxq1061。
此功能将介绍在引入maxq1061之前物联网安全系统如何工作,并展示如何使用它来快速解决传输层的安全问题。
安全是物联网的基础
在物联网的愿景背景下,用户希望应用程序处理数据流,以提供有关用户,环境和设备的详细信息。保护这些应用程序并确保数据的完整性和真实性的能力是这一愿景所固有的。然而,广为人知的对系统和数据的攻击继续令人质疑这种能力。因此,对于保护数据和系统的更有效解决方案的兴趣迅速增长。
在设备层面,设计人员已经可以找到集成硬件加速器的mcu,使用各种密码(包括aes)加密和解密数据,sha和3des等。然而,数据加密/解密只是使用标准安全协议(如tls(传输层安全))保护物联网应用所需的一组更大功能中的一部分。
tls为跨安全通信提供标准协议服务器和客户端之间的网络,例如web浏览器和iot设备。在该协议中,通信作为一系列单独的安全会话发生,其包括通常为每个单独会话唯一建立的安全参数。值得注意的是,tls还包括从一个会话到下一个会话重用会话安全参数的方法,但这些方法可以将iot应用程序暴露给其他安全威胁,并且不包括在本讨论中。
在使用tls时,客户端和服务器使用tls握手协议开始tls会话(图1)。这将验证每个设备到服务器的连接并创建“主密钥” - 在tls记录协议期间共同使用的私有密码密钥,用于加密和解密在该会话期间交换的数据。在此握手协议中的每个步骤中,客户端和服务器通过使用几种基本安全机制来确保进程的安全性,包括私钥存储,真随机数生成和标准加密/解密算法。
图1:tls握手协议依赖于安全机制,包括安全存储,真随机数生成和加密,以执行相互身份验证和创建共享主密钥所需的一系列步骤,以便使用tls进行后续数据交换记录协议。 (图片来源:维基媒体)
当诸如物联网设备之类的客户端需要连接到服务器时,它会通过发送client_hello消息开始tls握手,该消息包含有关客户端支持特定tls的能力的信息方法以及随机数。服务器响应选择要使用的tls方法,其证书(服务器公钥)以及其他依赖于密码套件性质和正在使用的安全策略的细节。
例如,虽然web应用程序通常仅对服务器进行身份验证,安全的iot应用程序要求客户端设备和服务器相互进行身份验证以减轻诸如中间人攻击等威胁。如果没有客户端身份验证,未经授权的设备可能会伪装成合法设备并连接到iot网络,为不良参与者提供入口点。为了实现相互身份验证,服务器将客户端证书的请求添加到此特定阶段。
在握手协商的下一阶段,客户端发送其证书以及先前集合的签名哈希使用其私钥创建的消息。服务器使用客户端证书(设备公钥)和签名哈希来验证请求客户端设备实际拥有其私钥。在此过程中,它还会验证设备对客户端证书的所有权。在某些情况下,客户端可能还会发送使用服务器证书(服务器公钥)创建的预主密钥。
最后,客户端和服务器各自使用随机数(和预主密钥)如果包括的话)计算“主密钥”,它用作使用tls记录协议进行数据交换的私钥。通过此过程,tls握手协议提供了一个安全密钥,供客户端和服务器在数据交换期间使用,而无需通过网络传递私钥。掌握了主密钥后,客户端和服务器都会发出握手阶段的结束信号,并开始交换消息,使用主密钥作为密钥,在特定连接会话期间加密和解密这些消息。
为了在整个过程中保持安全性,客户端设备和服务器各自都面临安全存储秘密的基本要求,包括其各自的私钥和会话的主密钥。此外,两者都需要能够生成基于可预测的随机数序列生成来防止攻击所需的真随机数。
为了保持性能,客户端和服务器需要能够快速执行加密和解密。虽然握手过程本身在很大程度上受网络性能的限制,但后续数据交换可能受到底层加密速度的限制。
虽然服务器系统通常提供计算能力和保护所需的组合,但物联网设备开发人员能够提供这些功能的设计努力满足这些要求,而不会为最终的物联网设计增加显着的成本和复杂性。
maxim integrated maxq1061等专用加密设备集成了在物联网设计中实现tls通信所需的全部功能和功能。
集成安全性
maxim integrated maxq1061是一种加密控制器,可满足物联网设备安全性的一般要求。除安全存储和加密引擎外,该设备还包括基于硬件安全机制的固件,以实现tls和其他算法的高级安全措施以及安全启动等安全方法。
maxq1061构建在安全性从最基本的层面开始,在芯片和电路中内置规定以防止侧通道攻击。侧通道攻击借鉴了对设计细节及其性能特征的深入分析。在系统层面,对数据中心进行旁道攻击的最早例子之一是使用从终端和其他设备发出的电磁辐射的变化来穿透安全性。 tempest安全设施使用物理保护和em屏蔽来抵御这些威胁。然而,与数据中心不同,物联网设备很少受到所有可能威胁的物理保护。实际上,由于可以轻松访问这些设备,不良演员可以在闲暇时使用电源监控,定时,声学和其他方法来应对各种各样的侧通道攻击。与许多安全设备一样,maxq1061采用内置于芯片中的一系列对策,并将其集成到电路设计中,以缓解这些各种威胁。
侧通道攻击通常需要先进的实验室设置和通常可用的分析设备仅限大型企业和国家组织。相比之下,围绕加密设备构建的设计中破坏安全性的最简单方法之一是通过截取秘密数据。这可能发生在主机mcu,内存及其加密设备伙伴之间和之间使用的许多阶段之一。
黑客寻求以其三种常见状态中的一种或多种来访问数据:静止,在运输中或在使用中。 maxq1061通过提供安全存储来保护静态数据并确保秘密数据的任何使用保留在设备本身内,从而消除传输或使用中的数据拦截,从而消除了这些攻击面。凭借其32 kb的集成安全eeprom,该器件通过灵活的文件系统为所有密钥,证书和关键数据提供存储,旨在支持自定义安全策略。同时,该设备提供了支持自定义安全实现所需的灵活性,允许开发人员导出主密钥,例如,在消息处理期间使用。
尽管其他加密设备提供安全存储, maxq1061通过集成执行加密算法和执行更高级协议(如tls)所需的硬件引擎和固件来实现差异化(图2)。安全数据永远不需要离开芯片,有效地移除相关的攻击面。
图2:maxim integrated maxq1061加密控制器集成了安全tls通信所需的基本安全机制,为开发人员提供了解决复杂安全挑战的简单解决方案通信。 (图像来源:maxim integrated)
集成的加密加速器解决了tls实现中的另一个实际问题。 tls性能取决于底层加密的速度。 tls协议部署的本质通常本身通过使用高度安全(但较慢)的非对称加密来反映这一问题,例如使用tls握手协议的椭圆曲线数字签名算法(ecdsa),以及使用较不安全(但更快)的对称加密,如高级加密标准(aes)与tls记录协议。 maxq1061支持这种方法,不仅可以加速tls执行,还可以大大简化其在物联网设计中的实现。
加密工具箱内置于maxq1061中,将硬件加速加密技术与实现tls关键层的受保护固件相结合。以及ssl(安全套接字层)和dtls(数据报传输层安全性)。在执行tls握手和tls记录协议时,maxq1061通过执行与每个操作系列相关的详细事务来卸载主机mcu(图3)。对于tls,设备提供客户端证书并处理与远程服务器的身份验证序列。对于包括tls记录交换在内的一般加密要求,该设备使用其集成的硬件aes引擎来加速加密和解密。
图3:maxq1061卸载主机mcu,在tls握手中执行关键序列,并记录相互认证和后续安全数据交换所需的协议。 (图像来源:maxim integrated)
集成的128位aes引擎设计为直接通过器件的spi通道工作,通过执行快速流加密和解密来卸载主机处理器。在这种模式下,专用dma控制器直接通过spi接口与aes引擎之间传输数据,允许动态加密。
该设备提供了一个简单的硬件和软件接口,用于集成设备在物联网设计中使用主机mcu。 maxim integrated使用maxq1061-kit评估套件演示了基本的硬件接口(图4)。如提供的原理图中所述,该套件支持spi和i 2 c接口,并显示用于支持器件唤醒和篡改检测机制的简单电路。该套件还提供电路,允许开发人员切换不同的操作模式,并将电路板连接到外部主处理器。
图4:maxim integrated maxq1061-kit评估套件提供基本参考设计,用于集成maxq1061,结合spi和i 2 c接口与基本电路的连接,用于其他设备功能,包括唤醒和篡改检测。 (图像来源:maxim integrated)
软件界面
与硬件接口一样,该设备在软件方面采用了简单的方法。在软件接口的最低级别,设备使用简单的通信协议通过spi或i 2 c硬件接口与主机mcu通信。要与设备通信,主机处理器发送格式如下的字节字符串:
aa cmd length data crc
因此要ping设备,例如,主机mcu将发送以下字节字符串:
aa 00 f7 00 04 00 01 02 03 e1 09
作为响应,设备返回一个类似的字节序列,其中包含以下字段:
55 err_code length data crc
因此,为响应ping请求,maxq1061将发送以下字节串:
55 00 00 00 04 00 01 02 03 22 32
当然,maxim integrated软件包将这些低级操作抽象为对所提供的库和底层应用程序编程接口(api)的一系列功能直观调用。此外,maxim integrated软件通过在目标平台内的现有spi和i 2 c驱动程序上构建其api,进一步简化了软件架构(图5)。
图5:maxq1061软件包包含一个完整的tls堆栈,用于利用设备基于硬件的tls机制并使用基于内置的api每个目标主机平台的标准设备驱动程序集。 (图像源:maxim integrated)
对于tls操作,maxq1061软件环境使用经过修改的mbed tls版本,以利用器件的专用安全功能。对于软件开发人员,mbed tls在目标平台的tcp/ip网络堆栈之上提供了一个抽象层。
对于有经验的软件开发人员来说,使用mbed tls只需要改变对网络层的熟悉调用mbed tls函数调用 - 例如,将对网络层的读取调用更改为mbedtls_ssl_read并将调用写入mbedtls_ssl_write。为了利用maxq1061的优势,经验丰富的mbed tls开发人员只需使用maxim integrated版本的mbed tls协议栈。
结论
对于物联网设备和任何连接系统,能力在面对更复杂的安全威胁时,执行身份验证和安全通信成为越来越重要的要求。对于开发人员,maxq1061和支持软件提供了一种在其应用中实施基本安全措施的简单方法。虽然关键安全性,高速加密,tls通信只是全面安全策略的一部分,但maxq1061提供了实施更高级别策略所需的安全基础,以应对新出现的威胁。
重点用能单位能耗在线监测系统的详细说明
达芬奇家族最新产品 SP手术系统
物通博联Modbus RTU转 Modbus TCP网关有什么功能
跑步耳机哪种好,推荐几款专业跑步耳机
特斯拉申请一项新的“能量储存系统”专利 自带板式冷却系统
如何使用MAXQ106芯片解决物联网传输层的安全问题
关于夜狼安防新技术及产品分析
车联网厂商四维图新收购联发科杰发科技迷雾
社区应用人脸识别门禁终端怎么样?人脸识别门禁的优势有哪些?
苹果或将推出新的订阅服务,为用户提供播客内容付费收听服务
裸金属云基础设施的需求不断增长,爱立信解决方案简化部署
魅族PRO6和荣耀7i哪个好?魅族PRO6和荣耀7i对比评测
三星Galaxy Fold 2将提早上市 将采用纵向折叠设计
百度萝卜快跑开通武汉天河机场的自动驾驶接驳服务 首次贯通城市道路和高速路线
互联网的发展对于驾考有什么影响
NADP+Triton搭建稳定高效的推理平台
全球智能音箱供应市场收入规模超百亿美元,年底保有量将达2.25亿台
Vivo Watch功能将是什么样的呢?
薄膜电容在新能源汽车中的应用分析
如何维修低音炮或放大器