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

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

3天内不再提示

关于BLE 4.2的安全性分析

贸泽电子 来源:djl 作者:Sachin Gupta & Richa 2019-08-22 17:09 次阅读

对于任何一个无线设备,无论是健康监测器还是付款系统,保护用户的隐私信息都是非常重要的。隐私机制可防止设备受到不可信的设备追踪。安全的通信保证了数据安全,防止未经授权的设备侵入数据导致触发系统意外操作。BLE 4.2的新功能加强了隐私和安全,解决了早期BLE的缺陷并且提高了能效。

隐私

为了保护BLE设备的隐私,受信任的BLE设备使用共享的身份解析密钥(IRK,Identity Resolving Key)生成和解析随机的可解析私有地址(RPA,Resolvable Private Address)。只有一台设备拥有另一台广播设备的IRK时,才能跟踪该广播设备的活动。

蓝牙设备在配对期间共享IRK,并将其存储在设备内置存储器中的解析列表中。因此,早前绑定的设备依然可以解析对方设备的私有地址。

蓝牙4.1中,该解析列表保存于主机并且由主机完成地址解析,也就是说每次收到RPA的广告包时,都需要主机进行干预。在蓝牙4.2中,该解析列表保存在控制器中,由控制器解析私有地址。如果设备主机使用单独的CPU,则主机不需要被唤醒即可进行蓝牙配对,从而降低了整体功耗。即使设备使用相同的CPU执行控制器和主机,因为地址不需要通过不同的协议层,减少了解析地址所需的CPU循环次数,也可降低功耗。

RPA会时刻变化,因此第三方更难以跟踪私有设备。在Privacy 1.1(蓝牙4.1)中,建议的RPA超时时间为15分钟。然而,由于Privacy1.1对连接和功耗有一定影响,因此它的使用非常有限。此外,由于Privacy 1.1不支持地址在链路层解析,因此在使用RPA时不能实现设备过滤和定向连接广播(DCA)之类的功能。

蓝牙4.2中Privacy 1.2允许的RPA超时时间可以为1秒到11.5小时。因为BLE 4.2支持在链路层解析地址,故可使用DCA加速设备之间的连接并降低功耗。

被动窃听

为了防止未经授权访问通信,无线系统必须防止被动窃听和中间人(MITM)攻击。被动窃听是指第三台设备偷偷地窃听两个设备(见图2)之间的私有通信。对于支付解决方案这样的信息保密性(比如密码)极其重要的应用来说,防止被动窃听是非常重要的。

关于BLE 4.2的安全性分析

图1:在被动窃听攻击中,第三台设备偷偷窃听两个设备之间的通信。

通过使用密钥对数据进行加密,系统可以防止被动窃听。蓝牙低功耗4.2引入LE安全连接,采用符合联邦信息处理标准(FIPS)的DCTH (Elliptic Curve Diffie-Hellman)算法生成密钥。该密钥用于生成其它密钥,如长期密钥和DH密钥,但其本身从不通过无线电共享。由于DH密钥从不通过无线电交换,因此第三方设备很难猜出加密密钥。在蓝牙低功耗早期版本(蓝牙4.1或更老版本)中,设备采用的是非常容易猜测到的临时密钥(TK)对连接进行首次加密,此后的长期密钥和其他密钥都会在这个不太安全的连接上进行。

中间人

MITM是指当两个设备尝试彼此通信时,第三设备插入到两者之间并伪装成对方设备(参见图1)。通过认证可以确保系统所通信的设备是其实际预期的设备,而不是伪装的非授权设备。

关于BLE 4.2的安全性分析

图2:在中间人攻击中,第三台设备插入两台设备的连接之中,并且使通讯的两端认为他们是在与对方直接对话。

在蓝牙通信中,两台设备使用关联模型实现相互验证,然后安全地交换数据。蓝牙配对是一个密钥交换的过程;但是,交换密钥之前,这两个设备必须共享包括认证要求在内的配对参数。而为了实现认证,两台设备必须使用某种关联模型进行相互验证。模型的选择基于三个参数:

a.是否需要MITM防护

b.该设备是否可以从用户接收数据(例如按钮或键盘输入)或是否可以向用户输出数据(例如LCD显示6位十进制数)。将用户纳入到配对处理是数据安全传输的一个重要因素

c.该设备是否能够进行频带外(OOB)通信。例如,如果部分安全密钥可以在两个设备之间通过近场通讯(NFC)沟通,那么窃听者就无法理解最终的数据意义。

BLE 4.2有四个关联模型可供选择:
数值比较-两台待匹配设备均显示六位数字,如果两个数字相同,那么用户在设备上选择“是”即可通过验证。蓝牙4.2 低功耗安全连接引入了这种关联模型。在传统配对(蓝牙低功耗4.1或更老的版本)中,这些IO功能实现的是“即刻运行”关联模型(无验证)。

