本发明涉及蓝牙通讯技术领域,特别涉及一种快速管理蓝牙设备白名单的方法和系统。
背景技术:
蓝牙技术是一种重要的无线通讯技术,通常两个蓝牙设备需要通过配对输入相同的PIN码(personal identification number,个人标识号码)之后才能建立连接。
蓝牙白名单是蓝牙协议中最简单、最直白的一种安全机制,蓝牙白名单中的用户会优先通过,不会被拒绝连接,安全性和快捷性大大提高。所谓的蓝牙白名单,就是一组蓝牙地址,通过白名单,可以只允许特定的蓝牙设备扫描或连接,也可以扫描或连接特定的蓝牙设备。
由于现有的蓝牙白名单技术是通过用户或者管理员提前手动设置,当白名单需要变更时再进行手动修改。当需要频繁手动修改维护白名单时,效率就会变低。而且,随着时间的推移需要经常相互连接的蓝牙设备会发生很大的变化,白名单的数据就会发生很大的偏差。
技术实现要素:
本发明的第一目的在于克服现有技术的缺点与不足,提供一种快速管理蓝牙设备白名单的方法,该方法能够自动对蓝牙设备的白名单进行高效率的创建和更新,克服了现有技术中采用手动修改蓝牙设备白名单而导致效率低的技术问题。
本发明的第二目的在于提供一种用于实现上述方法的快速管理蓝牙设备白名单的系统。
本发明的第一目的通过下述技术方案实现:一种快速管理蓝牙设备白名单的方法,步骤如下:
S1、主动发起连接的目标蓝牙设备与和其连接的蓝牙设备进行组网,形成一个网络;
S2、当有新的蓝牙设备与目标蓝牙设备连接加入目标蓝牙设备所属网络后,新的蓝牙设备访问目标蓝牙设备数据库,目标蓝牙设备数据库接收到访问时,更新其数据库,通过目标蓝牙设备数据库存储新的蓝牙设备的MAC地址(物理地址),并且记入新的蓝牙设备与目标蓝牙设备的连接次数状态;
S3、目标蓝牙设备数据库获取网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数,然后根据获取到的其他各蓝牙设备与目标蓝牙设备的最新连接次数,对当前存储的其他各蓝牙设备与目标蓝牙设备的连接次数状态进行更新;
S4、目标蓝牙设备每完成一次连接,进行以下操作一次:
判断目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数是否超过预先设置的白名单中名单的个数n;
若是,则将目标蓝牙设备数据库中存储的连接次数从高到低排名前n的对应蓝牙设备MAC地址选取出来,然后将上述选取出来的蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中;
若否,则将目标蓝牙设备数据库中存储的所有蓝牙设备MAC地址均选取出来,并且将这些蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中。
优选的,预先设置的白名单中名单的个数n为1~255。
优选的,所述步骤S3中目标蓝牙设备数据库获取网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数的具体过程如下:
S31、网络内各个与目标蓝牙设备连接的其他蓝牙设备在自身的连接次数状态更新后,向目标蓝牙设备数据库发送最新的连接次数;
S32、目标蓝牙设备接收到网络内其他各蓝牙设备发送的最新连接次数后,更新自身的数据库,将网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数存储在自身的数据库中。
优选的,当目标蓝牙设备要向新的蓝牙设备发起连接请求时,目标蓝牙设备根据其新的蓝牙设备的PIN码与新的蓝牙设备进行配对,配对成功后即实现目标蓝牙设备和新的蓝牙设备的连接;
步骤S2中目标蓝牙设备数据库接收到新的蓝牙设备的访问时,更新其数据库时,通过目标蓝牙设备数据库存储新的蓝牙设备的名称。
优选的,当目标蓝牙设备数据库中存储的内容达到存储上限时,若目标蓝牙设备要连接新的蓝牙设备,则此时目标蓝牙设备清理数据库,删除与目标蓝牙设备的连接次数最少的蓝牙设备的MAC地址以及该蓝牙设备与目标蓝牙设备的连接状态。
优选的,网络内与目标蓝牙设备连接的其他蓝牙设备自带数据库。
优选的,所述目标蓝牙设备为智能手机、笔记本电脑、个人计算机、移动互联网设备或智能穿戴设备;所述与目标蓝牙设备连接的其他蓝牙设备为智能手机、笔记本电脑、个人计算机、移动互联网设备和智能穿戴设备中的一种或几种。
本发明的第二目的通过下述技术方案实现:一种用于实现上述方法的快速管理蓝牙设备白名单的系统,包括
组网单元,用于将主动发起连接的目标蓝牙设备与和其连接的蓝牙设备进行组网,形成一个网络;
新的蓝牙设备信息记录单元,用于在新的蓝牙设备与目标蓝牙设备连接加入目标蓝牙设备所属网络后,通过网络记录新的蓝牙设备的MAC地址,并且传送至目标蓝牙设备数据库;
最新连接次数记录单元,用于记录网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数,并且发送至目标蓝牙设备数据库;
连接次数状态更新单元,用于根据其他各蓝牙设备与目标蓝牙设备的最新连接次数,对目标蓝牙设备数据库中当前存储的其他各蓝牙设备与目标蓝牙设备的连接次数状态进行更新;
目标蓝牙设备数据库,用于存储网络内与目标蓝牙设备连接的其他蓝牙设备的MAC地址以及目标蓝牙设备与其他蓝牙设备的连接次数状态;
判断单元,用于在目标蓝牙设备每完成一次连接,判断目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数是否超过预先设置的白名单中名单的个数n;
白名单形成及更新单元,用于在目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数超过预先设置的白名单中名单的个数n时,将目标蓝牙设备数据库中存储的连接次数从高到低排名前n的对应蓝牙设备MAC地址选取出来,然后将上述选取出来的蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中;用于在目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数未超过预先设置的白名单中名单的个数n时,将目标蓝牙设备数据库中存储的所有蓝牙设备MAC地址均选取出来,并且将这些蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中。。
优选的,预先设置的白名单中名单的个数n为1~255。
优选的,还包括清理单元,用于在目标蓝牙设备数据库中存储的内容达到存储上限时,若目标蓝牙设备要连接新的蓝牙设备,则此时清理目标蓝牙设备数据库,删除与目标蓝牙设备的连接次数最少的蓝牙设备的MAC地址以及该蓝牙设备与目标蓝牙设备的连接状态。
本发明相对于现有技术具有如下的优点及效果:
(1)本发明中首先将主动发起连接的目标蓝牙设备与和其连接的蓝牙设备进行组网形成一个网络;目标蓝牙设备数据库实时的获取网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数,并且根据最新连接次数对当前存储的其他各蓝牙设备与目标蓝牙设备的连接次数状态进行更新;目标蓝牙设备每完成一次连接,判断目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数是否超过预先设置的白名单中名单的个数n;若是,则将目标蓝牙设备数据库中存储的连接次数从高到低排名前n的对应蓝牙设备MAC地址选取出来,然后将上述选取出来的蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中;若否,则将目标蓝牙设备数据库中存储的所有蓝牙设备MAC地址均选取出来,并且将这些蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中。可见,本发明方法能够自动实现对蓝牙设备白名单进行高效率的创建和更新,无需人为干涉,克服了现有技术中采用手动修改蓝牙设备白名单而导致效率低的技术问题,大大提高了用户的体验。
(2)本发明方法中当目标蓝牙设备数据库中存储的内容达到存储上限时,若目标蓝牙设备要连接新的蓝牙设备,则此时目标蓝牙设备清理数据库,删除与目标蓝牙设备的连接次数最少的蓝牙设备的MAC地址以及该蓝牙设备与目标蓝牙设备的连接状态。本发明方法上述操作方式可以使得蓝牙设备的白名单更加符合用户的需求。
附图说明
图1是本发明方法流程图。
图2是本发明方法中目标蓝牙设备与和其连接的蓝牙设备组网示意图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例
本实施例公开了一种快速管理蓝牙设备白名单的方法,步骤如下:
S1、主动发起连接的目标蓝牙设备与和其连接的蓝牙设备进行组网,形成一个网络,如图2中所示,其中目标蓝牙设备主动发起连接,蓝牙设备1至蓝牙设备N与目标蓝牙设备连接后组成一个网络。
S2、当有新的蓝牙设备与目标蓝牙设备连接加入目标蓝牙设备所属网络后,新的蓝牙设备访问目标蓝牙设备数据库,目标蓝牙设备数据库接收到访问时,更新其数据库,通过目标蓝牙设备数据库中存储下新的蓝牙设备的MAC地址、名称及记入新的蓝牙设备与目标蓝牙设备的连接次数状态;蓝牙设备的名称可为用户自行设置的名称。
其中本步骤中当目标蓝牙设备要向新的蓝牙设备发起连接请求时,目标蓝牙设备根据新的蓝牙设备的PIN码与新的蓝牙设备进行配对,配对成功后即实现目标蓝牙设备和新的蓝牙设备的连接。
S3、目标蓝牙设备数据库获取网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数,然后根据获取到的其他各蓝牙设备与目标蓝牙设备的最新连接次数,对当前存储的其他各蓝牙设备与目标蓝牙设备的连接次数状态进行更新;
本步骤中目标蓝牙设备数据库获取网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数的具体过程如下:
S31、网络内各个与目标蓝牙设备连接的其他蓝牙设备在自身的连接次数状态更新后,向目标蓝牙设备数据库发送最新的连接次数;
S32、目标蓝牙设备接收到网络内其他各蓝牙设备发送的最新连接次数后,更新自身的数据库,将网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数存储在自身的数据库中。
S4、目标蓝牙设备每完成一次连接,进行以下操作一次:
判断目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数是否超过预先设置的白名单中名单的个数n;
若是,则将目标蓝牙设备数据库中存储的连接次数从高到低排名前n的对应蓝牙设备MAC地址选取出来,然后将上述选取出来的蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中;
若否,则将目标蓝牙设备数据库中存储的所有蓝牙设备MAC地址均选取出来,并且将这些蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中。
本实施例中预先设置的白名单中名单的个数n为1~255,根据实际需要进行选取。
在本实施例中当目标蓝牙设备数据库中存储的内容达到存储上限时,若目标蓝牙设备要连接新的蓝牙设备,则此时目标蓝牙设备清理数据库,删除与目标蓝牙设备的连接次数最少的蓝牙设备的MAC地址、名称以及该蓝牙设备与目标蓝牙设备的连接状态。
本实施例中网络内与目标蓝牙设备连接的其他蓝牙设备均自带数据库。
本实施例中目标蓝牙设备为智能手机、笔记本电脑、个人计算机、移动互联网设备、或智能穿戴设备;所述与目标蓝牙设备连接的其他蓝牙设备为智能手机、笔记本电脑、个人计算机、移动互联网设备和智能穿戴设备中的一种或几种。
本实施例还公开了一种用于实现上述方法的快速管理蓝牙设备白名单的系统,包括
组网单元,用于将主动发起连接的目标蓝牙设备与和其连接的蓝牙设备进行组网,形成一个网络;
新的蓝牙设备信息记录单元,用于在新的蓝牙设备与目标蓝牙设备连接加入目标蓝牙设备所属网络后,通过网络记录新的蓝牙设备的MAC地址及相关信息,并且传送至目标蓝牙设备数据库;蓝牙设备的相关信息包括蓝牙设备的名称,该名称可以由用户自己设定。最新连接次数记录单元,用于记录网络内其他各蓝牙设备与目标蓝牙设备的最新连接次数,并且发送至目标蓝牙设备数据库;
连接次数状态更新单元,用于根据其他各蓝牙设备与目标蓝牙设备的最新连接次数,对目标蓝牙设备数据库中当前存储的其他各蓝牙设备与目标蓝牙设备的连接次数状态进行更新;
目标蓝牙设备数据库,用于存储网络内与目标蓝牙设备连接的其他蓝牙设备的的MAC地址和相关信息以及目标蓝牙设备与其他蓝牙设备的连接次数状态;
判断单元,用于在目标蓝牙设备每完成一次连接,判断目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数是否超过预先设置的白名单中名单的个数n;
白名单形成及更新单元,用于在目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数超过预先设置的白名单中名单的个数n时,将目标蓝牙设备数据库中存储的连接次数从高到低排名前n的对应蓝牙设备MAC地址选取出来,然后将上述选取出来的蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中;用于在目标蓝牙设备数据库中存储的蓝牙设备的MAC地址个数未超过预先设置的白名单中名单的个数n时,将目标蓝牙设备数据库中存储的所有蓝牙设备MAC地址均选取出来,并且将这些蓝牙设备的MAC地址添加到目标蓝牙设备的白名单中。
清理单元,用于在目标蓝牙设备数据库中存储的内容达到存储上限时,若目标蓝牙设备要连接新的蓝牙设备,则此时清理目标蓝牙设备数据库,删除与目标蓝牙设备的连接次数最少的蓝牙设备的MAC地址以及该蓝牙设备与目标蓝牙设备的连接状态。
本实施例中预先设置的白名单中名单的个数n为1~255。
本实施例上述系统中,蓝牙设备的相关信息包括新的蓝牙设备的MAC地址和名称。
本实施例中目标蓝牙设备为智能手机、笔记本电脑、个人计算机、移动互联网设备或智能穿戴设备;所述与目标蓝牙设备连接的其他蓝牙设备为智能手机、笔记本电脑、个人计算机、移动互联网设备和智能穿戴设备中的一种或几种。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。