基于Microchip LoRa 工业 IoT 设计中的低功耗、通信和安全性
功耗与安全性是嵌入式系统设计师的两大重要担忧,尤其是在 IoT 传感器命令和控制应用程序中。对于工业 IoT 设计而言,微控制器不仅要自身的平均功耗尽可能低,还要具备让设计的其余部分功耗降至最低的特性,这点非常重要。对于低功耗或仅由电池供电型应用,PIC24F 微控制器系列中采用的Microchip超低功耗 (XLP) 技术通过蓝牙® LE (BLE) 连接让 IoT 传感器实现了极低功耗的基本命令和控制通信,并通过集成硬件加密引擎增强了安全性。超低功耗由于更多电子应用程序要求低功耗或电池供电,节能成为首要问题。 目前的应用程序必须具有低功耗,并且在某些极端情况下,仅通过一块电池就可持续运行 20 年以上。 要实现诸如此类的应用程序,采用Microchip超低功耗 (XLP) 技术的产品可提供非常低的休眠电流,而超低功耗应用程序有 90-99% 的时间都处于该状态。 如图 1 所示,16 位 XLP 技术能让休眠电流降至 40 nA,运行电流降至 180 μA/MHz。闪存和引脚 | 最小休眠电流 | 带 WDT 的最小休眠电流 | 带 RTCC 的最小休眠电流 |
---|---|---|---|
64-128 K28-44 引脚 | 3.3 V 时 40 nA(典型值... |
认知计算、区块链IoT、物联网安全…看懂的人将控制未来
2016年是物联网令人兴奋的一年,几乎每个行业都在投资物联网。目前B2C消费产品占据物联网市场超过半壁江山,但是根据IDC的预测,到2020年,物联网市场的80%以上将用于B2B应用。当代世界,各种前沿科技层出不穷,形成了人工智能、虚拟现实、区块链等相互叠加的科技爆炸时代。借由这些新技术的应用,物联网将创造新的商业模式、新的工作流程、新的生产力引擎以便形成更好的成本控制和用户体验。硅谷知名投资人吴...了解详情了解物联网安全-第2部分(2/3):物联网云的安全和生命周期管理
在本站已分析了“了解物联网安全”的第1部分(LoRa物联站),其中第一部分我们从设备和通信层的角度来看物联网的安全架构。在这篇文章中,分析“了解物联网安全”的第2部分:我们把重点转移到云计算和生命周期管理,提出完全不同挑战和风险。连世界各国的领导人也开始关注将数十亿互联网设备接入互联网的担忧。世界经济论坛最近委托了一份报告,以创建一套指导方针,专为董事会层面使用,解决在新兴市场基于超连接技术的网络...了解详情七大LPWAN:NB-IoT/LTE-M/Sigfox/LoRa/RPMA/Weightless/HaLow技术之争
一场旷世的物联网大战拉开序幕无线通信技术已高速发展20多年,在完成了人与人之间的连接后,物联网为无线产业提供了持续发展的动力。由于LPWAN(低功耗广域物联网)技术相对难度不高,各种技术陆续推出,举目遥望,可谓是山头林立、遍地插旗。较受关注的是采用授权频谱的NB-IoT和LTE-M,主要由3GPP主导的运营商和电信设备商投入;以及采用非授权频谱的LoRaWAN、Sigfox、Weightless...了解详情系统梳理与分析:NB-IoT与eMTC的十轮鏖战
伴随移动通信技术的不断发展,全球物联网即将迎来快速的发展。在国际运营商中, AT&T、Verizon、KDDI、KPN、Orange、NTT DoCoMo、Telefonica、Telstra、Telus都先后开展了eMTC的商用。在我国,电信率先起跑,在确立了800MHz组网能力之后,一口气要建成30万NB-IOT基站。联通与Jasper签订双排他协议,早早确定了NB-IOT作为发展方向。而最早...了解详情LoRa定位技术
物联网应用对位置的需求越来越多,LoRa技术提供了另一种定位选择LoRa在LPWAN中是独一无二,提供原生免GPS定位技术。LoRa地理位置允许用户定位资产、跟踪设备和检测地理围栏知道某些东西在哪里。这种地理位置功能是LoRaWAN独有的,通过LoRa技术来实现。Machina Research预测,60%的物联网设备将会使用地理位置数据,其中三分之一的应用将严重地依赖于位置。Semtech早期就明确了低功率广域网地理位置的重要性,在地理定位技术方面投入了大量时间和精力,经过了三年多的开发,于2016年6月宣布增加此功能。地理位置有四个主要用处:定位、导航、管理和跟踪。定位:快速识别位置意味着节省时间并提高效率。 例如,通过了解事件的确切位置,用户可以快速做出反应并可能提高安全性。导航:即时的位置信息开启导航功能,帮助确定一个可靠的和有效的路线,并避免延迟和/或拥堵。管理:提供数据的位置关联性有助于增强其价值和实用性。 这对于温度和水位监测特别有用,可以改善自然灾害的反应时间,如火山爆发和洪水。跟踪:LoRa地理位置对跟踪资产和传感器特别有用。 通过访问地理标签的数据,用户可以对偏差做出反应,预测潜在的问题。各种不同的技术都提供了定位解决方案,需要对精度、设备价格、覆盖范围和功耗做个权衡取舍LoRa是唯一无二的,只要终端节点与网络通信,就可以得到地理位置数据。 对物料清单和功耗几乎没有任何影响。 基于LoRa的地理位置可以工作在室外和室内,精度取决于地形和基站密度。我们来看看地理位置的一些典型应用:智慧城市和交通监控:汽车应用中的地理位置功能可用于事故跟踪和通知,以及预测性维护需求。具体位置的数据有助于算法做出更好的预测。计量和物流:地理位置功能在物流中有各种应用。 一些例子包括垃圾桶、回收库、气罐或任何其他任何容器的填充率监测。 数据可用于自动优化收集路线并节省运营成本。 此外,地理位置可用于资产跟踪实现更有效的库存管理。农业:LoRa地理位置目前用于家畜跟踪。 通过跟踪牛并监测它们的健康,例如,你可以更快更容易地照料生病的牛。 在一个大牧场上,了解病畜的具体位置可以明显地提高反应时间。LoRa地理位置还应用在建筑、保险和消费行业等,用于跟踪高价值资产,如建筑材料、保险商品、宠物甚至人等!LoRa地理位置提供最低的功率、成本和环境影响。与地理位置相关的接收、传输或处理在传感器外面完成,因此不需要额外的硬件、电池或时间。介绍LoRa定位技术继续介绍LoRa地理位置,让我们来快速看一下基础的技术。目前,LoRa使用到达时间差(Time Difference of Arrival,TDOA)来实现地理定位。 要了解它是如何工作的,我们来看看从终端节点到服务器的数据传输步骤。开始,所有的基站或网关共享一个共同的时基,这是重要的。当任何LoRaWAN设备发送一个数据包时,该数据包被范围内的所有网关接收,并且每个报文都将报告给服务器。所有的网关都是一样的,它们一直在所有信道上接收所有数据速率的信号。 这意味着终端设备上没有开销,因为它们不必扫描和连接到特定的网关。 传感器简单地唤醒,发送数据包,范围内的所有网关都可以接收它。然后,所有网关都会将相同的数据包发回到服务器,使用内置在最新一代网关中的专用硬件和软件捕获高精度到达时间。 接下来,服务器端的算法比较到达时间、信号强度、信噪比和其他参数来计算终端节点的最可能位置。未来,我们期待混合数据融合技术和地图匹配增强来改善到达时间差,提高定位精度。为了使地理位置准确地工作,需要通过至少三个网关接收到数据包。更多网关的更密集网络会提高定位的精度和容量。这是因为当更多的网关接收到相同的数据包时,服务器算法会收到更多的信息,从而提高了地理位置精度。现在,我们来讨论一下硬件。 网关内部需要下一代的硬件来计算地理位置中使用的一些参数,如高精度的到达时间。Semtech于2016年初创建了网关参考设计,此后在许多网关中成功实现。 它包括了所需的高质量时间戳功能,并且适用于获得授权的网关合作伙伴。 这样确保了多个供应商的部署都能一致地工作,提供高质量的时间戳,从而实现最高质量的地理定位服务。需要重点注意的是,地理位置完全依靠网关和网络技术,因此一旦网关升级,地理位置功能就可用于所有设备。Semtech还提供了一个地理位置解算程序。通用的解算程序不是专用的应用程序,是与终端节点无关的,为LoRa地理定位服务提供了良好的起点。 另外,定义了一个API,允许系统集成商使用第三方可能提高可用位置精度的解算算法。通过这种开放的模式,Semtech鼓励解算技术的创新和发展,确保基于LoRaWAN的地理位置不断改进。当数据包到达网关时,它不知道数据包来自哪个终端设备。因此,网关给接每个接受到的数据包加上时间戳,并将其转发给服务器。由于访问地理位置服务是有价值的,所以这些时间戳在网关中通过加密来保护。时间戳被传输到网络服务器,Semtech授权解密功能给网络服务提供商。 网络服务器提供商可以根据订阅的服务级别对数据进行解密。要提供良好位置最大困难之一是减少多路径传输。如上图所示,一些数据包直接去了网关,有些数据包并没有但有一个反射信号,其他数据包两种情况都有。使用更多数据包传输来减少多路径传输,可以通过更多的信道、更多的网关、更多天线以及使用机器学习或统计技术。最后,我们来看看数据的可控参数。频率分集。通过在所有可用信道上重复发送一条消息,平均来看地理位置结果有50%的改善。 一个工作在8通道网络上的静态终端节点在8个不同信道上发送8个数据包后,那么其结果将提高50%。部署网关网格的形状。 网关部署网格的影响约为25%。 一个长的细网格将比一个方格网格差25%。 因此,网络部署应尽可能侧重于以方形模式部署网关。网关分集。 一般来说,接收信号的网关越多,结果越准确。 然而,超过6个网关,地理位置改善开始变得不明显。 3到4个网关,大概有25%的改善,超过4个网关地理位置改善开始减少。最后,天线分集。 天线分集对最弱的信号影响最大。因此,如果设备在3个网关上处于接收良好的位置,增加一个弱的第四个网关,天线分集通常会改变在第四个网关上接收到的数据包从不可用到可用。在这种情况下,它可以提供25%的地理位置改善。了解详情深入解析8大关键技术,4大应用场景,看完秒懂5G
未来的网络将会面对:1000倍的数据容量增长,10到100倍的无线设备连接,10到100倍的用户速率需求,10倍长的电池续航时间需求等等。坦白的讲,4G网络无法满足这些需求,所以5G就必须登场。但是,5G不是一次革命。5G是4G的延续,我相信5G在核心网部分不会有太大的变动,5G的关键技术集中在无线部分。虽然5G最终将采用何种技术,目前还没有定论。不过,综合各大高端论坛讨论的焦点,我今天收集了8大...了解详情LoRa联盟最新白皮书:LoRaWAN安全-可为IoT应用供应商提供完整的端对端加密
这是最近LoRa联盟官方发布的第6份白皮书,主题是安全,由GEMALTO、ACTILITY和SEMTECH一同提供,总体来说技术性较强,翻译难免有不妥之处,还请大家见谅。介绍LoRaWAN?是一种低功耗广域网络协议,可以为IoT、M2M智慧城市和工业应用等场景提供低功耗、可移动、安全的双向通信。LoRaWAN协议为低功耗进行了优化,并且为可支持数以百万计设备的大型网络结构进行了特别设计。LoRaWAN的特点是可以支持冗余操作、定位、低成本和低功耗等应用场景。安全是所有应用场景的基本前提,所以从一开始在LoRaWAN协议中就对安全性进行了设计。然而安全包含众多方面,尤其是LoRaWAN的加密机制需要特殊的解释。所以此白皮书将会对当前LoRaWAN协议的安全性进行说明。首先会针对协议中的安全属性进行阐述,然后呈现具体的实现细节,最后对一些LoRaWAN安全性上的设计进行解释。LoRaWAN?安全属性LoRaWAN的安全性设计原则要符合LoRaWAN的标准初衷,即低功耗、低复杂度、低成本和大扩展性。由于设备在现场部署并持续的时间很长(往往是数年时间),所以安全考虑一定要全面并且有前瞻性。LoRaWAN安全设计遵循先进的原则:标准的采取,算法的审查,以及端到端的安全机制。接下来我们会对LoRaWAN安全性的基本特性进行描述:包括双向认证、完整性校验和保密机制。双向认证作为网络连接的过程,发生在LoRaWAN终端节点与网络之间。这确保只有真正的和已授权的设备才能与真实的网络相连接。LoRaWAN的MAC和应用消息是“生来”经过认证、完整性保护和加密的。这种保护和双向认证一同确保了网络流量没有改变,是来自一个合法的设备,而不是“窃听者”,或者“流氓”设备。LoRaWAN安全性进一步为终端设备和服务器之间的数据交换提供了端对端的加密机制。LoRaWAN是为数不多的支持端对端加密的IoT网络技术。传统的蜂窝网络中,加密发生在空中接口处,但在运营商的核心网络中只是把它当做纯文本来传输的。因此,终端用户还要选择、部署和管理一个额外的安全层(通常通过某种类型的VPN或应用层加密如TLS来实现)。但这种方法并不适合应用在LPWAN技术中,因为这会额外地增加网络功耗、复杂性和成本。安全策略之前提到的安全机制依赖于经过完备测试和标准化的AES加密算法。加密社区已经对这些算法进行了多年的研究和分析,并且被美国国家标准技术研究所认定为适用于节点和网络之间最佳的安全算法。LoRaWAN使用AES加密语句,并结合多个操作模式:用于完整性保护的CMAC、用于加密的CTR。每一个LoRaWAN终端具有一个唯一识别的128位AES Key(称为AppKey)和另外一个唯一标识符(EUI-64-based DevEUI),二者都应用于设备识别过程。EUI – 64标识符的分配要求申请人从 IEEE 登记机关获得组织唯一标识符 (OUI)。同样地,LoRaWAN网络由LoRa 联盟分配的24位全球惟一标识符进行标定。安全应用的负载LoRaWAN? 应用负载的端对端加密发生在终端设备和服务器之间。完整性保护由跳频来实现: 空中跳频通过LoRaWAN提供的完整性保护,网络和服务器之间的跳频通过使用安全传输方案如HTTPS和VPNS来实现。双向认证:空中激活证明了终端设备和网络都具有AppKey的概念。这通过将一个AES-CMAC(使用AppKey)装载到设备的加入请求和后端接收器得到证明。两个会话秘钥接着进行相互认证,一个用来提供完整性保护和LoRaWAN MAC指令和应用程序负载(NwkSKey)的加密,另一个用来提供端对端应用负载(AppSKey)的加密。NwkSKey装载在LoRaWAN网络是为了验证数据包的真实性和完整性。从网络运营商的角度AppKey和AppSKey可以被隐藏,所以破解应用负载是不可能实现的。数据完整性和隐私保护:LoRaWAN通信使用两个会话秘钥进行保护。每个负载由AES-CTR加密,并且携带一个帧计数器(为了避免数据包回放),一个消息完整性代码(MIC)和AES-CMAC(为了避免数据包被篡改)。下图是LoRaWAN包结构示意图。 安全性事实与谬论 LoRaWAN?设备的物理安全:AppKey和衍生而来的会话秘钥会持续的保存在LoRaWAN设备中,它们的安全性依赖于设备的物理安全。一旦设备受到物理损害,这些秘钥存在防篡改存储器中从而受到保护,并且很难提取。密码学:一些资料指出LoRaWAN?密码只使用了XOR而并非AES。事实上,如之前所提到的,AES用在了标准化CTR模式,这利用了XOR加密操作(还有CBC等许多其他模式)。这通过给每个分组密码分配一个惟一的AES码强化了AES算法。会话秘钥分布:由于AppSKey 和NwkSKey从同一个AppKey生成,可以说如果LoRaWAN运营商获得了AppKey,它能够推导出AppSKey从而解码网络。所以为了避免这种情况的发生,服务器要对AppKey的存储进行管理,双向认证和密钥推导的过程可以由运营商以外的实体进行操作。为了给运营商额外的灵活性,LoRaWAN接下来的新版本协议(1.1)会定义两个主秘钥,一个用于网络(NwkKey),一个用于应用(AppKey)。后端接口安全:后端接口包括网络和应用程序服务器之间控制和数据信号。HTTPS和VPN技术用于保护这些关键的基础设施元素之间沟通的安全性。实现和部署安全:LoRa联盟一直在确保其协议和架构规范的安全性,但是解决方案的总体安全性还要依赖于具体的实现和部署方式。所以安全问题需要各个环节的配合,制造商、供应商、运营商都需要参与当中。注解1 AES – 一种高级加密标准。这是一个基于对称密钥的加密算法,允许消息加密和身份认证。2 CMAC – 基于暗码的消息认证码。3 CTR – 计数器模式加密标准。一种依赖于计数器的数据流加密AES算法的操作模式。4 AES-CMAC – 基于暗码的消息认证码,使用AES加密算法提供消息的完整性和真实性。5 CBC是AES算法的一种操作模式,依靠一个初始化向量和前序的数据块进行数据流的加密。 最后这个图是LoRa联盟给出的全球部署情况图,LoRa联盟现阶段有超过400个会员,全球有超过150个正在进行的部署计划,并且有34个运营商的加入。了解详情LoRaWAN协议(七)–完整数据流程
以下的GW指Gatewa所用指令tcpdump -i lo -nn -x 'length>100入网流程OTAA入网流程,ABP方式入网则不需要NS ->AS ->NS ->AS ->NS->GW Join_accept messGW ->数据通讯流程GW->NS ->AS ->AS ->app.userdata.payload bas...了解详情LoRaWAN协议(六)–OTAA KEY生成过程
前言通过OTAA方式入网的设备,通讯时使用的KEY需要通过服务器获得,在入网之间,设备无法通讯。相关的OTAA入网流程已经在上一章中讲解过了,有兴趣的可以去看看*LoRaWAN协议(五)__OTAA入网方式详述**这一章讲解的是OTAA中的密钥生成过程。其中使用到的库函数都是从semtech的官方库中来的,官方库代码链接:LoRaMac-node。详解设备在通讯时,会使用的密钥有NwkSKey 和AppSKey。生成的公式如下:NwkSKey = aes128_encrypt(AppKey, 0x01 | AppNonce | NetID | DevNonce | pad16)AppSKey = aes128_encrypt(AppKey, 0x02 | AppNonce | NetID | DevNonce | pad16)可以看到相关的参数一共有四个:1.AppNonce2.NetID3.DevNonce4.pad16其中AppNonce、NetID、pad16 是产生于服务器的,DevNonce产生于node设备本身。还是使用LoRaWAN协议(五)这篇文章中使用的包数据来进行分析。这里,我们调用官方库的接口,因为我们这里只是熟悉协议,并不是要研究Key的生成算法。如果不明白数据协议的,可以去看LoRaWAN协议(五)这篇文章提取DevNonce1.GW->NS JSON包,从中提取出来DevNonce,data为MAC层数据,为join_request message,其数据包格式为MHD | APPEU | DevEU | DevNonc | MI |
---|---|---|---|---|
1字节 | 8字节 | 8字节 | 2字节 | 4字节 |
字段 | 内容 |
---|---|
MHD | \x0 |
AppEU | \x01 \x00 \x00 \x20 \x00 \xc5 \x26 \x2 |
DevEU... |