CN115426638A - 蓝牙设备配对方法及装置 - Google Patents
蓝牙设备配对方法及装置 Download PDFInfo
- Publication number
- CN115426638A CN115426638A CN202110523339.XA CN202110523339A CN115426638A CN 115426638 A CN115426638 A CN 115426638A CN 202110523339 A CN202110523339 A CN 202110523339A CN 115426638 A CN115426638 A CN 115426638A
- Authority
- CN
- China
- Prior art keywords
- terminal
- key
- bluetooth device
- bluetooth
- encrypted
- 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
Images
Classifications
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/50—Secure pairing of devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本公开提供一种蓝牙设备配对方法及装置。所述方法应用于第一终端,所述方法包括:在使用账号登录服务器后,获取服务器中的与账号对应的连接信息,连接信息包括蓝牙设备的MAC地址和密钥,获取位于第二终端周围的蓝牙设备发送的广播数据,响应于广播数据包括从服务器获取的密钥,根据从服务器获取的MAC地址和密钥,对第一终端和蓝牙设备进行配对。采用上述方法,能够控制蓝牙设备进入可配对模式,省去了用户长按蓝牙设备上的按键使得蓝牙设备进入可配对模式的操作,提高了用户的使用体验。
Description
技术领域
本公开涉及计算机通信技术领域,尤其涉及一种蓝牙设备配对方法及装置。
背景技术
蓝牙设备应用了蓝牙技术,免除了电线的牵绊,因此受到越来越多的用户的青睐。
一些蓝牙设备上设有按键,用户通过长按按键使蓝牙设备进入可配对模式。第二终端在搜索到蓝牙设备后,显示搜索到的蓝牙设备的设备信息,在接收到用户对设备信息的确认信息后,与具有该设备信息的蓝牙设备进行配对,在配对成功后,第二终端和蓝牙设备之间建立起了蓝牙连接。
在下次建立蓝牙设备和第二终端之间的蓝牙连接时,用户需要再次长按蓝牙设备上的按键才能使蓝牙设备进入可配对模式,导致用户操作繁琐,用户的使用体验较差。
发明内容
为克服相关技术中存在的问题,本公开提供了一种蓝牙设备配对方法及装置。
根据本公开实施例的第一方面,提供了一种蓝牙设备配对方法,应用于第一终端,所述方法包括:
在使用账号登录服务器后,获取所述服务器中的与所述账号对应的连接信息,所述连接信息包括蓝牙设备的MAC地址和密钥;
获取位于所述第一终端周围的蓝牙设备发送的广播数据;
响应于所述广播数据包括所述密钥,根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对。
可选地,所述根据所述蓝牙设备MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对,包括:
接收所述蓝牙设备发送的所述蓝牙设备的加密后的实际MAC地址;
使用所述密钥对所述加密后的实际MAC地址进行解密,获得所述实际MAC地址;
确定所述实际MAC地址与所述MAC地址是否一致,若一致,则开始对所述第一终端和所述蓝牙设备进行配对,若不一致,则不对所述第一终端和所述蓝牙设备进行配对。
可选地,所述方法还包括:
响应于所述广播数据包括所述密钥,输出所述蓝牙设备的确认通知;
接收对所述蓝牙设备的确认信息,开始执行根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对的操作。
根据本公开实施例的第二方面,提供了一种蓝牙设备配对方法,应用于第二终端,所述方法包括:
在使用账号登录服务器后,对所述第二终端和蓝牙设备进行配对;
响应于配对成功,生成密钥;
将所述密钥发送给所述蓝牙设备;
将所述账号、所述蓝牙设备的蓝牙设备MAC地址和所述密钥的组合信息发送给服务器。
可选地,所述在使用账号登录服务器后,对所述第二终端和蓝牙设备进行配对,包括:
在使用所述账号登录所述服务器后,接收所述蓝牙设备发送的第一通知,所述第一通知是所述蓝牙设备在根据所述第二终端的终端公钥和所述蓝牙设备的私钥,确定所述第二终端通过验证后发送的通知,所述第一通知包括所述蓝牙设备的MAC地址;
根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,对所述蓝牙设备进行验证;
响应于所述蓝牙设备验证通过,根据所述蓝牙设备的MAC地址向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发第二终端生成第一验证码,以及蓝牙设备生成第二验证码;
接收所述蓝牙设备发送的第二通知,所述第二通知是所述蓝牙设备在根据所述第二验证码确定所述第二终端通过验证后发送的通知;
根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
可选地,所述方法还包括:
获取所述蓝牙设备的蓝牙设备公钥;
根据所述第二终端的终端私钥和所述蓝牙设备公钥,生成第一密钥;
使用所述第一密钥对配对请求数据进行加密;
将加密后的配对请求数据和所述第二终端的终端公钥发送给所述蓝牙设备,使得所述蓝牙设备根据所述终端公钥和所述蓝牙设备私钥生成第二密钥,使用所述第二密钥对所述加密后的配对请求数据进行解密,响应于解密所述加密后的配对请求数据成功,使用所述第二密钥对配对请求响应数据进行加密,生成包括加密后的配对请求响应数据的第一通知,所述加密后的配对请求响应数据包括所述蓝牙设备的MAC地址,向所述第二终端发送所述第一通知。
可选地,所述根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,对所述蓝牙设备进行验证,包括:
使用所述第一密钥对所述第一通知中的所述加密后的配对请求响应数据进行解密;
响应于解密所述加密后的配对请求响应数据成功,确定所述蓝牙设备通过验证;
响应于解密所述加密后的配对请求响应数据失败,确定所述蓝牙设备未通过验证。
可选地,所述方法还包括:
使用所述第一密钥对所述第一验证码进行加密;
将加密后的第一验证码发送给所述蓝牙设备,使得所述蓝牙设备使用所述第二密钥对所述加密后的第一验证码进行解密,确定所述加密后的第一验证码的解密结果是否与所述第二验证码一致,若一致,则使用所述第二密钥对所述第二验证码进行加密,获得加密后的第二验证码,向所述第二终端发送包括所述加密后的第二验证码的所述第二通知。
可选地,所述根据所述第一验证码对所述蓝牙设备进行验证,包括:
使用所述第一密钥对所述第二通知中的所述加密后的第二验证码进行解密;
确定所述加密后的第二验证码的解密结果是否与所述第一验证码一致;
若一致,则确定所述蓝牙设备通过验证;
若不一致,则确定所述蓝牙设备未通过验证。
可选地,所述获取所述蓝牙设备的蓝牙设备公钥,包括:
接收所述蓝牙设备发送的所述蓝牙设备的设备信息;
获取所述服务器中的与所述设备信息对应的所述蓝牙设备公钥。
可选地,所述方法还包括:
响应于满足所述组合信息的条件,向所述服务器发送用于删除所述组合信息的指令,使得所述服务器根据所述指令删除内部存储的所述组合信息。
根据本公开实施例的第三方面,提供了一种蓝牙设备配对方法,应用于蓝牙设备,所述方法包括:
在接收到第二终端发送的终端公钥后,根据所述蓝牙设备的蓝牙设备私钥和所述终端公钥,对所述第二终端进行验证;
响应于所述第二终端验证通过,向所述第二终端发送第一通知,所述第一通知包括所述蓝牙设备的MAC地址,使得所述第二终端设备在根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,确定所述蓝牙设备验证通过后,根据所述第一通知包括的所述MAC地址,向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发所述第二终端生成第一验证码,以及所述蓝牙设备生成第二验证码;
根据所述第二验证码对所述第二终端进行验证;
响应于所述第二终端验证通过,向所述第二终端发送第二通知,所述第二通知用于触发所述第二终端根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
可选地,所述方法还包括:
接收所述第二终端发送的所述终端公钥和加密后的配对请求数据,所述加密后的配对请求数据是所述第二终端根据所述终端私钥和所述蓝牙设备公钥,生成第一密钥,使用所述第一密钥对所述配对请求数据进行加密后得到的数据;
所述根据所述蓝牙设备的蓝牙设备私钥和第二终端的终端公钥,对所述第二终端进行验证,包括:
根据所述蓝牙设备私钥和所述终端公钥,生成第二密钥;
使用所述第二密钥对所述加密后的配对请求数据进行解密;
响应于解密所述加密后的配对请求数据成功,确定所述第二终端通过验证;
响应于解密所述加密后的配对请求数据失败,确定所述第二终端未通过验证。
可选地,所述方法还包括:
接收所述第二终端发送的加密后的第一验证码,所述加密后的第一验证码是所述第二终端使用所述第一密钥对所述第一验证码进行加密后得到的;
所述根据所述第二验证码对所述第二终端进行验证,包括:
使用所述第二密钥对所述加密后的第一验证码进行解密;
确定解密结果是否与所述第二验证码一致;
若一致,则确定所述第二终端通过验证;
若不一致,则确定所述第二终端未通过验证。
可选地,所述方法还包括:
接收所述第二终端发送的加密后的密钥,所述加密后的密钥是所述第二终端在确定所述第二终端与所述蓝牙设备配对成功后,使用第一密钥对密钥进行加密后得到的;
使用所述第二密钥对所述加密后的密钥进行解密,获得所述密钥;
存储所述密钥。
根据本公开实施例的第四方面,提供了一种蓝牙设备配对装置,应用于第一终端,所述装置包括:
连接信息获取模块,被配置为在使用账号登录服务器后,获取所述服务器中的与所述账号对应的连接信息,所述连接信息包括蓝牙设备的MAC地址和密钥;
广播数据获取模块,被配置为获取位于所述第一终端周围的蓝牙设备发送的广播数据;
设备配对模块,被配置为响应于所述广播数据包括所述密钥,根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对。
可选地,所述设备配对模块,包括:
实际MAC地址接收子模块,被配置为接收所述蓝牙设备发送的所述蓝牙设备的加密后的实际MAC地址;
地址解密子模块,被配置为使用所述密钥对所述加密后的实际MAC地址进行解密,获得所述实际MAC地址;
地址确定子模块,被配置为确定所述实际MAC地址与所述MAC地址是否一致,若一致,则开始对所述第一终端和所述蓝牙设备进行配对,若不一致,则不对所述第一终端和所述蓝牙设备进行配对。
可选地,所述装置还包括:
通知输出模块,被配置为响应于所述广播数据包括所述密钥,输出所述蓝牙设备的确认通知;
确认信息接收模块,被配置为接收对所述蓝牙设备的确认信息,开始执行根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对的操作。
根据本公开实施例的第五方面,提供了一种蓝牙设备配对装置,应用于第二终端,所述装置包括:
终端配对模块,被配置为在使用账号登录服务器后,对所述第二终端和蓝牙设备进行配对;
密钥生成模块,被配置为响应于配对成功,生成密钥;
密钥发送模块,被配置为将所述密钥发送给所述蓝牙设备;
组合信息发送模块,被配置为将所述账号、所述蓝牙设备的蓝牙设备MAC地址和所述密钥的组合信息发送给服务器。
可选地,所述终端配对模块,包括:
第一通知接收子模块,被配置为在使用所述账号登录所述服务器后,接收所述蓝牙设备发送的第一通知,所述第一通知是所述蓝牙设备在根据所述第二终端的终端公钥和所述蓝牙设备的私钥,确定所述第二终端通过验证后发送的通知,所述第一通知包括所述蓝牙设备的MAC地址;
第一蓝牙设备验证子模块,被配置为根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,对所述蓝牙设备进行验证;
蓝牙配对请求发送子模块,被配置为响应于所述蓝牙设备验证通过,根据所述蓝牙设备的MAC地址向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发第二终端生成第一验证码,以及蓝牙设备生成第二验证码;
第二通知接收子模块,被配置为接收所述蓝牙设备发送的第二通知,所述第二通知是所述蓝牙设备在根据所述第二验证码确定所述第二终端通过验证后发送的通知;
第二蓝牙设备验证子模块,被配置为根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
可选地,所述装置还包括:
公钥获取模块,被配置为获取所述蓝牙设备的蓝牙设备公钥;
第一密钥生成模块,被配置为根据所述第二终端的终端私钥和所述蓝牙设备公钥,生成第一密钥;
配对请求数据加密模块,被配置为使用所述第一密钥对配对请求数据进行加密;
数据发送模块,被配置为将加密后的配对请求数据和所述第二终端的终端公钥发送给所述蓝牙设备,使得所述蓝牙设备根据所述终端公钥和所述蓝牙设备私钥生成第二密钥,使用所述第二密钥对所述加密后的配对请求数据进行解密,响应于解密所述加密后的配对请求数据成功,使用所述第二密钥对配对请求响应数据进行加密,生成包括加密后的配对请求响应数据的第一通知,所述加密后的配对请求响应数据包括所述蓝牙设备的MAC地址,向所述第二终端发送所述第一通知。
可选地,所述第一蓝牙设备验证子模块,包括:
配对请求响应数据解密单元,被配置为使用所述第一密钥对所述第一通知中的所述加密后的配对请求响应数据进行解密;
第一验证通过单元,被配置为响应于解密所述加密后的配对请求响应数据成功,确定所述蓝牙设备通过验证;
第一验证未通过单元,被配置为响应于解密所述加密后的配对请求响应数据失败,确定所述蓝牙设备未通过验证。
可选地,所述装置还包括:
第一验证码加密模块,被配置为使用所述第一密钥对所述第一验证码进行加密;
加密数据发送模块,被配置为将加密后的第一验证码发送给所述蓝牙设备,使得所述蓝牙设备使用所述第二密钥对所述加密后的第一验证码进行解密,确定所述加密后的第一验证码的解密结果是否与所述第二验证码一致,若一致,则使用所述第二密钥对所述第二验证码进行加密,获得加密后的第二验证码,向所述第二终端发送包括所述加密后的第二验证码的所述第二通知。
可选地,所述第二蓝牙设备验证子模块,包括:
第二验证码解密单元,被配置为使用所述第一密钥对所述第二通知中的所述加密后的第二验证码进行解密;
解密结果确定单元,被配置为确定所述加密后的第二验证码的解密结果是否与所述第一验证码一致;
第二验证通过单元,被配置为若一致,则确定所述蓝牙设备通过验证;
第二验证未通过单元,被配置为若不一致,则确定所述蓝牙设备未通过验证。
可选地,所述公钥获取模块,包括:
设备信息接收子模块,被配置为接收所述蓝牙设备发送的所述蓝牙设备的设备信息;
蓝牙设备公钥获取子模块,被配置为获取所述服务器中的与所述设备信息对应的所述蓝牙设备公钥。
可选地,所述装置还包括:
指令发送模块,被配置为响应于满足所述组合信息的条件,向所述服务器发送用于删除所述组合信息的指令,使得所述服务器根据所述指令删除内部存储的所述组合信息。
根据本公开实施例的第六方面,提供了一种蓝牙设备配对装置,应用于蓝牙设备,所述装置包括:
第二终端验证模块,被配置为在接收到第二终端发送的终端公钥后,根据所述蓝牙设备的蓝牙设备私钥和所述终端公钥,对所述第二终端进行验证;
第一通知发送模块,被配置为响应于所述第二终端验证通过,向所述第二终端发送第一通知,所述第一通知包括所述蓝牙设备的MAC地址,使得所述第二终端设备在根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,确定所述蓝牙设备验证通过后,根据所述第一通知包括的所述MAC地址,向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发所述第二终端生成第一验证码,以及所述蓝牙设备生成第二验证码;
终端验证模块,被配置为根据所述第二验证码对所述第二终端进行验证;
第二通知发送模块,被配置为响应于所述第二终端验证通过,向所述第二终端发送第二通知,所述第二通知用于触发所述第二终端根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
可选地,所述装置还包括:
请求数据接收模块,被配置为接收所述第二终端发送的所述终端公钥和加密后的配对请求数据,所述加密后的配对请求数据是所述第二终端根据所述终端私钥和所述蓝牙设备公钥,生成第一密钥,使用所述第一密钥对所述配对请求数据进行加密后得到的数据;
所述第二终端验证模块,包括:
第二密钥生成子模块,被配置为根据所述蓝牙设备私钥和所述终端公钥,生成第二密钥;
请求数据解密子模块,被配置为使用所述第二密钥对所述加密后的配对请求数据进行解密;
第一验证通过子模块,被配置为响应于解密所述加密后的配对请求数据成功,确定所述第二终端通过验证;
第一验证未通过子模块,被配置为响应于解密所述加密后的配对请求数据失败,确定所述第二终端未通过验证。
可选地,所述装置还包括:
验证码接收模块,被配置为接收所述第二终端发送的加密后的第一验证码,所述加密后的第一验证码是所述第二终端使用所述第一密钥对所述第一验证码进行加密后得到的;
所述终端验证模块,包括:
验证码解密子模块,被配置为使用所述第二密钥对所述加密后的第一验证码进行解密;
解密结果判断子模块,被配置为确定解密结果是否与所述第二验证码一致;
第二验证通过子模块,被配置为若一致,则确定所述第二终端通过验证;
第二验证未通过子模块,被配置为若不一致,则确定所述第二终端未通过验证。
可选地,所述装置还包括:
加密密钥接收模块,被配置为接收所述第二终端发送的加密后的密钥,所述加密后的密钥是所述第二终端在确定所述第二终端与所述蓝牙设备配对成功后,使用第一密钥对密钥进行加密后得到的;
加密密钥解密模块,被配置为使用所述第二密钥对所述加密后的密钥进行解密,获得所述密钥;
密钥存储模块,被配置为存储所述密钥。
根据本公开实施例的第七方面,提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一方面中任一项所述的方法,和/或,上述第二方面中任一项所述的方法。
根据本公开实施例的第八方面,提供了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第三方面中任一项所述的方法。
根据本公开实施例的第九方面,提供了一种终端,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现上述第一方面中任一项所述的方法,和/或,上述第二方面中任一项所述的方法。
根据本公开实施例的第十方面,提供了一种蓝牙设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现上述第三方面中任一项所述的方法。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开实施例中,在使用账号登录服务器后,获取服务器中的与账号对应的连接信息,连接信息包括蓝牙设备的MAC地址和密钥,获取位于第二终端周围的蓝牙设备发送的广播数据,响应于广播数据包括从服务器获取的密钥,根据从服务器获取的MAC地址和密钥,对第一终端和蓝牙设备进行配对。采用上述方法,能够控制蓝牙设备进入可配对模式,省去了用户长按蓝牙设备上的按键使得蓝牙设备进入可配对模式的操作,提高了用户的使用体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
图1是根据一示例性实施例示出的一种蓝牙设备配对方法流程图;
图2是根据一示例性实施例示出的另一种蓝牙设备配对方法流程图;
图3是根据一示例性实施例示出的另一种蓝牙设备配对方法流程图;
图4是根据一示例性实施例示出的一种UI菜单的示意图;
图5是根据一示例性实施例示出的一种蓝牙设备配对装置框图;
图6是根据一示例性实施例示出的另一种蓝牙设备配对装置框图;
图7是根据一示例性实施例示出的一种蓝牙设备配对装置框图;
图8是根据一示例性实施例示出的一种终端的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图1是根据一示例性实施例示出的一种蓝牙设备配对方法流程图,图1所示的方法应用于第一终端,第一终端可以是手机、平板、笔记本、可穿戴设备等,图1所示的方法包括:
在步骤101中,在使用账号登录服务器后,获取服务器中的与账号对应的连接信息,连接信息包括蓝牙设备的MAC地址和密钥。
第一终端使用账号登录服务器,第一终端在与蓝牙设备配对成功、建立蓝牙连接后,会获取账号、蓝牙设备的MAC地址(Media Access Control Addre ss)和密钥,密钥用于使用账号的第一终端和蓝牙设备在通过蓝牙进行通信时,对通信数据进行加密和解密。
第一终端将账号、蓝牙设备的MAC地址和密钥的组合信息上传给服务器,使得账号被再次使用时,使用账号的第一终端能够从服务器获取与账号对应的蓝牙设备的MAC地址和密钥。
蓝牙设备支持传统蓝牙技术和低功耗蓝牙技术,蓝牙设备可以是蓝牙耳机等。
在步骤102中,获取位于第一终端周围的蓝牙设备发送的广播数据。
低功耗蓝牙(Bluetooth Low Energy,BLE)具有功耗低的特点。蓝牙设备在与第一终端建立蓝牙连接之前,可以通过低功耗蓝牙发送广播数据,广播数据可以包括少量的数据信息。
在步骤103中,响应于广播数据包括从服务器获取的密钥,根据蓝牙设备的MAC地址和密钥,对第一终端和蓝牙设备进行配对。
对于在过去与使用账号的第一终端建立过蓝牙连接的蓝牙设备,蓝牙设备内存储有该密钥(即从服务器获取的密钥),这类蓝牙设备开机后,可以通过低功耗蓝牙发送广播数据,广播数据包括该密钥。蓝牙设备内存储的密钥可以以列表形式呈现。
第一终端在获取周围的蓝牙设备发送的广播数据后,确定广播数据是否包括该密钥,在确定广播数据包括从服务器获取的密钥后,根据蓝牙设备MAC地址和从服务器获取的密钥,确定是否对第一终端和蓝牙设备进行配对,若是,则对第一终端和蓝牙设备进行配对,若否,则不对第一终端和蓝牙设备进行配对。
在一些实施例中,第一终端根据蓝牙设备MAC地址和密钥,对第一终端和蓝牙设备进行配对,可以通过下面方式实现:
步骤a1、接收蓝牙设备发送的蓝牙设备的加密后的实际MAC地址。
步骤a2、使用密钥对加密后的实际MAC地址进行解密,获得实际MAC地址。
步骤a3、确定步骤a2中获得的实际MAC地址是否与从服务器获取的MAC地址一致,若一致,则开始对第一终端和蓝牙设备进行配对,若不一致,则不对第一终端和蓝牙设备进行配对。
在一些实施例中,在步骤a1-a3的基础上,第一终端根据蓝牙设备的MAC地址和密钥,对第一终端和蓝牙设备进行配对,还可以包括:
步骤a4、获取蓝牙设备的低功耗蓝牙地址。
蓝牙设备可以通过低功耗蓝牙广播低功耗蓝牙地址,第一终端可以通过低功耗蓝牙获得蓝牙设备的低功耗蓝牙地址。
步骤a5、使用密钥对低功耗蓝牙地址进行加密。
步骤a6、将加密后的低功耗蓝牙地址发送给蓝牙设备。
使得蓝牙设备使用内部的密钥对加密后的低功耗蓝牙地址进行解密,在确定解密后的低功耗蓝牙地址与蓝牙设备的实际低功耗蓝牙地址一致后,使用密钥对蓝牙设备的实际MAC地址进行加密,将加密后的实际MAC地址发送给第一终端。
在一些实施例中,对第一终端和蓝牙设备进行配对的操作,可以通过下面方式实现:
步骤b1、根据蓝牙设备的MAC地址向蓝牙设备发送蓝牙配对请求,蓝牙配对请求触发第一终端生成验证码1,以及蓝牙设备生成验证码2。
步骤b2、接收蓝牙设备发送的第二通知,第二通知是蓝牙设备在根据验证码2确定第二终端通过验证后发送的通知。
步骤b3、根据验证码1对蓝牙设备进行验证,响应于蓝牙设备通过验证,确定第一终端与蓝牙设备配对成功。
第二终端根据第二终端的终端私钥和蓝牙设备公钥,生成密码1,使用密码1对验证码1进行加密,将加密后的验证码1发送给蓝牙设备。
蓝牙设备本地存有密钥列表,密钥列表中包括至少一个密钥数据,在执行本步骤时,第二终端不会将第二终端的终端公钥发送给蓝牙设备,因此,蓝牙设备根据密钥列表中的密钥对加密后的验证码1进行解密,若解密成功,得到验证码1,确定验证码1和验证码2是否一致,若一致,则确定第二终端通过验证。
蓝牙设备根据蓝牙设备私钥和第二终端的终端公钥,生成密码2,使用密码2对验证码2进行加密,将加密后的验证码2发送给第二终端。第二终端使用密码1对加密后的验证码2进行解密,得到验证码2,确定验证码2和验证码1是否一致,若一致,则确定蓝牙设备通过验证。
在一些实施例中,响应于广播数据包括该密钥,输出蓝牙设备的确认通知,在接收对蓝牙设备的确认信息后,开始执行根据蓝牙设备MAC地址和密钥,向蓝牙设备发送请求的操作。
例如,响应于广播数据包括该密钥,弹出一窗口,窗口内显示“这是您在其他设备上连接过的耳机”,窗口内显示确定选项和取消选项,若接收到用户对确定选项的选择操作,则开始执行根据蓝牙设备MAC地址和密钥,对第一终端和蓝牙设备进行配对。
本实施例中,增加了用户确定步骤,用户可以根据自己意愿选择是否让第二终端与第二终端选出的蓝牙设备建立蓝牙连接,提高了用户的使用体验。
本公开实施例中,在使用账号登录服务器后,获取服务器中的与账号对应的连接信息,信息包括蓝牙设备的MAC地址和密钥,获取位于第二终端周围的蓝牙设备通过低功耗蓝牙发送的广播数据,响应于广播数据包括从服务器获取的密钥,根据蓝牙设备的MAC地址和密钥,对第一终端和蓝牙设备进行配对。采用上述方法,能够控制蓝牙设备进入可配对模式,省去了用户长按蓝牙设备上的按键使得蓝牙设备进入可配对模式的操作,提高了用户的使用体验。
图2是根据一示例性实施例示出的另一种蓝牙设备配对方法流程图,图2所示的方法应用于第二终端,第二终端可以是手机、平板、笔记本、可穿戴设备等,图2所示的方法包括:
在步骤201中,在使用账号登录服务器后,对第二终端和蓝牙设备进行配对。
在一些实施例中,对第二终端和蓝牙设备进行配对的操作,可以通过下面方式实现:
第一步骤,在使用该账号登录服务器后,接收蓝牙设备发送的第一通知,第一通知是蓝牙设备在根据第二终端生成的第二终端公钥和蓝牙设备的蓝牙设备私钥,确定第二终端通过验证后发送的通知,第一通知包括蓝牙设备的MAC地址,根据第二终端的第二终端私钥和蓝牙设备的蓝牙设备公钥,对蓝牙设备进行验证。
第二步骤,响应于蓝牙设备验证通过,根据蓝牙设备的MAC地址向蓝牙设备发送蓝牙配对请求,蓝牙配对请求触发第二终端(可以是第二终端协议栈)生成第一验证码,以及蓝牙设备(可以是蓝牙设备协议栈)生成第二验证码。
第三步骤,接收蓝牙设备发送的第二通知,第二通知是蓝牙设备在根据第二验证码确定第二终端通过验证后发送的通知。
第四步骤,根据第一验证码对蓝牙设备进行验证,响应于蓝牙设备通过验证,确定第二终端与蓝牙设备配对成功。
响应于蓝牙设备通过验证失败,确定第二终端与蓝牙设备配对失败。
本实施例中,第二终端和蓝牙设备可以通过低功耗蓝牙发送数据。
本实施例中,第二终端和蓝牙设备通过使用第二终端的终端公钥、第二终端的终端私钥、蓝牙设备公钥、蓝牙设备私钥、第一验证码和第二验证码,进行配对。
蓝牙设备公钥和蓝牙设备私钥可以是固定的,第二终端公钥和第二终端私钥可以是第二终端临时生成的。
在步骤202中,响应于配对成功,生成密钥。
生成的密钥可以称为Account Key。
例如,第二终端生成新的终端公钥和终端私钥,对新的终端公钥和终端私钥进行计算,将计算结果确定为密钥Account Key。又如,第二终端随机生成密钥Account Key。本实施例不对生成密钥Account Key的方式进行限定。
在步骤203中,将密钥发送给蓝牙设备。
在步骤204中,将账号、蓝牙设备的MAC地址和密钥的组合信息发送给服务器。
在一些实施例中,第二终端在接收到第一通知后,向蓝牙设备发送第一切换指令,第一切换指令用于指示蓝牙设备进行输入输出能力切换,使得蓝牙设备有权限获取第二验证码和发送第二通知;
第二终端在确定与蓝牙设备配对成功后,向蓝牙设备发送第二切换指令,第二切换指令用于指示蓝牙设备切换回原来使用的输入输出能力。
例如,蓝牙设备原来使用的输入输出能力(IO Capabilities)为NoInput/NoOutput,第二终端在接收到第一通知后,通过低功耗蓝牙,向蓝牙设备发送第一切换指令,使得蓝牙设备将IO Capabilities切换至Display/YesNo,第二终端在确定与蓝牙设备配对成功后,向蓝牙设备发送第二切换指令,使得蓝牙设备将IO Capabilities切换回原来使用的NoInput/NoOutput。
第二终端可以在接收到第一通知后,通过低功耗蓝牙,向蓝牙设备发送第一切换指令,
在一些实施例中,第二终端还可以执行以下操作:
步骤c1、获取蓝牙设备的蓝牙设备公钥。
例如,服务器中存储了蓝牙设备的设备信息、蓝牙设备公钥和蓝牙设备私钥的对应关系。
第二终端接收蓝牙设备发送的蓝牙设备的设备信息,获取服务器中的与该设备信息对应的蓝牙设备公钥。
第二终端接收蓝牙设备通过低功耗蓝牙发送的蓝牙设备的设备信息。
蓝牙设备的设备信息可以是蓝牙设备的标识,如蓝牙设备的设备型号、唯一编码等。
第二终端可以在打开蓝牙后,扫描到低功耗蓝牙服务,获取蓝牙设备通过低功耗蓝牙广播的设备型号,第二终端在根据蓝牙设备的设备型号,确定蓝牙设备为指定设备后,如确定蓝牙设备为指定厂商生产的设备,弹出相应通知,在接收到用户的确认信息后,临时生成终端私钥和终端公钥,从服务器获取蓝牙设备的蓝牙设备公钥,根据终端私钥和蓝牙设备公钥对蓝牙设备进行验证,以及将终端公钥发送给蓝牙设备,使得蓝牙设备根据蓝牙设备私钥和终端公钥对第二终端进行验证。
步骤c2、根据第二终端的终端私钥和蓝牙设备公钥,生成第一密钥。
可以使用预设算法,对终端私钥和蓝牙设备公钥进行计算,将计算结果确定为第一密钥。第一密钥可以称为AES Key1。
步骤c3、使用第一密钥对配对请求数据进行加密。
步骤c4、将加密后的配对请求数据和第二终端的终端公钥发送给蓝牙设备。
使得蓝牙设备根据终端公钥和蓝牙设备私钥生成第二密钥,使用第二密钥对加密后的配对请求数据进行解密,响应于对加密后的配对请求数据解密成功,使用第二密钥对配对请求响应数据进行加密,生成包括加密后的配对请求响应数据的第一通知,加密后的配对请求响应数据包括蓝牙设备的MAC地址,向第二终端发送第一通知。第二密钥可以称为AES Key2。
本实施例中,第二终端和蓝牙设备可以通过低功耗蓝牙发送数据。
下面对配对请求和第二终端的终端公钥的数据格式进行举例。表1.1示出了配对请求和终端公钥的数据格式,表1.2示出了配对请求的具体数据格式。
表1.1
字节 | 长度(位) | 描述 | 是否强制 |
0-15 | 128 | 配对请求 | 强制 |
16-79 | 512 | Public key | 可选 |
表1.2
表1.1和表1.2中的Seeker指的是第二终端,如手机,Provider指的是蓝牙设备,例如蓝牙耳机。
基于步骤c1-c4的设置,上述第一步骤中的根据第二终端的终端私钥和蓝牙设备公钥,对蓝牙设备进行验证,可以通过下面方式实现:首先,使用第一密钥对第一通知中的加密后的配对请求响应数据进行解密;其次,响应于对加密后的配对请求响应数据解密成功,确定蓝牙设备通过验证,反之,响应于对加密后的配对请求响应数据解密失败,确定蓝牙设备未通过验证。
本实施例中,第二终端确定出了第一密钥,基于此,步骤203中的将密钥发送给蓝牙设备,可以通过下面方式实现:使用第一密钥对密钥进行加密,将加密后的密钥发送给蓝牙设备。蓝牙设备使用内部的第二密钥对加密后的密钥进行解密,得到密钥,并对密钥进行存储。
蓝牙设备内可以设置列表Account key list,列表可以存储一定数量的密钥Account key,例如,列表可以存储两个密钥Account key,如果列表已满,则可以删除最先存入的密钥Account key,从而将新密钥Account key存入列表中。
下面对配对请求响应的数据格式进行举例。表1.3示出了配对请求响应的数据格式,表1.4示出了配对请求响应的具体数据格式。
表1.3
字节 | 长度(位) | 描述 | 备注 |
0-15 | 128 | 配对响应 | 配对响应数据发给第二终端 |
表1.4
字节 | 长度(位) | 数值 | 备注 |
0 | 8 | 0x01=Key-based Pairing Response | |
1-6 | 48 | Provider的BR/EDR地址 | |
7-15 | 72 | 随机数 |
表1.4中的Provider指的是蓝牙设备,例如蓝牙耳机,Provider的BR/EDR地址指的是蓝牙设备的传统蓝牙地址,即MAC地址。
在一些实施例中,第二终端还可以执行以下操作:
d1、使用第一密钥对第一验证码进行加密。
d2、将加密后的第一验证码发送给蓝牙设备。
使得蓝牙设备使用第二密钥对加密后的第一验证码进行解密,确定加密后的第一验证码的解密结果是否与第二验证码一致,若一致,则使用第二密钥对第二验证码进行加密,获得加密后的第二验证码,向第二终端发送包括加密后的第二验证码的第二通知。
第一验证码可以称为Passkey1,第二验证码可以称为Passkey2。
基于步骤d1和d2的设置,上述第四步骤中的根据第一验证码对蓝牙设备进行验证的操作,可以通过下面方式实现:首先,使用第一密钥对第二通知中的加密后的第二验证码进行解密;其次,确定加密后的第二验证码的解密结果是否与第一验证码一致;再次,若一致,则确定蓝牙设备通过验证,若不一致,则确定蓝牙设备未通过验证。
下面对加密后的验证码的数据格式进行举例。表1.5示出了加密后的验证码的数据格式,表1.6示出了加密后的验证码的具体数据格式。
表1.5
字节 | 长度(位) | 描述 |
0-15 | 128 | 加密后的Passkey |
表1.6
表1.6中的Seeker's Passkey指的是第二终端使用的第二验证码,Provider'sPasskey指的是蓝牙设备使用的第一验证码。
在一些实施例中,第二终端在将组合信息发送给服务器后,可以在满足删除组合信息的条件下,向服务器发送用于删除组合信息的指令,以使服务器根据该指令删除内部存储的组合信息。
例如,第二终端在接收到用户触发的用于删除组合信息的指令后,向服务器发送用于删除组合信息的指令。又如,设有预设时长,第二终端在确定服务器存储组合信息的时长达到预设时长后,自动向服务器发送用于删除组合信息的指令。
服务器在删除组合信息后,第二终端的UI菜单上显示的相关内容被删除。
需要说明的是,执行图2所示方法的第二终端与执行图1所示方法的第一终端,可以是同一个终端,也可以是不同的终端。
本公开实施例中,第二终端在使用账号登录服务器后,对第二终端和蓝牙设备进行配对,响应于配对成功,生成密钥,将密钥发送给蓝牙设备,使得蓝牙设备能够广播该密钥,将账号、蓝牙设备的MAC地址和密钥的组合信息发送给服务器,使得使用账号的终端能够从服务器获取与账号对应的蓝牙设备的MAC地址和密钥,能够执行图1所示的方法。
蓝牙设备在与第二终端进行配对的过程中,根据蓝牙设备私钥和终端公钥对第二终端进行一次验证,根据蓝牙设备生成的第二验证码对第二终端进行二次验证,在两次验证通过后,完成对第二终端的验证。
图3是根据一示例性实施例示出的一种蓝牙设备配对方法流程图,图3所示的方法应用于蓝牙设备,蓝牙设备可以是蓝牙耳机等设备,图3所示的方法可以包括:
在步骤301中,在接收到第二终端发送的终端公钥后,根据蓝牙设备的蓝牙设备私钥和终端公钥,对第二终端进行验证。
可以通过低功耗蓝牙,接收到第二终端发送的终端公钥。
在一些实施例中,第二终端根据终端私钥和蓝牙设备公钥,生成第一密钥,使用第一密钥对配对请求数据进行加密,得到加密后的配对请求数据,将加密后的配对请求数据发送给蓝牙设备。蓝牙设备可以接收第二终端通过低功耗蓝牙发送的终端公钥和加密后的配对请求数据。
在这种情况下,蓝牙设备根据蓝牙设备的蓝牙设备私钥和终端公钥,对第二终端进行验证,可以通过下面方式实现:首先,根据蓝牙设备私钥和终端公钥,生成第二密钥;其次,使用第二密钥对加密后的配对请求数据进行解密;再次,响应于对加密后的配对请求数据解密成功,确定第二终端通过验证,反之,响应于对加密后的配对请求数据解密失败,确定第二终端未通过验证。
可以使用预设算法,对蓝牙设备私钥和终端公钥进行计算,将计算结果确定为第二密钥。
在步骤302中,响应于第二终端验证通过,向第二终端发送第一通知,第一通知包括蓝牙设备的MAC地址。
使得第二终端设备在根据第二终端的终端私钥和蓝牙设备的蓝牙设备公钥,确定蓝牙设备验证通过后,根据第一通知包括的蓝牙设备的MAC地址,向蓝牙设备发送蓝牙配对请求,蓝牙配对请求触发第二终端(可以是第二终端协议栈)生成第一验证码,以及蓝牙设备(可以是蓝牙设备协议栈)生成第二验证码。
可以通过低功耗蓝牙,向第二终端发送第一通知。
在步骤303中,根据第二验证码对第二终端进行验证。
在一些实施例中,第二终端可以在获取到第二终端生成的第一验证码后,使用第一密钥对第一验证码进行加密,得到加密后的第一验证码,并将加密后的第一验证码发送给蓝牙设备。蓝牙设备可以接收第二终端发送的加密后的第一验证码。
在这种情况下,蓝牙设备根据第二验证码对第二终端进行验证,可以通过下面方式实现:首先,使用第二密钥对加密后的第一验证码进行解密;其次,确定解密结果是否与第二验证码一致;再次,若一致,则确定第二终端通过验证,反之,若不一致,则确定第二终端未通过验证。
在步骤304中,响应于第二终端验证通过,向第二终端发送第二通知,第二通知用于触发第二终端根据第一验证码对蓝牙设备进行验证,响应于蓝牙设备验证通过,确定第二终端与蓝牙设备配对成功。
可以通过低功耗蓝牙,向第二终端发送第二通知。
在一些实施例中,第二终端可以使用第二密钥对第二验证码进行加密,生成包括加密后的第二验证码的第二通知,将包括加密后的第二验证码的第二通知发送给第二终端。
第二终端使用第一密钥对加密后的第二验证码进行解密,得到第二验证码,确定第二验证码与第一验证码是否一致,若一致,则确定蓝牙设备验证通过,确定第二终端与蓝牙设备配对成功。
在一些实施例中,第二终端在确定与蓝牙设备配对成功后获取密钥,例如生成新的密钥,使用第一密钥对该密钥进行加密,得到加密后的密钥,将加密后的密钥发送给蓝牙设备。
蓝牙设备在接收第二终端发送的加密后的密钥后,使用第二密钥对加密后的密钥进行解密,获得密钥,存储密钥。蓝牙设备在后续开机过程中,可以通过低功耗蓝牙广播存储的密钥。蓝牙设备可以将密钥存储在密钥列表中。
本公开实施例中,蓝牙设备在与第二终端进行配对的过程中,根据蓝牙设备私钥和终端公钥对第二终端进行一次验证,根据蓝牙设备生成的第二验证码对第二终端进行二次验证,在两次验证通过后,完成对第二终端的验证。
下面对小米蓝牙快速配对协议进行介绍。
小米快速配对Xiaomi Fast Pair Service(XFPS)利用BLE发现周边的蓝牙Sink设备,以尽可能少的用户操作,建立起经典蓝牙配对和连接,并跟小米账号绑定,实现设备间漫游,提高用户体验。
主要功能有:周边有Sink设备时,手机主动显示通知;Sink设备手机账号绑定;其他手机登陆了小米账号,自动连接Sink设备;可以对Sink设备重命名;Sink设备Firmware可升级时,手机显示通知。
术语Terminology:BLE:Bluetooth Low Energy;GATT:GENERIC ATTRIBUTE。
角色定义:Seeker蓝牙Source设备,手机,平板电脑等;Provider蓝牙Sink设备,耳机,车载,音箱等。
定义小米快速配对Service
Service | UUID |
Xiaomi Fast Pair Service | 0xFD2D |
云账号Cloud Account
耳机在云端注册,并分配Model ID,Public/Private Key密钥对。
云端通过算法,为每个Provider分配:
Seeker
在小米账号下增加UI菜单“连接设备管理”,登陆账号后,自动向云端查询绑定过的蓝牙耳机,显示在设备列表中。用户点击进入后可以查看设备列表,用户可以删除一个或全部设备。图4是根据一示例性实施例示出的一种UI菜单的示意图。
Provider
Provider提供小米快速配对Service
Provider需预留80字节存储5个128位的account key。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。
其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。
与前述应用功能实现方法实施例相对应,本公开还提供了应用功能实现装置及相应的电子设备的实施例。
图5是根据一示例性实施例示出的一种蓝牙设备配对装置框图,所述装置可以应用于第一终端,所述装置可以包括:
连接信息获取模块41,被配置为在使用账号登录服务器后,获取所述服务器中的与所述账号对应的连接信息,所述连接信息包括蓝牙设备的MAC地址和密钥;
广播数据获取模块42,被配置为获取位于所述第一终端周围的蓝牙设备发送的广播数据;
设备配对模块43,被配置为响应于所述广播数据包括所述密钥,根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对。
在一个可选的实施例中,在图5所示的蓝牙设备配对装置的基础上,所述设备配对模块43,可以包括:
实际MAC地址接收子模块,被配置为接收所述蓝牙设备发送的所述蓝牙设备的加密后的实际MAC地址;
地址解密子模块,被配置为使用所述密钥对所述加密后的实际MAC地址进行解密,获得所述实际MAC地址;
地址确定子模块,被配置为确定所述实际MAC地址与所述MAC地址是否一致,若一致,则开始对所述第一终端和所述蓝牙设备进行配对,若不一致,则不对所述第一终端和所述蓝牙设备进行配对。
在一个可选的实施例中,在图5所示的蓝牙设备配对装置的基础上,所述装置还可以包括:
通知输出模块,被配置为响应于所述广播数据包括所述密钥,输出所述蓝牙设备的确认通知;
确认信息接收模块,被配置为接收对所述蓝牙设备的确认信息,开始执行根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对的操作。
图6是根据一示例性实施例示出的另一种蓝牙设备配对装置框图,所述装置可以应用于第二终端,所述装置可以包括:
终端配对模块51,被配置为在使用账号登录服务器后,对所述第二终端和蓝牙设备进行配对;
密钥生成模块52,被配置为响应于配对成功,生成密钥;
密钥发送模块53,被配置为将所述密钥发送给所述蓝牙设备;
组合信息发送模块54,被配置为将所述账号、所述蓝牙设备的蓝牙设备MAC地址和所述密钥的组合信息发送给服务器。
在一个可选的实施例中,在图6所示的蓝牙设备配对装置的基础上,所述终端配对模块51,可以包括:
第一通知接收子模块,被配置为在使用所述账号登录所述服务器后,接收所述蓝牙设备发送的第一通知,所述第一通知是所述蓝牙设备在根据所述第二终端的终端公钥和所述蓝牙设备的私钥,确定所述第二终端通过验证后发送的通知,所述第一通知包括所述蓝牙设备的MAC地址;
第一蓝牙设备验证子模块,被配置为根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,对所述蓝牙设备进行验证;
蓝牙配对请求发送子模块,被配置为响应于所述蓝牙设备验证通过,根据所述蓝牙设备的MAC地址向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发第二终端生成第一验证码,以及蓝牙设备生成第二验证码;
第二通知接收子模块,被配置为接收所述蓝牙设备发送的第二通知,所述第二通知是所述蓝牙设备在根据所述第二验证码确定所述第二终端通过验证后发送的通知;
第二蓝牙设备验证子模块,被配置为根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
在一个可选的实施例中,所述装置还可以包括:
公钥获取模块,被配置为获取所述蓝牙设备的蓝牙设备公钥;
第一密钥生成模块,被配置为根据所述第二终端的终端私钥和所述蓝牙设备公钥,生成第一密钥;
配对请求数据加密模块,被配置为使用所述第一密钥对配对请求数据进行加密;
数据发送模块,被配置为将加密后的配对请求数据和所述第二终端的终端公钥发送给所述蓝牙设备,使得所述蓝牙设备根据所述终端公钥和所述蓝牙设备私钥生成第二密钥,使用所述第二密钥对所述加密后的配对请求数据进行解密,响应于解密所述加密后的配对请求数据成功,使用所述第二密钥对配对请求响应数据进行加密,生成包括加密后的配对请求响应数据的第一通知,所述加密后的配对请求响应数据包括所述蓝牙设备的MAC地址,向所述第二终端发送所述第一通知。
在一个可选的实施例中,所述第一蓝牙设备验证子模块,可以包括:
配对请求响应数据解密单元,被配置为使用所述第一密钥对所述第一通知中的所述加密后的配对请求响应数据进行解密;
第一验证通过单元,被配置为响应于解密所述加密后的配对请求响应数据成功,确定所述蓝牙设备通过验证;
第一验证未通过单元,被配置为响应于解密所述加密后的配对请求响应数据失败,确定所述蓝牙设备未通过验证。
在一个可选的实施例中,所述装置还可以包括:
第一验证码加密模块,被配置为使用所述第一密钥对所述第一验证码进行加密;
加密数据发送模块,被配置为将加密后的第一验证码发送给所述蓝牙设备,使得所述蓝牙设备使用所述第二密钥对所述加密后的第一验证码进行解密,确定所述加密后的第一验证码的解密结果是否与所述第二验证码一致,若一致,则使用所述第二密钥对所述第二验证码进行加密,获得加密后的第二验证码,向所述第二终端发送包括所述加密后的第二验证码的所述第二通知。
在一个可选的实施例中,所述第二蓝牙设备验证子模块,可以包括:
第二验证码解密单元,被配置为使用所述第一密钥对所述第二通知中的所述加密后的第二验证码进行解密;
解密结果确定单元,被配置为确定所述加密后的第二验证码的解密结果是否与所述第一验证码一致;
第二验证通过单元,被配置为若一致,则确定所述蓝牙设备通过验证;
第二验证未通过单元,被配置为若不一致,则确定所述蓝牙设备未通过验证。
在一个可选的实施例中,所述公钥获取模块,可以包括:
设备信息接收子模块,被配置为接收所述蓝牙设备发送的所述蓝牙设备的设备信息;
蓝牙设备公钥获取子模块,被配置为获取所述服务器中的与所述设备信息对应的所述蓝牙设备公钥。
在一个可选的实施例中,在图6所示的蓝牙设备配对装置的基础上,所述装置还可以包括:
指令发送模块,被配置为响应于满足所述组合信息的条件,向所述服务器发送用于删除所述组合信息的指令,使得所述服务器根据所述指令删除内部存储的所述组合信息。
图7是根据一示例性实施例示出的另一种蓝牙设备配对装置框图,所述装置可以应用于蓝牙设备,所述装置可以包括:
第二终端验证模块61,被配置为在接收到第二终端发送的终端公钥后,根据所述蓝牙设备的蓝牙设备私钥和所述终端公钥,对所述第二终端进行验证;
第一通知发送模块62,被配置为响应于所述第二终端验证通过,向所述第二终端发送第一通知,所述第一通知包括所述蓝牙设备的MAC地址,使得所述第二终端设备在根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,确定所述蓝牙设备验证通过后,根据所述第一通知包括的所述MAC地址,向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发所述第二终端生成第一验证码,以及所述蓝牙设备生成第二验证码;
终端验证模块63,被配置为根据所述第二验证码对所述第二终端进行验证;
第二通知发送模块64,被配置为响应于所述第二终端验证通过,向所述第二终端发送第二通知,所述第二通知用于触发所述第二终端根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
在一个可选的实施例中,在图7所示的蓝牙设备配对装置的基础上,所述装置还可以包括:
请求数据接收模块,被配置为接收所述第二终端发送的所述终端公钥和加密后的配对请求数据,所述加密后的配对请求数据是所述第二终端根据所述终端私钥和所述蓝牙设备公钥,生成第一密钥,使用所述第一密钥对所述配对请求数据进行加密后得到的数据;
所述第二终端验证模块61,可以包括:
第二密钥生成子模块,被配置为根据所述蓝牙设备私钥和所述终端公钥,生成第二密钥;
请求数据解密子模块,被配置为使用所述第二密钥对所述加密后的配对请求数据进行解密;
第一验证通过子模块,被配置为响应于解密所述加密后的配对请求数据成功,确定所述第二终端通过验证;
第一验证未通过子模块,被配置为响应于解密所述加密后的配对请求数据失败,确定所述第二终端未通过验证。
在一个可选的实施例中,在图6所示的蓝牙设备配对装置的基础上,所述装置还可以包括:
验证码接收模块,被配置为接收所述第二终端发送的加密后的第一验证码,所述加密后的第一验证码是所述第二终端使用所述第一密钥对所述第一验证码进行加密后得到的;
所述终端验证模块63,可以包括:
验证码解密子模块,被配置为使用所述第二密钥对所述加密后的第一验证码进行解密;
解密结果判断子模块,被配置为确定解密结果是否与所述第二验证码一致;
第二验证通过子模块,被配置为若一致,则确定所述第二终端通过验证;
第二验证未通过子模块,被配置为若不一致,则确定所述第二终端未通过验证。
在一个可选的实施例中,在图6所示的蓝牙设备配对装置的基础上,所述装置还可以包括:
加密密钥接收模块,被配置为接收所述第二终端发送的加密后的密钥,所述加密后的密钥是所述第二终端在确定所述第二终端与所述蓝牙设备配对成功后,使用第一密钥对密钥进行加密后得到的;
加密密钥解密模块,被配置为使用所述第二密钥对所述加密后的密钥进行解密,获得所述密钥;
密钥存储模块,被配置为存储所述密钥。
图8是根据一示例性实施例示出的一种空调器1600的结构示意图。参照图8,空调器1600可以包括以下一个或多个组件:处理组件1602,存储器1604,电源组件1606,多媒体组件1608,音频组件1610,输入/输出(I/O)的接口1612,传感器组件1614,以及通信组件1616。
处理组件1602通常控制空调器1600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件1602可以包括一个或多个处理器1620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件1602可以包括一个或多个模块,便于处理组件1602和其他组件之间的交互。例如,处理组件1602可以包括多媒体模块,以方便多媒体组件1608和处理组件1602之间的交互。
存储器1604被配置为存储各种类型的数据以支持在空调器1600的操作。这些数据的示例包括用于在空调器1600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器1604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件1606为空调器1600的各种组件提供电力。电源组件1606可以包括电源管理系统,一个或多个电源,及其他与为空调器1600生成、管理和分配电力相关联的组件。
多媒体组件1608包括在上述空调器1600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。上述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与上述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件1608包括一个前置摄像头和/或后置摄像头。当空调器1600处于操作模式,如调整模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件1610被配置为输出和/或输入音频信号。例如,音频组件1610包括一个麦克风(MIC),当空调器1600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器1604或经由通信组件1616发送。在一些实施例中,音频组件1610还包括一个扬声器,用于输出音频信号。
I/O接口1612为处理组件1602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件1614包括一个或多个传感器,用于为空调器1600提供各个方面的状态评估。例如,传感器组件1614可以检测到空调器1600的打开/关闭状态,组件的相对定位,例如上述组件为空调器1600的显示器和小键盘,传感器组件1614还可以检测空调器1600或空调器1600一个组件的位置改变,用户与空调器1600接触的存在或不存在,空调器1600方位或加速/减速和空调器1600的温度变化。传感器组件1614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件1614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件1614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件1616被配置为便于空调器1600和其他设备之间有线或无线方式的通信。空调器1600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件1616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,上述通信组件1616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,空调器1600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种非临时性计算机可读存储介质,例如包括指令的存储器1604,当存储介质中的指令由空调器1600的处理器1620执行时,使得空调器1600能够执行蓝牙设备配对方法,该方法包括:在使用账号登录服务器后,获取所述服务器中的与所述账号对应的连接信息,所述连接信息包括蓝牙设备的MAC地址和密钥;获取位于所述第一终端周围的蓝牙设备发送的广播数据;响应于所述广播数据包括所述密钥,根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对。
在使用账号登录服务器后,获取所述服务器中的与所述账号对应的信息,所述信息包括蓝牙设备MAC地址和密钥;在获取位于所述第一终端周围的蓝牙设备通过低功耗蓝牙发送的广播数据后,确定所述广播数据是否包括所述密钥;响应于所述广播数据包括所述密钥,根据所述蓝牙设备MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对。
所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (34)
1.一种蓝牙设备配对方法,其特征在于,应用于第一终端,所述方法包括:
在使用账号登录服务器后,获取所述服务器中的与所述账号对应的连接信息,所述连接信息包括蓝牙设备的MAC地址和密钥;
获取位于所述第一终端周围的蓝牙设备发送的广播数据;
响应于所述广播数据包括所述密钥,根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对。
2.根据权利要求1所述的方法,其特征在于,所述根据所述蓝牙设备MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对,包括:
接收所述蓝牙设备发送的所述蓝牙设备的加密后的实际MAC地址;
使用所述密钥对所述加密后的实际MAC地址进行解密,获得所述实际MAC地址;
确定所述实际MAC地址与所述MAC地址是否一致,若一致,则开始对所述第一终端和所述蓝牙设备进行配对,若不一致,则不对所述第一终端和所述蓝牙设备进行配对。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述广播数据包括所述密钥,输出所述蓝牙设备的确认通知;
接收对所述蓝牙设备的确认信息,开始执行根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对的操作。
4.一种蓝牙设备配对方法,其特征在于,应用于第二终端,所述方法包括:
在使用账号登录服务器后,对所述第二终端和蓝牙设备进行配对;
响应于配对成功,生成密钥;
将所述密钥发送给所述蓝牙设备;
将所述账号、所述蓝牙设备的蓝牙设备MAC地址和所述密钥的组合信息发送给服务器。
5.根据权利要求4所述的方法,其特征在于,所述在使用账号登录服务器后,对所述第二终端和蓝牙设备进行配对,包括:
在使用所述账号登录所述服务器后,接收所述蓝牙设备发送的第一通知,所述第一通知是所述蓝牙设备在根据所述第二终端的终端公钥和所述蓝牙设备的私钥,确定所述第二终端通过验证后发送的通知,所述第一通知包括所述蓝牙设备的MAC地址;
根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,对所述蓝牙设备进行验证;
响应于所述蓝牙设备验证通过,根据所述蓝牙设备的MAC地址向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发第二终端生成第一验证码,以及蓝牙设备生成第二验证码;
接收所述蓝牙设备发送的第二通知,所述第二通知是所述蓝牙设备在根据所述第二验证码确定所述第二终端通过验证后发送的通知;
根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
获取所述蓝牙设备的蓝牙设备公钥;
根据所述第二终端的终端私钥和所述蓝牙设备公钥,生成第一密钥;
使用所述第一密钥对配对请求数据进行加密;
将加密后的配对请求数据和所述第二终端的终端公钥发送给所述蓝牙设备,使得所述蓝牙设备根据所述终端公钥和所述蓝牙设备私钥生成第二密钥,使用所述第二密钥对所述加密后的配对请求数据进行解密,响应于解密所述加密后的配对请求数据成功,使用所述第二密钥对配对请求响应数据进行加密,生成包括加密后的配对请求响应数据的第一通知,所述加密后的配对请求响应数据包括所述蓝牙设备的MAC地址,向所述第二终端发送所述第一通知。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,对所述蓝牙设备进行验证,包括:
使用所述第一密钥对所述第一通知中的所述加密后的配对请求响应数据进行解密;
响应于解密所述加密后的配对请求响应数据成功,确定所述蓝牙设备通过验证;
响应于解密所述加密后的配对请求响应数据失败,确定所述蓝牙设备未通过验证。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
使用所述第一密钥对所述第一验证码进行加密;
将加密后的第一验证码发送给所述蓝牙设备,使得所述蓝牙设备使用所述第二密钥对所述加密后的第一验证码进行解密,确定所述加密后的第一验证码的解密结果是否与所述第二验证码一致,若一致,则使用所述第二密钥对所述第二验证码进行加密,获得加密后的第二验证码,向所述第二终端发送包括所述加密后的第二验证码的所述第二通知。
9.根据权利要求8所述的方法,其特征在于,所述根据所述第一验证码对所述蓝牙设备进行验证,包括:
使用所述第一密钥对所述第二通知中的所述加密后的第二验证码进行解密;
确定所述加密后的第二验证码的解密结果是否与所述第一验证码一致;
若一致,则确定所述蓝牙设备通过验证;
若不一致,则确定所述蓝牙设备未通过验证。
10.根据权利要求6所述的方法,其特征在于,所述获取所述蓝牙设备的蓝牙设备公钥,包括:
接收所述蓝牙设备发送的所述蓝牙设备的设备信息;
获取所述服务器中的与所述设备信息对应的所述蓝牙设备公钥。
11.根据权利要求4所述的方法,其特征在于,所述方法还包括:
响应于满足所述组合信息的条件,向所述服务器发送用于删除所述组合信息的指令,使得所述服务器根据所述指令删除内部存储的所述组合信息。
12.一种蓝牙设备配对方法,其特征在于,应用于蓝牙设备,所述方法包括:
在接收到第二终端发送的终端公钥后,根据所述蓝牙设备的蓝牙设备私钥和所述终端公钥,对所述第二终端进行验证;
响应于所述第二终端验证通过,向所述第二终端发送第一通知,所述第一通知包括所述蓝牙设备的MAC地址,使得所述第二终端设备在根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,确定所述蓝牙设备验证通过后,根据所述第一通知包括的所述MAC地址,向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发所述第二终端生成第一验证码,以及所述蓝牙设备生成第二验证码;
根据所述第二验证码对所述第二终端进行验证;
响应于所述第二终端验证通过,向所述第二终端发送第二通知,所述第二通知用于触发所述第二终端根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
接收所述第二终端发送的所述终端公钥和加密后的配对请求数据,所述加密后的配对请求数据是所述第二终端根据所述终端私钥和所述蓝牙设备公钥,生成第一密钥,使用所述第一密钥对所述配对请求数据进行加密后得到的数据;
所述根据所述蓝牙设备的蓝牙设备私钥和第二终端的终端公钥,对所述第二终端进行验证,包括:
根据所述蓝牙设备私钥和所述终端公钥,生成第二密钥;
使用所述第二密钥对所述加密后的配对请求数据进行解密;
响应于解密所述加密后的配对请求数据成功,确定所述第二终端通过验证;
响应于解密所述加密后的配对请求数据失败,确定所述第二终端未通过验证。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
接收所述第二终端发送的加密后的第一验证码,所述加密后的第一验证码是所述第二终端使用所述第一密钥对所述第一验证码进行加密后得到的;
所述根据所述第二验证码对所述第二终端进行验证,包括:
使用所述第二密钥对所述加密后的第一验证码进行解密;
确定解密结果是否与所述第二验证码一致;
若一致,则确定所述第二终端通过验证;
若不一致,则确定所述第二终端未通过验证。
15.根据权利要求13所述的方法,其特征在于,所述方法还包括:
接收所述第二终端发送的加密后的密钥,所述加密后的密钥是所述第二终端在确定所述第二终端与所述蓝牙设备配对成功后,使用第一密钥对密钥进行加密后得到的;
使用所述第二密钥对所述加密后的密钥进行解密,获得所述密钥;
存储所述密钥。
16.一种蓝牙设备配对装置,其特征在于,应用于第一终端,所述装置包括:
连接信息获取模块,被配置为在使用账号登录服务器后,获取所述服务器中的与所述账号对应的连接信息,所述连接信息包括蓝牙设备的MAC地址和密钥;
广播数据获取模块,被配置为获取位于所述第一终端周围的蓝牙设备发送的广播数据;
设备配对模块,被配置为响应于所述广播数据包括所述密钥,根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对。
17.根据权利要求16所述的装置,其特征在于,所述设备配对模块,包括:
实际MAC地址接收子模块,被配置为接收所述蓝牙设备发送的所述蓝牙设备的加密后的实际MAC地址;
地址解密子模块,被配置为使用所述密钥对所述加密后的实际MAC地址进行解密,获得所述实际MAC地址;
地址确定子模块,被配置为确定所述实际MAC地址与所述MAC地址是否一致,若一致,则开始对所述第一终端和所述蓝牙设备进行配对,若不一致,则不对所述第一终端和所述蓝牙设备进行配对。
18.根据权利要求16所述的装置,其特征在于,所述装置还包括:
通知输出模块,被配置为响应于所述广播数据包括所述密钥,输出所述蓝牙设备的确认通知;
确认信息接收模块,被配置为接收对所述蓝牙设备的确认信息,开始执行根据所述MAC地址和所述密钥,对所述第一终端和所述蓝牙设备进行配对的操作。
19.一种蓝牙设备配对装置,其特征在于,应用于第二终端,所述装置包括:
终端配对模块,被配置为在使用账号登录服务器后,对所述第二终端和蓝牙设备进行配对;
密钥生成模块,被配置为响应于配对成功,生成密钥;
密钥发送模块,被配置为将所述密钥发送给所述蓝牙设备;
组合信息发送模块,被配置为将所述账号、所述蓝牙设备的蓝牙设备MAC地址和所述密钥的组合信息发送给服务器。
20.根据权利要求19所述的装置,其特征在于,所述终端配对模块,包括:
第一通知接收子模块,被配置为在使用所述账号登录所述服务器后,接收所述蓝牙设备发送的第一通知,所述第一通知是所述蓝牙设备在根据所述第二终端的终端公钥和所述蓝牙设备的私钥,确定所述第二终端通过验证后发送的通知,所述第一通知包括所述蓝牙设备的MAC地址;
第一蓝牙设备验证子模块,被配置为根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,对所述蓝牙设备进行验证;
蓝牙配对请求发送子模块,被配置为响应于所述蓝牙设备验证通过,根据所述蓝牙设备的MAC地址向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发第二终端生成第一验证码,以及蓝牙设备生成第二验证码;
第二通知接收子模块,被配置为接收所述蓝牙设备发送的第二通知,所述第二通知是所述蓝牙设备在根据所述第二验证码确定所述第二终端通过验证后发送的通知;
第二蓝牙设备验证子模块,被配置为根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
21.根据权利要求20所述的装置,其特征在于,所述装置还包括:
公钥获取模块,被配置为获取所述蓝牙设备的蓝牙设备公钥;
第一密钥生成模块,被配置为根据所述第二终端的终端私钥和所述蓝牙设备公钥,生成第一密钥;
配对请求数据加密模块,被配置为使用所述第一密钥对配对请求数据进行加密;
数据发送模块,被配置为将加密后的配对请求数据和所述第二终端的终端公钥发送给所述蓝牙设备,使得所述蓝牙设备根据所述终端公钥和所述蓝牙设备私钥生成第二密钥,使用所述第二密钥对所述加密后的配对请求数据进行解密,响应于解密所述加密后的配对请求数据成功,使用所述第二密钥对配对请求响应数据进行加密,生成包括加密后的配对请求响应数据的第一通知,所述加密后的配对请求响应数据包括所述蓝牙设备的MAC地址,向所述第二终端发送所述第一通知。
22.根据权利要求21所述的装置,其特征在于,所述第一蓝牙设备验证子模块,包括:
配对请求响应数据解密单元,被配置为使用所述第一密钥对所述第一通知中的所述加密后的配对请求响应数据进行解密;
第一验证通过单元,被配置为响应于解密所述加密后的配对请求响应数据成功,确定所述蓝牙设备通过验证;
第一验证未通过单元,被配置为响应于解密所述加密后的配对请求响应数据失败,确定所述蓝牙设备未通过验证。
23.根据权利要求21所述的装置,其特征在于,所述装置还包括:
第一验证码加密模块,被配置为使用所述第一密钥对所述第一验证码进行加密;
加密数据发送模块,被配置为将加密后的第一验证码发送给所述蓝牙设备,使得所述蓝牙设备使用所述第二密钥对所述加密后的第一验证码进行解密,确定所述加密后的第一验证码的解密结果是否与所述第二验证码一致,若一致,则使用所述第二密钥对所述第二验证码进行加密,获得加密后的第二验证码,向所述第二终端发送包括所述加密后的第二验证码的所述第二通知。
24.根据权利要求23所述的装置,其特征在于,所述第二蓝牙设备验证子模块,包括:
第二验证码解密单元,被配置为使用所述第一密钥对所述第二通知中的所述加密后的第二验证码进行解密;
解密结果确定单元,被配置为确定所述加密后的第二验证码的解密结果是否与所述第一验证码一致;
第二验证通过单元,被配置为若一致,则确定所述蓝牙设备通过验证;
第二验证未通过单元,被配置为若不一致,则确定所述蓝牙设备未通过验证。
25.根据权利要求21所述的装置,其特征在于,所述公钥获取模块,包括:
设备信息接收子模块,被配置为接收所述蓝牙设备发送的所述蓝牙设备的设备信息;
蓝牙设备公钥获取子模块,被配置为获取所述服务器中的与所述设备信息对应的所述蓝牙设备公钥。
26.根据权利要求19所述的装置,其特征在于,所述装置还包括:
指令发送模块,被配置为响应于满足所述组合信息的条件,向所述服务器发送用于删除所述组合信息的指令,使得所述服务器根据所述指令删除内部存储的所述组合信息。
27.一种蓝牙设备配对装置,其特征在于,应用于蓝牙设备,所述装置包括:
第二终端验证模块,被配置为在接收到第二终端发送的终端公钥后,根据所述蓝牙设备的蓝牙设备私钥和所述终端公钥,对所述第二终端进行验证;
第一通知发送模块,被配置为响应于所述第二终端验证通过,向所述第二终端发送第一通知,所述第一通知包括所述蓝牙设备的MAC地址,使得所述第二终端设备在根据所述第二终端的终端私钥和所述蓝牙设备的蓝牙设备公钥,确定所述蓝牙设备验证通过后,根据所述第一通知包括的所述MAC地址,向所述蓝牙设备发送蓝牙配对请求,所述蓝牙配对请求触发所述第二终端生成第一验证码,以及所述蓝牙设备生成第二验证码;
终端验证模块,被配置为根据所述第二验证码对所述第二终端进行验证;
第二通知发送模块,被配置为响应于所述第二终端验证通过,向所述第二终端发送第二通知,所述第二通知用于触发所述第二终端根据所述第一验证码对所述蓝牙设备进行验证,响应于所述蓝牙设备通过验证,确定所述第二终端与所述蓝牙设备配对成功。
28.根据权利要求27所述的装置,其特征在于,所述装置还包括:
请求数据接收模块,被配置为接收所述第二终端发送的所述终端公钥和加密后的配对请求数据,所述加密后的配对请求数据是所述第二终端根据所述终端私钥和所述蓝牙设备公钥,生成第一密钥,使用所述第一密钥对所述配对请求数据进行加密后得到的数据;
所述第二终端验证模块,包括:
第二密钥生成子模块,被配置为根据所述蓝牙设备私钥和所述终端公钥,生成第二密钥;
请求数据解密子模块,被配置为使用所述第二密钥对所述加密后的配对请求数据进行解密;
第一验证通过子模块,被配置为响应于解密所述加密后的配对请求数据成功,确定所述第二终端通过验证;
第一验证未通过子模块,被配置为响应于解密所述加密后的配对请求数据失败,确定所述第二终端未通过验证。
29.根据权利要求28所述的装置,其特征在于,所述装置还包括:
验证码接收模块,被配置为接收所述第二终端发送的加密后的第一验证码,所述加密后的第一验证码是所述第二终端使用所述第一密钥对所述第一验证码进行加密后得到的;
所述终端验证模块,包括:
验证码解密子模块,被配置为使用所述第二密钥对所述加密后的第一验证码进行解密;
解密结果判断子模块,被配置为确定解密结果是否与所述第二验证码一致;
第二验证通过子模块,被配置为若一致,则确定所述第二终端通过验证;
第二验证未通过子模块,被配置为若不一致,则确定所述第二终端未通过验证。
30.根据权利要求28所述的装置,其特征在于,所述装置还包括:
加密密钥接收模块,被配置为接收所述第二终端发送的加密后的密钥,所述加密后的密钥是所述第二终端在确定所述第二终端与所述蓝牙设备配对成功后,使用第一密钥对密钥进行加密后得到的;
加密密钥解密模块,被配置为使用所述第二密钥对所述加密后的密钥进行解密,获得所述密钥;
密钥存储模块,被配置为存储所述密钥。
31.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-3中任一项所述的方法,和/或,权利要求4-11中任一项所述的方法。
32.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求12-15中任一项所述的方法。
33.一种终端,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1-3中任一项所述的方法,和/或,权利要求4-11中任一项所述的方法。
34.一种蓝牙设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求12-15中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110523339.XA CN115426638A (zh) | 2021-05-13 | 2021-05-13 | 蓝牙设备配对方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110523339.XA CN115426638A (zh) | 2021-05-13 | 2021-05-13 | 蓝牙设备配对方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115426638A true CN115426638A (zh) | 2022-12-02 |
Family
ID=84230575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110523339.XA Pending CN115426638A (zh) | 2021-05-13 | 2021-05-13 | 蓝牙设备配对方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115426638A (zh) |
-
2021
- 2021-05-13 CN CN202110523339.XA patent/CN115426638A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110995665B (zh) | 配网方法及装置、电子设备及存储介质 | |
CN110912880B (zh) | 配网方法及装置、电子设备及存储介质 | |
US9819652B2 (en) | Information interaction methods and devices | |
US9769667B2 (en) | Methods for controlling smart device | |
US8346287B2 (en) | Provisioning mobile terminals with a trusted key for generic bootstrap architecture | |
CN106888206B (zh) | 密钥交换方法、装置及系统 | |
CN104869612A (zh) | 接入网络的方法及装置 | |
CN104955031A (zh) | 信息传输方法及装置 | |
US20170171794A1 (en) | Method and apparatus for acquiring routing information | |
CN104852911A (zh) | 安全验证方法、装置及系统 | |
CN110891299A (zh) | 配网方法及装置、电子设备及存储介质 | |
CN109347828A (zh) | 文件上传下载方法、装置、电子设备及存储介质 | |
CN112202770B (zh) | 设备联网方法及装置、设备、存储介质 | |
CN109246110B (zh) | 数据共享方法、装置及计算机可读存储介质 | |
CN105228141A (zh) | 一种建立网络连接的方法、装置和系统 | |
US10673611B2 (en) | Data transmission method, device, and system | |
CN104852800B (zh) | 数据传输方法及装置 | |
CN104980919A (zh) | 网络服务信息的获取方法及设备 | |
CN112383532B (zh) | 设备联网方法及装置、电子设备、存储介质 | |
CN113055169B (zh) | 数据加密方法、装置、电子设备及存储介质 | |
CN114189950A (zh) | 信息交互方法、信息交互装置、服务器及存储介质 | |
CN108924136B (zh) | 授权认证方法、装置及存储介质 | |
CN115426638A (zh) | 蓝牙设备配对方法及装置 | |
CN112512097A (zh) | 信息处理方法及装置、电子设备、存储介质 | |
CN107318148B (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 |