本发明专利技术公开了一种自动切换BLE设备Mac地址的方法及BLE设备,涉及无线通讯技术领域,该方法包括:BLE设备与外部设备连接,并接收加密握手信息;对加密握手信息进行解密,得到分配序号;若分配序号与BLE设备的当前Mac地址的变化部相同,则进入配对流程;否则,按照分配序号修改BLE设备的Mac地址的变化部,并与外部设备断开复位,重新执行BLE设备与外部设备连接的步骤。在每次连接时,通过外部设备提供的分配序号改变BLE设备的Mac地址,基于Mac的不同,实现原有外部设备及新外部设备的自适应连接,而且BLE设备也无需删除已有配对信息,简化用户操作。操作。操作。
【技术实现步骤摘要】
一种自动切换BLE设备Mac地址的方法及BLE设备
[0001]本专利技术涉及无线通讯
,尤其是一种自动切换BLE设备Mac地址的方法及BLE设备。
技术介绍
[0002]BLE在连接时,安卓手机可以完整获取广播信息,其中可以获取BLE设备的Mac地址,但是iOS设备无法获取BLE设备的Mac地址,需要将Mac显示在广播里占用广播字段。
[0003]单连接BLE时,一般是固定Mac地址,在应用中,为了连接使用安全性,手机A与车辆BLE会进行配对连接,从而与手机A绑定,这些过程都是根据BLE的Mac地址全域来确认身份的。基于BLE HID的一些特性,手机A与车辆BLE绑定后,手机A会自动连接BLE,当BLE清除本地配对信息时,由于配对已经失效,手机A会根据Mac地址不断重复地主动连接和断开BLE,这导致BLE产生安全漏洞,连接性能也下降,尤其是iOS手机。这会使其他新手机B连接配对时产生不可避免的干扰,此时需要机主主动去清除手机A的BLE配对信息,给机主也带来一些不必要的麻烦。还有一个严重的问题是,如果手机B已经配对了BLE设备,之前的手机A将无法再正常连接BLE,必须要清除手机A的配对信息后重新配对,才能恢复连接,这样给用户操作手机A带来了巨大的困扰。
技术实现思路
[0004]本专利技术人针对上述问题及技术需求,提出了一种自动切换BLE设备Mac地址的方法及BLE设备,解决了当BLE端已经删除配对信息时,导致的手机不断重复地连接断开BLE设备,且无法恢复连接的问题。
[0005]本专利技术的技术方案如下:
[0006]第一方面,本申请提供了一种自动切换BLE设备Mac地址的方法,包括如下步骤:
[0007]BLE设备与外部设备连接,并接收加密握手信息;
[0008]对加密握手信息进行解密,得到分配序号;
[0009]若分配序号与BLE设备的当前Mac地址的变化部相同,则进入配对流程;否则,按照分配序号修改BLE设备的Mac地址的变化部,并与外部设备断开复位,重新执行BLE设备与外部设备连接的步骤。
[0010]其进一步的技术方案为,对加密握手信息进行解密,包括:
[0011]将加密握手信息的每位字符按照移位循环数组中对应字符表示的系数,进行与数组加密时的反循环移位,得到一组中间解密数组;
[0012]将中间解密数组的每位字符与随机数组的每位字符按位进行异或计算,得到外部设备提供的明文数组,明文数组中包含外部设备给定的分配序号;
[0013]根据明文数组确定BLE设备与外部设备的握手状态。
[0014]其进一步的技术方案为,对加密握手信息进行解密,还得到配对使能指令,则配对流程包括:
[0015]若配对使能指令为要求配对,则BLE设备与外部设备进行配对操作,并进入查询本地信息流程;
[0016]若配对使能指令为不要求配对,则BLE设备与外部设备直接连接并保持连接状态。
[0017]其进一步的技术方案为,随机数组是根据BLE UUID为0xFFF1的特征中随机读取16个Byte组成的;移位循环数组是将随机数组的每位字符除以8取得的余数按位排列组成的。
[0018]其进一步的技术方案为,根据明文数组确定BLE设备与外部设备的握手状态,包括:
[0019]明文数组中还包含外部设备给定的固定值作为校验组,若读取的校验组的数值与给定的固定值一致,表示BLE设备与外部设备握手成功,则BLE设备向外发送握手成功标志;若读取不一致或读取超时,表示BLE设备与外部设备握手失败,则BLE设备向外发送握手失败标志;
[0020]其中,BLE设备发送标志时使用BLE UUID为0xFFF2的特征。
[0021]其进一步的技术方案为,明文数组分为信息数组和校验组,信息数组由12位组成,其中:第一和第二位用于存储外部设备的账号信息,第三位用于存储外部设备的系统类型,第四位用于存储外部设备的应用类型,第五位用于存储外部设备给定的配对使能指令,第六位用于存储外部设备给定的分配序号,第七至第十二位用于存储外部设备的Mac地址;校验组由4位组成,第十三位至第十六位分别用于存储外部设备给定的固定值。
[0022]其进一步的技术方案为,对加密握手信息进行解密,还得到外部设备Mac地址,则查询本地信息流程包括:
[0023]若BLE设备查询到本地存储有外部设备Mac地址,则BLE设备与外部设备直接进入保持连接状态;
[0024]若BLE设备查询到本地未存储外部设备Mac地址,则保存外部设备Mac地址于本地,BLE设备与外部设备进入保持连接状态。
[0025]其进一步的技术方案为,该方法还包括:
[0026]若BLE设备与外部设备自动连接,表示两者已经执行过配对流程,且BLE设备的Mac地址未发生改变,则BLE设备接收加密握手信息并保持连接状态;
[0027]若BLE设备与外部设备无法自动连接,表示BLE设备的Mac地址已发生改变,则执行BLE设备与外部设备连接的步骤。
[0028]第二方面,本申请还提供了一种BLE设备,包括存储器和处理器,存储器存储有计算机程序,BLE设备与外部设备连接交互时,处理器执行计算机程序时实现第一方面提供的方法的步骤。
[0029]其进一步的技术方案为,BLE设备的Mac地址包括固定部和变化部,固定部占用Mac地址的后四个字节,作为BLE设备名称,起到标识作用;变化部占用Mac地址的前两个字节,其中第一个字节表示BLE设备类型,第二个字节为外部设备提供的分配序号。
[0030]本专利技术的有益技术效果是:
[0031]本申请将BLE设备的Mac地址分为固定部和变化部两段,通过固定部确定BLE设备名称,使外部设备在搜索BLE设备时只要按固定名称搜索,就可以找到相应的BLE设备;而在每次连接过程中,通过解密握手信息得到的相应分配序号改变BLE设备的Mac地址,即将该序号作为Mac的变化部地址保存,使BLE设备成为一个新设备,与之前配对过的外部设备没
有任何关系,也不会对当前配对的外部设备有任何影响,直到与另一个外部设备连接为止,如果需要再连接以前配对过的外部设备,可以把变化部分的Mac恢复到相应外部设备分配的序号即可。通过本申请提供的自动切换Mac地址的方法,不需要用户去删除外部设备里保存的BLE设备的配对信息,因为BLE设备的Mac地址已经改变,根据原配对的Mac去搜索连接是无法找到的、更不会连接,也无需清除BLE端的配对信息,简化了双端的配对连接操作,使得连接更加稳定、安全。
附图说明
[0032]图1是本申请提供的自动切换BLE设备Mac地址的方法流程图。
[0033]图2是本申请提供的明文数组表达形式,其中:(a)为整体表达形式,(b)信息数组表达形式,(c)为校验组表达形式。
[0034]图3是本申请提供的多个外部设备与BLE设备绑定连接的示意图。
具体实施方式
[0035]本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种自动切换BLE设备Mac地址的方法,其特征在于,所述方法包括:BLE设备与外部设备连接,并接收加密握手信息;对所述加密握手信息进行解密,得到分配序号;若所述分配序号与BLE设备的当前Mac地址的变化部相同,则进入配对流程;否则,按照所述分配序号修改BLE设备的Mac地址的变化部,并与外部设备断开复位,重新执行所述BLE设备与外部设备连接的步骤。2.根据权利要求1所述的自动切换BLE设备Mac地址的方法,其特征在于,所述对所述加密握手信息进行解密,包括:将所述加密握手信息的每位字符按照移位循环数组中对应字符表示的系数,进行与数组加密时的反循环移位,得到一组中间解密数组;将所述中间解密数组的每位字符与随机数组的每位字符按位进行异或计算,得到外部设备提供的明文数组,所述明文数组中包含外部设备给定的分配序号;根据所述明文数组确定BLE设备与外部设备的握手状态。3.根据权利要求1所述的自动切换BLE设备Mac地址的方法,其特征在于,对所述加密握手信息进行解密,还得到配对使能指令,则所述配对流程包括:若配对使能指令为要求配对,则BLE设备与外部设备进行配对操作,并进入查询本地信息流程;若配对使能指令为不要求配对,则BLE设备与外部设备直接连接并保持连接状态。4.根据权利要求2所述的自动切换BLE设备Mac地址的方法,其特征在于,所述随机数组是根据BLE UUID为0xFFF1的特征中随机读取16个Byte组成的;所述移位循环数组是将所述随机数组的每位字符除以8取得的余数按位排列组成的。5.根据权利要求2所述的自动切换BLE设备Mac地址的方法,其特征在于,所述根据所述明文数组确定BLE设备与外部设备的握手状态,包括:所述明文数组中还包含外部设备给定的固定值作为校验组,若读取的校验组的数值与所述给定的固定值一致,表示BLE设备与外部设备握手成功,则所述BLE设备向外发送握手成功标志;若读取不一致或读取超时,表示BLE设备与外部设备握手失败,则所述BLE设备向外发送握手失败标志;其中,BLE设...
【专利技术属性】
技术研发人员:曾勇,沈长海,祝勤飞,马先康,
申请(专利权)人:雅迪科技集团有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。