一种蓝牙网络及配网方法技术

技术编号:16349222 阅读:124 留言:0更新日期:2017-10-03 23:29
本发明专利技术公开一种蓝牙配网方法,该方法包含:蓝牙通信设备与移动终端通过蓝牙建立连接;蓝牙通信设备与移动终端协商得出数据加密方式以及用于数据解密的共享密钥;蓝牙通信设备连接外接的无线网络;实现通过蓝牙配置无线网络。本发明专利技术蓝牙配网过程中采用对称加密方法对报文数据的加密方式,并采用非对称加密方法生成对应的共享密匙,保障蓝牙配网及网络通讯过程中的数据安全。

【技术实现步骤摘要】
一种蓝牙网络及配网方法
本专利技术涉及一种组网技术,具体涉及一种蓝牙网络及配网方法。
技术介绍
蓝牙是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.4—2.485GHz的ISM波段的UHF无线电波)。蓝牙技术最初由电信巨头爱立信公司于1994年创制,当时是作为RS232数据线的替代方案。蓝牙可连接多个设备,克服了数据同步的难题。蓝牙配网,简称为BLUFI。该功能主要定义了使用GATTServer(通用属性协议服务)来实现被GATTClient(通用属性协议客户端,例如手机)传入WIFI的必连接信息,从而实现WIFI能够连上AP或配置使用SoftAP的profile。
技术实现思路
本专利技术提供一种蓝牙网络及配网方法,实现通过蓝牙配置无线网络,并保证保障蓝牙配网及网络通讯过程中的数据安全。为实现上述面对目的,本专利技术提供一种蓝牙配网方法,其特点是,该方法包含:蓝牙通信设备与移动终端通过蓝牙建立连接;蓝牙通信设备与移动终端协商得出数据加密方式以及用于数据解密的共享密钥;蓝牙通信设备连接外接的无线网络。上述蓝牙通信设备与移动终端建立连接的方法包含:蓝牙通信设备开启通用属性协议服务功能,发送带有预设广播数据的广播;移动终端搜索到蓝牙通信设备的广播,作为预设的通用属性协议客户端与蓝牙通信设备建立连接。上述蓝牙通信设备与移动终端协商加解密的方法包含:移动终端向蓝牙通信设备发送“协商过程”的数据包;蓝牙通信设备收到“协商过程”的数据包后,按照预设的“协商过程”进行解析,得出移动终端向蓝牙通信设备发送数据的加密方式,并通过非对称加密方法生成对应的共享密钥。上述蓝牙通信设备与外接的无线网络建立网络连接包含:移动终端将用于与外接的无线网络连接的连接信息进行加密后发送至蓝牙通信设备,并在连接信息发送完成后向蓝牙通信设备发送网络连接请求;蓝牙通信设备接收移动终端的数据通过共享密钥进行解密;当蓝牙通信设备接收到网络连接请求,则判定用于网络连接的信息传输完毕,启动与外接的无线网络连接;蓝牙通信设备与外接的无线网络建立连接后,送无线网络连接状态信息至移动终端。上述数据的加密方式采用对称加密方法生成。上述蓝牙通信设备接收移动终端的数据后对报文进行完整性校验、安全签名校验和防重放攻击校验。上述蓝牙通信设备协商生成共享密钥的信息由应用层处理;若应用层不处理,可使用蓝牙配网提供的DH加密算法来磋商密钥。上述蓝牙通信设备连接外接的无线网络后,移动终端通过蓝牙通信设备对无线网络进行配置。一种蓝牙网络,其特点是,该网络包含:蓝牙通信设备,其连接外接的无线网络;移动终端,其通过蓝牙通信连接蓝牙通信设备,通过蓝牙通信设备连接外接的无线网络;蓝牙通信设备与移动终端协商采用对称加密方法生成数据加密方式,以及采用非对称加密方法生成用于数据解密的共享密钥。上述蓝牙通信设备设有WIFI和蓝牙的双模芯片。本专利技术一种蓝牙网络及配网方法和现有技术相比,其优点在于,本专利技术蓝牙配网过程中采用对称加密方法对报文数据的加密方式,并采用非对称加密方法生成对应的共享密匙,保障蓝牙配网及网络通讯过程中的数据安全;本专利技术中蓝牙通信设备接收移动终端的数据后,对报文进行完整性校验、安全签名校验和防重放攻击校验,保证数据安全、完整性、身份安全。附图说明图1为本专利技术一种蓝牙配网方法的方法流程图。具体实施方式以下结合附图,进一步说明本专利技术的具体实施例。以下具体公开一种蓝牙配网方法的实施例,BLUFI配网包含了配置Softap和Station两部分。BLUFI配网中的station配置项目包含了广播、连接、服务发现、协商共享密钥、传输数据、回传连接状态等步骤。本实施例中以配置station为例说明配置步骤。本实施例中GATTClient以最常用的手机为例展开阐述;BLUFI配网主要有两个功能:一是用于接收手机端的数据,二是用于发送数据给手机端。当然,BLUFI还包含了一些重要功能,如BLUFI层分片、BLUFI层数据加密和校验、BLUFI层数据确认等。基于本实施例用户可以实现BLUFI配网的过程中的对称加密、非对称加密以及校验算法;本实施例中默认使用DH算法协商密钥,128-AES加密数据,CRC16对数据进行校验。如图1所示,为一种蓝牙配网方法实施例的具体流程,具体包含以下步骤:S1、蓝牙通信设备开启通用属性协议服务(GATTServer)功能,发送带有特定预设广播数据(advdata)的广播。其中,此广播由用户自定义,不在BLUFIProfile内。本实施例中,蓝牙通信设备采用设有ESP32芯片的设备,ESP32是一款WiFi+BT的双模芯片。S2、移动终端(本实施例中为手机)上预装的APP搜索到蓝牙通信设备的广播,作为预设的通用属性协议客户端(GATTClient)与蓝牙通信设备建立连接。其中,手机APP可以由用户自定义。S3、蓝牙通信设备与手机连接建立成功后,手机向蓝牙通信设备发送“协商过程”的数据包。S4、蓝牙通信设备收到“协商过程”的数据包后,会按照用户自定义的“协商过程”来解析。S5、手机与蓝牙通信设备进行协商,协商确定移动终端向蓝牙通信设备发送数据的加密方式,并且协商确定用于数据解密的共享密钥。其中加密方式采用例如AES、或DES等的对称加密算法。共享密钥采用DH、或RSA、或ECC等非对称加密算法协商生成。具体的,对称加解密时,加解密前的数据长度和加解密后的数据长度必须一致,且支持原地加解密。在ESP32端的代码中,密钥协商等安全处理的流程,由用户来决定和开发。手机APP向ESP32发送协商数据(NegotiateData),NegotiateData类型的包将传送给应用层处理。如果应用层不愿意处理,可使用BLUFI提供的DH加密算法来磋商密钥。应用层需向BLUFI注册如下几个与安全相关的函数:1)函数1:typedefvoid(*esp_blufi_negotiate_data_handler_t)(uint8_t*data,intlen,uint8_t**output_data,int*output_len,bool*need_free);该函数1用来接收协商期间的normaldata,处理完成后,需要将待发送的数据使用output_data和output_len传出。BLUFI会在调用完negotiate_data_handler后,发送negotiate_data_handler传出的output_data。这里是两个“*”,因为不知道最后需要发出去的长度,所以需要函数自己malloc或者指向全局变量,通过need_free通知是否需要free内存。2)函数2:typedefint(*esp_blufi_encrypt_func_t)(uint8_tiv8,uint8_t*crypt_data,intcyprt_len);函数2表明加密和解密的数据长度必须一致。3)函数3:typedefint(*esp_blufi_decrypt_func_t)(uint8_tiv8,uint8_t*crypt_data,intcrypt_len);函数3表示加密和解密的数据长度必须一致。4)函数4:typedefuint16_t(*esp本文档来自技高网...
一种蓝牙网络及配网方法

【技术保护点】
一种蓝牙配网方法,其特征在于,该方法包含:蓝牙通信设备与移动终端通过蓝牙建立连接;蓝牙通信设备与移动终端协商得出数据加密方式以及用于数据解密的共享密钥;蓝牙通信设备连接外接的无线网络。

【技术特征摘要】
1.一种蓝牙配网方法,其特征在于,该方法包含:蓝牙通信设备与移动终端通过蓝牙建立连接;蓝牙通信设备与移动终端协商得出数据加密方式以及用于数据解密的共享密钥;蓝牙通信设备连接外接的无线网络。2.如权利要求1所述的蓝牙配网方法,其特征在于,所述蓝牙通信设备与移动终端建立连接的方法包含:蓝牙通信设备开启通用属性协议服务功能,发送带有预设广播数据的广播;移动终端搜索到蓝牙通信设备的广播,作为预设的通用属性协议客户端与蓝牙通信设备建立连接。3.如权利要求1所述的蓝牙配网方法,其特征在于,所述蓝牙通信设备与移动终端协商加解密的方法包含:移动终端向蓝牙通信设备发送“协商过程”的数据包;蓝牙通信设备收到“协商过程”的数据包后,按照预设的“协商过程”进行解析,得出移动终端向蓝牙通信设备发送数据的加密方式,并通过非对称加密方法生成对应的共享密钥。4.如权利要求1所述的蓝牙配网方法,其特征在于,所述蓝牙通信设备与外接的无线网络建立网络连接包含:移动终端将用于与外接的无线网络连接的连接信息进行加密后发送至蓝牙通信设备,并在连接信息发送完成后向蓝牙通信设备发送网络连接请求;蓝牙通信设备接收移动终端的数据通过共享密钥进行解密;当蓝牙通信设备...

【专利技术属性】
技术研发人员:田皓张瑞安徐翔君
申请(专利权)人:乐鑫信息科技上海有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1