移动端应用级别蓝牙配对方法和系统

文档序号:73464 发布日期:2021-10-01 浏览:38次 >En<

阅读说明:本技术 移动端应用级别蓝牙配对方法和系统 (Mobile terminal application level Bluetooth pairing method and system ) 是由 张超 李俊 胡永亮 赵一方 左勇勇 于 2021-08-09 设计创作,主要内容包括:本发明公开了一种移动端应用级别蓝牙配对方法,所述方法包括:在第一设备和第二设备的应用程序中开启蓝牙配对;第一设备生成安全数据,安全数据包括第一随机数、第二随机数和第一密钥;第一随机数用于标识第一设备,所述第二随机数用于标识第二设备;安全数据可被所述第二设备获取;第一设备以第一随机数为内容进行蓝牙广播,并搜索广播内容为第二随机数的蓝牙设备;第二设备获取到安全数据后,搜索广播内容为第一随机数的蓝牙设备,并以第二随机数为内容进行广播;第一设备和第二设备在搜索到彼此的广播内容后建立蓝牙连接;第一设备和第二设备基于第一密钥生成第二密钥;第一设备和第二设备使用第二密钥加密通信报文以传输数据。(The invention discloses a mobile terminal application level Bluetooth pairing method, which comprises the following steps: starting Bluetooth pairing in the application programs of the first device and the second device; the first device generates security data, wherein the security data comprises a first random number, a second random number and a first secret key; the first random number is used for identifying a first device, and the second random number is used for identifying a second device; the security data is accessible by the second device; the first equipment takes the first random number as content to carry out Bluetooth broadcast and searches for Bluetooth equipment taking the broadcast content as a second random number; after the second device acquires the security data, searching the Bluetooth device with the broadcast content as the first random number, and broadcasting by using the second random number as the content; the first device and the second device establish Bluetooth connection after searching broadcast contents of each other; the first device and the second device generate a second key based on the first key; the first device and the second device encrypt the communication packet using the second key to transmit data.)

移动端应用级别蓝牙配对方法和系统

技术领域

本发明涉及无线通信

技术领域

,特别是一种移动端应用级别蓝牙配对方法和系统。

背景技术

目前手机间蓝牙安全的数据交互依赖配对,配对过程中需要用户进行数字比较或密码验证。这一操作存在下述缺陷:

1、过程较为繁琐,且每个新设备都要重新进行配对一次;

2、对移动端而言,配对为系统层级别,即当前操作系统中全部应用将共享配对加密密钥;假如移动端有恶意应用,将可以直接操控蓝牙设备。

因鉴于此,特提出本发明。

发明内容

本发明的目的在于提供一种移动端应用级别蓝牙配对方法和系统,安全性高,将蓝牙数据传输限定在应用层面,其它应用无法发送、获取传输原文数据。

为解决上述问题,第一方面,本发明实施例提供一种移动端应用级别蓝牙配对方法,包括:

在第一设备和第二设备的应用程序中开启蓝牙配对;

第一设备生成安全数据,所述安全数据包括第一随机数、第二随机数和第一密钥;所述第一随机数用于标识第一设备,所述第二随机数用于标识第二设备;所述安全数据可被所述第二设备获取;

第一设备以所述第一随机数为内容进行蓝牙广播,并搜索广播内容为第二随机数的蓝牙设备;

第二设备获取到所述安全数据后,搜索广播内容为第一随机数的蓝牙设备,并以第二随机数为内容进行广播;

第一设备和第二设备在搜索到彼此的广播内容后建立蓝牙连接;

第一设备和第二设备基于所述第一密钥生成第二密钥;

第一设备和第二设备使用第二密钥加密通信报文以传输数据。

进一步地,所述第一设备和第二设备基于所述第一密钥生成第二密钥包括:

第一设备生成第三随机数,发送至第二设备;

第二设备生成第四随机数,使用第一密钥对第三随机数和第四随机数处理,生成第二密钥;

第二设备使用第二密钥对第四随机数、第二随机数加密产生加密数据,将加密数据和第四随机数返回给第一设备;

