本发明涉及蓝牙通信,尤其涉及一种用于蓝牙设备之间的安全通信方法及装置。
背景技术:
1、蓝牙通信属于无线通信手段的一种,不同蓝牙装置之间进行搜索、配对、认证或通信过程中存在严重的安全性问题,很容易被窃听、截取甚至冒用,很可能会对用户造成损失。由于蓝牙设备自身的硬件资源不足,无法采用复杂的加密算法对通信数据进行加密。因此,针对资源受限的蓝牙设备,如何提高蓝牙通信的安全性是本领域技术人员亟待解决的技术问题。
技术实现思路
1、本发明实施例提供了一种用于蓝牙设备之间的安全通信方法及装置,旨在解决现有技术中蓝牙通信安全性较低的问题。
2、第一方面,本发明实施例提供了一种用于蓝牙设备之间的安全通信方法,其包括:
3、蓝牙服务端开启蓝牙进行广播,并在广播中携带标记信息;
4、蓝牙客户端根据所述标记信息与蓝牙服务端建立蓝牙连接,并生成第一随机值和对应的第一公开码,将所述第一公开码和预置第一传输参数合并组成第一秘钥交换帧,并将所述第一秘钥交换帧发送至蓝牙服务端;
5、蓝牙服务端接收所述第一秘钥交换帧,对所述第一秘钥交换帧中的第一传输参数进行校验,若所述第一传输参数校验通过,则生成第二随机值和对应的第二公开码,将所述第二公开码和预置第二传输参数合并组成第二秘钥交换帧,并将所述第二秘钥交换帧发送至蓝牙客户端;
6、蓝牙客户端接收所述第二秘钥交换帧,根据dh算法对所述第二秘钥交换帧中的第二公开码、第一随机值和预置共享参数进行加密处理,将得到的处理结果作为第一秘钥;基于所述第一秘钥,根据预置的对称加密算法对预置固定字符和预置第三传输参数进行加密,得到第一鉴权帧,并将所述第一鉴权帧发送至蓝牙服务端;
7、蓝牙服务端接收所述第一鉴权帧,并根据dh算法对所述第一鉴权帧中的第一公开码、第二随机值和所述共享参数进行加密处理,以得到的计算结果作为第二秘钥;通过所述第二秘钥对所述第一鉴权帧进行解密,若解密成功且得到所述固定字符,则判定所述第二秘钥正确;基于所述第二秘钥,根据预置的对称加密算法对所述固定字符和预置第四传输参数进行加密,得到第二鉴权帧,并将所述第二鉴权帧发送至蓝牙客户端;
8、蓝牙客户端接收所述第二鉴权帧,并通过所述第一秘钥对所述第二鉴权帧进行解密,若解密成功且得到所述固定字符,则判定所述第一秘钥正确,继续保持蓝牙连接;若所述第一秘钥对所述第二鉴权帧解密失败,则断开蓝牙连接。
9、第二方面,本发明实施例提供了一种用于蓝牙设备之间的安全通信装置,其包括:
10、蓝牙服务端,用于开启蓝牙进行广播,并在广播中携带标记信息;还用于接收秘钥交换帧,对所述秘钥交换帧中的第一传输参数进行校验,若所述第一传输参数校验通过,则生成第二随机值和对应的第二公开码,将所述第二公开码和预置第二传输参数合并组成第二秘钥交换帧,并将所述第二秘钥交换帧发送至蓝牙客户端;还用于接收第一鉴权帧,并根据dh算法对所述第一鉴权帧中的第一公开码、第二随机值和预置共享参数进行加密处理,以得到的计算结果作为第二秘钥;通过所述第二秘钥对所述第一鉴权帧进行解密,若解密成功且得到固定字符,则判定第二秘钥正确;基于所述第二秘钥,根据预置的对称加密算法对所述固定字符和预置第四传输参数进行加密,得到第二鉴权帧,并将所述第二鉴权帧发送至蓝牙客户端;
11、蓝牙客户端,用于根据所述标记信息与蓝牙服务端建立蓝牙连接,并生成第一随机值和对应的第一公开码,将所述第一公开码和预置第一传输参数合并组成第一秘钥交换帧,并将所述第一秘钥交换帧发送至蓝牙服务端;还用于接收所述第二秘钥交换帧,根据dh算法对所述第二秘钥交换帧中的第二公开码、第一随机值和预置共享参数进行加密处理,将得到的处理结果作为第一秘钥;基于所述第一秘钥,根据预置的对称加密算法对预置固定字符和预置第三传输参数进行加密,得到第一鉴权帧,并将所述第一鉴权帧发送至蓝牙服务端;还用于接收所述第二鉴权帧,并通过所述第一秘钥对所述第二鉴权帧进行解密,若解密成功且得到所述固定字符,则判定所述第一秘钥正确,继续保持蓝牙连接;若所述第一秘钥对所述第二鉴权帧解密失败,则断开蓝牙连接。
12、本发明实施例提供了用于蓝牙设备之间的安全通信方法及装置。该方法先使蓝牙服务端和蓝牙客户端之间进行秘钥交换,使蓝牙服务端得到蓝牙客户端的第一公开码,使蓝牙客户端得到蓝牙服务端的第二公开码;接着蓝牙客户端以第二公开码、自身的第一随机值和预置共享参数的dh算法结果作为第一秘钥,蓝牙服务端以第一公开码、自身的第二随机值和预置共享参数的dh算法结果作为第二秘钥,蓝牙客户端和蓝牙服务端分别基于第一秘钥和第二秘钥进行加密通信,保证蓝牙通信设备之间通信的数据安全,有效提高蓝牙设备之间通信的安全性。
1.一种用于蓝牙设备之间的安全通信方法,其特征在于,包括:
2.根据权利要求1所述的用于蓝牙设备之间的安全通信方法,其特征在于,所述判定所述第一秘钥正确,继续保持蓝牙连接之后,包括:
3.根据权利要求1所述的用于蓝牙设备之间的安全通信方法,其特征在于,所述第一秘钥交换帧或第二秘钥交换帧的帧结构包括依次相连的帧头、帧长度、第一公开码或第二公开码、预置第一传输参数或预置第二传输参数和帧尾。
4.根据权利要求1所述的用于蓝牙设备之间的安全通信方法,其特征在于,所述第一随机值或第二随机值为16字节。
5.根据权利要求1所述的用于蓝牙设备之间的安全通信方法,其特征在于,所述共享参数包括两个参数,且所述共享参数按时间划分版本,每一版本的共享参数数值不同。
6.根据权利要求1所述的用于蓝牙设备之间的安全通信方法,其特征在于,所述第一鉴权帧或第二鉴权帧的帧结构包括依次相连的帧头、帧长度、所述固定字符和帧尾。
7.根据权利要求1所述的用于蓝牙设备之间的安全通信方法,其特征在于,所述对称加密算法为aes-128加密算法。
8.根据权利要求1所述的用于蓝牙设备之间的安全通信方法,其特征在于,所述第三传输参数或第四传输参数包括秘钥版本标识。
9.一种用于蓝牙设备之间的安全通信装置,其特征在于,包括:
10.根据权利要求9所述的用于蓝牙设备之间的安全通信装置,其特征在于,