蓝牙安全通信系统的制作方法

文档序号:25957026发布日期:2021-07-20 17:16阅读:92来源:国知局
蓝牙安全通信系统的制作方法

本申请涉及通信领域,具体涉及蓝牙通信领域,尤其涉及蓝牙安全通信领域。



背景技术:

蓝牙通信作为一种小范围无线连接技术,能在设备间实现方便快捷、低成本、低功耗、灵活的数据通信和语音通信,具有广泛的应用。

但在蓝牙通信的过程中,如果不采用安全机制,存在很大的安全漏洞。但现有的安全机制比较复杂。



技术实现要素:

本申请的目的在于提出一种改进的蓝牙安全通信系统,来解决以上背景技术部分提到的技术问题。

本申请提供了一种蓝牙安全通信系统,所述系统包括:第一蓝牙装置、第二蓝牙装置,其中,所述第一蓝牙装置与所述第二蓝牙装置建立蓝牙连接;所述第二蓝牙装置以上述建立蓝牙连接时的时间戳为随机种子,生成一个随机值作为密钥;所述第一蓝牙装置发送获取密钥报文;所述第二蓝牙装置接收所述获取密钥报文后,将所述密钥上报给所述第一蓝牙装置;所述第一蓝牙装置接收所述第二蓝牙装置发送的所述密钥,然后,向所述第二蓝牙装置发送获取唯一标识报文,其中,所述获取唯一标识报文中包含所述密钥;所述第二蓝牙装置接收所述获取唯一标识报文,提取所述密钥,如果所述密钥正确,向所述第一蓝牙装置发送唯一标识答复报文,其中,所述唯一标识答复报文中包含所述密钥;所述第一蓝牙装置接收所述唯一标识答复报文,提取所述密钥,如果所述密钥正确,根据所述唯一标识生成校验码,然后向所述第二蓝牙装置下发校验码报文,其中,所述校验码报文包含所述密钥;所述第二蓝牙装置接收所述校验码报文,提取所述密钥,如果所述密钥正确,提取所述校验码报文中的校验码,并将所述校验码与本地计算的校验码做比对,判断是否一致,如果一致,则表示所述第一蓝牙装置登录成功。

在一些实施例中,所述第一蓝牙装置与所述第二蓝牙装置建立蓝牙连接,包括:所述第二蓝牙装置发送蓝牙广播信息;所述第一蓝牙装置发起蓝牙扫描,接收所述第二蓝牙装置的所述蓝牙广播信息,向所述第二蓝牙装置发送连接请求;所述第二蓝牙装置接收所述连接请求,与第一蓝牙装置建立蓝牙连接。

在一些实施例中,所述系统还包括:所述第二蓝牙装置发送蓝牙广播信息后,开启第一定时器,所述第一定时器的时间间隔为1毫秒,所述第一定时器的初始值为0,每隔1毫秒,所述第一定时器的值加1,将所述第一定时器的值作为时间戳。

在一些实施例中,所述系统还包括:所述第二蓝牙装置与所述第一蓝牙装置建立蓝牙连接后,开启第二定时器,设置等待时长,一旦超过所述等待时长,所述第一蓝牙装置仍未成功登录所述第二蓝牙装置,则强制断开与所述第一蓝牙装置的蓝牙连接。

在一些实施例中,所述系统还包括:如果所述第二蓝牙装置提取的所述校验码与本地计算的校验码不一致,则表示登录异常,强制断开与所述第一蓝牙装置的蓝牙连接。

在一些实施例中,所述第一蓝牙装置接收所述唯一标识答复报文,提取所述密钥,如果所述密钥正确,根据所述唯一标识生成校验码,包括:所述第一蓝牙装置接收所述唯一标识答复报文,提取所述密钥,如果密钥正确,则提取所述唯一标识,对所述唯一标识进行奇偶校验,生成奇偶校验码。

在一些实施例中,所述系统还包括:登录成功后,所述第一蓝牙装置与所述第二蓝牙装置通过互相发送和/或接收包含所述密钥的报文进行通信,所述第一蓝牙装置、第二蓝牙装置接收报文后,先判断所述密钥是否正确,如果所述密钥不正确,则丢弃该报文,如果所述密钥正确,则处理该报文。

在一些实施例中,所述第一蓝牙装置包括但不限于:智能手机、智能平板、遥控手柄。

