0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

将物联网设备连接到云端的安全解决方案

电子设计 来源:郭婷 作者:电子设计 2019-03-19 08:27 次阅读

尽管人们越来越意识到需要安全性,但开发人员经常发现自己在安全性方面采取了快捷方式,将物联网设备连接到云端。在许多情况下,合适的安全机制的复杂性,微型电池供电的物联网设备中可用的有限内存和处理资源以及运输产品的需求之间的冲突似乎是不可克服的。

解决这些问题和为简化物联网设备中安全功能的实施,Microchip Technology和Google合作创建了一种方法,将Microchip的安全硬件功能与称为JSON Web令牌(JWT)的简单数据结构相结合。结果是确保物联网设备与Google Cloud IoT核心服务之间相互身份验证的简便方法。

本文将介绍物联网设备安全威胁,并介绍当前用于应对该威胁的设备。它将确定安全漏洞以及开发人员和嵌入式系统设计人员如何使用JWT关闭它们。

物联网设备的安全漏洞

对物联网设备的攻击可以采取多种形式,绝不仅限于大规模的物联网部署。对于希望利用用于分布式拒绝服务(DDoS)攻击的僵尸网络中的许多单个设备的资源的黑客来说,即使是最小的物联网也是一个很有吸引力的目标。因此,每一类物联网设备的设计者都不可避免地需要通过基于硬件的强大安全机制来保护他们的系统,从而阻止攻击。

例如,使用系统内存或闪存存储用于加密和身份验证的私钥会使IoT设备容易受到攻击。更糟糕的是,黑客可以窃取这些密钥并使用它们来访问物联网网络和附加的公司资源。

安全IC

Microchip Technology的CryptoMemory和CryptoAuthentication IC等专用安全设备具有硬件功能基于保护私钥和其他秘密数据的机制。 EEPROM阵列集成在这些器件中,提供安全存储,只能通过器件的SPI或I 2 C串行接口访问的加密安全机制(图1)。因此,这些设备提供了一种向任何物联网设备设计添加安全存储和其他安全功能的简单方法。

将物联网设备连接到云端的安全解决方案

图1:Microchip Technology硬件安全设备(如AT88SC0204C CryptoMemory IC)提供安全存储,使用集成加密机制保护对片上EEPROM的访问。 (图片来源:Microchip Technology)

Microchip CryptoAuthentication系列的成员(如ATECC608A)增强了安全存储基础,并支持安全设计中常用的加密算法。在其硬件功能中,该器件具有多种算法的硬件加速功能,包括:

非对称加密算法:

FIPS186-3椭圆曲线数字签名算法(ECDSA)

FIPS SP800-56A椭圆曲线Diffie-Hellman(ECDH)

NIST标准P256椭圆曲线加密(ECC)

对称加密算法:

SHA-256哈希密码术

基于哈希的消息身份验证代码(HMAC)密码术

AES-128密码术

AES-GCM( Galois字段乘法)密码学

密钥派生函数(KDF):

伪随机函数(PRF)KDF

基于HMAC的提取 - 并且扩展KDF(HKDF)

对于加密专家来说,这组加密功能代表了支持更高级别安全协议所需的全面机制列表。身份验证和安全数据交换。例如,KDF功能提供了传输层安全性(TLS)协议所需的基本机制,用于在交换甚至开始之前验证数据交换会话中的参与者。

在此协议中,TLS会话以客户端向服务器发送启动安全会话的请求。服务器使用其数字证书进行响应,客户端使用该证书来确认服务器的身份。在客户端以这种方式验证服务器之后,会话设置继续通过使用服务器的公钥来生成会话密钥,以加密使用PRF KDF或更强大的HDKF创建的一些随机值。

TLS身份验证协议是Internet安全的基础。称为证书颁发机构(CA)的整个证书提供商行业已经发展为支持安全通信的这一关键组件。公司从CA获得可信证书,以便在自己的服务器上安装,以支持上述标准TLS服务器身份验证协议。

对于物联网应用,网络与公司来源广泛而深入地连接,这种单向认证不足以确保保护。例如,具有欺诈性证书的黑客可以将自己表示为物联网设备的合法服务器,作为更广泛攻击的一部分。

尽管存在风险,但物联网开发人员经常难以实施TLS相互身份验证协议,因为证书,密钥,使用TLS实现客户端身份验证所需的软件可能会超出许多物联网设备的功能。通过合作,Microchip Technology和Google创建了一种替代方法,将ATECC608A功能与称为JSON Web令牌(JWT)的简单数据结构相结合。结果是确保物联网设备与Google Cloud IoT核心服务之间相互身份验证的简便方法。