密钥输入-用户在两台设备中输入相同的密钥,或其中一台设备显示密钥,用户在另一台设备输入相同的密钥。在传统密钥输入(蓝牙4.1或更老的版本)中,整个密钥以简单的单次确认即可进入交换;而蓝牙4.2中,一次交换一位密钥,安全性有了很大提高。这种逐位公布保证了在协议的配对程序失败之前,未猜测到的密钥泄露不超过2位。

非蓝牙传输(OOB)-OOB关联模型适用于双方设备中至少有一个具有OOB能力、能够加密信息进行频带外交换的情况。此时,MITM防护取决于用于共享信息的OOB协议对MITM的抵抗力。在传统配对(BLE 4.1或更老的版本)中,两个设备都需要具有OOB能力才能使用OOB关联模型。

即刻运行-在不需要MITM保护或者设备具有表1中提到的IO能力的时候,采用这种关联模型。

表1显示了不同IO情况下在LE安全连接配对时能够使用的关联模型。但是,如果不需要MITM保护或其中某台BLE设备具有OOB功能时, 可以忽略IO。

关于BLE 4.2的安全性分析

表1:关联模型的选择取决于设备的I/O支持如何。

蓝牙低功耗4.2提供三个支持MITM防护的关联模型以及一个针对无需MITM防护应用的模型。4.1以及更老的BLE版本不支持数值关联模型;如果OOB数据也不可用,则只能使用密钥输入关联模型进行验证配对。而密钥关联模型需要键盘实现密钥输入,这一点在许多系统中无法实现,限制了MITM防护的应用。但是,只要显示能够实现是/否选项时,可以使用数值比较模型,为更多的应用提供MITM保护。

配对

配对是密钥交换和认证的过程。根据不同的蓝牙低功耗版本,有两种取决于的配对类型:LE安全连接(蓝牙4.2新增)和LE传统配对(蓝牙4.0以后的版本支持)。与之前的版本相比,LE安全连接提供了显著的改善。

蓝牙低功耗的配对分为三个阶段。在第一阶段,设备交换其配对参数,其是能够确定合适关联模型的能力和安全要求。配对参数包括各种字段,如图3。

关于BLE 4.2的安全性分析

图3:BLE 4.2配对第一阶段交换的配对参数

LE安全连接采用符合联邦信息处理标准(FIPS)的ECDH算法,能够在没有防护的信道中建立安全的共享密钥。使用ECDH形式是P-256,这意味着设备生成的私有密钥长度为256位(或32字节)。

执行ECDH算法之前,两个设备必须确定一组特定的域参数。在LE安全连接中,因为两台待连接设备都FIP的SP-256 ECDH机制,因此都知道一个默认的参数。随后,两台设备各生成一对密钥,一个称为私有密钥,该设备不会通过无线电进行共享或发送;另一个称为公共密钥,由设备密钥和一个发生器函数(域参数的一部分)产生。

随后,两台设备都将自己的公共密钥发送给对方设备。使用这个接收到的公共密钥、自己的公共密钥以及自己的私有密钥,两台设备都能够生成一个共享密钥。注意,被动窃听者只能获取设备之间交换的公共密钥,但没有双方的私有密钥,因此不能产生用于进一步加密的共享密钥。通过这种方式,ECDH能够在不安全的通道上生成共享密钥并对连接进行加密。

图4显示了在有第三设备窃听的情况下,两台设备是如何建立共享密钥的。

关于BLE 4.2的安全性分析

图4:当有第三设备窃听时,两台设备正在建立共享密钥

在第2阶段中,ECDH密钥生成后将公共密钥分享给可信的设备并建立加密连接。为确保与设备进行通信的设备是预期的设备,需要使用关联模型进行认证。该设备根据ECDH算法的共享密钥生成一个长期密钥(LTK)并继续进行第二阶段的认证检查,包括检查DH密钥。

在第3阶段,使用长期密钥来对连接进行加密。一旦连接被加密,密钥就可以通过配对参数中的启动器密钥分配/应答器密钥分配标志进行共享(例如,如果采用RPA,则需要IRK)。

数据签名

数据签名是另一个能够帮助增加安全级别的BLE功能。在没有使用加密时,BLE可以使用连接签名解析密钥(CSRK,Connection Signature Resolving Key)对数据进行认证。签名是由签名算法和计数器产生的。计数器随各数据PDU递增,以避免任何重放攻击。请注意,数据签名并非用来防护被动窃听,而是为接收设备验证数据源的真实性。

蓝牙低功耗4.2提供了强大的安全机制以确保安全的无线连接系统。尽管BLE 4.1和4.2都提供了MITM防护功能,但只有蓝牙4.2能够实现真正安全的BLE系统。当使用蓝牙4.1 的LE传统配对时,只有OOB关联模型提供了被动窃听的防护;而蓝牙4.2还提供数值比较关联模型和ECDH算法以确保隐私和数据安全。