在一些实施例中,所述第二蓝牙装置包括但不限于:机器人、汽车模型、飞机模型。

在一些实施例中,所述第二蓝牙装置包括但不限于:各种集成蓝牙模块的传感器、集成蓝牙模块的电机。

在一些实施例中,所述唯一标识包括但不限于如下一种:产品序列号、mac地址。

本申请提供的蓝牙安全通信系统,第一蓝牙装置、第二蓝牙装置先建立蓝牙连接;第二蓝牙装置以上述建立蓝牙连接时的时间戳为随机种子,生成随机值作为密钥;第二蓝牙装置接收第一蓝牙装置发送的获取密钥报文后,返回密钥;第一蓝牙装置发送包含密钥的获取唯一标识报文;第二蓝牙装置接收报文,提取密钥,如果密钥正确,上报包含密钥的标识答复报文;第一蓝牙装置接收报文,提取密钥,如果密钥正确,根据唯一标识生成校验码,然后下发包含密钥的校验码报文;第二蓝牙装置接收报文,提取密钥,如果密钥正确,提取校验码与本地计算的校验码做比对,如果一致,表示第一蓝牙装置登录成功。该技术方案简单易实现,且具有很好的安全性。第一,以上述建立蓝牙连接时的时间戳为随机种子,生成随机值作为密钥,该密钥是真随机数,每次蓝牙连接时,生成的密钥都是唯一且不同的,几乎无法复制。该密钥会应用于接下来第一蓝牙装置与第二蓝牙装置间的交互。提高了恶意抓取数据的难度,保证了通信的安全性。第二,第一蓝牙装置获取第二蓝牙装置的唯一标识,生成校验码,将该校验码作为登录第二蓝牙装置的密码,用于身份认证,叠加密钥,有效防止恶意连接,窃取数据等攻击行为。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请蓝牙安全通信系统的一个实施例的流程示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了本申请蓝牙安全通信系统的一个实施例的流程示意图。如图1所示,在第一蓝牙装置与第二蓝牙装置之间建立安全机制进行蓝牙通信。具体的包括如下步骤:

步骤101,第一蓝牙装置与第二蓝牙装置建立蓝牙连接。

在本实施例中,第一蓝牙装置包括但不限于:智能手机、智能平板、遥控手柄等具有蓝牙功能的装置。

在本实施例中,第二蓝牙装置包括但不限于:机器人、汽车模型、飞机模型等具有蓝牙功能的装置。在本实施例的其它可选的实现方式中,第二蓝牙装置为具有蓝牙功能的电子件,包括但不限于:各种集成蓝牙模块的传感器、集成蓝牙模块的电机。

在本实施例中,第二蓝牙装置连续不断或间隔性的向外发送蓝牙广播信息;第一蓝牙装置发起蓝牙扫描或监听广播信息,接收第二蓝牙装置的蓝牙广播信息,如果蓝牙广播信息满足预设条件,例如,蓝牙广播信息中的设备标识满足预设规则,则第一蓝牙装置自动向第二装置发送连接请求,第二蓝牙装置接收连接请求后,与第一蓝牙装置建立蓝牙连接。此处建立的蓝牙连接是物理层上的连接,支持第一蓝牙装置与第二蓝牙装置收、发报文,进行通信。

在本实施例的其它可选的实现方式中,第一蓝牙装置显示所有扫描的蓝牙装置,响应于用户选择第二蓝牙装置,向第二蓝牙装置发送连接请求,第二蓝牙装置接收连接请求,与第一蓝牙装置建立蓝牙连接。

步骤102,第二蓝牙装置以上述建立蓝牙连接时的时间戳为随机种子,生成一个随机值作为密钥。

在本实施例中,第二蓝牙装置发送蓝牙广播信息后,开启第一定时器,第一定时器的时间间隔为1毫秒,第一定时器的初始值为0,每隔1毫秒,第一定时器的值加1,将第一定时器的值作为时间戳。该第一定时器包括但不限于:硬件定时器、软件定时器。在本实施例的其它可选的实现方式中,第一定时器在第二蓝牙装置开机后,即开始计时。

在本实施例中,第二蓝牙装置以上述建立蓝牙连接时的时间戳为随机种子,生成一个随机值作为密钥,并将该密钥保存于本地。该密钥是真随机值,每次蓝牙连接的密钥都是不同的,几乎无法复制,保证蓝牙连接的安全性。