第一设备通过第四随机数,配合第三随机数、第一密钥生成第二密钥,使用其验证所述加密数据;

验证通过后,第一设备和第二设备拥有共同的第二密钥,所述第二密钥仅用于第一设备和第二设备的特定应用之间的加密通信。

进一步地,第一设备生成安全数据后,将安全数据以图形码的形式展示,以使得第二设备可以通过扫描图形码的方式获取所述安全数据。

第二方面,本发明实施例提供一种移动端应用级别蓝牙配对系统,包括第一设备和第二设备;其中:

在第一设备和第二设备的应用程序中开启蓝牙配对;

第一设备生成安全数据,所述安全数据包括第一随机数、第二随机数和第一密钥;所述第一随机数用于标识第一设备,所述第二随机数用于标识第二设备;所述安全数据可被所述第二设备获取;

第一设备以所述第一随机数为内容进行蓝牙广播,并搜索广播内容为第二随机数的蓝牙设备;

第二设备获取到所述安全数据后,搜索广播内容为第一随机数的蓝牙设备,并以第二随机数为内容进行广播;

第一设备和第二设备在搜索到彼此的广播内容后建立蓝牙连接;

第一设备和第二设备基于所述第一密钥生成第二密钥;

第一设备和第二设备使用第二密钥加密通信报文以传输数据。

进一步地,所述第一设备和第二设备基于所述第一密钥生成第二密钥包括:

第一设备生成第三随机数,发送至第二设备;

第二设备生成第四随机数,使用第一密钥对第三随机数和第四随机数处理,生成第二密钥;

第二设备使用第二密钥对第四随机数、第二随机数加密产生加密数据,将加密数据和第四随机数返回给第一设备;

第一设备通过第四随机数,配合第三随机数、第一密钥生成第二密钥,使用其验证所述加密数据;

验证通过后,第一设备和第二设备拥有共同的第二密钥;所述第二密钥仅用于第一设备和第二设备的特定应用之间的加密通信。

进一步地,所述第一设备具有界面,第二设备具有图形码识别装置,第一设备生成安全数据后,将安全数据以图形码的形式展示在所述界面上,以使得第二设备可以通过扫描图形码的方式获取所述安全数据。

与现有技术相比,本发明的具有如下有益效果:通过在预定的应用上使用单独生成的通信密钥,将蓝牙数据传输限定在应用层面,使得两蓝牙设备在每次交互前,共享一段数据,依赖这一数据进行安全校验、设备标识,安全性高,其它应用无法发送、获取传输原文数据。此外还具备用户体验好,操作流程简单、步骤少等优点。

附图说明

图1为本发明实施例提供的移动端应用级别蓝牙配对系统的结构示意图;

图2为本发明实施例提供的移动端应用级别蓝牙配对方法的流程图;

图3为第二密钥生成的流程图。

具体实施方式

下面将参考附图中示出的若干示例性实施方式来描述本发明的原理和精神。应当理解,描述这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。

请参考图1-3,本发明实施例提供一种移动端应用级别蓝牙配对方法,包括:

S1:在第一设备和第二设备的应用程序中开启蓝牙配对。

本实施例提供的蓝牙匹配方法是基于应用级别的蓝牙配对方法。因此在第一设备和第二设备准备建立蓝牙通信时,需要在预定的应用中启动蓝牙配对。第一设备和第二设备可以是任何需要建立蓝牙通信的设备,例如手机、平板电脑、笔记本电脑、可穿戴设备等。

S2:第一设备生成安全数据,安全数据包括第一随机数(device1Eid)、第二随机数(device2Eid)和第一密钥(sessionPreKey);第一随机数用于标识第一设备,第二随机数用于标识第二设备。

步骤S2中,第一密钥是随机生成的密钥,用于两设备配对后产生第二密钥(如下文叙述)。

S3:第一设备将安全数据以图形码的形式展示。