有关蓝牙4.2隐私和安全功能的详细信息,请参考应用指南AN99209,有关蓝牙4.2功能的详细信息,请参考蓝牙核心规格

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

    关注

    114

    文章

    5825

    浏览量

    170369
  • 安全性
    +关注

    关注

    0

    文章

    93

    浏览量

    19147
  • 启动器
    +关注

    关注

    0

    文章

    60

    浏览量

    13169
收藏 人收藏

    评论

    相关推荐

    nios如何保证安全性

    在工业设计当中,fpga的安全性是很严重的(个人认为),烧写在epcs上的程序,只要用逻辑分析仪就可以实现程序盗用,nios也是同样的不靠谱,在flash当中,一样没有加密,会有安全问题。所以我觉得
    发表于 08-15 14:42

    关于锂离子动力电池在新能源汽车领域安全性分析与探究

    不断地使用而衰减,更重要的是在不同的使用环境下会有不同的状况。比如在寒冷低温下容易出现比容量低、衰减严重等现象,高温下存在热失控导致自燃自爆的隐患。   关于锂离子动力电池在新能源汽车领域安全性分析
    发表于 05-05 16:13

    Bluetooth®4.2如何帮助实现产品安全性

    随着新的Bluetooth®低能耗软件开发套件(SDK)BLE-Stack]蓝牙4.2附带两个独立的安全升级:安全配对隐私安全配对配对是在需
    发表于 08-03 14:24

    Bluetooth 4.2帮助提高产品安全

    BLE-Stack 2.2等蓝牙4.2大幅改善了安全性和隐私,让开发者部署的设备可以建立安全的连接,不被观察者拦截或追踪。想要把这些
    发表于 08-29 15:10

    各国汽车安全性怎么测试

    曾经有一项问卷调查是对10万名消费者进行调查,结果显示他们最关心的汽车性能是安全性,无论性价比如何高,只要安全性不好的话消费者都不会想购买的。其实全世界其它国家的消费者也是这么想的。各国为了提高汽车
    发表于 05-16 06:11

    蓝牙mesh系列的网络安全性

    。物联网系统如果存在安全漏洞,就可能会导致灾难的后果。蓝牙mesh网络的安全性从设计之初就是重中之重。本文将着重分析主要的安全特性和现已被
    发表于 07-22 06:27

    视频安全性好处

    视频安全性好处
    发表于 09-26 18:43

    关于FPGA设计的安全性你看完就懂了

    关于FPGA设计的安全性你看完就懂了
    发表于 04-30 06:19

    有关BLE 4.2的隐私保护的分析介绍

    有关BLE 4.2的隐私保护的分析介绍
    发表于 05-19 06:15

    数据库安全性概述

    本文主讲 数据库的安全性,欢迎阅读~????目录一、数据库安全性概述二、数据库安全性控制1. 用户标识与鉴别2. 存取控制3. 自主存取控制方法4. 授权与回收5. 数据库角色6. 强制存取控制方法
    发表于 07-30 06:42

    动态路由协议安全性分析

    随着动态 路由协议 的广泛应用,路由协议的安全性越来越被人们所关注,在实际应用中针对路由协议的攻击时常发生。通过对路由协议安全性原理分析及实际应用的解析,对各种动态
    发表于 06-07 16:55 21次下载
    动态路由协议<b class='flag-5'>安全性</b><b class='flag-5'>分析</b>

    批判分析和联网RFID系统安全性的比较研究

    批判分析和联网RFID系统安全性的比较研究,关于物联网方向的安全问题研究。
    发表于 05-06 17:25 0次下载

    使用BLE 4.2的系统设计

    蓝牙4.2规范提供了三项全新特性,使基于BLE的无线系统比之前的系统更快、更安全、更高效,包括数据长度扩展、低功耗安全连接以及链路层隐私保护。但是,想要完全支持这些特性,则需要升级链路
    发表于 12-08 10:46 2次下载
    使用<b class='flag-5'>BLE</b> <b class='flag-5'>4.2</b>的系统设计

    蓝牙BLE4.2系统设计的安全性是如何实现的资料下载

    电子发烧友网为你提供蓝牙BLE4.2系统设计的安全性是如何实现的资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助到广大的电子工程师们。
    发表于 04-12 08:42 5次下载
    蓝牙<b class='flag-5'>BLE4.2</b>系统设计的<b class='flag-5'>安全性</b>是如何实现的资料下载

    智能系统的安全性分析

    智能系统的安全性分析是一个至关重要的过程,它涉及多个层面和维度,以确保系统在各种情况下都能保持安全、稳定和可靠。以下是对智能系统安全性分析
    的头像 发表于 10-29 09:56 259次阅读