在其它实施例中,时间戳是指格林威治时间自1970年1月1日至当前时间的总秒数。

步骤103,第一蓝牙装置发送获取密钥报文。

在本实施例中,第一蓝牙装置通过上述建立的蓝牙连接向第二蓝牙装置发送获取密钥报文。

步骤104,第二蓝牙装置接收上述获取密钥报文后,将密钥上报给第一蓝牙装置。

在本实施例中,第二蓝牙装置接收第一蓝牙装置发送的获取密钥报文后,将生成的密钥发送给第一蓝牙装置。

步骤105,第一蓝牙装置接收第二蓝牙装置发送的上述密钥,然后,向第二蓝牙装置发送获取唯一标识报文。

在本实施例中,第一蓝牙装置接收第二蓝牙装置发送的上述密钥后,将该密钥保存在本地,为提高安全性,在接下来向第二蓝牙装置发送报文时,都携带该密钥。根据第一蓝牙装置与第二蓝牙装置之间的约定,可将该密钥放置于报文的特定字节,例如,最后一个字节、第一个字节、第五个字节等。使用密钥能很好的防范网络安全中的冒充等攻击。

在本实施例中,第一蓝牙装置向第二蓝牙装置发送获取唯一标识报文,其中,该报文包含上述密钥。

步骤106,第二蓝牙装置接收获取唯一标识报文,提取密钥,如果上述密钥正确,向第一蓝牙装置发送唯一标识答复报文。

在本实施例中,第二蓝牙装置接收获取唯一标识报文后,首先,提取报文中的密钥,将提取的密钥与本地保存的密钥进行比对,如果密钥相同,则表示密钥正确,向第一蓝牙装置发送唯一标识答复报文。其中,该唯一标识答复报文包含密钥。如果通过比对发现,提取的密钥与本地保存的密钥不相同,则默认该获取唯一标识报文不是第一蓝牙装置发送的,可能存在恶意攻击,为安全起见,会丢弃该报文,不进行后续处理。继续等待接收报文。

在本实施例中,所述唯一标识包括但不限于如下一种:第二蓝牙装置的产品序列号、mac地址等。

步骤107,第一蓝牙装置接收上述唯一标识答复报文,提取密钥,如果上述密钥正确,根据上述唯一标识生成校验码,然后向第二蓝牙装置下发校验码报文。

在本实施例中,第一蓝牙装置接收唯一标识答复报文后,首先,提取报文中的密钥,将提取的密钥与本地保存的密钥进行比对,如果密钥相同,则表示密钥正确,默认该唯一标识答复报文是上述第二蓝牙装置发送的,而不是恶意第三方发送的报文。然后,提取唯一标识答复报文中的唯一标识。如果密钥不相同,则丢弃该报文。继续等待接收报文。

在本实施例中,第一蓝牙装置根据上述唯一标识生成校验码,然后向第二蓝牙装置下发校验码报文。在本实施例中,该校验码为根据唯一标识生成的奇偶校验码。在本实施例的其它可选的实现方式中,校验码包括但不限如下一种:海明校验码、crc校验码。

步骤108,第二蓝牙装置接收校验码报文,提取密钥,如果密钥正确,提取校验码报文中的校验码,并将校验码与本地计算的校验码做比对,判断是否一致,如果一致,则表示第一蓝牙装置登录成功。

在本实施例中,第二蓝牙装置向第一蓝牙装置发送唯一标识答复报文后,会根据预先约定的与第一蓝牙装置相同的生成校验码的校验方法,利用本地存储的唯一标识,生成校验码,例如,都生成奇偶检验码作为校验码。当第二蓝牙装置接收到校验码报文后,先提取校验码报文中的密钥,与本地存储的密钥进行比对,如果相同,则表示密钥正确。之后,再提取校验码报文中的校验码,与本地计算生成的校验码进行比对,如果校验码一致,则默认该校验报文来自合法的第一蓝牙装置,即第一蓝牙装置采用合法且正确的校验码作为登陆密码,成功登录了第二蓝牙装置。第一蓝牙装置与第二蓝牙装置建立了安全、互信的蓝牙连接。作为恶意攻击的第三方,即时其正确获取第二蓝牙装置的唯一标识,也不知还需要根据该唯一标识生成校验码,更不知该采用哪种校验方法生成哪种校验码。有效防止第三方恶意连接窃取数据。