基于JWT的身份验证

RFC 7519中指定,JWT是行业标准容器关于准备和传输JWT的实体的信息,称为索赔。 JWT结构本身包含三个部分:

标题,包括JSON名称:密码算法的名称(“alg”)的值对(例如,ECDSA的“EC256”使用NIST P-256曲线)用于签署令牌和令牌的类型(“typ”)(这些令牌的“JWT”)

Payload,包括JSON名称:每个索赔的值对

签名,它使用标头中指定的算法来编码密钥以及标头和声明集,每个单独转换为加密前的base64 URL编码表示

RFC 7519为在有效负载或其他部分中指定声明提供了极大的灵活性。该标准甚至允许在没有签名或加密的情况下创建的不安全JWT,在这种情况下,标头将包括算法的名称:值对{{alg“:”none“}。对于与Google Cloud IoT核心服务一起使用的JWT,Google需要签名部分以及包含三个强制声明的有效负载,包括:

“iat” - 以ISO 8601 UTC时间戳格式创建令牌时的“颁发时间”,自1970-01-01T00:00:00Z以来的秒数(例如,2019年6月30日的1561896000 12 :格林威治标准时间00:00 PM)

“exp” - 指定令牌到期时间的UTC时间戳,最大24小时超过“iat”值加上10分钟宽限期,以解决不同之间的系统时钟偏差客户端和服务器(例如,2019年7月1日1561982400,格林威治标准时间00:00 00:00)

“aud” - 包含开发人员Google Cloud项目ID的字符串

< p> Google的物联网设备身份验证方案将基于TLS的常规服务器身份验证与使用这些相对简单的声明创建的JWT进行物联网设备身份验证相结合。要启动新会话,IoT设备会打开一个到服务器的安全套接字,并使用前面描述的相同TLS协议对服务器进行身份验证。

此过程的下一步依赖于Google IoT云对用于物联网网络事务的轻量级消息队列遥测传输(MQTT)协议。使用安全套接字到经过身份验证的服务器,IoT设备使用其唯一的JWT作为登录密码“登录”到该服务器的MQTT主机服务(清单1)。

将物联网设备连接到云端的安全解决方案

虽然IoT设备发送用户名作为此登录序列的一部分,但用户名不用于身份验证。因此,传输了一个虚拟用户名(清单2)。相反,IoT设备的认证基于作为登录密码发送的JWT进行。由于JWT签名是标头,有效负载和设备私钥的组合,因此Google Cloud IoT核心服务可以验证JWT是否真正来自授权设备。对于此验证,Google Cloud IoT服务使用以前由IoT设备开发人员使用下述密钥管理流程存储在Google云中的设备公钥。与单独使用TLS相比,此方法通过混合方法提供相互身份验证,从而加快流程,同时降低物联网设备资源需求。

将物联网设备连接到云端的安全解决方案

关键使能器

ATECC608A及其供应链的功能是此方法的关键推动因素。虽然任何MCU最终都可以从JWT报头和有效负载生成加密加密签名,但任何仅使用软件执行的方法在没有基于硬件的安全密钥存储的情况下仍然容易受到攻击。此外,对于许多资源有限的物联网设备或具有严格响应时间要求的应用,“仅软件”实现所需的处理器负载和执行延迟可能是禁止的。最后,没有丰富的安全算法和更高级协议经验的开发人员很难实现所需的软件功能。 Microchip通过其CryptoAuthLib库解决了这些问题(图2)。

将物联网设备连接到云端的安全解决方案

图2:因为CryptoAuthLib使用硬件抽象层(HAL)将API函数和核心基元与底层硬件分开,所以开发人员可以定位他们的适用于各种支持设备的软件。 (图片来源:Microchip Technology)

Microchip CryptoAuthLib简化了安全IoT功能的实现,例如Google JWT身份验证协议,将复杂的安全操作简化为通过CryptoAuthLib应用程序编程接口(API)提供的一组函数调用。对于物联网开发人员而言,最重要的可能是Microchip CryptoAuthLib核心功能充分利用了诸如ATECC608A之类的Microchip加密IC,可加快设计中安全功能的执行速度。例如,清单1中对atca_jwt_finalize()的调用使用可用的加密设备(如ATECC608A)来创建用作清单2中密码的JWT。在这种情况下,ATECC608A加速JWT签名的加密,读取设计的私有来自其集成安全存储的关键,以完成前面描述的签名创建过程。

然而,即使使用复杂的软件和安全设备,由于传统上管理密钥和证书所需的方法,物联网设备仍然容易受到攻击。过去,私钥需要在外部生成并在制造,分发甚至部署期间加载到安全存储设备中。即使使用硬件安全模块和安全设施,在“需要知道”它们的唯一设备之外短暂存在这些秘密代表了可能导致其意外或意图暴露的安全弱点。通过利用ATECC608A的功能,Microchip和Google在很大程度上消除了传统的安全漏洞。

在这种新方法中,Microchip使用ATECC608A生成密钥对的能力,而无需私钥离开设备(图3)。然后,Microchip使用中间证书对设备生成的公钥进行签名,该证书由客户提供并存储在Microchip安全设施内的安全服务器中。最后,Microchip安全地将公钥传输到Google Cloud IoT设备管理器中的客户帐户,该设备管理器可为每个设备存储最多三个公钥,以支持密钥轮换策略。部署后,IoT设备可以使用ATECC608A安全功能来创建前面描述的相互身份验证过程中使用的JWT。

将物联网设备连接到云端的安全解决方案

图3:Microchip Technology和Google Cloud IoT服务相结合,简化了密钥和证书的配置,提供了一种旨在加强IoT应用安全性的受保护机制。 (图片来源:谷歌)

Microchip和Google之间的此次合作让开发人员可以完全卸载这一关键密钥管理流程。对于自定义要求,开发人员可以使用CryptoAuthLib API函数atcab_genkey()实现自己的密钥管理过程,这会导致ATECC608A生成密钥对,将私钥存储在其安全存储中,并返回关联的公钥。/p>

为了探索密钥生成和其他ATECC608A安全功能,开发人员可以快速建立一个围绕Microchip SAM D21 Xplained Pro评估套件构建的综合开发环境。基于Microchip ATSAMD21J18A 32位Arm ® Cortex ® -M0 + MCU,SAM D21 Xplained Pro套件提供了Microchip高级软件框架(ASF)支持的完整硬件平台驱动程序和代码模块。

为了评估包括ATECC608A在内的CryptoAuthentication设备,开发人员可以简单地将CryptoAuth XPRO-B附加板插入Xplained Pro板的两个扩展头之一。 Microchip提供了用于评估CryptoAuthLib与ATECC608A的安全功能的示例软件。更进一步,开发人员可以将Microchip ATWINC1500-XPRO Wi-Fi附加板插入另一个标头,以运行Microchip示例软件,该软件演示了本文中描述的相互认证流程,包括TLS服务器认证和JWT设备认证。

结论

虽然物联网应用安全带来了多项要求,但关键挑战通常在于为物联网设备和云资源实施相互身份验证。在资源有限的物联网系统中,传统协议可能超过可用内存和处理资源。使用Microchip Technology CryptoAuthLib库和ATECC608A CryptoAuthentication IC,开发人员可以实施基于JSON Web Tokens的更高效方法,以便将IoT设备安全地连接到Google Cloud IoT服务。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Google
    +关注

    关注

    5

    文章

    1765

    浏览量

    57530
  • microchip
    +关注

    关注

    52

    文章

    1506

    浏览量

    117578
  • 物联网
    +关注

    关注

    2909

    文章

    44635

    浏览量

    373367
收藏 人收藏

    评论

    相关推荐

    联网系统的安全漏洞分析

    随着联网技术的快速发展,越来越多的设备连接到联网上,从智能家居、智能城市到工业自动化,
    的头像 发表于 10-29 13:37 375次阅读

    如何测试联网设备的功耗

    如何测试联网设备的功耗联网(IoT)涵盖我们日常生活的各个方面,因为它使数十亿的物品能够随
    的头像 发表于 10-11 08:05 461次阅读
    如何测试<b class='flag-5'>物</b><b class='flag-5'>联网</b><b class='flag-5'>设备</b>的功耗

    PLC接入工业联网平台会遇见的问题及解决方案

    工艺和降低成本,但也面临着诸多挑战。本文详细探讨PLC接入工业联网平台时可能遇到的问题及其解决方案。 一、PLC接入工业
    的头像 发表于 10-10 14:01 250次阅读
    PLC接入工业<b class='flag-5'>物</b><b class='flag-5'>联网</b>平台会遇见的问题及<b class='flag-5'>解决方案</b>

    从边缘设备云端平台,合宙DTU&amp;RTU打造无缝联网解决方案

    ​ 如今,联网(IoT)技术飞速发展,万互联的时代已然到来,那么,高效、稳定地连接边缘设备云端
    的头像 发表于 09-18 14:55 369次阅读
    从边缘<b class='flag-5'>设备</b>到<b class='flag-5'>云端</b>平台,合宙DTU&amp;RTU打造无缝<b class='flag-5'>物</b><b class='flag-5'>联网</b><b class='flag-5'>解决方案</b>

    意法半导体联网eSIM解决方案简介

    本白皮书探讨了使用eSIM的优势及其工作原理。其中还全面概述了新GSMA IoT eSIM规范,以及该规范如何确保为各种类型的互联设备和应用提供灵活安全的全球电信覆盖解决方案。最后我们
    的头像 发表于 09-11 11:45 490次阅读
    意法半导体<b class='flag-5'>物</b><b class='flag-5'>联网</b>eSIM<b class='flag-5'>解决方案</b>简介

    Modbus联网网关是什么

    Modbus联网网关是一种专门用于基于Modbus协议的设备连接到
    的头像 发表于 08-10 13:49 433次阅读
    Modbus<b class='flag-5'>物</b><b class='flag-5'>联网</b>网关是什么

    家里联网设备每天遭受10次攻击,联网安全制度建设需加速推进

    近日,安全解决方案厂商NETGEAR和网络安全软件供应商Bitdefender联合发布了一份关于联网
    的头像 发表于 07-11 08:05 286次阅读
    家里<b class='flag-5'>联网</b><b class='flag-5'>设备</b>每天遭受10次攻击,<b class='flag-5'>物</b><b class='flag-5'>联网</b><b class='flag-5'>安全</b>制度建设需加速推进

    工业联网解决方案有什么用

    工业联网解决方案 工业联网(IOT)作为当今工业领域的热门话题,正以其独特的魅力和潜力引领着工业生态的智能化革新。通过
    的头像 发表于 05-17 17:05 412次阅读

    iot联网平台是什么?

    监控、自动报警、远程控制、远程诊断、远程维护等功能。 IOT联网平台是联网解决方案的关键组成部分,负责
    的头像 发表于 04-01 10:19 2906次阅读

    智慧消防联网解决方案

    、传输、处理和应用,从而提高消防工作的效率和效果。 智慧消防联网解决方案,利用联网、人工智能、自动化控制等技术,配合智慧消防管理平台,以
    的头像 发表于 03-27 16:50 741次阅读

    粉尘涉爆企业联网远程监控解决方案

    粉尘涉爆企业联网远程监控解决方案 粉尘涉爆企业联网远程监控解决方案,是在现代科技飞速发展和
    的头像 发表于 03-25 16:34 538次阅读
    粉尘涉爆企业<b class='flag-5'>物</b><b class='flag-5'>联网</b>远程监控<b class='flag-5'>解决方案</b>

    芯科科技助力“联网设备安全规范1.0”发布

    标志。这一重要举措不仅标志着联网网络安全标准化和认证机制的一大步进展,更为广大制造商提供了一种简便、高效的一站式解决方案,帮助他们顺利通过设备的认证,并更轻松地符合各项国际法规和标准
    的头像 发表于 03-22 13:51 537次阅读

    MQTT联网平台实现设备连接安全加密

    与平台可以实现快速、可靠的通信,实现实时监控、数据采集和远程控制等功能,为企业提供了全新的工作模式和优化方案通博联提供工业智能网关接入MQTT联网平台的
    的头像 发表于 03-19 10:25 619次阅读
    MQTT<b class='flag-5'>物</b><b class='flag-5'>联网</b>平台实现<b class='flag-5'>设备</b><b class='flag-5'>连接</b>与<b class='flag-5'>安全</b>加密

    工业联网平台实现智能化云端计算与策略控制  

    低成本自动化控制,对于满足不同企业的个性化需求、稳定持续性生产秩序具有重要作用。 通博联提供工业智能网关数据采集到工业联网平台的解决方案
    的头像 发表于 01-11 17:36 399次阅读
    工业<b class='flag-5'>物</b><b class='flag-5'>联网</b>平台实现智能化<b class='flag-5'>云端</b>计算与策略控制   

    使用全球蜂窝无线电模块联网设备快速安全连接到云端

    作者:Jens Wallmann 如需将便携式或远程网络终端设备连接到联网 (IoT),或使用机对机通信 (M2M) 远程控制机器,通过云端
    的头像 发表于 01-01 17:04 986次阅读
    使用全球蜂窝无线电模块<b class='flag-5'>将</b><b class='flag-5'>物</b><b class='flag-5'>联网</b><b class='flag-5'>设备</b>快速<b class='flag-5'>安全</b>地<b class='flag-5'>连接到</b><b class='flag-5'>云端</b>