资料介绍
By Sachin Gupta & Richa Dham, Cypress Semiconductor
对于任何一个无线设备,无论是健康监测器还是付款系统,保护用户的隐私信息都是非常重要的。隐私机制可防止设备受到不可信的设备追踪。安全的通信保证了数据安全,防止未经授权的设备侵入数据导致触发系统意外操作。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)之间的私有通信。对于支付解决方案这样的信息保密性(比如密码)极其重要的应用来说,防止被动窃听是非常重要的。
图1:在被动窃听攻击中,第三台设备偷偷窃听两个设备之间的通信。
通过使用密钥对数据进行加密,系统可以防止被动窃听。蓝牙低功耗4.2引入LE安全连接,采用符合联邦信息处理标准(FIPS)的DCTH (Elliptic Curve Diffie-Hellman)算法生成密钥。该密钥用于生成其它密钥,如长期密钥和DH密钥,但其本身从不通过无线电共享。由于DH密钥从不通过无线电交换,因此第三方设备很难猜出加密密钥。在蓝牙低功耗早期版本(蓝牙4.1或更老版本)中,设备采用的是非常容易猜测到的临时密钥(TK)对连接进行首次加密,此后的长期密钥和其他密钥都会在这个不太安全的连接上进行。
中间人
MITM是指当两个设备尝试彼此通信时,第三设备插入到两者之间并伪装成对方设备(参见图1)。通过认证可以确保系统所通信的设备是其实际预期的设备,而不是伪装的非授权设备。
图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。
表1:关联模型的选择取决于设备的I/O支持如何。
蓝牙低功耗4.2提供三个支持MITM防护的关联模型以及一个针对无需MITM防护应用的模型。4.1以及更老的BLE版本不支持数值关联模型;如果OOB数据也不可用,则只能使用密钥输入关联模型进行验证配对。而密钥关联模型需要键盘实现密钥输入,这一点在许多系统中无法实现,限制了MITM防护的应用。但是,只要显示能够实现是/否选项时,可以使用数值比较模型,为更多的应用提供MITM保护。
配对
配对是密钥交换和认证的过程。根据不同的蓝牙低功耗版本,有两种取决于的配对类型:LE安全连接(蓝牙4.2新增)和LE传统配对(蓝牙4.0以后的版本支持)。与之前的版本相比,LE安全连接提供了显著的改善。
蓝牙低功耗的配对分为三个阶段。在第一阶段,设备交换其配对参数,其是能够确定合适关联模型的能力和安全要求。配对参数包括各种字段,如图3。
图3:BLE 4.2配对第一阶段交换的配对参数
LE安全连接采用符合联邦信息处理标准(FIPS)的ECDH算法,能够在没有防护的信道中建立安全的共享密钥。使用ECDH形式是P-256,这意味着设备生成的私有密钥长度为256位(或32字节)。
执行ECDH算法之前,两个设备必须确定一组特定的域参数。在LE安全连接中,因为两台待连接设备都FIP的SP-256 ECDH机制,因此都知道一个默认的参数。随后,两台设备各生成一对密钥,一个称为私有密钥,该设备不会通过无线电进行共享或发送;另一个称为公共密钥,由设备密钥和一个发生器函数(域参数的一部分)产生。
随后,两台设备都将自己的公共密钥发送给对方设备。使用这个接收到的公共密钥、自己的公共密钥以及自己的私有密钥,两台设备都能够生成一个共享密钥。注意,被动窃听者只能获取设备之间交换的公共密钥,但没有双方的私有密钥,因此不能产生用于进一步加密的共享密钥。通过这种方式,ECDH能够在不安全的通道上生成共享密钥并对连接进行加密。
图4显示了在有第三设备窃听的情况下,两台设备是如何建立共享密钥的。
图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算法以确保隐私和数据安全。
(mbbeetchina)
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- DL-32-BLE4.2低功耗蓝牙4.2模块规格书 0次下载
- 低功耗蓝牙4.2模块XW-30使用规格书下载 2次下载
- 蓝牙低功耗技术资料下载
- 传统蓝牙与低功耗蓝牙之间的比较资料下载
- 蓝牙4.2与隐私保护资料下载
- 蓝牙BLE4.2系统设计的安全性是如何实现的资料下载
- 蓝牙mesh网络的低功耗资料下载
- 四方面来了解低功耗蓝牙选型资料下载
- 蓝牙模块低功耗蓝牙4.2透传nRF51822主从一体 27次下载
- 蓝牙模块低功耗蓝牙4.2nRF51822主从一体IPEX天线 23次下载
- 蓝牙模块低功耗蓝牙4.2nRF51822主从一体陶瓷天线 43次下载
- 蓝牙模块低功耗蓝牙4.2nRF51822从机彩灯控制蓝牙beac 14次下载
- 蓝牙模块低功耗蓝牙4.2蓝牙Mesh组网方案 39次下载
- 蓝牙模块低功耗nRF52832蓝牙4.2(支持蓝牙5升级)NFC 187次下载
- 蓝牙低功耗技术 0次下载
- 低功耗蓝牙技术的特点 低功耗蓝牙如何实现低功耗? 1486次阅读
- 有关ESP32烧录的问题解析 2942次阅读
- 低功耗蓝牙(BLE)技术简介和工作方式 3051次阅读
- 低功耗蓝牙版本的特性演进简介 3823次阅读
- 蓝牙低功耗技术在便携式医疗设备中的应用研究 2180次阅读
- 低功耗蓝牙芯片的主要特点/工作状态/工作模式/应用 4192次阅读
- 传统蓝牙和低功耗蓝牙到底有什么区别 8033次阅读
- 关于低功耗蓝牙的8点关键知识 3734次阅读
- 浅谈十个关于低功耗同步通道的常见问题 995次阅读
- dfrobot低功耗蓝牙控制器简介 1447次阅读
- 低功耗蓝牙(BLE)模块——EMB1066 2980次阅读
- 低功耗蓝牙物联网电路设计方案分享 4970次阅读
- 通过蓝牙Mesh网络连接一切 1.3w次阅读
- 蓝牙4.0和低功耗蓝牙是一回事吗?这篇文章解答这个疑问 8918次阅读
- 如何实现低功耗蓝牙技术的低功耗? 3551次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1491次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 95次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 11次下载 | 免费
- 6100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 4次下载 | 免费
- 8基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537793次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多