在本实施例的其它可选的实现方式中,第二蓝牙装置在接收到校验码报文后,在判断密钥正确后,根据与第一蓝牙装置约定的相同的校验方法,利用本地存储的唯一标识,计算校验码。再将校验码报文中提取的校验码与本地校验码进行比较。

在本实施例中,如果第二蓝牙装置接收到校验码报文后,发现密钥不正确或校验码不一致,则默认登录异常,强制断开与第一蓝牙装置在所有层级的连接,包括物理层、应用层等层上的连接。

在本实施例的其它可选的实现方式中,如果第二蓝牙装置接收到校验码报文后,发现密钥不正确或校验码不一致,则放弃该校验码报文,继续等待接收。则等待预设时长,超出预设等待时长后,还没有接收到密钥、校验码都一致的校验码报文,则强制断开与第一蓝牙装置间的蓝牙连接。

在本实施例中,第一蓝牙装置、第二蓝牙装置先建立蓝牙连接,之后,第二蓝牙装置生成随机值作为密钥,用于后续第一蓝牙装置与第二蓝牙装置通信,因是采用建立蓝牙连接瞬间的时间戳为种子,产生随机值作为密钥,保证每次蓝牙连接的密钥都是真随机且唯一,该密钥几乎无法复制,保证蓝牙连接的安全。然后,第一蓝牙装置获取第二蓝牙装置的唯一标识,第一蓝牙装置、第二蓝牙装置采用预先约定的相同的校验方法生成校验码,第二蓝牙装置将接收的校验码与本地计算的校验码进行对比,校验码一致,则表示发送该校验码的第一蓝牙装置是合法的,登录成功。这样,可以排除非法第三方,毕竟第三方不知道密钥、唯一标识,即时非法截获密钥和唯一标识,因不知约定的校验方法,也生成不了正确的校验码。所以采用唯一标识的校验码作为登陆密码,进行登录,可有效防止第三方恶意连接窃取数据。通过上述各个流程步骤,第一蓝牙装置、第二蓝牙装置间建立安全、互信的蓝牙连接。保证了后续通信的安全性。

在其它实施例中,为防止上述步骤101-步骤108各个步骤加起来所用时间过长,却没有登录成功,但却占用蓝牙连接,影响其它蓝牙装置登录。会设置一个阈值时间,在该阈值时间内没有登录成功,则第二蓝牙装置会强制断开与第一蓝牙装置间的蓝牙连接。具体的:第二蓝牙装置与上述第一蓝牙装置建立蓝牙连接后,开启第二定时器,设置等待时长,一旦超过上述等待时长,第一蓝牙装置仍未成功登录第二蓝牙装置,则强制断开与第一蓝牙装置的蓝牙连接。上述等待时长即为阈值时间。如果在上述等待时长内,第一蓝牙装置成功登录第二蓝牙装置,则不做处理,继续保持该蓝牙连接,便于第一蓝牙装置与第二蓝牙装置之间互发信息,进行通信。上述等待时长包括但不限于:10s、15s等。可通过第二定时器设置等待时长。

第一蓝牙装置成功登录第二蓝牙装置后,第一蓝牙装置与第二蓝牙装置通过互相发送和/或接收包含上述密钥的报文进行通信,第一蓝牙装置、第二蓝牙装置接收报文后,都先判断密钥是否正确,如果密钥不正确,则丢弃该报文,如果密钥正确,则处理该报文。作为示例一:第一蓝牙装置下发指令报文,其中,指令报文包含上述密钥;第二蓝牙装置接收指令报文,提取密钥,如果密钥正确,则执行上述报文指令中的指令。如果密钥不正确,则丢弃该报文。作为示例二:第二蓝牙装置上报参数报文,其中,上述参数报文包含密钥;上述第一蓝牙装置接收参数报文,提取密钥,如果密钥正确,则处理上述参数报文中的参数,如果密钥不正确,则丢弃该报文。参数包括但不限于如下一种或多种:电机当前转速、各传感器采集的参数,例如,温度传感器、红外传感器、颜色传感器分别采集的温度、红外信号、识别的颜色等。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。及省略部分技术特征而形成的技术方案。例如,省略步骤103,第二蓝牙装置生成密钥后,不需要第一蓝牙装置发送获取密钥报文,而是直接将密钥发送给第一蓝牙装置,可以节省交互流程,但存在一定的安全隐患。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1