CN117318921A - 通信方法、系统及相关装置 - Google Patents
通信方法、系统及相关装置 Download PDFInfo
- Publication number
- CN117318921A CN117318921A CN202210709775.0A CN202210709775A CN117318921A CN 117318921 A CN117318921 A CN 117318921A CN 202210709775 A CN202210709775 A CN 202210709775A CN 117318921 A CN117318921 A CN 117318921A
- Authority
- CN
- China
- Prior art keywords
- electronic device
- bluetooth
- bluetooth broadcast
- broadcast
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3297—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving time stamps, e.g. generation of time stamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请提供通信方法、系统及相关装置。在第一设备与第二设备协商确定第一秘钥、同步时间戳之后,第一设备可以依据第一秘钥、当前的时间戳以及第一设备的标识生成第一设备当前的过滤规则,并向空间中发送携带有第一设备当前的过滤规则的蓝牙广播。之后,第二设备可以依据第一设备当前的过滤规则,对接收到的所有蓝牙广播进行过滤,仅对携带有第一设备当前的过滤规则的蓝牙广播进行处理。由于第一秘钥仅有特定设备知悉,因此,上述方法可以使电子设备针对性地选择特定的蓝牙广播进行处理,降低了设备处理蓝牙广播的功耗。除此之外,动态变化的时间戳可以阻挡攻击方通过抓包分析等方式进行的蓝牙广播攻击,由此提高设备间进行蓝牙广播通信的安全性。
Description
技术领域
本申请涉及通信技术领域,尤其涉及通信方法、系统及相关装置。
背景技术
随着通信技术的不断发展,物联网逐渐融入人们的生活,并成为不可或缺的重要部分。在物联网应用领域当中,蓝牙(bluetooth)通信技术因其成本低、功耗低、装机量大、多数主流厂商支持等优势,常常作为实现设备间通信的首选技术。
物联网中的电子设备可以通过向空间中发送蓝牙广播,实现与其他设备的通信。当前,电子设备如何对空间中的蓝牙广播进行过滤,以针对性地对接收到的特定蓝牙广播进行处理、降低其他无关蓝牙广播的干扰,是本领域值得研究的方向。
发明内容
本申请实施例提供了通信方法、系统及相关装置。实施本申请实施例,可以减少电子设备之间进行蓝牙广播通信的过程中的干扰和功耗、提升进行蓝牙广播通信的安全性。
第一方面,本申请实施例提供了一种通信方法,该方法应用于第一设备,该第一设备存储有第一秘钥,该方法可包括:第一设备和第二设备同步时间戳,时间戳随时间动态变化,并且第二设备也存储有第一密钥。该第一设备生成第一设备的第一过滤规则,该第一过滤规则依据第一秘钥,时间戳,和第二设备的标识生成;该第一设备发送携带有第一过滤规则的第一蓝牙广播,该第一蓝牙广播用于第二设备确定第一设备位于第二设备的蓝牙通信范围内,或,第二设备解析第一蓝牙广播。
实施第一方面的方法,由于时间戳随时间不断更新,第一设备生成的第一过滤规则亦随时间不断更新,呈现出动态变化的趋势。因此,第一设备发送的携带有第一过滤规则的第一蓝牙广播也呈现出动态变化的趋势。攻击方将难以再通过抓包分析得到第一蓝牙广播中携带有过滤规则的部分,进而难以再向空间中发送携带有上述过滤规则的部分的蓝牙广播,以冒充第一设备与第二设备进行蓝牙广播通信,进而占用第二设备的空口资源,或向其传递错误的信息。由此,极大地提升了第一设备和第二设备进行蓝牙广播通信的安全性。
结合第一方面,在一些实施方式中,第一过滤规则由所述第一设备通过哈希算法生成。哈希算法是具有加密功能的算法,由此,可以防止攻击方反向获得第一过滤规则当中携带的第一秘钥、时间戳,进而依据第一秘钥和时间戳攻击第一设备和第二设备,提高了第一设备和第二设备进行蓝牙广播通信的安全性。
结合第一方面,在一些实施方式中,第一蓝牙广播包括第一报文部分,该第一报文部分用于指示第一蓝牙广播的类型,第一蓝牙广播的类型包括:用于通信的广播,或者,用于接收设备确定第一设备位于蓝牙通信范围内的广播。由此,接收到第一蓝牙广播的设备可以依据第一蓝牙广播当中的第一报文部分获知第一蓝牙广播的用途,进而选用对应与第一蓝牙广播的类型的处理方法对其进行处理。
结合第一方面,在一些实施方式中,第一蓝牙广播包括的第一报文部分指示第一蓝牙广播的类型是用于通信的广播;第一蓝牙广播还携带有控制指令,该控制指令用于指示第二设备执行对应的动作。
结合第一方面,在一些实施方式中,第二设备在第一时间段内接收到的异常蓝牙广播的数量小于或等于第一值,异常蓝牙广播是由第一设备之外的设备发送的携带有第一过滤规则的蓝牙广播。
结合第一方面,在一些实施方式中,在第一设备发送携带有第一过滤规则的第一蓝牙广播之后,该方法还包括:第一设备接收到第二设备发送的第一消息,该第一消息指示第二设备在第二时间段内接收到的异常蓝牙广播的数量大于第一值,异常蓝牙广播是由第一设备之外的设备发送的携带有第一过滤规则的蓝牙广播。第一设备发送第三蓝牙广播,第三蓝牙广播携带有第一账号的标识,该第一账号为第一设备和第二设备登录的相同的账号,第三蓝牙广播用于第二设备确定第一设备位于第二设备的蓝牙通信范围内,或,第二设备解析第三蓝牙广播。
由于异常蓝牙广播也携带有第一过滤规则,因此,异常蓝牙广播可以通过第二设备的过滤筛选。其会被第二设备误认为是由第一设备发送且希望由其进行处理的蓝牙广播,并被第二设备进行处理。这样,会占用第二设备的空口资源,增加第二设备的功耗。因此,在第二设备接收到的异常蓝牙广播的数量较少的情形下,第一设备和第二设备使用前述第一方面的方法进行蓝牙广播通信。在第二设备接收到的异常蓝牙广播的数量较多且超过阈值的情形下,第一设备和第二设备使用其登录的相同的账号作为过滤条件进行蓝牙广播通信,避免过多的异常蓝牙广播对蓝牙广播通信过程产生影响。
结合第一方面,在一些实施方式中,第一设备包括以下的任意一项:手机、平板电脑、智能手表、智能手环、耳机、智能眼镜、智能空气净化器、智能音响、摄像头、智能门锁、智能电视机、投影仪、智能台灯、跑步机、电动窗帘、车机。
第二方面,本申请实施例提供了一种通信方法,该方法应用于第二设备,该第二设备存储有第一秘钥,该方法包括:第二设备和第一设备同步时间戳,时间戳随时间动态变化,第一设备也存储有第一密钥。第二设备接收到第一蓝牙广播,和,第四蓝牙广播,第一蓝牙广播由第一设备发送且携带有第一过滤规则,第四蓝牙广播不携带有第一过滤规则,第一过滤规则由第一设备依据第一秘钥、时间戳,和第二设备的标识生成。第二设备仅依据第一蓝牙广播确定第一设备位于第二设备的蓝牙通信范围内,或,第二设备仅解析第一蓝牙广播。
实施第二方面提供的方法,第二设备可以针对性地处理接收到的蓝牙广播当中由第一设备发送的蓝牙广播,而不处理其他的蓝牙广播。由此,降低了第二设备处理蓝牙广播的功耗。除此之外,实施第二方面提供的方法,还可以极大地提升第一设备和第二设备进行蓝牙广播通信的安全性。对于提升安全性此种有益效果的具体推导与描述,可以参考前述第一方面当中的描述,此处不再赘述。
结合第二方面,在一些实施方式中,发送第四蓝牙广播的设备未存储有第一秘钥,和/或,发送第四蓝牙广播的设备和第二设备的时间戳不同步。由此可知,第四蓝牙广播不是第二设备需要处理的蓝牙广播,第二设备不对其进行处理,可以降低第二设备处理蓝牙广播的功耗。
结合第二方面,在一些实施方式中,第一过滤规则由第一设备通过哈希算法生成。其所能达到的有益效果可参考其对应的第一方面的实施方式中对有益效果的具体推导与描述,此处不再赘述。
结合第二方面,在一些实施方式中,第二设备依据第一蓝牙广播确定第一设备位于第二设备的蓝牙通信范围内之后,该方法还包括:第二设备在预设时间段内,再次接收到第一设备再次发送的第一蓝牙广播。第二设备依据接收到的蓝牙广播确定发送蓝牙广播的设备位于第二设备的蓝牙通信范围内,蓝牙广播不包括第一蓝牙广播。
由于蓝牙广播的通信范围,与其他通信方式的通信范围相比相对较小,因此,为了确保第二设备可以接收到该第一蓝牙广播,第一设备会在一个较短的时间段内向空间中多次发送第一蓝牙广播。第二设备在依据首次接收到的第一蓝牙广播确定第一设备位于第二设备的蓝牙通信范围内之后,在预设时间段内不再对接收到的相同的第一蓝牙广播进行处理,可以降低第二设备重复处理蓝牙广播所消耗的功耗。
结合第二方面,在一些实施方式中,第一蓝牙广播包括第一报文部分,第一报文部分用于指示第一蓝牙广播的类型,第一蓝牙广播的类型包括:用于通信的广播,或者,用于接收设备确定第一设备位于蓝牙通信范围内的广播。其所能达到的有益效果可参考其对应的第一方面的实施方式中对有益效果的具体推导与描述,此处不再赘述。
结合第二方面,在一些实施方式中,第一蓝牙广播包括的第一报文部分用于指示第一蓝牙广播的类型是用于通信的广播。第一蓝牙广播还携带有控制指令,在第二设备解析第一蓝牙广播之后,该方法还包括:第二设备根据控制指令执行对应的动作。
结合第二方面,在一些实施方式中,该方法还包括:第二设备将第一秘钥、第一设备的标识、第二设备的标识发送给第三设备,并与第三设备同步时间戳。发送给第三设备的第一密钥、第一设备的标识、第二设备的标识,以及,时间戳,用于第三设备和第一设备、第二设备进行蓝牙广播通信。
可以理解的,在第三设备知悉了第一秘钥、第一设备和第二设备的标识,以及时间戳之后,第三设备也可以和,第一设备或第二设备,进行如前述第一设备和第二设备进行的蓝牙广播通信。
除此之外,结合第二方面,在另一些实施方式中,该方法还包括:第二设备将第一秘钥、第一设备的标识、第二设备的标识发送给第三设备。之后,第三设备与第二设备重新协商第二秘钥,并以第三设备自身的时间戳为基准与第二设备同步时间戳。第三设备自身的时间戳与第二设备的时间戳不同步。第二设备可以将第二秘钥发送给第一设备,并以第三设备的时间戳为基准与第一设备同步时间戳。
由此,第一设备、第二设备和第三设备均知悉了第二秘钥、第三设备的时间戳,以及其它设备的标识。在此种情形下,第一设备、第二设备和第三设备也可以两两之间进行如前述第一设备和第二设备进行的蓝牙广播通信。
结合第二方面,在一些实施方式中,第二设备在第一时间段内接收到的异常蓝牙广播的数量小于或等于第一值,异常蓝牙广播是由第一设备之外的设备发送的携带有第一过滤规则的蓝牙广播。其所能达到的有益效果可参考其对应的第一方面的实施方式中对有益效果的具体推导与描述,此处不再赘述。
结合第二方面,在一些实施方式中,在第二设备依据第一蓝牙广播确定第一设备位于第二设备的蓝牙通信范围内,或,第二设备解析第一蓝牙广播之后,该方法还包括:第二设备在第二时间段内接收到的异常蓝牙广播的数量大于第一值,异常蓝牙广播是由第一设备之外的设备发送的携带有第一过滤规则的蓝牙广播。第二设备向第一设备发送第一消息。第二设备接收到第三蓝牙广播,和,第五蓝牙广播,第三蓝牙广播由第一设备发送且携带有第一账号的标识,第一账号为第一设备和第二设备登录的相同的账号,第五蓝牙广播不携带有第一账号的标识。第二设备仅依据第三蓝牙广播确定第一设备位于第二设备的蓝牙通信范围内,或,第二设备仅解析第三蓝牙广播。
可以理解的,在第二设备接收到的异常蓝牙广播的数量较多且超过阈值的情形下,第二设备可以通知第一设备使用其登录的相同的账号作为过滤条件进行蓝牙广播通信。由此,可以避免过多的异常蓝牙广播对蓝牙广播通信过程产生影响。
结合第二方面,在一些实施方式中,第二设备包括以下的任意一项:手机、平板电脑、智能手表、智能手环、耳机、智能眼镜、智能空气净化器、智能音响、摄像头、智能门锁、智能电视机、投影仪、智能台灯、跑步机、电动窗帘、车机。
第三方面,本申请实施例提供一种电子设备,其特征在于,该电子设备包括:存储器、一个或多个处理器。该存储器与一个或多个处理器耦合,并存储有计算机程序代码,计算机程序代码包括计算机指令,上述一个或多个处理器可以调用计算机指令以使得电子设备执行前述第一方面或第二方面所述的方法。
第四方面,本申请实施例提供一种通信系统,其特征在于,该通信系统包括:第一设备和第二设备。该第一设备用于执行前述第一方面所述的方法。第二设备用于执行前述第二方面所述的方法。
第五方面,本申请实施例提供一种计算机可读存储介质,包括指令,其特征在于,当指令在电子设备上运行,使得电子设备执行前述第一方面或第二方面所述的方法。
第六方面,本申请实施例提供一种包含指令的计算机程序产品,其特征在于,该计算机程序产品在电子设备上运行时,使得电子设备执行前述第一方面或第二方面所述的方法。
可以理解的,上述第三方面提供的电子设备、第四方面提供的通信系统、第五方面提供的计算机可读存储介质、第六方面提供的计算机程序产品均用于执行本申请实施例所提供的方法。因此,其所能达到的有益效果可参考对应方法中的有益效果,此处不再赘述。
附图说明
图1是本申请实施例提供的通信系统10的结构示意图;
图2A是本申请实施例提供的智能穿戴设备场景示意图;
图2B是本申请实施例提供的智能家居场景示意图;
图2C是本申请实施例提供的车联网场景示意图;
图3是本申请实施例提供的电子设备100的结构示意图;
图4是本申请实施例提供的电子设备100的软件结构框图;
图5是本申请实施例提供的通信方法的流程图;
图6是本申请实施例提供的电子设备100和电子设备200进行蓝牙广播收发的示意图。
具体实施方式
下面将结合附图对本申请实施例中的技术方案进行清楚、详尽地描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
登录了同一系统账号的电子设备之间,可以通过相互之间发送携带有系统账号的标识的蓝牙广播、依据系统账号的标识对接收到的所有蓝牙广播进行过滤,针对性地对携带有该系统账号的标识的蓝牙广播进行处理,从而实现定向的蓝牙广播收发过程。
具体的,以设备1和设备2之间进行定向的蓝牙广播收发为例:在设备1和设备2均登录了第一系统账号的情形下,设备1可以基于一个或多个不同的哈希算法,将第一系统账号的标识转换为一个或多个随机数。设备1可以生成蓝牙广播,该蓝牙广播携带有上述一个或多个随机数。设备1可以向空间中发送该蓝牙广播。设备2也可以基于设备1使用的一个或多个不同的哈希算法,将第一系统账号的标识转换为上述一个或多个随机数,且设备2和设备1转换得到的随机数相同。设备2可以比对其转换得到的一个或多个随机数,和,接收到的所有蓝牙广播携带的一个或多个随机数。若相同,设备2可以确定该蓝牙广播由登录了第一系统账号的电子设备发送,设备2可以对该蓝牙广播进行处理。若不同,设备2可以确定该蓝牙广播不由登录了第一系统账号的电子设备发送,设备2可以不对该蓝牙广播进行处理。由此,设备1和设备2可以基于其登录的同一系统账号,实现蓝牙广播的定向收发过程。
然而,设备1和设备2基于上述通信方法进行通信时,在有设备1和设备2之外的其他电子设备也登录了第一系统账号的情形下,设备1和设备2将无法进行点对点的蓝牙广播通信。此外,由于设备1一般会长时间地登录第一系统账号,设备1生成的蓝牙广播当中携带的一个或多个随机数长期固定不变。因此,当设备1使用上述通信方法发送蓝牙广播时,攻击方可以通过抓包分析等方法识别出设备1发送的蓝牙广播中固定不变的报文部分。可以理解的,该固定不变的报文部分就是携带有上述通过将第一系统账号的标识输入一个或多个不同的哈希算法得到的一个或多个随机数的部分。攻击方可以复制该报文部分,生成包括该报文部分的蓝牙广播,并向空间中发送该蓝牙广播。由于攻击方发送的蓝牙广播包括携带有上述一个或多个随机数的报文部分,因此,该蓝牙广播可以通过设备2的过滤筛选,被设备2处理。若攻击方向空间中发送了大量的上述蓝牙广播,设备2的空口资源将被大量占用,影响设备2对其他蓝牙广播的正常接收和处理。除此之外,攻击方还可能利用上述蓝牙广播向设备2传递错误的信息,进而影响设备2的正常工作。
由此,本申请实施例提供一种通信方法、系统及相关装置。
在该方法中,通过引入动态过滤机制,可以减少电子设备100和电子设备200在进行蓝牙广播通信的过程中的干扰和功耗、提升进行蓝牙广播通信的安全性。具体的:电子设备100和电子设备200可以协商确定第一秘钥并同步时间戳。其中,第一秘钥仅有电子设备100和电子设备200双方知悉。时间戳随时间不断更新。电子设备100和电子设备200均可以依据电子设备100的标识、第一秘钥,以及当前的时间戳,得到电子设备100当前的过滤规则。在一种可能的实现方式中,电子设备100当前的过滤规则可以实现为一个字段,该字段包括固定数量的比特位,且各比特位的数据初始值均为0。电子设备100和电子设备200可以通过将电子设备100的标识、第一秘钥,以及当前的时间戳输入一个或多个不同的哈希算法,得到一个或多个随机数,并将上述字段中各随机数指向的比特位的数据置1,从而得到电子设备100当前的过滤规则。电子设备100可以向空间中发送蓝牙广播,蓝牙广播携带有电子设备100当前的过滤规则。电子设备200可以依据电子设备100当前的过滤规则,对接收到的空间中所有的蓝牙广播进行过滤,只针对性地处理携带有电子设备100当前的过滤规则的蓝牙广播。
实施本申请实施例提供的通信方法、系统及相关装置,电子设备200可以针对性地处理接收到的蓝牙广播当中由特定的电子设备发送的蓝牙广播,而不处理其他的蓝牙广播,上述特定的电子设备例如可以为电子设备100,从而降低了电子设备200处理蓝牙广播的功耗。除此之外,由于时间戳随时间不断更新,电子设备100当前的过滤规则亦随时间不断更新,呈现出动态变化的趋势。因此,电子设备100发送的蓝牙广播当中携带有电子设备100当前的过滤规则的部分亦呈现出动态变化的趋势,攻击方将难以再通过抓包分析得到电子设备100发送的蓝牙广播中携带有过滤规则的部分,进而难以再向空间中发送能够通过电子设备200的过滤筛选的蓝牙广播,以占用电子设备200的空口资源,或向其传递错误的信息。由此,极大地提升了电子设备100和电子设备200进行蓝牙广播通信的安全性。
在一些实施例中,通信系统中的多个电子设备可以基于蓝牙广播通信形成网络,该网络可以包括电子设备100和电子设备200,电子设备100可以基于上述通信方法与电子设备200进行蓝牙广播通信,从而实现设备间信息传输,或者,实现网络中针对电子设备100的保活。其中,设备间进行信息传输包括设备间进行指令传达、消息传送、设备间沟通协商等的过程。保活是网络中的某个设备(如电子设备100)向空间中发送携带有该设备当前的过滤规则的蓝牙广播。之后,网络中其他设备依据上述某个设备当前的过滤规则对接收到的所有蓝牙广播进行筛选,并依据是否能够接收到上述蓝牙广播以确定上述某个设备是否仍处于网络当中的过程。其中,若其他设备接收到了上述蓝牙广播,则其他设备可以确定上述某个设备仍处于网络当中。若其他设备未接收到上述蓝牙广播,则其他设备可以确定上述某个设备脱离网络。设备处于网络当中的状态可以被称为在线,设备脱离网络的状态可以被称为掉线。
在一些实施例中,电子设备300可以基于蓝牙广播通信加入包括有电子设备100和电子设备200的网络。电子设备300可以在通过网络中的一个中间设备,获取到依据本申请提出的蓝牙广播通信方法与网络中其他设备进行蓝牙广播通信所需的各种信息之后,与网络中任一其他设备实现本申请提出的蓝牙广播通信过程。上述中间设备例如可以为电子设备200。具体的,电子设备200和电子设备300可以协商确定第二秘钥并同步时间戳,第二秘钥可以与第一秘钥相同,也可以和第一秘钥不同。若第二秘钥与第一秘钥不同,电子设备200可以将第二秘钥发送给电子设备100。若在与电子设备300同步时间戳后,电子设备200的时间戳发生变化,电子设备200可以以自身的时间戳为基准,与电子设备100同步时间戳。之后,电子设备100可以经由电子设备200,获得电子设备300的标识。电子设备300可以经由电子设备200,获得电子设备100的标识。
由此,电子设备300成功获取到了与网络中其他设备,依据本申请提出的蓝牙广播通信方法与网络中其他设备进行蓝牙广播通信所需的各种信息。在此之后,由于网络当中的各设备均持有网络内所有其他设备的标识、第二秘钥,并且存储有网络内同步的时间戳。因此,在电子设备300加入网络后,电子设备300可以向网络当中的任一其他设备发送携带有自身当前的过滤规则的蓝牙广播,上述其他设备可以依据电子设备300当前的过滤规则对接收到的所有蓝牙广播进行过滤筛选,针对性地对电子设备300发送的上述蓝牙广播进行处理。由此,电子设备300可以与网络内其他设备实现本申请提出的蓝牙广播通信过程。基于该蓝牙广播通信过程,电子设备300可以与网络内任一设备进行信息传输。除此之外,网络中还可以基于本申请提供的蓝牙广播通信方法,进行针对电子设备300的保活。由此,可以减少多个电子设备建立网络所需的时间,提高网络内设备的最大容量。
下面对上述通信方法、系统及相关装置的实现进行具体介绍。
首先介绍本申请实施例提供的通信系统10的结构示意图。
参考图1,图1示出了本申请实施例提供的通信系统10。如图1所示,通信系统10包括多个电子设备。示例性的,图1中示出了由电子设备100、电子设备200、电子设备300构成的通信系统10。
通信系统10中的电子设备可以为手机、车机、平板电脑、可穿戴设备、笔记本电脑、上网本、台式电脑、个人数字助理(personal digital assistant,PDA)、摄像头、智能门锁、智能电视机、投影仪、智能台灯、跑步机、电动窗帘、智能音箱、智慧屏等电子设备。示例性的,图1中的电子设备100可以实现为智能手机,电子设备200可以实现为智能音响,电子设备300可以实现为车机。上述电子设备的示例性实施例包括但不限于搭载iOS、android、microsoft或者其他操作系统的便携式电子设备。本申请实施例对设备类型不作任何限制。
在一些实施例中,通信系统10可以是处于智能穿戴设备场景当中的通信系统。如图2A所示,在此种情形下,电子设备100可以实现为手机,电子设备200和电子设备300可以实现为各类智能穿戴设备。智能穿戴设备例如可以为智能手表、智能手环、耳机、智能眼镜、智能服饰等。示例性的,电子设备200可以实现为智能手表,电子设备300可以实现为耳机。
该智能穿戴设备场景当中的各设备可以基于本申请实施例提出的通信方法实现协同工作。在一些实施例中,电子设备100可以安装有可用于管理各智能穿戴设备的应用。响应于用户在该应用提供的用户界面中的操作,电子设备100可以向空间中发送蓝牙广播,该蓝牙广播携带有电子设备100当前的过滤规则,且可以通过其他设备的过滤筛选并得到处理。由此,电子设备100可以实现与各智能穿戴设备的蓝牙广播通信,基于蓝牙广播通信对各智能穿戴设备进行管理、设置。示例性的,电子设备100可以与电子设备200进行蓝牙广播通信,以实现通知消息的传输、闹钟设定等功能。电子设备100可以与电子设备300进行蓝牙广播通信,以控制音乐播放时耳机的音量大小、实现曲目切换等功能。
在一些实施例中,通信系统10可以是处于智能家居场景当中的通信系统。如图2B所示,在此种情形下,电子设备100可以实现为手机,电子设备200和电子设备300可以实现为各类智能家居设备。智能家居设备例如可以为智能空气净化器、智能音响、摄像头、智能门锁、智能电视机、投影仪、智能台灯、跑步机、电动窗帘等。示例性的,电子设备200可以实现为智能空气净化器,电子设备300可以实现为智能音响。
该智能家居场景当中的各设备可以基于本申请实施例提出的通信方法实现协同工作。在一些实施例中,电子设备100可以安装有可用于管理各智能家居设备的应用。响应于用户在该应用提供的用户界面中的操作,电子设备100可以向空间中发送蓝牙广播,该蓝牙广播携带有电子设备100当前的过滤规则,且可以通过其他设备的过滤筛选并得到处理。由此,电子设备100可以实现与各智能家居设备的蓝牙广播通信,并基于蓝牙广播通信对各智能家居设备进行管理、设置。示例性的,电子设备100可以分别与电子设备200、电子设备300进行蓝牙广播通信,以控制设备的开启与关闭、数据传输等功能。
在一些实施例中,通信系统10可以是处于车联网场景当中的通信系统。如图2C所示,在此种情形下,电子设备100~电子设备300可以实现为车机。
该车联网场景当中的各设备可以基于本申请实施例提出的通信方法实现协同工作。具体的,电子设备100~电子设备300可以进行蓝牙广播通信,以实现不同车辆之间的信号传输与沟通交流。在一些实施例中,电子设备100~电子设备300可以基于蓝牙广播通信进行测距等活动,以实现对行车状态及周边环境的感知。
在其他一些实施例中,通信系统10还可以是处于楼宇照明系统、工业物联网等场景当中的通信系统。
在本申请实施例中,通信系统10当中的设备可以基于各种有线通信方式、无线通信方式或移动通信方式进行通信。上述有线通信方式可以为同轴电缆通信、通用串行总线(universal serial bus,USB)接口通信、RS232串口通信等。上述无线通信方式可以为蓝牙通信、无线保真(wireless fidelity,WiFi)通信、超宽带(ultra wide band,UWB)通信、红外(infrared)通信、近场通信(near field communication,NFC)等。上述移动通信方式可以为2G/3G/4G/5G通信等。各电子设备可以具有USB通信模块、RS232串口通信模块、蓝牙通信模块、WiFi通信模块、UWB通信模块、红外通信模块、NFC通信模块等通信模块、2G/3G/4G/5G通信模块中的一项或多项通信模块。设备间可以基于上述一项或多项通信模块进行通信,以实现第一秘钥的协商和时间戳的同步。
在协商确定了第一秘钥、同步了时间戳之后,设备间可以依据上述第一秘钥、时间戳,以及两个设备的标识,进行蓝牙广播通信。示例性的,以电子设备100和电子设备200两个设备为例:电子设备100和电子设备200可以具有蓝牙通信模块,两电子设备可以基于该蓝牙通信模块收发蓝牙广播,以实现蓝牙广播通信过程。
具体的,电子设备100可以在任意时刻依据本设备(电子设备100)的标识、协商确定的第一秘钥,以及当前的时间戳,得到本设备当前的过滤规则。电子设备100可以生成携带有本设备(电子设备100)当前的过滤规则的蓝牙广播,并将该蓝牙广播发送于空间当中。电子设备200可以在任意时刻依据电子设备100的标识、协商确定的第一秘钥,以及当前的时间戳,生成电子设备100当前的过滤规则。电子设备200可以依据电子设备100当前的过滤规则,对接收到的所有蓝牙广播进行过滤,只对携带有电子设备100当前的过滤规则的蓝牙广播进行处理。由此,电子设备100和电子设备200可以实现本申请提出的蓝牙广播通信过程。
在一些实施例中,电子设备100还可以生成、发送携带有本设备(电子设备100)当前的过滤规则,和,电子设备200的标识的蓝牙广播。电子设备200可以依据电子设备100当前的过滤规则,和,电子设备200的标识对接收到的所有蓝牙广播进行过滤,只对携带有电子设备100当前的过滤规则,和,电子设备200的标识的蓝牙广播进行处理。由此,电子设备100和电子设备200可以实现点对点的蓝牙广播通信。
在本申请实施例中,通信系统10当中的多个设备可以基于蓝牙广播通信形成网络,上述多个设备可以包括电子设备100和电子设备200。网络中的任一设备可以向空间中发送蓝牙广播之后,网络中的其他设备均可以接收到该蓝牙广播。其中,网络中位于上述蓝牙广播的传播范围内的其他设备可以直接接收到该蓝牙广播。而网络中位于上述蓝牙广播的传播范围之外的其他设备,可以基于网络中的中继设备对上述蓝牙广播的转发接收到该蓝牙广播。
在形成网络之后,网络中的所有设备可以通过协商确定第二秘钥、同步时间戳。之后,网络中的任一设备可以依据上述通信方法与网络中的其他设备进行信息传输或保活。
在本申请实施例中,可以有新设备(如电子设备300)加入上述网络。在新设备加入网络之后,网络当中的任一设备均存储有网络内所有其他设备的标识与第二秘钥,以及网络内同步的时间戳。因此,各设备可以依据本申请实施例提供的通信方法,与网络内的任一设备进行蓝牙广播通信。
下面介绍本申请实施例涉及的电子设备。
本申请实施例以电子设备100的结构为例进行介绍。通信系统10当中的其他设备的结构可以参考对电子设备100的结构的描述,此处不再赘述。
图3示出了电子设备100的结构示意图。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,按键190,马达191,指示器192。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器可以通过音频设备输出声音信号,或通过显示设备显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
在本申请实施例中,电子设备100可以通过有线通信模块、无线通信模块160或移动通信模块150,与电子设备200协商确定第一秘钥、同步时间戳。
在本申请实施例中,电子设备100可以生成携带有电子设备100当前的过滤规则的蓝牙广播,或,携带有电子设备100当前的过滤规则和电子设备200的标识的蓝牙广播,并基于蓝牙通信模块向空间中发送该蓝牙广播。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
在本申请的一些实施例中,对于与电子设备100协商确定了第一秘钥并同步了时间戳的电子设备200,电子设备100可以存储有与电子设备200通过协商确定的第一秘钥、同步的时间戳。电子设备100可以依据存储的第一秘钥、时间戳,得到电子设备100当前的过滤规则。之后,电子设备100可以向空间中发送携带有电子设备100当前的过滤规则的蓝牙广播。
在本申请的另一些实施例中,对于与电子设备100协商确定了第一秘钥并同步了时间戳的电子设备200,电子设备100除了存储有第一秘钥、同步的时间戳,还可以存储有电子设备200的标识。电子设备100可以生成得到,并向空间中发送携带有电子设备100当前的过滤规则,和,电子设备200的标识的蓝牙广播。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图4是本申请实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图4所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
在本申请实施例中,电子设备100可以运行蓝牙应用。电子设备100运行蓝牙应用时,电子设备100可以启用其蓝牙通信模块。之后,电子设备100可以基于本申请实施例提供的通信方法,通过蓝牙通信模块实现与电子设备200的蓝牙广播通信。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图4所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
下面结合捕获拍照场景,示例性说明电子设备100软件以及硬件的工作流程。
当触摸传感器接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头捕获静态图像或视频。
下面介绍本申请实施例提供的通信方法。
如图5所示,本申请实施例提供的通信方法包括步骤S101~S108。其中,
S101、电子设备100与电子设备200协商确定第一秘钥、同步时间戳。
电子设备100和电子设备200可以基于有线通信方式、无线通信方式或移动通信方式,协商确定第一秘钥、同步时间戳。上述有线通信方式例如可以为同轴电缆通信、通用串行总线(universal serial bus,USB)接口通信、RS232串口通信等。上述无线通信方式例如可以为蓝牙通信、无线保真(wireless fidelity,WiFi)通信、超宽带(ultra wide band,UWB)通信、红外(infrared)通信、近场通信(near field communication,NFC)等。上述移动通信方式例如可以为2G/3G/4G/5G通信等。
第一秘钥可以实现为数字、字符串等。第一秘钥仅有电子设备100和电子设备200知悉,因此具有保密特性。对于电子设备100与电子设备200协商确定第一秘钥的过程,示例性的:电子设备100可以随机生成一个第一秘钥,并将该第一秘钥发送给电子设备200。接收到该第一秘钥之后,电子设备200可以向电子设备100发送返回消息,返回消息可用于与电子设备100确认该第一秘钥。电子设备100与电子设备200可以存储第一秘钥。
电子设备100和电子设备200可以存储有时间戳,时间戳可用于唯一地标识电子设备执行某项动作的时间。在一些实施例中,时间戳可以实现为一个字符序列,该字符序列存储有格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至当前的总秒数。电子设备可以在执行某项动作时获取并存储当前的时间戳,以达到标识该电子设备执行该项动作的时间的目的。由于时间在不断流逝,时间戳可以显示出动态变化的趋势。不同的时间戳可以具有不同的精确度,精确度例如可以为五分钟、十分钟等。
由于晶振偏移等原因,电子设备100和电子设备200的时间戳可能存在误差。电子设备100和电子设备200可以同步时间戳。对于电子设备100和电子设备200同步时间戳的过程,在一些实施例中,服务器当中存储有标准时间戳。电子设备100和电子设备200可以分别以服务器存储的标准时间戳为基准,对自身存储的时间戳进行校准。在另一些实施例中,电子设备100与电子设备200可以协商确定一个主设备。电子设备100与电子设备200可以以主设备存储的时间戳为基准,对自身存储的时间戳进行校准,从而实现时间戳的同步。
除此之外,在一些实施例中,电子设备100还可以获取电子设备200的标识。在一些实施例中,电子设备100可以在与电子设备200协商确定第一秘钥和同步时间戳的过程中,获知并存储电子设备200的标识。在另一些实施例中,电子设备100可以向电子设备200发送请求消息,以请求电子设备200发送其标识给电子设备100。之后,电子设备100可以接收到电子设备200发送的电子设备200的标识,并存储该电子设备200的标识。电子设备200的标识可以实现为数字、字符串等。具体的,设备的标识例如可以为设备的通用唯一识别码(Universally Unique Identifier,UUID)、设备的唯一设备识别符(Unique DeviceIdentifier,UDID)。
在一些实施例中,多个电子设备可以基于蓝牙广播通信建立网络,该网络可以包括电子设备100和电子设备200。对于多个电子设备基于蓝牙广播通信建立网络的过程,示例性的:响应于用户作用于电子设备100的操作,电子设备100可以向空间中发送蓝牙广播,该蓝牙广播可用于请求组建网络,且该蓝牙广播可以携带有电子设备100的标识。接收到上述蓝牙广播,其他设备可以在其用户界面上显示选择控件,该选择控件可用于供该其他设备的用户选择是否同意与电子设备100建立网络。接收到用户同意与电子设备100建立网络的操作,该其他设备可以向空间中发送返回广播,该返回广播可用于告知电子设备100同意加入网络,且该返回广播可以携带有其他设备自身的标识。上述其他设备可以包括电子设备200。之后,电子设备100可以接收到上述返回广播。由此,多个设备之间可以成功建立网络。
网络中的所有电子设备均存储有上述第一秘钥、同步的时间戳,以及网络中所有其他设备的标识。在一些实施例中,网络中的所有电子设备可以进行协商,以确定第一秘钥、同步时间戳。在另一些实施例中,网络中的两个设备可以在协商确定第一秘钥、同步时间戳之后,再在网络内向所有其他设备发送上述第一秘钥、与所有其他设备同步时间戳,从而使网络内所有设备均存储有第一秘钥以及网络内同步的时间戳。
该网络中的任一设备可以向空间中发送蓝牙广播。之后,网络中的其他设备均可以接收到该蓝牙广播。其中,位于上述蓝牙广播的传播范围内的其他设备可以直接接收到该蓝牙广播。而网络中位于上述蓝牙广播的传播范围之外的其他设备,可以基于网络中的中继设备对上述蓝牙广播的转发接收到该蓝牙广播。
在电子设备100和电子设备200协商确定第一秘钥并同步时间戳之后,电子设备100和电子设备200可以基于下述步骤S102、S103,实现蓝牙广播通信。其中:
S102、电子设备100向空间中发送携带有电子设备100当前的过滤规则的蓝牙广播。
在一些实施例中,响应于作用于电子设备100的用户操作,电子设备100可以向空间中发送上述蓝牙广播。示例性的,在如图2A所示的智能穿戴设备场景当中,接收到用户在电子设备100上启动第一应用的操作,电子设备100可以向空间中发送上述蓝牙广播。第一应用是可用于供用户在电子设备100上设置、管理智能穿戴设备(如电子设备200)的应用。上述蓝牙广播中可以携带有请求消息,该请求消息可用于请求电子设备200向电子设备100发送运动记录数据。
在另一些实施例中,电子设备100可以主动向空间中发送上述蓝牙广播。示例性的,在如图2B所示的智能家居场景当中,检测到电子设备100与电子设备200的距离小于预设值,电子设备100可以确定用户即将回到家中,电子设备100可以向空间中发送上述蓝牙广播,该蓝牙广播中可以携带有告知消息,该告知消息可用于启动电子设备200。
在一些实施例中,上述蓝牙广播可用于电子设备100与电子设备200进行信息传输。信息传输包括设备间进行指令传达、消息传送、设备间沟通协商等过程。
在另一些实施例中,在电子设备100与电子设备200基于蓝牙广播通信加入同一网络的情形下,上述蓝牙广播可用于网络中针对电子设备100进行保活。保活是网络中的某个设备(如电子设备100)向空间中发送携带有该设备当前的过滤规则的蓝牙广播。之后,网络中其他设备依据上述某个设备当前的过滤规则,对接收到的所有蓝牙广播进行筛选,并依据是否能够接收到上述蓝牙广播以确定上述某个设备是否仍处于网络当中的过程。其中,若其他设备接收到了上述蓝牙广播,则其他设备可以确定上述某个设备处于网络当中。若其他设备未接收到上述蓝牙广播,则其他设备可以确定上述某个设备脱离网络。在一些实施例中,保活过程中网络中的某个设备(如电子设备100)向空间中发送的蓝牙广播,还可以是携带有该设备当前的过滤规则,和,网络中一个其他设备的标识的蓝牙广播。相应的,该其他设备可以依据上述某个设备当前的过滤规则,和,自身的标识对接收到的所有蓝牙广播进行筛选,并依据是否能够接收到上述蓝牙广播以确定上述某个设备是否仍处于网络当中。若除电子设备100之外,网络中包括多个不同的其他设备,电子设备100可以针对各其他设备,分别向空间中发送携带有电子设备100当前的过滤规则,和,其他设备的标识的蓝牙广播以进行保活。
前述设备处于网络当中的状态可以被称为在线,设备脱离网络的状态可以被称为掉线。在一些实施例中,上述其他设备首次确定上述某个设备处于网络当中的过程可以被称为上述其他设备与上述某个设备进行设备发现。
对于电子设备100向空间中发送携带有电子设备100当前的过滤规则的蓝牙广播的过程,具体的:首先,电子设备100要生成电子设备100当前的过滤规则。电子设备100可以依据本设备(电子设备100)的标识、与电子设备200协商确定的第一秘钥,以及当前的时间戳,生成电子设备100当前的过滤规则。电子设备100当前的过滤规则可以实现为一个字段。在一种可能的实现方式中,电子设备100可以基于布隆过滤器技术生成一个字段,该字段携带有本设备(电子设备100)的标识、与电子设备200协商确定的第一秘钥,以及当前的时间戳的。具体的,电子设备100可以基于一个或多个不同的哈希算法,将本设备(电子设备100)的标识、与电子设备200协商确定的第一秘钥,以及当前的时间戳转换为一个或多个随机数。之后,电子设备100可以生成一个字段,该字段长度固定,且各比特位的数据初始值均为0。对于任一个转换得到的随机数,电子设备100可以将该字段当中随机数指向的比特位的数据置1。由此,电子设备100生成了电子设备100的过滤规则。
由于电子设备100发送的蓝牙广播可以携带的信息是有限的。电子设备100基于布隆过滤器技术生成携带有电子设备100当前的过滤规则的字段,并将该字段填充至蓝牙广播当中,可以有效地减少电子设备100当前的过滤规则所占用的蓝牙广播的空间。
在一些实施例中,在电子设备100生成电子设备100当前的过滤规则之后,电子设备100可以生成蓝牙广播,蓝牙广播可以携带有电子设备100的过滤规则。在另一些实施例中,在电子设备100生成电子设备100当前的过滤规则之后,电子设备100可以生成蓝牙广播,蓝牙广播可以携带有电子设备100的过滤规则,和,电子设备200的标识。
在电子设备100生成上述蓝牙广播之后,电子设备100可以向空间中发送该蓝牙广播。
在一些实施例中,电子设备100还可以向空间中发送携带有电子设备200当前的过滤规则,和,电子设备100的标识的蓝牙广播。电子设备100发送上述蓝牙广播的过程,可以参考前述对电子设备100发送携带有电子设备100当前的过滤规则的蓝牙广播的过程,此处不再赘述。
S103、电子设备200接收、处理电子设备100发送的携带有电子设备100当前的过滤规则的蓝牙广播。
电子设备200可以接收到空间中的一则或多则蓝牙广播。上述一则或多则蓝牙广播可以由一个或多个发送方设备分别发送,且上述一则或多则蓝牙广播可以包括上述由电子设备100发送的携带有电子设备100当前的过滤规则的蓝牙广播。
电子设备200可以依据电子设备100的标识、与电子设备100协商确定的第一秘钥,以及当前的时间戳,生成电子设备100当前的过滤规则。电子设备200生成电子设备100当前的过滤规则的过程,可以参考前述实施例中电子设备100生成电子设备100当前的过滤规则的过程,此处不再赘述。电子设备200可以将生成的电子设备100当前的过滤规则存储于其蓝牙通信模块当中的过滤器内。当电子设备200想要针对性地对接收到的所有蓝牙广播当中由电子设备100发送的蓝牙广播进行处理时,电子设备200可以依据电子设备100的过滤规则,对接收到的所有蓝牙广播进行过滤,从而筛选出其中由电子设备100发送的、希望由电子设备200接收、处理的蓝牙广播。具体的,电子设备200可以先比对接收到的所有蓝牙广播携带的过滤规则,和,电子设备100当前的过滤规则。若蓝牙广播携带的过滤规则包括电子设备100当前的过滤规则,电子设备200可以确定该蓝牙广播由电子设备100发送。
之后,在一些实施例中,电子设备200还可以在携带有电子设备100当前的过滤规则的蓝牙广播当中,筛选携带有电子设备200的标识的蓝牙广播。可以理解的,上述筛选得到的蓝牙广播,是电子设备100发送的,并希望由电子设备200接收、处理的蓝牙广播。电子设备200可以对该蓝牙广播进行处理。
对于电子设备200对蓝牙广播进行处理的过程,具体的:
电子设备200可以首先判断该蓝牙广播是用于电子设备100与电子设备200进行信息传输的蓝牙广播,还是,用于网络内针对电子设备100进行保活的蓝牙广播。示例性的,电子设备100可以在生成上述蓝牙广播的过程中,向该蓝牙广播当中添加一个用于标识蓝牙广播类型的报文部分。电子设备200可以对该报文部分进行解析,获取到该蓝牙广播所属的类型,从而实现上述判断。
在一些实施例中,在蓝牙广播用于电子设备100与电子设备200进行信息传输的情形下,电子设备200可以解析获取蓝牙广播携带的消息,并依据该消息的指示删除数据、存储数据,或者依据该消息执行某项功能等。示例性的,在如图2A所示的智能穿戴设备场景当中,若上述蓝牙广播携带的消息是用于电子设备100请求电子设备200向电子设备100发送运动记录数据的请求消息,电子设备200可以向电子设备100传输其存储的运动记录数据。
在另一些实施例中,在蓝牙广播用于网络内针对电子设备100进行保活的情形下,在电子设备200接收到该蓝牙广播之后,电子设备200可以确定电子设备100仍旧在线。除此之外,由于蓝牙广播的收发是不可靠的,电子设备100为了保证电子设备200可以收到上述用于保活的蓝牙广播,通常要向空间中持续、重复地发送一定数量的蓝牙广播,或,在一段时间内向空间中持续、重复地发送蓝牙广播。因此,在一些实施例中,在电子设备200确定电子设备100在线之后,电子设备200可以不再对电子设备100发送的用于保活的蓝牙广播进行处理。具体的,电子设备200的蓝牙通信模块中的过滤器可以删除其存储的电子设备100当前的过滤规则,使过滤器不再依据电子设备100当前的过滤规则对接收到的所有蓝牙广播进行过滤。由此,电子设备100发送的用于保活的蓝牙广播不能够再通过电子设备200的过滤器的过滤筛选,电子设备200的过滤器不会再将电子设备100发送的用于保活的蓝牙广播上报给电子设备200的对应处理该蓝牙广播的模块,使其得到处理。
可以理解的,在确定电子设备100在线之后,电子设备200不再对接收到的电子设备100发送的用于保活的蓝牙广播进行处理,可以降低电子设备200因为重复处理相同的蓝牙广播产生的功耗。除此之外,由于时间戳的更新存在一定的周期,在确定电子设备100在线之后,电子设备200不再重复地对电子设备100发送的保活广播进行处理,能够缩短攻击方可以向电子设备200发送攻击性的蓝牙广播的时间窗。这样,即使攻击方侥幸获得了电子设备100当前的过滤规则,也难以利用上述时间窗,向空间中发送攻击性的蓝牙广播,以占用电子设备200的空口资源,或向其传递错误的信息。
在一些实施例中,网络内的所有电子设备可以约定保活周期,电子设备100、电子设备200可以在协商确定第一秘钥、同步时间戳之后利用计时器开始计时。当计时器所计的时间达到保活周期时,电子设备100可以执行前述步骤S102。之后,在一些实施例中,电子设备200可以执行前述步骤S103,电子设备200确定电子设备100在线。在另一些实施例中,电子设备200也可能没能接收到上述由电子设备100发送的蓝牙广播。在电子设备200未接收到电子设备100发送的蓝牙广播的情形下,电子设备200可以确定电子设备100掉线。之后,电子设备100和电子设备200可以同时重置计时器,并等待计时器所计的时间再一次达到保活周期。由此,电子设备200可以持续监测电子设备100的状态,保障电子设备100与电子设备200的协同工作。
图6示例性示出了电子设备100和电子设备200进行一次蓝牙广播收发的示意图。
如图6所示,电子设备100将与电子设备200协商确定的第一秘钥、当前的时间戳,以及电子设备100的标识,输入2个哈希算法,生成以下2个随机数:2,7。电子设备100可以生成一个字段,并将该字段当中位置为2、7的比特位置1。
除此之外,由于电子设备100同时还想要电子设备200之外的其他设备接收、处理其发送的蓝牙广播,因此,电子设备100还可以将与其他设备协商确定的第一秘钥、当前的时间戳,以及电子设备100的标识,输入哈希算法,生成随机数,并将上述字段当中上述随机数指向的比特位的数据置1。示例性的,该随机数可以为1、9。
电子设备100可以在生成蓝牙广播的过程中将依据上述过程生成的字段添加至蓝牙广播当中。之后,电子设备100可以向空间中发送该蓝牙广播。
电子设备200可以将与电子设备100协商确定的第一秘钥、当前的时间戳,以及电子设备100的标识,输入2个哈希算法,生成以下2个随机数:2,7。电子设备200可以生成一个字段,并将该字段当中位置为2、7的比特位置1。电子设备200可以将该字段存储于过滤器中。之后,电子设备200可以接收到上述电子设备100向空间中发送的蓝牙广播。电子设备200可以比对电子设备100发送的蓝牙广播中的字段,和,上述电子设备200存储的字段。由于上述蓝牙广播中的字段内置1的比特位(1,2,7,9)包括了上述电子设备200存储的字段内置1的比特位(2,7),因此,该蓝牙广播可以通过电子设备200的过滤筛选,电子设备200可以对该蓝牙广播进行处理。
执行上述步骤S101~S103,电子设备100和电子设备200可以实现蓝牙广播通信。电子设备200可以针对性地处理接收到的蓝牙广播当中由特定的电子设备发送的蓝牙广播,而不处理其他的蓝牙广播,上述特定的电子设备例如电子设备100。从而降低了电子设备200处理蓝牙广播的功耗。除此之外,由于时间戳随时间不断更新,电子设备100当前的过滤规则亦随时间不断更新,呈现出动态变化的趋势。因此,电子设备100发送的蓝牙广播当中携带有电子设备100当前的过滤规则的部分亦呈现出动态变化的趋势,攻击方将难以再得到蓝牙广播中携带有过滤规则的部分,进而难以再向空间中发送能够通过电子设备200的过滤筛选的蓝牙广播,以占用电子设备200的空口资源,或向其传递错误的信息,极大地提升了电子设备100和电子设备200进行蓝牙广播通信的安全性。
在一些实施例中,在电子设备100向空间中发送的是携带有电子设备200的过滤规则,和电子设备100的标识的蓝牙广播的情形下,电子设备200可以依据电子设备200的标识、与电子设备100协商确定的第一秘钥,以及当前的时间戳,生成电子设备200的过滤规则。电子设备200生成电子设备200的过滤规则的过程,可以参考前述实施例中电子设备100生成电子设备100当前的过滤规则的过程,此处不再赘述。之后,电子设备200可以依据电子设备200的过滤规则,和,电子设备100的标识,对接收到的所有蓝牙广播进行过滤,并仅对携带有电子设备200当前的过滤规则,和,电子设备100的标识的蓝牙广播进行处理。在此种情形下,电子设备100和电子设备200也可以实现蓝牙广播通信。
可选的,在一些实施例中,电子设备300可以基于蓝牙广播通信加入包括有电子设备100和电子设备200的网络。对于电子设备300基于蓝牙广播通信加入网络的过程,示例性的:响应于用户作用于电子设备100的操作,电子设备100可以向空间中发送蓝牙广播,该蓝牙广播可用于搜索附近设备。接收到上述蓝牙广播,电子设备300可以在其用户界面上显示选择控件,该选择控件可用于供电子设备300的用户选择是否同意加入网络。接收到用户同意加入网络的操作,电子设备300可以向空间中发送返回广播,该返回广播可用于告知电子设备100同意加入网络,且该返回广播可以携带有电子设备300的标识。之后,电子设备100可以接收到上述返回广播。由此,电子设备300成功加入了网络。
在加入包括有电子设备100和电子设备200的网络之后,电子设备300可以与网络中的一个中间设备协商确定第二秘钥、同步时间戳,并通过中间设备在整个网络内同步上述第二秘钥和时间戳、使网络中所有设备均持有网络内其他设备的标识。之后,电子设备300可以与网络中任一设备实现本申请提出的蓝牙广播通信过程。上述中间设备例如可以为电子设备200。本申请后续实施例将以电子设备200作为中间设备为例进行具体介绍。
上述过程包括步骤S104~S108。其中,
S104、电子设备200和电子设备300协商确定第二秘钥并同步时间戳。
电子设备200与电子设备300可以基于有线通信技术、无线通信技术或移动通信技术,协商确定第二秘钥,并同步时间戳。
电子设备200和电子设备300协商确定第二秘钥,并同步时间戳的过程可以参考前述实施例中电子设备100和电子设备200协商确定第一秘钥、同步时间戳的描述,此处不再赘述。
S105、若第二秘钥和第一秘钥不同,电子设备200将第二秘钥发送给电子设备100,并以自身的时间戳为基准,与电子设备100同步时间戳。
在一些实施例中,若第二秘钥和第一秘钥不同,那么,电子设备200可以将第二秘钥发送给电子设备100。
在一些实施例中,若电子设备200与电子设备300同步时间戳之后,电子设备200的时间戳发生了变化,那么,电子设备200可以在与电子设备300同步时间戳之后,再以自身的时间戳为基准,与电子设备100同步时间戳。电子设备200与电子设备100同步时间戳的过程可以参考前述实施例中的描述,此处不再赘述。
在另一些实施例中,若第二秘钥与第一秘钥相同,且电子设备200与电子设备300同步时间戳之后,电子设备200的时间戳未发生变化,那么,通信系统10可以不执行步骤S105。
S106、电子设备200将电子设备300的标识发送给电子设备100。
电子设备200可以在与电子设备300协商确定第二秘钥、同步时间戳的过程中得到电子设备300的标识,并存储电子设备300的标识。之后,电子设备200可以将电子设备300的标识发送给电子设备100。接收到电子设备300的标识之后,电子设备100可以存储该标识。
S107、电子设备200将电子设备100的标识发送给电子设备300。
电子设备200可以将电子设备100的标识发送给电子设备300。接收到电子设备100的标识之后,电子设备300可以存储该标识。
在一些实施例中,通信系统10可以先执行步骤S105,再执行步骤S106、S107。在另一些实施例中,通信系统10可以先执行步骤S105,再执行步骤S107,最后执行步骤S106。本申请实施例不限定通信系统10执行步骤S105、S106、S107的顺序。
在执行步骤S104~S107之后,电子设备300可以与网络中的任一其他设备实现本申请提出的蓝牙广播通信过程。上述网络中的任一设备可以是电子设备100。本申请后续实施例将以电子设备300与电子设备100进行蓝牙广播通信为例进行具体介绍。
S108、电子设备100和电子设备300进行蓝牙广播通信。
在电子设备300加入包括有电子设备100和电子设备200的网络之后,电子设备100存储有第二秘钥、与电子设备300同步的时间戳,以及网络中所有其他设备的标识。电子设备300存储有第二秘钥、与电子设备100同步的时间戳,以及网络中所有其他设备的标识。因此,电子设备300可以生成携带有电子设备300当前的过滤规则的蓝牙广播,或,携带有电子设备300当前的过滤规则和电子设备100的标识的蓝牙广播,并向空间中发送上述蓝牙广播。电子设备100可以接收并处理上述蓝牙广播,从而实现电子设备100和电子设备300之间的蓝牙广播通信过程。
上述电子设备300生成并向空间中发送蓝牙广播的过程、电子设备100接收并处理电子设备300发送的上述蓝牙广播的过程,可以参考前述步骤S102~S103中对电子设备100生成并向空间中发送的携带有电子设备100当前的过滤规则的蓝牙广播的过程、电子设备200接收并处理电子设备100发送的上述蓝牙广播的过程的描述,此处不再赘述。
由此,电子设备300在加入网络之后,在与电子设备100实现本申请提出的蓝牙广播通信过程之前,可以不用再通过向空间中漫无目的地发送蓝牙广播,来获取与电子设备100进行实现本申请提出的蓝牙广播通信所需的信息。由此,可以减少多个电子设备建立网络所需的时间,提高网络内设备的最大容量。
由于蓝牙广播在空间中的传播可能受到干扰,且其传播范围有距离限制,因此,在一些实施例中,原本处于网络当中的电子设备可能会因为其向空间中发送的蓝牙广播无法被网络当中的所有其他设备接收到,从而被网络当中的所有其他设备确定为掉线而脱离网络。示例性的,在如图2B所示的智能家居场景当中,当用户离家上班或者出门旅游,其随身携带的电子设备100会因为与电子设备200、电子设备300距离太远,而导致其向空间中发送的蓝牙广播无法被电子设备200、电子设备300接收到,从而被电子设备200、电子设备300确定为掉线而脱离网络。
在本申请实施例中,原本处于网络当中的电子设备在脱离网络之后,还可以实现自动重连。以电子设备100作为执行主体为例,具体的:由于网络当中的任一设备都一直存储有网络内所有其他设备的标识、第二秘钥,以及网络内同步的时间戳,因此,在导致电子设备100脱离网络的事由消失之后,电子设备100仍可以与网络当中的所有其他设备实现本申请提出的蓝牙广播通信过程,进而网络中可以针对电子设备100进行保活,从而被网络当中的所有其他设备确定为在线而回归网络。示例性的,在如图2B所示的智能家居场景当中,当用户回到家之后,其随身携带的电子设备100会重新进入电子设备200和电子设备300的蓝牙工作范围内,电子设备100可以与网络当中的所有其他设备重启本申请提出的蓝牙广播通信,进而在网络中针对电子设备100进行保活,从而被网络当中的所有其他设备确定为在线而回归网络。
可选的,在一些实施例中,电子设备100和电子设备200可以依据所处的场景的不同,使用不同的通信方法进行蓝牙广播通信。
在一种可能的实现方式中:电子设备200可以依据其接收到的异常蓝牙广播的数量,来判断其与电子设备100所处的场景为设备数量较多的场景,或,设备数量较少的场景。在电子设备200与电子设备100所处的场景为设备数量较多的场景时,电子设备100和电子设备200可以基于其登录的同一系统账号的标识,实现蓝牙广播通信过程。在电子设备200与电子设备100所处的场景为设备数量较少的场景时,电子设备100和电子设备200可以基于电子设备100当前的过滤规则实现蓝牙广播通信过程。
具体的,首先,电子设备200可以判断其与电子设备100所处的场景是设备数量较多的场景,还是设备数量较少的场景。
示例性的,电子设备200可以对异常蓝牙广播进行记录。异常蓝牙广播不是由电子设备100发送的携带有电子设备100当前的过滤规则的蓝牙广播,而是由其他设备发送的、也携带有电子设备100当前的过滤规则因此可以侥幸通过电子设备200的过滤筛选,被电子设备200接收、处理的蓝牙广播。异常蓝牙广播产生的原因是电子设备100在使用哈希算法生成电子设备100当前的过滤规则的过程中可能产生哈希冲突。具体的:电子设备100将本设备(电子设备100)的标识、与电子设备200协商确定的第一秘钥,以及当前的时间戳输入一个或多个不同的哈希算法得到的一个或多个随机数,和,其他设备将自身的标识、与另一设备协商确定的秘钥,以及该其他设备当前的时间戳输入一个或多个不同的哈希算法得到的一个或多个随机数可能恰好相同。由此,其他设备生成的其他设备当前的过滤规则有几率与电子设备100当前的过滤规则相同。之后,该其他设备可以生成并向空间中发送携带该异常蓝牙广播。电子设备200可以接收到该异常蓝牙广播。由于该异常蓝牙广播携带的其他设备当前的过滤规则,与,电子设备100当前的过滤规则相同,因此,即使在该异常蓝牙广播所传播的信息与电子设备200无关的情形下,电子设备200仍会对该异常蓝牙广播进行处理。当电子设备200确定所处理的蓝牙广播为异常蓝牙广播时,电子设备200可以记录该异常蓝牙广播。
由于周边设备数量越多,其他设备产生异常蓝牙广播的几率越大。在处于地铁、写字楼、商圈等人流量密集的地点时,电子设备200可能接收到的异常蓝牙广播的数量越多。因此,电子设备200可以统计异常蓝牙广播的数量。若在预设时间段内异常蓝牙广播的数量小于或等于阈值,则电子设备200可以确定其与电子设备100此时所处的场景为设备数量较少的场景。若在预设时间段内异常蓝牙广播的数量超过预设阈值,电子设备200可以确定其与电子设备100此时所处的场景为设备数量较多的场景。
在一些实施例中,电子设备200除了可以依据其接收到的异常蓝牙广播的数量,还可以依据其所处的网络的设备数量、设备运行状态(如正常模式、休眠模式、省电模式等)、外部环境参数(如移动状态、位置信息)等,确定其所处的场景为设备数量较多的场景,或,设备数量较少的场景,进而依据所处场景的不同使用不同的通信方法进行蓝牙广播通信。
若电子设备200判断其与电子设备100所处的场景为设备数量较多的场景,其可以依据其登录的系统账号对接收到的所有蓝牙广播进行过滤筛选。若电子设备200判断其与电子设备100所处的场景为设备数量较少的场景,其可以依据电子设备100当前的过滤规则对接收到的所有蓝牙广播进行过滤筛选。电子设备200依据电子设备100当前的过滤规则对接收到的所有蓝牙广播进行过滤筛选的过程,可以参考前述步骤S103当中的描述,此处不再赘述。
在电子设备200变更其对蓝牙广播进行过滤筛选的方法的同时或之后,电子设备200可以向电子设备100发送告知消息,告知消息可用于告知电子设备100电子设备200当前使用的对蓝牙广播进行过滤筛选的方法。接收到上述告知消息之后,在电子设备100希望与电子设备200通信时,电子设备100可以依据告知消息的指示,相应地向空间中发送携带有其登录的系统账号的标识的蓝牙广播,或,携带有电子设备100当前的过滤规则的蓝牙广播。
由于在处于设备数量较多的场景时,若电子设备100希望有多个不同的接收方设备接收并处理其发送的蓝牙广播,电子设备100需要在其发送的蓝牙广播当中添加多个长度相同的字段,各字段对应于一个接收方设备,且各字段携带有一个电子设备100当前的过滤规则。任一个字段携带的电子设备100当前的过滤规则由电子设备100依据以下三个元素生成:电子设备100与该字段对应的接收方设备协商确定的秘钥、电子设备100当前的时间戳、电子设备100的标识。除此之外,电子设备100还需要在蓝牙广播中添加各接收方设备的标识。由于电子设备100发送的蓝牙广播可以携带的信息是有限的,因此,上述携带有电子设备100当前的过滤规则的字段长度较短。可以理解的,字段长度较短,出现哈希冲突的几率越大,电子设备200接收到异常蓝牙广播的几率也越大。而在处于设备数量较少的场景时,若电子设备100希望有多个不同的接收方设备接收并处理其发送的蓝牙广播,其都只需要在发送的蓝牙广播当中添加一个字段,该携带有电子设备100登录的系统账号的标识。因此,在不占用更多蓝牙广播中位置的前提下,上述携带有电子设备100登录的系统账号的标识的字段可以更长,出现哈希冲突的几率大为减小,电子设备200接收到异常蓝牙广播的几率也减小。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得电子设备执行前述任一实施例中的方法。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序代码,当电子设备执行该计算机程序代码时,使得电子设备执行前述任一实施例中的方法。
其中,本申请实施例提供的计算机程序产品、计算机可读存储介质,均用于执行上文所提供的应用程序权限管理方法。因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (20)
1.一种通信方法,其特征在于,所述方法应用于第一设备,所述第一设备存储有第一秘钥,所述方法包括:
所述第一设备和第二设备同步时间戳,所述时间戳随时间动态变化,所述第二设备也存储有所述第一密钥;
所述第一设备生成所述第一设备的第一过滤规则,所述第一过滤规则依据所述第一秘钥,所述时间戳,和所述第二设备的标识生成;
所述第一设备发送携带有所述第一过滤规则的第一蓝牙广播,所述第一蓝牙广播用于所述第二设备确定所述第一设备位于所述第二设备的蓝牙通信范围内,或,所述第二设备解析所述第一蓝牙广播。
2.根据权利要求1所述的方法,其特征在于,所述第一过滤规则由所述第一设备通过哈希算法生成。
3.根据权利要求1或2任一项所述的方法,其特征在于,
所述第一蓝牙广播包括第一报文部分,所述第一报文部分用于指示所述第一蓝牙广播的类型,所述第一蓝牙广播的类型包括:用于通信的广播,或者,用于接收设备确定所述第一设备位于蓝牙通信范围内的广播。
4.根据权利要求3所述的方法,其特征在于,所述第一蓝牙广播包括的所述第一报文部分指示所述第一蓝牙广播的类型是用于通信的广播;所述第一蓝牙广播还携带有控制指令,所述控制指令用于指示所述第二设备执行对应的动作。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述第二设备在第一时间段内接收到的异常蓝牙广播的数量小于或等于第一值,所述异常蓝牙广播是由所述第一设备之外的设备发送的携带有所述第一过滤规则的蓝牙广播。
6.根据权利要求1-5任一项所述的方法,其特征在于,在所述第一设备发送携带有所述第一过滤规则的第一蓝牙广播之后,所述方法还包括:
所述第一设备接收到所述第二设备发送的第一消息,所述第一消息指示所述第二设备在第二时间段内接收到的异常蓝牙广播的数量大于第一值,所述异常蓝牙广播是由所述第一设备之外的设备发送的携带有所述第一过滤规则的蓝牙广播;
所述第一设备发送第三蓝牙广播,所述第三蓝牙广播携带有第一账号的标识,所述第一账号为所述第一设备和所述第二设备登录的相同的账号,所述第三蓝牙广播用于所述第二设备确定所述第一设备位于所述第二设备的蓝牙通信范围内,或,所述第二设备解析所述第三蓝牙广播。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一设备包括以下的任意一项:
手机、平板电脑、智能手表、智能手环、耳机、智能眼镜、智能空气净化器、智能音响、摄像头、智能门锁、智能电视机、投影仪、智能台灯、跑步机、电动窗帘、车机。
8.一种通信方法,其特征在于,所述方法应用于第二设备,所述第二设备存储有第一秘钥,所述方法包括:
所述第二设备和第一设备同步时间戳,所述时间戳随时间动态变化,所述第一设备也存储有所述第一密钥;
所述第二设备接收到所述第一蓝牙广播,和,第四蓝牙广播,所述第一蓝牙广播由所述第一设备发送且携带有第一过滤规则,所述第四蓝牙广播不携带有所述第一过滤规则,所述第一过滤规则由所述第一设备依据所述第一秘钥、所述时间戳,和所述第二设备的标识生成;
所述第二设备仅依据所述第一蓝牙广播确定所述第一设备位于所述第二设备的蓝牙通信范围内,或,所述第二设备仅解析所述第一蓝牙广播。
9.根据权利要求8所述的方法,其特征在于,发送所述第四蓝牙广播的设备未存储有所述第一秘钥,和/或,发送所述第四蓝牙广播的设备和所述第二设备的时间戳不同步。
10.根据权利要求8或9所述的方法,其特征在于,所述第一过滤规则由所述第一设备通过哈希算法生成。
11.根据权利要求8-10任一项所述的方法,其特征在于,所述第二设备依据所述第一蓝牙广播确定所述第一设备位于所述第二设备的蓝牙通信范围内之后,所述方法还包括:
所述第二设备在预设时间段内,再次接收到所述第一设备再次发送的所述第一蓝牙广播;
所述第二设备依据接收到的蓝牙广播确定发送所述蓝牙广播的设备位于所述第二设备的蓝牙通信范围内,所述蓝牙广播不包括所述第一蓝牙广播。
12.根据权利要求8-11任一项所述的方法,其特征在于,
所述第一蓝牙广播包括第一报文部分,所述第一报文部分用于指示所述第一蓝牙广播的类型,所述第一蓝牙广播的类型包括:用于通信的广播,或者,用于接收设备确定所述第一设备位于蓝牙通信范围内的广播。
13.根据权利要求12所述的方法,其特征在于,所述第一蓝牙广播包括的所述第一报文部分用于指示所述第一蓝牙广播的类型是用于通信的广播;所述第一蓝牙广播还携带有控制指令;在所述第二设备解析所述第一蓝牙广播之后,所述方法还包括:
所述第二设备根据所述控制指令执行对应的动作。
14.根据权利要求8-13任一项所述的方法,其特征在于,所述方法还包括:
所述第二设备将所述第一秘钥、所述第一设备的标识、所述第二设备的标识发送给第三设备,并与所述第三设备同步所述时间戳;
发送给所述第三设备的所述第一密钥、所述第一设备的标识、所述第二设备的标识,以及,所述时间戳,用于所述第三设备和所述第一设备、所述第二设备进行蓝牙广播通信。
15.根据权利要求8-14任一项所述的方法,其特征在于,所述第二设备在第一时间段内接收到的异常蓝牙广播的数量小于或等于第一值,所述异常蓝牙广播是由所述第一设备之外的设备发送的携带有所述第一过滤规则的蓝牙广播。
16.根据权利要求8-15所述的方法,其特征在于,在所述第二设备依据所述第一蓝牙广播确定所述第一设备位于所述第二设备的蓝牙通信范围内,或,所述第二设备解析所述第一蓝牙广播之后,所述方法还包括:
所述第二设备在第二时间段内接收到的异常蓝牙广播的数量大于第一值,所述异常蓝牙广播是由所述第一设备之外的设备发送的携带有所述第一过滤规则的蓝牙广播;
所述第二设备向所述第一设备发送第一消息;
所述第二设备接收到所述第三蓝牙广播,和,第五蓝牙广播,所述第三蓝牙广播由所述第一设备发送且携带有第一账号的标识,所述第一账号为所述第一设备和所述第二设备登录的相同的账号,所述第五蓝牙广播不携带有所述第一账号的标识;
所述第二设备仅依据所述第三蓝牙广播确定所述第一设备位于所述第二设备的蓝牙通信范围内,或,所述第二设备仅解析所述第三蓝牙广播。
17.根据权利要求8-16任一项所述的方法,其特征在于,所述第二设备包括以下的任意一项:
手机、平板电脑、智能手表、智能手环、耳机、智能眼镜、智能空气净化器、智能音响、摄像头、智能门锁、智能电视机、投影仪、智能台灯、跑步机、电动窗帘、车机。
18.一种电子设备,其特征在于,所述电子设备包括:存储器、一个或多个处理器;所述存储器与所述一个或多个处理器耦合,所述存储器存储有计算机程序代码,所述计算机程序代码包括计算机指令,所述一个或多个处理器调用所述计算机指令以使得所述电子设备执行权利要求1-7,或,权利要求8-17中任一项所述的方法。
19.一种通信系统,其特征在于,所述通信系统包括:第一设备和第二设备;
所述第一设备用于执行权利要求1-7中任一项所述的方法;
所述第二设备用于执行权利要求8-17中任一项所述的方法。
20.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在电子设备上运行,使得所述电子设备执行权利要求1-7,或,如权利要求8-17任一项所述的方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210709775.0A CN117318921A (zh) | 2022-06-22 | 2022-06-22 | 通信方法、系统及相关装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202210709775.0A CN117318921A (zh) | 2022-06-22 | 2022-06-22 | 通信方法、系统及相关装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN117318921A true CN117318921A (zh) | 2023-12-29 |
Family
ID=89287171
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202210709775.0A Pending CN117318921A (zh) | 2022-06-22 | 2022-06-22 | 通信方法、系统及相关装置 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN117318921A (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025180220A1 (zh) * | 2024-02-28 | 2025-09-04 | 荣耀终端股份有限公司 | 一种蓝牙通信方法及电子设备 |
-
2022
- 2022-06-22 CN CN202210709775.0A patent/CN117318921A/zh active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2025180220A1 (zh) * | 2024-02-28 | 2025-09-04 | 荣耀终端股份有限公司 | 一种蓝牙通信方法及电子设备 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12335217B2 (en) | Notification processing system, method, and electronic device | |
| US12219470B2 (en) | Method for accessing wireless local area network and terminal | |
| CN111405681B (zh) | Wi-Fi Aware的建链方法、系统、电子设备和存储介质 | |
| US12484097B2 (en) | Method for monitoring link and terminal device | |
| WO2021017894A1 (zh) | 一种使用远程sim模块的方法及电子设备 | |
| CN113645608A (zh) | 数据传输方法和数据传输装置 | |
| CN118018640A (zh) | 音量管理的方法及电子设备 | |
| CN116033368B (zh) | 设备发现方法、系统、终端设备及芯片系统 | |
| CN117318921A (zh) | 通信方法、系统及相关装置 | |
| CN117528477A (zh) | 一种设备间连接的管理方法、设备及系统 | |
| CN117119097B (zh) | 一种来电共振的方法、设备及存储介质 | |
| WO2024240191A1 (zh) | 近距离扫描方法及相关装置 | |
| CN117998397A (zh) | 一种系统、感知电子设备下线的方法以及电子设备 | |
| CN115580823A (zh) | 电子设备交互方法及装置 | |
| CN114173317B (zh) | 传输数据的方法和电子设备 | |
| CN116541188B (zh) | 通知显示方法、终端设备及存储介质 | |
| CN116033592B (zh) | 蜂窝通信功能的使用方法和装置 | |
| CN117729561B (zh) | 系统升级方法、终端及存储介质 | |
| CN114666613B (zh) | 一种网络直播方法及电子设备 | |
| CN120455532A (zh) | 消息推送方法和电子设备 | |
| CN120018124A (zh) | 一种配网方法与电子设备 | |
| CN119653349A (zh) | 连接方法、电子设备、产品及计算机可读介质 | |
| CN121858057A (zh) | 一种音频播放方法及电子设备 | |
| CN119232778A (zh) | 设备管理方法、电子设备及计算机可读存储介质 | |
| CN118368321A (zh) | 一种链路处理方法及电子设备 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination |