导航:首页 > 文档加密 > 蓝牙通信加密

蓝牙通信加密

发布时间:2024-09-23 08:36:53

‘壹’ 蓝牙加密必需配对吗

必须。两个蓝牙设备若要建立加密连接,则必须使用链接密钥相互配对。蓝牙(Bluetooth)是一种无线数据与语音通信的开放性全球规范,它以低成本的短距离无线连接为基础,可为固定的或移动的终端设备提供廉价的接入服务。

‘贰’ 蓝牙的安全机制有哪些

蓝牙采取的安全机制适用于对等通信的情况,即双方以相同的方式实现认证与加密规程。主要的安全机制为使用密钥。它的链路层使用4个实体提供安全性,一个公开的蓝牙设备地址,长度为48比特;认证密钥,长度为128比特;加密密钥,长度为8~128比特;随机数,长为128比特。蓝牙安全管理器存贮着有关设备和服务的安全信息,安全管理器将决定是否接收数据,断开连接或是否需要加密和身份认证,它还初始化一个可信任的关系以及从用户那里得到一个PIN码。

蓝牙设备有两种信任级别,即可信任和不可信任。可信任级别有一个固定的可信任关系,可以得到大多数服务。可信任设备是预先得到鉴别的。而不可信任设备所得到的服务是有限的,它也可以具有一个固定的关系,但不是可信任的。一个新连接的设备总是被认为是未知的,不可信任的。

对蓝牙协议本身的攻击可以分为两类:主动攻击和被动攻击。主动攻击是没有被认证的第三方对传输过程中的数据流进行修改。主动攻击包括伪装、中继、信息修改以及拒绝服务。被动攻击可以是对传输内容进行窃听,也可以是对通信模式进行监听获取相关信息。




2.1字管理机制

蓝牙链字是长度为128位的随机数,它是蓝牙系统鉴权和加密的基础。为了支持不同阶段、模式的要求,蓝牙系统在链路层上用了4种不同的字来保证系统的安全性。包括单元字KA组合字是KAB,临时字Kmaster及初始化字Kinit。单元字KA与组合字KAB仅产生方式不同,执行的功能是完全相同的。也就是说,KAB是由两个单元A,B共同产生的,而KA仅由一个单元A产生,因此KA在初始化阶段产生后就基本不变了。系统的内存比较小时通常选择KA,而系统对稳定性要求比较高时选择KAB。临时字Kmaster只是临时取代原始字。例如,当主机想与多个子机通信时主机将用同一个加密字,因此把它存放在临时字中,以便于使用。初始化字Kinit仅仅在初始化阶段有效,也主是单元字KA,KAB产生的阶段,它不仅仅是初始化阶段的一个临时字,其产生需要一个PIN。半永久性的链接字在特定的时间内被称作当前链接字。当前链接字和其它

链接字一样,用于鉴权和加密过程。

此外,还用到了加密字KC,加密字被LM的命令激活后将自动被改变。

另外,鉴权字和加密字在不同的阶段执行不同的功能。例如:在两个单元没有建立连接的阶段和已经建立连接的阶段有很大的不同,前者必须首先产生加密字,而后者可以继续使用上次通信的加密字。相应地不同的阶段对字的管理是不一样的。此外当主机想广播消息,而不是一个一个地传送消息时,需要特殊的字管理方法。正是蓝牙系统有力的字管理机制,才使得系统具有很好的安全性,而且支持不同的应用模式。

2.2链接字的产生

初始化字Kunit的值以申请者的蓝牙设备地址、一个PIN码、PIN码的长度和一个随机数作为参数,通过E22算法产生。而申请者相对校验者而言是需要通过验证的一方。因此,申请者需要正确的PIN码和PIN码的长度。一般来讲,由HCI决定谁是申请者,谁是校验者。当PIN的长度少于16个八进制数时,可以通过填充蓝牙设备地址的数据使其增大,因此如果循环使用E22可以使链接字的长度增长为128位。初始化链接字Kint产生后,该单元将产生一个半永久字KA或KAB。如果产生的是一人KAB,则该单元将用一个随机数LK_RAND周期性地加密蓝牙设备地址,加密后的结果为LK_KA,而各自产生的LK_RAND与当前的链接字进行异或运算后,分别产生新值,永为CA和CA,然后互相交换,从而得到了对方的LK_RAND,并以对方的LK_RAND和蓝牙设备地址作为参数,用E21函数产生新值LK_KB的异或运算得到组合字KAB。当KAB产生后,首先单向鉴权一次,看KAB变为当前链接字,而丢弃原先的链接字K。E22的工作原理与E21类似。

阅读全文

与蓝牙通信加密相关的资料

热点内容
解压过程失败 浏览:122
鲁棒半无限优化算法 浏览:172
mtk单片机 浏览:726
安卓照片保存文件夹重命名 浏览:56
请下载解压神器游戏 浏览:537
如何将安卓平板刷成ios 浏览:431
微信账号存储在哪个文件夹 浏览:965
102乘48算法 浏览:406
编程如何复制粘贴 浏览:110
linux设置字体命令 浏览:134
python可以计算大规模数值吗 浏览:912
什么服务器跑代码好跑 浏览:205
如何对文件夹所有文件进行编号 浏览:980
windows10反编译程序 浏览:843
如何把安卓app传到另一个手机 浏览:178
马自达6空调压缩机响 浏览:681
这程序员真可爱 浏览:450
编程猫编程的费用 浏览:627
贪心算法几个经典例子详细解读 浏览:421
u盘被别人加密怎么办 浏览:485