图形码可以是二维码、条形码等任何可以承担安全数据的形式。通常来说,第一设备具有显示屏,如智能手机,可以将安全数据生成为二维码的形式展示在显示屏上。

S4:第一设备以所第一随机数为内容进行蓝牙广播,并搜索广播内容为第二随机数的蓝牙设备。

S5:第二设备扫描图形码,获取到安全数据。

本实施例中,第二设备也为智能手机,通过扫描第一设备显示屏上显示的二维码,可以解析得到安全数据,包括第一随机数、第二随机数和第一密钥。

S6:第二设备搜索广播内容为第一随机数的蓝牙设备,并以第二随机数为内容进行广播。

S7:第一设备和第二设备在搜索到彼此的广播内容后建立蓝牙连接。

第一设备和第二设备进行蓝牙配置时,先使用第一密钥进行握手,第一次建立蓝牙连接,为后续生成第二密钥做准备。

S8:第一设备和第二设备基于第一密钥生成第二密钥。

为了避免第一设备和第二设备每次通信都需要在系统级别共享密钥的问题。在步骤S8中,第一设备和第二设备基于第一密钥生成第二密钥,该第二密钥专门用于本实施例中特定应用之间的加密通信。这样,第一设备和第二设备上的其他应用如果也需要基于蓝牙加密通信,就无法使用第二密钥,因此其他恶意应用无法截获该应用的蓝牙通信数据,保证了通信安全。具体而言,步骤S8包括如下子步骤:

S81:第一设备生成第三随机数(challenge1),发送至第二设备;

第二设备生成第四随机数(challenge2),使用第一密钥(sessionPreKey)对第三随机数(challenge1)和第四随机数(challenge2)处理,生成第二密钥(sessionKey),处理的算法可以采用本领域当中公知的算法,在此不再赘述。

S82:第二设备使用第二密钥(sessionKey)对第四随机数(challenge2)、第二随机数(device2Eid)加密产生加密数据,将加密数据和第四随机数(challenge2)返回给第一设备;

第一设备通过第四随机数(challenge2),配合第三随机数(challenge1)、第一密钥(sessionPreKey)生成第二密钥(sessionKey),使用其验证所述加密数据,其中生成第二密钥的算法和第二设备生成第二密钥的算法相同。

S83:验证通过后,第一设备和第二设备拥有共同的第二密钥,第二密钥仅用于第一设备和第二设备的特定应用之间的加密通信。

S9:第一设备和第二设备使用第二密钥加密通信报文以传输数据。

在完成第一次蓝牙配对后,第一设备和第二设备基于某一特定应用之间的蓝牙通信均采用第二密钥加密通信,因此后续的所有通信内容都不会被其他的恶意应用获取。

本发明实施例还提供了一种和上述方法对应的移动端应用级别蓝牙配对系统,包括第一设备和第二设备;其中:

在第一设备和第二设备的应用程序中开启蓝牙配对;

第一设备生成安全数据,所述安全数据包括第一随机数、第二随机数和第一密钥;所述第一随机数用于标识第一设备,所述第二随机数用于标识第二设备;所述安全数据可被所述第二设备获取;

第一设备以所述第一随机数为内容进行蓝牙广播,并搜索广播内容为第二随机数的蓝牙设备;

第二设备获取到所述安全数据后,搜索广播内容为第一随机数的蓝牙设备,并以第二随机数为内容进行广播;

第一设备和第二设备在搜索到彼此的广播内容后建立蓝牙连接;

第一设备和第二设备基于所述第一密钥生成第二密钥;

第一设备和第二设备使用第二密钥加密通信报文以传输数据。

应当理解是,第一设备和第二设备执行的步骤和上述方法实施例中的步骤S1-S9一一对应,具体实现细节请参考前文的描述。

本文中应用了具体个例对发明构思进行了详细阐述,以上实施例的说明只是用于帮助理解本发明的核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离该发明构思的前提下,所做的任何显而易见的修改、等同替换或其他改进,均应包含在本发明的保护范围之内。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:基于纠错码判决的无线物理层密钥协商方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!