WO2019007172A1 - 一种蓝牙防追踪的方法及设备 - Google Patents

一种蓝牙防追踪的方法及设备 Download PDF

Info

Publication number
WO2019007172A1
WO2019007172A1 PCT/CN2018/089517 CN2018089517W WO2019007172A1 WO 2019007172 A1 WO2019007172 A1 WO 2019007172A1 CN 2018089517 W CN2018089517 W CN 2018089517W WO 2019007172 A1 WO2019007172 A1 WO 2019007172A1
Authority
WO
WIPO (PCT)
Prior art keywords
mobile device
module
identity resolution
pairing
key
Prior art date
Application number
PCT/CN2018/089517
Other languages
English (en)
French (fr)
Inventor
陆舟
于华章
Original Assignee
飞天诚信科技股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 飞天诚信科技股份有限公司 filed Critical 飞天诚信科技股份有限公司
Priority to US16/609,486 priority Critical patent/US11381975B2/en
Publication of WO2019007172A1 publication Critical patent/WO2019007172A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B5/00Near-field transmission systems, e.g. inductive or capacitive transmission systems
    • H04B5/70Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services
    • G06Q50/265Personal security, identity or safety
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5092Address allocation by self-assignment, e.g. picking addresses at random and testing if they are already in use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Definitions

  • the invention relates to a Bluetooth anti-tracking method and device, and belongs to the field of information security.
  • the object of the present invention is to provide a Bluetooth anti-tracking method and device, wherein the Bluetooth device periodically changes its dynamic address, effectively preventing hackers from stealing data.
  • Step S1 The target Bluetooth device is powered on, generates a first random number every first preset time, and generates first data according to the first random number and its first identity resolution key, according to the first random number. And generating, by the first data, a first dynamic address, broadcasting broadcast data including the first dynamic address, and when receiving a connection request sent by the mobile device, performing step S2;
  • Step S2 the target Bluetooth device is connected to the mobile device, parsing the connection request to obtain a second dynamic address of the mobile device, and returning a connection response to the mobile device;
  • Step S3 the target Bluetooth device waits for and receives the data sent by the mobile device, if it is a pairing request, step S4 is performed; if it is a link encryption request, step S5 is performed;
  • Step S4 The target Bluetooth device is paired with the mobile device, and saves the second identity resolution key included in the pairing request to the identity resolution key list, and generates a pairing response with its own first identity resolution key. Returning the pairing response to the mobile device, returning to step S3;
  • Step S5 The target Bluetooth device sequentially verifies the second dynamic address by using the identity resolution key in the identity resolution key list stored therein, and determines whether there is a second identity resolution key that is successfully verified. S6, otherwise returning an error code to the connected mobile device, disconnecting, and ending;
  • the generating a first random number, and generating first data according to the first random number and its first identity resolution key, according to the first random number and the first A data generates a first dynamic address, specifically:
  • Step a3 The target Bluetooth device performs a preset operation on the first random number ciphertext to obtain first data
  • the method before the parsing the connection request to obtain the second dynamic address of the mobile device, the method further includes:
  • Step B1 The target Bluetooth device determines whether the address included in the connection request is a dynamic address, and if it is the second dynamic address of the mobile device, continue to perform the parsing the connection request to obtain the mobile The second dynamic address of the device; otherwise, returning the connection response to the mobile device, performing step B2;
  • Step B2 The target Bluetooth device waits for and receives data sent by the mobile device, and if it is a link encryption request, performs step B3; if it is a pairing request, pairs with the mobile device, saves pairing information, and Generating a pairing response containing its own first identity resolution key, returning the pairing response to the mobile device, and continuing to perform step B2;
  • Step B3 The target Bluetooth device determines whether the pairing information saved by itself contains the pairing information with the mobile device, and then saves the session key information according to the link encryption request, and returns a successful response to the mobile device. Communicating with the mobile device, ending; otherwise returning an error code to the mobile device, disconnecting, and ending.
  • the target Bluetooth device determines whether the address included in the connection request is a dynamic address, specifically: the target Bluetooth device determines a second preset of the address included in the connection request. Whether the data on the bit is preset data, it is determined that the address contained in the connection request is a dynamic address; otherwise, it is determined that the address contained in the connection request is not a dynamic address.
  • the target Bluetooth device determines whether the pairing information saved by the target device has the pairing information with the mobile device, and specifically: the target Bluetooth device determines whether the pairing information saved by the target device includes the receiving information.
  • the address included in the connection request is determined to include the pairing information stored in the pairing information stored in the connection request; otherwise, the pairing information stored in the self-determination does not include the pairing information with the mobile device.
  • the step S4 further includes:
  • Step H The target Bluetooth device determines whether the second identity resolution key included in the pairing request is included in the identity resolution key list saved by itself, and generates a pairing response with its own first identity resolution key, and returns And the pairing response is sent to the mobile device, and the process returns to step S3; otherwise, the saving of the second identity resolution key included in the pairing request to the identity resolution key list is continued; or
  • Step F The target Bluetooth device determines whether the second identity resolution key included in the pairing request is included in the identity resolution key list saved by itself, and the second identity included in the identity resolution key list is Resolving the key removal, and continuing to save the second identity resolution key included in the pairing request to the identity resolution key list; otherwise, continuing to perform the saving of the second identity resolution included in the pairing request The key is in the list of identity resolution keys.
  • the method further includes:
  • the target Bluetooth device determines whether the list of identity resolution keys stored by itself is empty, and returns an error code to the connected mobile device, disconnects, and ends; otherwise, step S5 is performed.
  • the target Bluetooth device sequentially verifies the second dynamic address by using the identity resolution key in the identity resolution key list stored therein, and determines whether there is a second identity resolution key that is successfully verified.
  • the identity resolution key in the identity resolution key list stored therein, and determines whether there is a second identity resolution key that is successfully verified.
  • Step b1 the target Bluetooth device parses the second dynamic address to obtain a second random number and second data
  • Step b2 The target Bluetooth device sequentially generates a plurality of third data according to the identity resolution key and the second random number in the identity resolution key list stored therein, and determines whether there is the same as the second data.
  • the third data is that it is determined that there is a second identity resolution key that is successfully verified; otherwise, it is determined that there is no second identity resolution key that is successfully verified.
  • the step b1 is specifically: the target Bluetooth device reads the high preset bit of the second dynamic address to obtain a second random number, and reads the low preset bit of the second dynamic address to obtain the first Two data.
  • Step d1 the target Bluetooth device complements the second random number
  • Step d2 the target Bluetooth device sequentially encrypts the second random number after the complement by using the identity resolution key in the identity resolution key list stored therein to obtain a plurality of second random number ciphertexts, and The second random number ciphertext is used to perform a preset operation to obtain a plurality of third data.
  • the step S6 specifically includes:
  • Step t1 The target Bluetooth device parses the link encryption request to obtain a session key identifier, determines whether the session key identifier exists in the session key list stored by itself, and returns a successful response to the connected mobile device. And communicating with the connected mobile device, ending; otherwise performing step t2;
  • Step t2 The target Bluetooth device negotiates a session key with the mobile device, and saves the negotiated session key and the session key identifier to the session key list, and returns a successful response to the connected mobile.
  • the device communicates with the connected mobile device and ends.
  • the method further includes:
  • Step W1 When the mobile device scans the target Bluetooth device, send a connection request with its second dynamic address to the target Bluetooth device;
  • Step W2 When the mobile device receives the connection response returned by the target Bluetooth device, parsing the acquired broadcast data of the target Bluetooth device to obtain the first dynamic address;
  • Step W3 The mobile device determines whether it has the identity resolving key of the Bluetooth device, if yes, step W5 is performed, otherwise step W4 is performed;
  • Step W4 The mobile device generates a pairing request including its own second identity resolution key, sends the pairing request to the target Bluetooth device, and receives a pairing response returned by the target Bluetooth device, where the pairing response is included
  • the first identity resolution key is saved, and step W6 is performed;
  • Step W5 The mobile device sequentially verifies the first dynamic address by using the identity resolution key of the Bluetooth device that is stored by itself, and determines whether there is a first identity resolution key that is successfully verified. If yes, step W6 is performed, otherwise, the step is returned. W4; and
  • Step W6 The mobile device sends a link encryption request to the target Bluetooth device, and receives a response returned by the target Bluetooth device. If the response is successful, it communicates with the target Bluetooth device, and ends; if it is an error code, Then disconnect and end.
  • the method further includes: the mobile device prompting the user for error information through the application, and receiving the user from the user Control trigger information, such as re-pairing information, return to step W4; if it is the end information, disconnect, end;
  • the method further includes: when receiving the pairing request sent by the connected mobile device in the second preset time, returning to step S4.
  • a Bluetooth anti-tracking device comprising:
  • Power-on module for powering on
  • a first generating module configured to generate a first random number every first preset time
  • a second generating module configured to generate first data according to the first random number generated by the first generating module and the first identity resolution key of the device
  • a third generating module configured to generate a first dynamic address according to the first random number generated by the first generating module and the first data generated by the second generating module;
  • a broadcast module configured to broadcast broadcast data including the first dynamic address
  • a first receiving module configured to receive data sent by the mobile device
  • connection module configured to connect the mobile device when the first receiving module receives a connection request sent by the mobile device
  • a parsing module configured to parse the connection request received by the first receiving module to obtain a second dynamic address of the mobile device
  • a first sending module configured to return a connection response to the mobile device
  • the first receiving module is further configured to: after the first sending module returns a connection response to the mobile device, wait for and receive data sent by the mobile device;
  • a pairing module configured to pair with the mobile device when the first receiving module receives a pairing request sent by the mobile device
  • a first saving module configured to save a second identity resolution key included in the pairing request received by the first receiving module into the identity resolution key list
  • a fourth generation module configured to generate a pairing response that includes the first identity resolution key of the device
  • the first sending module is further configured to return a pairing response generated by the fourth generating module to the mobile device;
  • a verification module configured to: when the first receiving module receives the link encryption request sent by the mobile device, sequentially verify the obtained by the parsing module by using an identity resolution key in the identity resolving key list stored in the first receiving module Two dynamic addresses;
  • a first determining module configured to determine whether there is a second identity resolution key that is successfully verified
  • the first sending module is further configured to: when the first determining module determines that there is no second identity resolution key that is successfully verified, return an error code to the connected mobile device;
  • Disconnecting the module after the first sending module returns an error code to the connected mobile device, disconnecting;
  • a second saving module configured to save the session key information according to the link encryption request received by the first receiving module, when the first determining module determines that the second identity resolving key has been successfully verified;
  • the first sending module is further configured to: after the second saving module saves the session key information, return a successful response to the connected mobile device;
  • a communication module configured to communicate with the connected mobile device after the first sending module returns a successful response to the connected mobile device.
  • the first generating module is specifically configured to: generate a first random number, and perform a complement to the first random number;
  • the third generating module is specifically configured to: sequentially stitch the first random number generated by the first generating module and the first data generated by the second generating module to obtain a first dynamic address.
  • the device further includes: a second determining module, as a module, a second sending module, a second receiving module, a pairing saving module, a third determining module, and a third saving module;
  • the second determining module is configured to determine whether the address included in the connection request is a dynamic address
  • the module is configured to trigger, when the second determining module determines that the address included in the connection request is a dynamic address, as the second dynamic address of the mobile device, triggering the parsing module;
  • the second sending module is configured to: when the second determining module determines that the address included in the connection request is not a dynamic address, return a connection response to the mobile device;
  • a second receiving module configured to wait for and receive data sent by the mobile device after the second sending module returns a connection response to the mobile device
  • the pairing storage module is further configured to pair with the mobile device when the second receiving module receives the pairing request, and save the pairing information
  • the second sending module is configured to: after the pairing storage module saves the pairing information, generate a pairing response including the first identity resolution key of the device, and return the pairing response to the mobile device;
  • the third determining module is configured to determine, when the second receiving module receives the link encryption request, whether the saved pairing information includes pairing information with the mobile device;
  • the third saving module is further configured to: when the third determining module determines that the paired information stored in the pairing information includes the pairing information with the mobile device, save the session key information according to the link encryption request;
  • the second sending module is further configured to: after the third saving module saves the session key information, return a successful response to the mobile device;
  • the communication module is further configured to: after the second sending module returns a successful response to the mobile device, communicate with the mobile device;
  • the disconnecting module is further configured to disconnect after the second sending module returns an error code to the mobile device.
  • the second determining module is configured to: determine whether the data on the second preset bit of the address included in the connection request is preset data, and determine that the address included in the connection request is Dynamic address; otherwise it is determined that the address contained in the connection request is not a dynamic address.
  • the third determining module is configured to: determine whether the pairing information saved by the device includes an address included in the received connection request, and determine that the pairing information saved by the device includes Pairing information of the mobile device; otherwise, it is determined that the pairing information saved by the device does not contain pairing information with the mobile device.
  • the fifth determining module is configured to determine whether the second identity resolution key included in the pairing request is included in the identity resolution key list saved by the device;
  • the fourth generation module is further configured to: when the fifth determining module determines that the identity resolution key list saved by the device includes the second identity resolution key included in the pairing request, generating the The pairing response of the first identity resolution key of the device;
  • the first saving module is specifically configured to: when the fifth determining module determines that the second remote authentication key included in the pairing request is not included in the identity resolution key list saved by the device, the saver Decoding a second identity resolution key included in the pairing request into the identity resolution key list;
  • the sixth determining module is configured to determine whether the second identity resolution key included in the pairing request is included in the identity resolution key list saved by the device;
  • the first saving module is further configured to save the second identity resolution key included in the pairing request after the removing module removes the second identity resolution key included in the identity resolution key list Key to the identity resolution key list; and is further configured to save when the sixth determining module determines that the identity resolution key list saved by the device does not include the second identity resolution key included in the pairing request The second identity resolution key included in the pairing request is in the identity resolution key list.
  • the first sending module is further configured to: when the seventh determining module determines that the identity resolution key list stored by the device is empty, return an error code to the connected mobile device;
  • the verification module includes a first parsing submodule and a generating submodule;
  • the first parsing submodule is configured to parse the second dynamic address to obtain a second random number and second data
  • the first determining module is specifically configured to: determine whether there is third data that is the same as the second data obtained by the first parsing sub-module, and determine that there is a second identity resolving key that is successfully verified; otherwise, determine There is no second identity resolution key for successful authentication.
  • the complement unit is configured to complement the second random number obtained by the parsing submodule
  • the encryption unit is configured to encrypt, by using an identity resolution key in the identity resolution key list stored in the device, a second random number that is complemented by the complement unit to obtain a plurality of second random number ciphertexts. ;as well as
  • the operation unit is configured to perform a preset operation on the plurality of second random ciphertexts obtained by the encryption unit to obtain a plurality of third data.
  • the second saving module includes: a second parsing submodule, a judging submodule, a negotiating submodule, and a saving submodule;
  • the second parsing submodule is configured to parse the link encryption request received by the first receiving module to obtain a session key identifier
  • the determining submodule is configured to determine whether the session key identifier is included in the session key list stored by the device;
  • the first sending module is further configured to: when the determining submodule determines that the session key identifier stored in the device includes the session key identifier, returning a successful response to the connected mobile device;
  • the negotiation sub-module is configured to negotiate a session key with the mobile device when the determining sub-module determines that the session key list stored in the device does not include the session key identifier;
  • the saving submodule is configured to save the session key obtained by the negotiation submodule and the session key identifier obtained by the second parsing submodule to the session key list;
  • the first sending module is further configured to save, in the saving submodule, the session key obtained by the negotiating submodule and the session key identifier obtained by the second parsing submodule to the session key list. After that, a successful response is returned to the connected mobile device.
  • the pairing module is further configured to: after the first sending module returns an error code to the connected mobile device, when the first receiving module receives the connected mobile device in a second preset time When the paired request is sent, it is paired with the connected mobile device.
  • the Bluetooth device periodically changes its own dynamic address, and can only analyze the dynamic address of the trusted device that has undergone the identity resolving key exchange with the pairing process, thereby performing communication, which effectively prevents The hacker steals the data to ensure the security of the data of the Bluetooth device and the Bluetooth device user.
  • the Bluetooth device does not need to be paired again when establishing communication with it again. , shortened the time to establish communication with it, and improved the user experience.
  • FIG. 4 is a flowchart of a working method of a mobile device in a Bluetooth anti-tracking method according to Embodiment 4 of the present invention.
  • FIG. 5 is a block diagram of a module composition of a Bluetooth anti-tracking device according to Embodiment 5 of the present invention.
  • the Bluetooth device periodically changes its own dynamic address and broadcasts its own dynamic address; after the Bluetooth device and the mobile device successfully authenticate each other, the Bluetooth device does not change its own dynamic address during communication with the mobile device.
  • the identity resolution key described in the present invention is an IRK (English Identity: Identity Resolving Key).
  • Embodiment 1 of the present invention provides a Bluetooth anti-tracking method, as shown in FIG. 1 , including:
  • Step 101 The target Bluetooth device is powered on, generates a first random number every first preset time, and generates first data according to the first random number and its first identity resolution key, according to the first random number and the first
  • the data generates a first dynamic address, broadcasts the broadcast data containing the first dynamic address, when receiving the connection request sent by the mobile device, step 102 is performed;
  • Step 102 The target Bluetooth device connects to the mobile device, parses the connection request to obtain the second dynamic address of the connected mobile device, and returns a connection response to the connected mobile device.
  • Step 103 The target Bluetooth device waits for and receives data sent by the mobile device, if it is a pairing request, step 104 is performed; if it is a link encryption request, step 105 is performed;
  • Step 104 The target Bluetooth device is paired with the connected mobile device, saves the second identity resolution key included in the pairing request to the identity resolution key list, and generates a pairing response with its first identity resolution key, and returns a pairing response. To the connected mobile device, return to step 103;
  • Step 105 The target Bluetooth device sequentially verifies the second dynamic address by using the identity resolution key in the identity resolution key list stored therein, and determines whether there is a second identity resolution key that is successfully verified. If yes, go to step 106, otherwise return The error code is given to the connected mobile device, disconnected, and ended;
  • the method further includes: the target Bluetooth device determines whether the identity resolution key list stored by itself is empty, and returns an error code to the connected mobile device, disconnects, and ends; otherwise, Go to step 105.
  • the method in the first embodiment further includes:
  • Step W1 When the mobile device scans to the target Bluetooth device, send a connection request with its second dynamic address to the target Bluetooth device;
  • Step W2 When the mobile device receives the connection response returned by the target Bluetooth device, parsing the obtained broadcast data of the target Bluetooth device to obtain the first dynamic address;
  • Step W3 The mobile device determines whether it has the identity resolving key of the Bluetooth device, if yes, step W5 is performed, otherwise step W4 is performed;
  • Step W4 The mobile device generates a pairing request with its own second identity resolution key, sends a pairing request to the target Bluetooth device, receives the pairing response returned by the target Bluetooth device, and saves the pairing response with the first identity resolution key, and performs the steps.
  • W6 The mobile device generates a pairing request with its own second identity resolution key, sends a pairing request to the target Bluetooth device, receives the pairing response returned by the target Bluetooth device, and saves the pairing response with the first identity resolution key, and performs the steps.
  • Step W5 The mobile device sequentially verifies the first dynamic address by using the identity resolution key of the Bluetooth device that is stored by itself, and determines whether there is a first identity resolution key that is successfully verified. If yes, step W6 is performed, otherwise, step W4 is returned;
  • Step W6 The mobile device sends a link encryption request to the target Bluetooth device, and receives a response returned by the target Bluetooth device. If the response is successful, it communicates with the target Bluetooth device, and ends; if it is an error code, disconnects and ends.
  • step W6 when the mobile device receives the response returned by the target Bluetooth device as an error code, the method further includes: the mobile device prompts the user for error information through the application, and receives control trigger information from the user, such as To re-pair the information, return to step W4; if it is the end information, disconnect and end;
  • step 105 after returning the error code to the connected mobile device, the method further includes: when receiving the pairing request sent by the connected mobile device in the second preset time, returning to step 104.
  • Embodiment 2 of the present invention provides a Bluetooth anti-tracking method, as shown in FIG. 2, including:
  • Step 201 The target Bluetooth device is powered on.
  • Step 202 The target Bluetooth device generates a first random number every first preset time, and generates first data according to the generated first random number and its first identity resolution key, according to the first random number and the first data. Generating a first dynamic address, broadcasting broadcast data including the first dynamic address;
  • the first preset time is 60s;
  • the target Bluetooth device generates a first random number, and generates first data according to the generated first random number and its first identity resolution key, and generates a first data according to the first random number and the first data.
  • a dynamic address including:
  • Step a1 The target Bluetooth device generates a first random number and complements the first random number. Specifically, the target Bluetooth device generates a first random number of 24 bits, and the highest 2 bits of the generated first random number are 01. And supplementing the zero of the first preset bit to the left of the first random number; preferably, in the second embodiment, the first preset bit is 104 bits; for example, in the second embodiment, the target Bluetooth device The generated first random number is 423456, and the target Bluetooth device complements the first random number to be 00000000000000000000000000423456.
  • Step a2 The target Bluetooth device encrypts the first random number with the first random number after using the first identity resolution key to obtain the first random number ciphertext; specifically, the target Bluetooth device uses its own first identity resolution key pair The first random number after the bit is AES encrypted to obtain the first random number ciphertext;
  • the first identity resolution key of the target Bluetooth device is 0102030405060708090A0B0C0D0E0F10
  • the obtained first random number ciphertext is 9912D4DD9EE19546190599551D766B05.
  • Step a3 The target Bluetooth device performs a preset operation on the first random number ciphertext to obtain the first data; specifically, the target Bluetooth device performs a modulo operation on the 2 ⁇ 24 using the first random number ciphertext to obtain an operation result, and the obtained result is obtained.
  • the operation result obtained by the target Bluetooth device using the first random ciphertext pair 2 ⁇ 24 is 766B05, that is, the first data is 766B05.
  • Step a4 The target Bluetooth device splices the first random number with the first data sequence to obtain the first dynamic address. For example, in the second embodiment, the target Bluetooth device sequentially splices the first random number and the first data sequence.
  • a dynamic address is 423456766B05.
  • Step 203 The mobile device scans the surrounding Bluetooth device to determine whether the target Bluetooth device is scanned. If yes, step 204 is performed; otherwise, step 203 is continued;
  • the first device scans the surrounding Bluetooth device, and obtains the broadcast data of the scanned Bluetooth device, parses the obtained broadcast data to obtain the device name of the Bluetooth device, and determines the device name of the obtained Bluetooth device and the device name of the target Bluetooth device. If it is the same, it is determined to scan to the target Bluetooth device, otherwise it is determined that the Bluetooth device is not scanned.
  • the method further includes: the mobile device generates its own second dynamic address;
  • the process of generating the second dynamic address of the mobile device is the same as the process of generating the first dynamic address by the target Bluetooth device, and details are not described herein again.
  • the mobile device generates its own second dynamic address as 683D9752CB5E.
  • step 202 and step 203 can be performed simultaneously, regardless of the order.
  • Step 204 The mobile device generates a connection request with its own second dynamic address, and sends a connection request to the target Bluetooth device.
  • Step 205 The target Bluetooth device receives the connection request, establishes a connection with the mobile device that sends the connection request, parses the received connection request to obtain the second dynamic address of the mobile device, and returns a connection response to the mobile device.
  • the method before the target Bluetooth device parses the received connection request to obtain the second dynamic address of the mobile device, the method further includes:
  • Step B1 The target Bluetooth device determines whether the address included in the received connection request is a dynamic address, and then uses it as the second dynamic address of the mobile device, and continues to perform the analysis of the received connection request to obtain the second dynamic address of the mobile device. ; otherwise return a connection response to the mobile device, step B2;
  • the target Bluetooth device determines whether the data on the second preset bit of the address included in the received connection request is preset data, and determines that the address included in the received connection request is a dynamic address; The address contained in the connection request is not a dynamic address;
  • the second preset bit is the highest two digits, and the preset data is 01.
  • the device address included in the connection request is 683D9752CB5E, and it is determined to be a dynamic address.
  • Step B2 The target Bluetooth device waits for and receives data sent by the mobile device, if it is a link encryption request, performs step B3; if it is a pairing request, pairs with the mobile device, saves the pairing information, and generates the first identity with itself. Parsing the pairing response of the key, returning the pairing response to the mobile device, and continuing to perform step B2;
  • Step B3 The target Bluetooth device determines whether the pairing information saved by itself contains the pairing information with the mobile device, and then saves the session key information according to the link encryption request, returns a successful response to the mobile device, and communicates with the mobile device, and ends; otherwise Return the error code to the mobile device and end.
  • the target Bluetooth device determines whether the pairing information stored in the pair includes the pairing information with the mobile device. Specifically, the target Bluetooth device determines whether the pairing information saved by the target device includes the address included in the received connection request. If yes, it is determined that the pairing information saved by itself contains the pairing information with the mobile device; otherwise, the pairing information saved by itself is determined to not include the pairing information with the mobile device.
  • the session key information is saved according to the link encryption request, and the success response is returned to the mobile device and communicates with the mobile device, which specifically includes:
  • Step t1 The target Bluetooth device resolves the link encryption request to obtain the session key identifier, determines whether the session key list stored in the session contains the obtained session key identifier, and returns a successful response to the connected mobile device and The connected mobile device communicates, and ends; otherwise, step t2 is performed;
  • Step t2 The target Bluetooth device negotiates the session key with the mobile device, saves the negotiated session key and the session key identifier to the session key list, and returns a successful response to the connected mobile device and communicates with the connected mobile device. ,End.
  • Step 206 The mobile device receives the connection response returned by the target Bluetooth device, and parses the broadcast data of the target Bluetooth device to obtain the first dynamic address of the target Bluetooth device.
  • the method before the broadcast data of the target Bluetooth device is obtained to obtain the first dynamic address of the target Bluetooth device, the method further includes:
  • Step D1 The mobile device determines whether the address included in the broadcast data of the target Bluetooth device is a dynamic address, and then uses it as the first dynamic address of the target Bluetooth device, and continues to perform the analysis of the broadcast data of the target Bluetooth device to obtain the target Bluetooth device. a dynamic address; otherwise step D2;
  • the mobile device determines whether the data on the second preset bit of the address included in the broadcast data of the target Bluetooth device is preset data, and determines that the address included in the broadcast data of the target Bluetooth device is a dynamic address; otherwise, determining The address contained in the broadcast data of the target Bluetooth device is not a dynamic address; in the second embodiment, the second preset bit is the highest two digits, and the preset data is 01.
  • Step D2 The mobile device determines whether the pairing information saved by itself contains the pairing information with the target Bluetooth device. If yes, step D3 is performed. Otherwise, step D4 is performed. Specifically, the mobile device determines whether the pairing information saved by itself is included in the broadcast data. If the address is included, it is determined that the pairing information saved by itself contains the pairing information with the target Bluetooth device, otherwise the pairing information stored in the determination itself does not include the pairing information with the target Bluetooth device.
  • the mobile device sequentially verifies the first dynamic address by using the identity resolution key of the Bluetooth device that is stored in the device, and determines whether there is a first identity resolution key that is successfully verified.
  • Step m2 The mobile device uses the current identity resolution key to verify the first dynamic address, and determines whether the verification is successful. If yes, it is determined that there is a first identity resolution key that is successfully verified, and step 209 is performed; otherwise, step m3 is performed;
  • Step m3 The mobile device determines whether the current identity resolution key is the last one in the identity resolution key list stored by itself, and determines that there is no first identity resolution key that is successfully verified, and performs step 210; otherwise, the current identity Resolving the next identity resolution key of the key as the current identity resolution key, returning to step m2;
  • step m2 specifically includes:
  • Step m2-1 The mobile device parses the first dynamic address to obtain the first random number and the first data.
  • the mobile device reads the upper 24 bits of the first dynamic address to obtain the first random number, and reads the lower 24 bits of the first dynamic address to obtain the first data;
  • the first random number obtained by analyzing the first dynamic address is 423456, and the first data is 766B05.
  • Step m2-2 The mobile device generates fourth data according to the current identity resolution key and the first random number, and determines whether the fourth data is the same as the first data, and determines that there is a first identity resolution key that is successfully verified, and performs steps. 209; otherwise, step m3 is performed;
  • the mobile device generates a fourth data according to the current identity resolution key and the first random number, and the target Bluetooth device in step 202 resolves the secret according to the first random number and the first identity of the user.
  • the method for generating the first data by the key is the same and will not be described here.
  • Step 209 The mobile device sends a link encryption request to the target Bluetooth device.
  • Step 210 The mobile device generates a pairing request with its own second identity resolution key, and sends a pairing request to the target Bluetooth device.
  • the second identity resolution key of the mobile device is 112233445566778899AABBCCDDEEFF00.
  • Step 211 The target Bluetooth device receives the request sent by the mobile device, determines the request type, if it is a pairing request, step 212 is performed; if it is a link encryption request, step 214 is performed;
  • the method further includes: the target Bluetooth device determines whether the data sent by the mobile device is received in the second preset time, if yes, if the request is for pairing, step 212 is performed; if the request is for the link encryption, the step is performed. 214; otherwise shut down, end.
  • the second preset time is 35 seconds.
  • Step 212 Pair the target Bluetooth device with the connected mobile device, parse the received pairing request, obtain the second identity resolution key of the connected mobile device, save the second identity resolution key, and generate the first identity resolution key. Pairing the response, returning the pairing response to the connected mobile device;
  • Step H The target Bluetooth device determines whether the second identity resolving key is included in the identity resolving key of the mobile device saved by itself, and generates a pairing response with its first identity resolving key, and returns a pairing response to the mobile device; otherwise , continue to save the second identity resolution key; or,
  • Step F The target Bluetooth device determines whether the second identity resolution key is included in the identity resolution key of the mobile device saved by itself, and then removes the saved second identity resolution key, and continues to save the second identity resolution key. Key; otherwise, continue to save the second identity resolution key.
  • Step 213 The mobile device parses the received pairing response to obtain the first identity resolution key, saves the first identity resolution key, and returns to step 209;
  • Step 214 The target Bluetooth device determines whether it has the identity resolution key of the mobile device. If yes, step 215 is performed. Otherwise, the error code is returned to the mobile device, disconnected from the mobile device, and ended.
  • the target Bluetooth device determines whether the identity resolution key list stored by itself is empty, and determines that the identity resolution key of the mobile device is not stored, returns an error code to the connected mobile device, and disconnects from the mobile device. End; otherwise, it is determined that there is an identity resolution key of the mobile device, and step 215 is performed;
  • Step 215 The target Bluetooth device sequentially verifies the second dynamic address by using the identity resolution key of the mobile device that is stored by itself, and determines whether there is a second identity resolution key that is successfully verified, and then saves the session according to the received link encryption request. Key information, returning a successful response to the connected mobile device, performing step 217; otherwise returning an error code to the connected mobile device;
  • the target Bluetooth device sequentially verifies the second dynamic address by using the identity resolution key of the mobile device that is in existence, and determines whether there is a second identity resolution key that is successfully verified.
  • Step n1 The target Bluetooth device reads the first identity resolution key in the identity resolution key list stored by itself and uses it as the current identity resolution key;
  • Step n2 the target Bluetooth device uses the current identity resolution key to verify the second dynamic address, if the verification is successful, it is determined that there is a second identity resolution key that is successfully verified, step 217 is performed; if the verification fails, step n3 is performed;
  • Step n3 The target Bluetooth device determines whether the current identity resolution key is the last one in the identity resolution key list stored by itself, and determines that there is no second identity resolution key that is successfully verified, and returns an error code to the mobile device. Disconnecting from the mobile device, ending; otherwise, the next identity resolution key of the current identity resolution key is used as the current identity resolution key, and returns to step n2;
  • step n2 specifically includes:
  • Step n2-1 the target Bluetooth device parses the second dynamic address to obtain the second random number and the second data
  • the target Bluetooth device reads the upper 24 bits of the second dynamic address to obtain a second random number, and reads the lower 24 bits of the second dynamic address to obtain the second data;
  • the second random number obtained by analyzing the second dynamic address is 683D97, and the second data is 52CB5E.
  • Step n2-2 The target Bluetooth device generates third data according to the current identity resolution key and the second random number, and determines whether the third data is the same as the first data. If yes, the verification is successful, and the second identity resolution is successful. Key; otherwise, the verification fails, and step n3 is performed;
  • the target Bluetooth device generates the third data according to the current identity key and the second random number, and the target Bluetooth device in step 202 resolves the secret according to the first random number and the first identity of the user.
  • the method for generating the first data by the key is the same and will not be described here.
  • the mobile device when the response returned by the target Bluetooth device received by the mobile device is an error code, the mobile device may further include: the mobile device prompts the user of the error information by using the application, and receives the control trigger information from the user, for example, If the pairing information is returned to step 210, if it is the ending information, the connection is disconnected and the process ends.
  • step 214 after the target Bluetooth device returns an error code to the connected mobile device, the method further includes: returning to step 212 when receiving the pairing request sent by the connected mobile device in the second preset time.
  • Step 216 The mobile device disconnects from the target Bluetooth device, and ends;
  • Step 217 The target Bluetooth device communicates with the mobile device.
  • Step 218 The mobile device communicates with the target Bluetooth device, and ends;
  • steps 217 and 218 is specifically that the target Bluetooth device performs functional communication with the mobile device via the API.
  • Embodiment 3 of the present invention provides a working method of a target Bluetooth device in a Bluetooth anti-tracking method, as shown in FIG. 3, including:
  • Step 301 The target Bluetooth device is powered on.
  • Step 302 The target Bluetooth device generates a first random number every first preset time, and generates first data according to the generated first random number and its first identity resolution key, according to the first random number and the first data. Generating a first dynamic address, broadcasting the broadcast data containing the first dynamic address, when receiving the connection request sent by the mobile device, performing step 303;
  • the first preset time is 60s;
  • the target Bluetooth device generates a first random number, generates first data according to the generated first random number and its first identity resolution key, and generates a first according to the first random number and the first data.
  • Dynamic address including:
  • Step a1 The target Bluetooth device generates a first random number and complements the first random number
  • the target Bluetooth device generates a first random number of 24 bits, and the highest 2 bits of the generated first random number are 01, and the zero of the first preset bit is added to the left side of the first random number;
  • the first preset bit is 104 bits.
  • the first random number generated by the target Bluetooth device is 423456.
  • the target Bluetooth device is 0000000000000000000000423456 after the first random number is complemented.
  • Step a2 The target Bluetooth device encrypts the first random number after the complement by using the first identity resolution key of the user to obtain the first random number ciphertext;
  • the target Bluetooth device uses the first identity resolution key of the user to perform AES encryption on the first random number after the complement to obtain the first random number ciphertext;
  • the first identity resolution key of the target Bluetooth device is 0102030405060708090A0B0C0D0E0F10
  • the obtained first random number ciphertext is 9912D4DD9EE19546190599551D766B05.
  • Step a3 The target Bluetooth device performs a preset operation on the first random number ciphertext to obtain the first data.
  • the target Bluetooth device performs a modulo operation on the 2 ⁇ 24 using the first random number ciphertext to obtain an operation result, and uses the obtained operation result as the first data;
  • the operation result obtained by the target Bluetooth device using the first random ciphertext pair 2 ⁇ 24 is 766B05, that is, the first data is 766B05.
  • the first dynamic address obtained by the target Bluetooth device splicing the first random number and the first data sequence is 423456766B05.
  • Step 303 The target Bluetooth device connects to the mobile device, parses the received connection request to obtain a second dynamic address of the mobile device, and returns a connection response to the mobile device.
  • the method before the target Bluetooth device parses the received connection request to obtain the second dynamic address of the mobile device, the method further includes:
  • Step B1 The target Bluetooth device determines whether the address included in the received connection request is a dynamic address, and then uses it as the second dynamic address of the mobile device, and continues to perform the analysis of the received connection request to obtain the second dynamic address of the mobile device. ; otherwise return a connection response to the mobile device, step B2;
  • the target Bluetooth device determines whether the data on the second preset bit of the address included in the received connection request is preset data, and determines that the address included in the received connection request is a dynamic address; The address contained in the connection request is not a dynamic address;
  • the second preset bit is the highest two digits, and the preset data is 01.
  • Step B2 The target Bluetooth device waits for and receives data sent by the mobile device, if it is a link encryption request, performs step B3; if it is a pairing request, pairs with the mobile device, saves the pairing information, and generates the first identity with itself. Parsing the pairing response of the key, returning the pairing response to the mobile device, and continuing to perform step B2;
  • Step B3 The target Bluetooth device determines whether the pairing information saved by itself contains the pairing information with the mobile device, and then saves the session key information according to the link encryption request, returns a successful response to the mobile device, and communicates with the mobile device, and ends; otherwise Return the error code to the mobile device and end.
  • the target Bluetooth device determines whether the pairing information saved by itself contains the address included in the received connection request, and determines that the pairing information saved by itself includes the pairing information with the mobile device; otherwise, the pairing information saved by itself is determined. Does not contain pairing information with mobile devices.
  • Step 306 The target Bluetooth device waits for and receives the data sent by the connected mobile device, if it is a pairing request, step 305 is performed, and if it is a link encryption request, step 306 is performed;
  • the method further includes: the target Bluetooth device determines whether the data sent by the mobile device is received in the second preset time, if yes, if the request is for pairing, step 305 is performed, and if the link is encrypted, the step is performed. 306; otherwise shut down, end.
  • the second preset time is 35 seconds.
  • Step 305 The target Bluetooth device is paired with the connected mobile device, and the received pairing request is parsed to obtain the second identity resolution key of the connected mobile device, and the second identity resolution key is saved, and the first identity resolution key is generated. Pairing response, returning the pairing response to the connected mobile device, returning to step 304;
  • the target Bluetooth device parses the received pairing request to obtain the second identity resolution key of the connected mobile device as 112233445566778899AABBCCDDEEFF00.
  • the method before the target Bluetooth device saves the second identity resolution key, the method further includes:
  • Step H The target Bluetooth device determines whether the second identity resolution key is included in the identity resolution key saved by itself, and generates a pairing response with its own first identity resolution key, and returns a pairing response to the connected mobile device, and returns to the step. 304; otherwise, continue to save the second identity resolution key; or,
  • Step F The target Bluetooth device determines whether the second identity resolution key is included in the identity resolution key saved by itself, and then removes the saved second identity resolution key, and continues to save the second identity resolution key; otherwise , continue to save the second identity resolution key.
  • Step 306 The target Bluetooth device determines whether it has the identity resolution key of the mobile device. If yes, step 307 is performed. Otherwise, an error code is returned to the connected mobile device, and the connection is disconnected.
  • the target Bluetooth device determines whether the identity resolution key list stored by itself is empty, and determines that the identity resolution key of the mobile device is not stored, returns an error code to the connected mobile device, disconnects, and ends; Otherwise, it is determined that the identity resolution key of the mobile device is stored, and step 307 is performed.
  • Step 307 The target Bluetooth device reads the first identity resolution key in the identity resolution key of the mobile device that it owns and uses it as the current identity resolution key.
  • the target Bluetooth device reads the first identity resolution key from the list of identity resolution keys stored by itself as the current identity resolution key.
  • Step 308 The target Bluetooth device uses the current identity resolution key to verify the second dynamic address, if the verification is successful, step 310 is performed; if the verification fails, step 309 is performed;
  • the target Bluetooth device uses the current identity resolution key to verify the first dynamic address
  • the target Bluetooth device in step n2 of Embodiment 2 uses the current identity resolution key to verify the second dynamic address.
  • the method is the same and will not be described here.
  • Step 309 The target Bluetooth device determines whether the current identity resolution key is the last one of the identity resolution keys of the mobile device that is stored by itself, and returns an error code to the connected mobile device, disconnects, and ends; otherwise, the current The next identity resolution key of the identity resolution key is used as the current identity resolution key, and the process returns to step 308.
  • the method further includes: when receiving the pairing request sent by the connected mobile device in the second preset time, returning to step 305 .
  • Step 310 The target Bluetooth device saves the session key information according to the received link encryption request, returns a successful response to the mobile device, and communicates with the mobile device, and ends.
  • step 310 specifically includes:
  • Step t1 The target Bluetooth device parses the received link encryption request to obtain a session key identifier, and determines whether the session key list stored in the session contains the obtained session key identifier, and returns a successful response to the connected mobile device. Communicate with the connected mobile device, and end; otherwise, perform step t2;
  • Step t2 The target Bluetooth device negotiates the session key with the mobile device, saves the negotiated session key and the obtained session key identifier to the session key list, and returns a successful response to the connected mobile device and the connected mobile. Device communication ends.
  • the communication with the mobile device as described in this step is specifically for performing functional communication with the mobile device.
  • Step 401 The mobile device scans the surrounding Bluetooth device to determine whether the target Bluetooth device is scanned. If yes, step 402 is performed; otherwise, step 401 is continued;
  • the first device scans the surrounding Bluetooth device, and obtains the broadcast data of the scanned Bluetooth device, parses the obtained broadcast data to obtain the device name of the Bluetooth device, and determines the device name of the obtained Bluetooth device and the device name of the target Bluetooth device. If it is the same, it is determined to scan to the target Bluetooth device, otherwise it is determined that the Bluetooth device is not scanned.
  • the method further includes: the mobile device generates its own second dynamic address;
  • the process of generating the second dynamic address of the mobile device is the same as the process of generating the first dynamic address by the Bluetooth device, and details are not described herein again.
  • the mobile device generates its own second dynamic address as 683D9752CB5E.
  • Step 402 The mobile device generates a connection request with its own second dynamic address, and sends a connection request to the target Bluetooth device.
  • the method before the step 402, the method further includes: generating, by the mobile device, the second dynamic address of the second dynamic address, the mobile device generating the second dynamic address of the second dynamic address, in the same manner as in the third embodiment.
  • the process in which the target Bluetooth device generates its own first dynamic address is the same, and details are not described herein again.
  • Step 403 When the mobile device receives the connection response returned by the target Bluetooth device, parsing the broadcast data of the target Bluetooth device to obtain the first dynamic address of the target Bluetooth device.
  • the method before the broadcast data of the target Bluetooth device is obtained to obtain the first dynamic address of the target Bluetooth device, the method further includes:
  • Step D1 The mobile device determines whether the address included in the broadcast data of the target Bluetooth device is a dynamic address, and then uses it as the first dynamic address of the target Bluetooth device, and continues to perform the analysis of the broadcast data of the target Bluetooth device to obtain the target Bluetooth device. a dynamic address; otherwise step D2;
  • the mobile device determines whether the data on the second preset bit of the address included in the broadcast data of the target Bluetooth device is preset data, and determines that the address included in the broadcast data of the target Bluetooth device is a dynamic address; otherwise, determining The address contained in the broadcast data of the target Bluetooth device is not a dynamic address;
  • the second preset bit is the highest two bits, and the preset data is 01.
  • the address of the broadcast data of the target Bluetooth device is 423456766B05, and the determination is a dynamic address.
  • the mobile device determines whether the pairing information stored by the mobile device includes the address included in the broadcast data, and determines that the pairing information stored by the mobile device includes the pairing information with the target Bluetooth device, and otherwise determines that the pairing information saved by itself does not include Pairing information for the target Bluetooth device.
  • Step D3 The mobile device sends a link encryption request to the target Bluetooth device, and when receiving the successful response returned by the target Bluetooth device, communicates with the target Bluetooth device, and ends; when receiving the error code, disconnects and ends;
  • Step D4 The mobile device generates a pairing request with its own second identity resolution key, sends a pairing request to the target Bluetooth device, and when receiving the pairing response returned by the target Bluetooth device, saves the pairing information, and returns to step D3.
  • Step 404 The mobile device determines whether it has the identity resolving key of the Bluetooth device, if yes, go to step 407, otherwise go to step 405;
  • the mobile device determines whether the identity resolution key list stored in the mobile device is empty, and determines that the identity resolution key of the Bluetooth device is not stored, and performs step 405; otherwise, determines that the identity resolution key of the Bluetooth device exists. Go to step 407.
  • Step 405 The mobile device generates a pairing request with its own second identity resolution key, and sends a pairing request to the target Bluetooth device.
  • the second identity resolution key of the mobile device is 112233445566778899AABBCCDDEEFF00.
  • the first identity resolution key of the target Bluetooth device obtained by the mobile device to resolve the pairing response returned by the target Bluetooth device is 0102030405060708090A0B0C0D0E0F10.
  • Step 407 The mobile device reads the first identity resolution key in the identity resolution key of the Bluetooth device that it owns and uses it as the current identity resolution key.
  • the mobile device reads the first identity resolution key from the list of identity resolution keys stored by itself as the current identity resolution key.
  • Step 408 The mobile device uses the current identity resolution key to verify the first dynamic address, if the verification is successful, step 410 is performed; if the verification fails, step 409 is performed;
  • the mobile device uses the current identity resolution key to verify the first dynamic address
  • the mobile device in step m2 of Embodiment 2 uses the current identity resolution key to verify the first dynamic address. , will not repeat them here.
  • Step 409 The mobile device determines whether the current identity resolution key is the last one of the identity resolution keys of the Bluetooth device that it has stored, and returns to step 405; otherwise, the next identity resolution key of the current identity resolution key is used as The current identity resolves the key and returns to step 408.
  • Step 410 The mobile device sends a link encryption request to the target Bluetooth device, and waits for and receives the response returned by the target Bluetooth device. If the response is successful, it communicates with the target Bluetooth device, and ends; if it is an error code, disconnects and ends. .
  • the communication with the target Bluetooth device as described in this step is specifically performed by performing API function communication with the target Bluetooth device.
  • the method may further include: the mobile device prompting the user for error information by using an application, and receiving control trigger information from the user, If the information is re-paired, the process returns to step 405; if it is the end information, the connection is disconnected and the process ends.
  • Embodiment 5 of the present invention provides a Bluetooth anti-tracking device, as shown in FIG. 5, including:
  • the power-on module 501 is configured to be powered on
  • the first generating module 502 is configured to generate a first random number every first preset time after the power-on module 501 is powered on;
  • a second generating module 503, configured to generate first data according to the first random number generated by the first generating module 502 and the first identity resolution key of the device;
  • the third generation module 504 is configured to generate a first dynamic address according to the first random number generated by the first generation module 502 and the first data generated by the second generation module 503;
  • a broadcast module 505, configured to broadcast broadcast data including a first dynamic address
  • the first receiving module 506 is configured to receive data sent by the mobile device.
  • the connection module 507 is configured to connect the mobile device when the first receiving module 506 receives the connection request sent by the mobile device;
  • the parsing module 508 is configured to parse the connection request received by the first receiving module 506 to obtain a second dynamic address of the mobile device;
  • a first sending module 509 configured to return a connection response to the mobile device
  • the first receiving module 506 is further configured to: after the first sending module 509 returns a connection response to the mobile device, wait for and receive data sent by the mobile device;
  • the pairing module 510 is configured to pair with the mobile device when the first receiving module 506 receives the pairing request sent by the mobile device;
  • the first saving module 511 is configured to save the second identity resolution key included in the pairing request received by the first receiving module 506 into the identity resolution key list;
  • a fourth generation module 512 configured to generate a pairing response that includes a first identity resolution key of the device
  • the first sending module 509 is further configured to return a pairing response generated by the fourth generating module 512 to the mobile device;
  • the first receiving module 506 is further configured to: after the first sending module 509 returns the pairing response to the mobile device, wait for and receive data sent by the mobile device;
  • the verification module 513 is configured to, when the first receiving module 506 receives the link encryption request sent by the mobile device, sequentially use the second identity obtained by the identity resolution key verification parsing module 508 in the identity resolving key list. Dynamic address
  • the first determining module 514 is configured to determine whether there is a second identity resolution key that is successfully verified
  • the first sending module 509 is further configured to: when the first determining module 514 determines that there is no second identity resolution key that is successfully verified, return an error code to the connected mobile device;
  • the second saving module 516 is configured to: when the first determining module 514 determines that the second identity resolving key has been successfully verified, save the session key information according to the link encryption request received by the first receiving module 506;
  • the first sending module 509 is further configured to: after the second saving module 516 saves the session key information, return a successful response to the connected mobile device;
  • the communication module 517 is configured to communicate with the connected mobile device after the first sending module 509 returns a successful response to the connected mobile device.
  • the first generating module 502 is specifically configured to: generate a first random number, and perform a complement to the first random number;
  • the second generating module 503 is specifically configured to: obtain the first random number ciphertext by using the first identity resolving key of the device to obtain the first random number ciphertext, and perform a preset operation on the obtained first random number ciphertext Obtaining the first data;
  • the third generation module 504 is specifically configured to: sequentially stitch the first random number generated by the first generation module 502 and the first data generated by the second generation module 503 to obtain a first dynamic address.
  • the device of the embodiment 5 further includes: a second determining module, a module, a second sending module, a second receiving module, a pairing saving module, a third determining module, and a third saving module;
  • the second determining module is configured to determine whether the address included in the connection request is a dynamic address
  • the second determining module determines that the address contained in the connection request is a dynamic address, it acts as the second dynamic address of the mobile device, triggering the parsing module 508;
  • a second sending module configured to: when the second determining module determines that the address included in the connection request is not a dynamic address, return a connection response to the mobile device;
  • a second receiving module configured to wait for and receive data sent by the mobile device after the second sending module returns a connection response to the mobile device
  • the pairing and saving module is further configured to pair with the mobile device when the second receiving module receives the pairing request, and save the pairing information;
  • a second sending module configured to: after the pairing save module saves the pairing information, generate a pairing response including the first identity resolution key of the device, and return a pairing response to the mobile device;
  • the second receiving module is further configured to: after the second sending module returns the pairing response to the mobile device, wait for and receive data sent by the mobile device;
  • a third determining module configured to: when the second receiving module receives the link encryption request, determine whether the saved pairing information includes pairing information with the mobile device;
  • the third saving module is further configured to: when the third determining module determines that the paired information stored in the pairing information includes the pairing information with the mobile device, save the session key information according to the link encryption request;
  • the second sending module is further configured to: after the third saving module saves the session key information, return a successful response to the mobile device;
  • the communication module 517 is further configured to: after the second sending module returns a successful response to the mobile device, communicate with the mobile device;
  • the second sending module is further configured to: when the third determining module determines that the saved pairing information does not include the pairing information with the mobile device, return an error code to the mobile device;
  • the disconnecting module 515 is further configured to disconnect the second sending module after returning the error code to the mobile device.
  • the second determining module is specifically configured to: determine whether the data on the second preset bit of the address included in the connection request is preset data, and determine that the address included in the connection request is a dynamic address; otherwise, determine the connection request.
  • the address contained in it is not a dynamic address.
  • the device of the embodiment 5 further includes: a fourth determining module and a shutdown module; wherein
  • the fourth determining module is configured to determine whether the first receiving module 506 receives the data sent by the mobile device in the second preset time;
  • the shutdown module is configured to shut down when the fourth determining module determines that the first receiving module 506 does not receive the data sent by the mobile device within the second preset time.
  • the device in the fifth embodiment further includes: a fifth determining module, or a sixth determining module and a removing module;
  • the fifth determining module is configured to determine whether the second identity resolution key included in the pairing request is included in the identity resolution key list saved by the device;
  • the fourth generation module 512 is further configured to: when the fifth determining module determines that the identity resolution key list saved by the device includes the second identity resolution key included in the pairing request, generate the first identity resolution key that includes the device Pairing response
  • the first saving module 511 is specifically configured to: when the fifth determining module determines that the second set of identity resolution keys included in the pairing request is not included in the identity resolution key list saved by the device, save the second identity included in the pairing request Parsing the key into the identity resolution key list;
  • the sixth judging module is configured to determine whether the second identity resolving key included in the pairing request is included in the identity resolving key list saved by the device;
  • the removing module is configured to: when the sixth determining module determines that the second set of identity resolution keys included in the pairing request is included in the identity resolution key list saved by the device, the second identity resolution key included in the identity resolution key list is Key removal
  • the first saving module 511 is further configured to: after the removing module removes the second identity resolution key included in the identity resolution key list, save the second identity resolution key included in the pairing request to In the identity resolution key list, when the sixth determining module determines that the identity resolution key list saved by the device does not include the second identity resolution key included in the pairing request, save the The second identity resolution key contained in the pairing request is in the identity resolution key list.
  • the device in the embodiment 5 further includes a seventh determining module
  • the first sending module 509 is further configured to: when the seventh determining module determines that the identity resolution key list stored by the device is empty, return an error code to the connected mobile device;
  • the verification module 513 is specifically configured to: when the seventh determination module determines that the identity resolution key list stored by the device is not empty, sequentially use the identity resolution key verification parsing module 508 in the identity resolution key list saved by the device to obtain The second dynamic address.
  • the first parsing submodule is configured to parse the second dynamic address to obtain the second random number and the second data.
  • Generating a sub-module configured to generate a plurality of third data according to the identity resolution key and the second random number in the identity resolution key list stored in the device;
  • the first determining module 514 is specifically configured to: determine whether there is third data that is the same as the second data obtained by the first parsing sub-module, and determine that there is a second identity resolving key that is successfully verified; otherwise, determine There is no second identity resolution key for successful authentication.
  • the first parsing sub-module is specifically configured to: read a high preset bit of the second dynamic address to obtain a second random number, and read a low preset bit of the second dynamic address to obtain second data.
  • the complement unit is configured to complement the second random number obtained by the parsing submodule
  • the cryptographic unit is configured to encrypt the second random number after the complement unit is complemented by the identity resolution key in the identity resolution key list stored in the device to obtain a plurality of second random number ciphertexts;
  • the operation unit is configured to perform a preset operation on the plurality of second random number ciphertexts obtained by the encryption unit to obtain a plurality of third data.
  • the second saving module 516 includes: a second parsing submodule, a judging submodule, a negotiating submodule, and a saving submodule;
  • the second parsing sub-module is configured to parse the link encryption request received by the first receiving module 506 to obtain a session key identifier.
  • a determining sub-module configured to determine whether the session key list stored in the device includes a session key identifier obtained by the second parsing sub-module
  • the first sending module 509 is further configured to: when the determining submodule determines that the session key identifier stored in the device includes the session key identifier, returning a successful response to the connected mobile device;
  • a saving submodule configured to save the session key obtained by the negotiation submodule and the session key identifier obtained by the second parsing submodule to the session key list;
  • the first sending module 509 is further configured to: after the saving sub-module saves the session key obtained by the negotiating sub-module and the session key identifier obtained by the second parsing sub-module into the session key list, returning a successful response to the connected Mobile devices.
  • the pairing module 510 is further configured to: after the first sending module 509 returns an error code to the connected mobile device, when the first receiving module 506 receives the connected mobile device in the second preset time, Pair the incoming mobile device with the incoming pairing request.
  • the Bluetooth device periodically changes its own dynamic address, and can only analyze the dynamic address of the trusted device with which the identity resolving key exchange is completed, and then communicates, and the method is effective. It prevents hackers from stealing data and ensures the security of data between Bluetooth devices and Bluetooth device users. At the same time, when establishing communication with trusted devices that have completed the pairing process, there is no need to pair again and shorten communication with them. Time has improved the user experience.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种蓝牙防追踪的方法,包括:目标蓝牙设备每隔第一预设时间生成第一动态地址并广播;连接并得到移动设备的第二动态地址之后,等待接收移动设备发送的数据,如为配对请求,则与移动设备配对,保存配对请求中含有的第二身份解析密钥,返回含有自身第一身份解析密钥的配对响应给移动设备,继续等待接收数据;如为链路加密请求,则依次使用自身存有的移动设备的身份解析密钥验证第二动态地址,判断是否存在验证成功的第二身份解析密钥,是则返回成功响应给相连的移动设备并与其通信,结束;否则返回错误码,断开连接,结束。本发明中,蓝牙设备周期性地改变自身的动态地址,有效防止了黑客窃取数据。

Description

一种蓝牙防追踪的方法及设备 技术领域
本发明涉及一种蓝牙防追踪的方法及设备,属于信息安全领域。
背景技术
现有技术中,蓝牙设备属于无线射频产品,需要广播一些身份信息,例如MAC地址、设备名称等,来使与其通信的设备(例如:手机)识别蓝牙设备;然而,该过程中,黑客可以通过这些广播信息并结合射频信息的距离来追踪蓝牙设备,从而窃取蓝牙设备及蓝牙设备使用者的隐私数据,存在安全隐患。
发明内容
本发明的目的是提供一种蓝牙防追踪的方法及设备,其蓝牙设备周期性地改变自身的动态地址,有效防止了黑客窃取数据。
根据本发明的一个方面,提供了一种蓝牙防追踪的方法,其包括:
步骤S1:目标蓝牙设备上电,每隔第一预设时间生成第一随机数,并根据所述第一随机数和自身的第一身份解析密钥生成第一数据,根据所述第一随机数和所述第一数据生成第一动态地址,广播含有所述第一动态地址的广播数据,当接收到移动设备发送来的连接请求时,执行步骤S2;
步骤S2:所述目标蓝牙设备连接所述移动设备,解析所述连接请求得到所述移动设备的第二动态地址,返回连接响应给所述移动设备;
步骤S3:所述目标蓝牙设备等待并接收所述移动设备发送来的数据,如为配对请求,则执行步骤S4;如为链路加密请求,则执行步骤S5;
步骤S4:所述目标蓝牙设备与所述移动设备配对,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中,并生成含有自身第一身份解析密钥的配对响应,返回所述配对响应给所述移动设备,返回步骤S3;
步骤S5:所述目标蓝牙设备依次使用自身存有的身份解析密钥列表中的身份解析密钥验证所述第二动态地址,判断是否存在验证成功的第二身份解析密钥,是则执行步骤S6,否则返回错误码给相连的移动设备,断开连接,结束;以及
步骤S6:所述目标蓝牙设备根据所述链路加密请求保存会话密钥信息,返回成功响应给相连的移动设备并与所述相连的移动设备通信,结束。
优选地,所述步骤S1中,所述生成第一随机数,并根据所述第一随机数和自身的第一身份解析密钥生成第一数据,根据所述第一随机数和所述第一数据生成第一动态地址,具体为:
步骤a1:所述目标蓝牙设备生成第一随机数,对所述第一随机数进行补位;
步骤a2:所述目标蓝牙设备使用自身的第一身份解析密钥对补位后的第一随机数加密得到第一随机数密文;
步骤a3:所述目标蓝牙设备对所述第一随机数密文做预设运算得到第一数据;以及
步骤a4:所述目标蓝牙设备将所述第一随机数与所述第一数据顺序拼接得到第一动态地址。
优选地,所述步骤S2中,所述解析所述连接请求得到所述移动设备的第二动态地址之前,还包括:
步骤B1:所述目标蓝牙设备判断所述连接请求中含有的地址是否为动态地址,是则将其作为所述移动设备的第二动态地址,继续执行所述解析所述连接请求得到所述移动设备的第二动态地址;否则返回连接响应给所述移动设备,执行步骤B2;
步骤B2:所述目标蓝牙设备等待并接收所述移动设备发送来的数据,如为链路加密请求,则执行步骤B3;如为配对请求,则与所述移动设备配对,保存配对信息,并生成含有自身第一身份解析密钥的配对响应,返回所述配对响应给所述移动设备,继续执行步骤B2;以及
步骤B3:所述目标蓝牙设备判断自身保存的配对信息中是否含有与所述移动设备的配对信息,是则根据所述链路加密请求保存会话密钥信息,返回成功响应给所述移动设备并与所述移动设备通信,结束;否则返回错误码给所述移动设备,断开连接,结束。
优选地,所述步骤B1中,所述目标蓝牙设备判断所述连接请求中含有的地址是否为动态地址,具体为:所述目标蓝牙设备判断所述连接请求中含有的地址的第二预设位上的数据是否为预设数据,是则判定所述连接请求中含有的地址是动态地址;否则判定所述连接请求中含有的地址不是动态地址。
优选地,所述步骤B3中,所述目标蓝牙设备判断自身保存的配对信息中是否含有与所述移动设备的配对信息,具体为:所述目标蓝牙设备判断自身保存的配对信息中是否含有接收到的连接请求中含有的地址,是则判定自身保存的配对信息中含有与所述移动设备的配对信息;否则判定自身保存的配对信息中不含有与所述移动设备的配对信息。
优选地,所述步骤S3中,还包括:所述目标蓝牙设备判断第二预设时间内是否接收到所述移动设备发送来的数据,是则,如为配对请求,则执行步骤S4;如为链路加密请求,则执行步骤S5;否则关机,结束。
优选地,所述步骤S4中,所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中之前,还包括:
步骤H:所述目标蓝牙设备判断自身保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥,是则生成含有自身第一身份解析密钥的配对响应,返回配对响应给所述移动设备,返回步骤S3;否则,继续执行所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;或者,
步骤F:所述目标蓝牙设备判断自身保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥,是则将所述身份解析密钥列表中含有的第二身份解析密钥移除,继续执行所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;否则,继续执行所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中。
优选地,所述步骤S5之前,还包括:
所述目标蓝牙设备判断自身存有的身份解析密钥列表是否为空,是则返回错误码给相连的移动设备,断开连接,结束;否则,执行步骤S5。
优选地,所述步骤S5中,所述目标蓝牙设备依次使用自身存有的身份解析密钥列表中的身份解析密钥验证第二动态地址,判断是否存在验证成功的第二身份解析密钥,具体包括:
步骤b1:所述目标蓝牙设备解析所述第二动态地址得到第二随机数和第二数据;以及
步骤b2:所述目标蓝牙设备依次根据自身存有的身份解析密钥列表中的身份解析密钥和所述第二随机数生成多个第三数据,并判断是否存在与所述第二数据相同的第三数据,是则判定存在验证成功的第二身份解析密钥;否则,判定不存在验证成功的第二身份解析密钥。
优选地,所述步骤b1,具体为:所述目标蓝牙设备读取所述第二动态地址的高预设位得到第二随机数,读取所述第二动态地址的低预设位得到第二数据。
优选地,所述步骤b2中,所述目标蓝牙设备依次根据自身存有的身份解析密钥列表中的身份解析密钥和所述第二随机数生成多个第三数据,具体包括:
步骤d1:所述目标蓝牙设备对所述第二随机数进行补位;以及
步骤d2:所述目标蓝牙设备依次使用自身存有的身份解析密钥列表中的身份解析密钥对补位后的第二随机数加密得到多个第二随机数密文,并对所述多个第二随机数密文做预设运算得多个第三数据。
优选地,所述步骤S6,具体包括:
步骤t1:所述目标蓝牙设备解析所述链路加密请求得到会话密钥标识,判断自身存有的会话密钥列表中是否含有所述会话密钥标识,是则返回成功响应给相连的移动设备并与所述相连的移动设备通信,结束;否则执行步骤t2;以及
步骤t2:所述目标蓝牙设备与所述移动设备协商会话密钥,将协商得到的会话密钥与所述会话密钥标识对应保存至所述会话密钥列表中,返回成功响应给相连的移动设备并与所述相连的移动设备通信,结束。
优选地,所述方法还包括:
步骤W1:当所述移动设备扫描到所述目标蓝牙设备时,发送含有自身第二动态地址的连接请求给所述目标蓝牙设备;
步骤W2:当所述移动设备接收到所述目标蓝牙设备返回的连接响应时,解析获取到的所述目标蓝牙设备的广播数据得到所述第一动态地址;
步骤W3:所述移动设备判断自身是否存有蓝牙设备的身份解析密钥,是则执行步骤W5,否则执行步骤W4;
步骤W4:所述移动设备生成含有自身第二身份解析密钥的配对请求,发送所述配对请求给所述目标蓝牙设备,接收所述目标蓝牙设备返回的配对响应,将所述配对响应中含有第一身份解析密钥保存,执行步骤W6;
步骤W5:所述移动设备依次使用自身存有的蓝牙设备的身份解析密钥验证所述第一动态地址,判断是否存在验证成功的第一身份解析密钥,是则执行步骤W6,否则返回步骤W4;以及
步骤W6:所述移动设备发送链路加密请求给所述目标蓝牙设备,接收所述目标蓝牙设备返回的响应,如为成功响应,则与所述目标蓝牙设备通信,结束;如为错误码,则断开连接,结束。
优选地,所述步骤W6中,当所述移动设备接收到所述目标蓝牙设备返回的响应为错误码时,还包括:所述移动设备通过应用程序提示用户错误信息,并接收来自所述用户的控件触发信息,如为重新配对信息,则返回步骤W4;如为结束信息,则断开连接,结束;以及
所述步骤S5中,所述返回错误码给相连的移动设备之后,还包括:当第二预设时间内接收到所述相 连的移动设备发送来的配对请求时,返回步骤S4。
根据本发明的另一个方面,提供了一种蓝牙防追踪设备,其包括:
上电模块,用于上电;
第一生成模块,用于每隔第一预设时间生成第一随机数;
第二生成模块,用于根据所述第一生成模块生成的第一随机数和所述设备的第一身份解析密钥生成第一数据;
第三生成模块,用于根据所述第一生成模块生成的第一随机数和所述第二生成模块生成的第一数据生成第一动态地址;
广播模块,用于广播含有所述第一动态地址的广播数据;
第一接收模块,用于接收移动设备发送来的数据;
连接模块,用于当所述第一接收模块接收到移动设备发送来的连接请求时,连接所述移动设备;
解析模块,用于解析所述第一接收模块接收到的连接请求得到所述移动设备的第二动态地址;
第一发送模块,用于返回连接响应给所述移动设备;
所述第一接收模块,还用于在所述第一发送模块返回连接响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
配对模块,用于当所述第一接收模块接收到移动设备发送来的配对请求时,与所述移动设备配对;
第一保存模块,用于保存所述第一接收模块接收到的配对请求中含有的第二身份解析密钥至身份解析密钥列表中;
第四生成模块,用于生成含有所述设备的第一身份解析密钥的配对响应;
所述第一发送模块,还用于返回所述第四生成模块生成的配对响应给所述移动设备;
所述第一接收模块,还用于在所述第一发送模块返回配对响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
验证模块,用于当所述第一接收模块接收到移动设备发送来的链路加密请求时,依次使用自身存有的身份解析密钥列表中的身份解析密钥验证所述解析模块得到的第二动态地址;
第一判断模块,用于判断是否存在验证成功的第二身份解析密钥;
所述第一发送模块,还用于在所述第一判断模块判断出不存在验证成功的第二身份解析密钥时,返回错误码给相连的移动设备;
断开模块,用于在所述第一发送模块返回错误码给相连的移动设备之后,断开连接;
第二保存模块,用于当所述第一判断模块判断出存在验证成功的第二身份解析密钥时,根据所述第一接收模块接收到的链路加密请求保存会话密钥信息;
所述第一发送模块,还用于在所述第二保存模块保存会话密钥信息之后,返回成功响应给相连的移动设备;以及
通讯模块,用于在所述第一发送模块返回成功响应给相连的移动设备之后,与所述相连的移动设备通信。
优选地,所述第一生成模块,具体用于:生成第一随机数,对所述第一随机数进行补位;
所述第二生成模块,具体用于:使用所述设备的第一身份解析密钥对补位后的第一随机数加密得到第一随机数密文,对所述第一随机数密文做预设运算得到第一数据;以及
所述第三生成模块,具体用于:将所述第一生成模块生成的第一随机数与所述第二生成模块生成的第一数据顺序拼接得到第一动态地址。
优选地,所述设备还包括:第二判断模块、作为模块、第二发送模块、第二接收模块、配对保存模块、第三判断模块和第三保存模块;
所述第二判断模块,用于判断所述连接请求中含有的地址是否为动态地址;
所述作为模块,用于当所述第二判断模块判断出所述连接请求中含有的地址是动态地址时,其作为所述移动设备的第二动态地址,触发所述解析模块;
所述第二发送模块,用于当所述第二判断模块判断出所述连接请求中含有的地址不是动态地址时,返回连接响应给所述移动设备;
第二接收模块,用于在所述第二发送模块返回连接响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
所述配对保存模块,还用于在所述第二接收模块接收到配对请求时,与所述移动设备配对,保存配对信息;
所述第二发送模块,用于在所述配对保存模块保存配对信息之后,生成含有所述设备的第一身份解析密钥的配对响应,返回所述配对响应给所述移动设备;
所述第二接收模块,还用于在所述第二发送模块返回所述配对响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
所述第三判断模块,用于在所述第二接收模块接收到链路加密请求时,判断保存的配对信息中是否含有与所述移动设备的配对信息;
所述第三保存模块,还用于在所述第三判断模块判断出保存的配对信息中含有与所述移动设备的配对信息时,根据所述链路加密请求保存会话密钥信息;
所述第二发送模块,还用于在所述第三保存模块保存会话密钥信息之后,向所述移动设备返回成功响应;
所述通讯模块,还用于在所述第二发送模块返回成功响应给所述移动设备之后,与所述移动设备通信;
所述第二发送模块,还用于在所述第三判断模块判断出保存的配对信息中不含有与所述移动设备的配对信息时,返回错误码给所述移动设备;以及
所述断开模块,还用于在所述第二发送模块返回错误码给所述移动设备之后,断开连接。
优选地,所述第二判断模块,具体用于:判断所述连接请求中含有的地址的第二预设位上的数据是否为预设数据,是则判定所述连接请求中含有的地址是动态地址;否则判定所述连接请求中含有的地址不是动态地址。
优选地,所述第三判断模块,具体用于:判断所述设备保存的配对信息中是否含有接收到的连接请求中含有的地址,是则判定所述设备保存的配对信息中含有与所述移动设备的配对信息;否则判定所述设备保存的配对信息中不含有与所述移动设备的配对信息。
优选地,所述设备还包括:第四判断模块和关机模块;
所述第四判断模块,用于判断所述第一接收模块在第二预设时间内是否接收到所述移动设备发送来的数据;以及
所述关机模块,用于在所述第四判断模块判断出所述第一接收模块在第二预设时间内未接收到所述移动设备发送来的数据时,关机。
优选地,所述设备还包括:第五判断模块,或者第六判断模块和移除模块;
所述第五判断模块,用于判断所述设备保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥;
所述第四生成模块,还用于当所述第五判断模块判断出所述设备保存的身份解析密钥列表中含有所述配对请求中含有的第二身份解析密钥时,生成含有所述设备的第一身份解析密钥的配对响应;
所述第一保存模块,具体用于:当所述第五判断模块判断出所述设备保存的身份解析密钥列表中不含有所述配对请求中含有的第二身份解析密钥时,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;
所述第六判断模块,用于判断所述设备保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥;
所述移除模块,用于当所述第六判断模块判断出所述设备保存的身份解析密钥列表中含有所述配对请求中含有的第二身份解析密钥时,将所述身份解析密钥列表中含有的第二身份解析密钥移除;以及
所述第一保存模块,还用于在所述移除模块将所述身份解析密钥列表中含有的第二身份解析密钥移除之后,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;还用于当所述第六判断模块判断出所述设备保存的身份解析密钥列表中不含有所述配对请求中含有的第二身份解析密钥时,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中。
优选地,所述设备还包括第七判断模块;
所述第七判断模块,用于判断所述设备存有的身份解析密钥列表是否为空;
所述第一发送模块,还用于当所述第七判断模块判断出所述设备存有的身份解析密钥列表为空时,返回错误码给相连的移动设备;以及
所述验证模块,具体用于:当所述第七判断模块判断出所述设备存有的身份解析密钥列表不为空时,依次使用所述设备保存的身份解析密钥列表中的身份解析密钥验证所述解析模块得到的第二动态地址。
优选地,所述验证模块,包括第一解析子模块和生成子模块;
所述第一解析子模块,用于解析所述第二动态地址得到第二随机数和第二数据;
所述生成子模块,用于依次根据所述设备存有的身份解析密钥列表中的身份解析密钥和所述第二随机数生成多个第三数据;以及
所述第一判断模块,具体用于:判断是否存在与所述第一解析子模块得到的第二数据相同的第三数据,是则判定存在验证成功的第二身份解析密钥;否则,判定不存在验证成功的第二身份解析密钥。
优选地,所述第一解析子模块,具体用于:读取所述第二动态地址的高预设位得到第二随机数,读取 所述第二动态地址的低预设位得到第二数据。
优选地,所述生成子模块,包括:补位单元、加密单元和运算单元;
所述补位单元,用于对所述解析子模块得到的第二随机数进行补位;
所述加密单元,用于依次使用所述设备存有的身份解析密钥列表中的身份解析密钥对所述补位单元补位后的第二随机数加密得到多个第二随机数密文;以及
所述运算单元,用于对所述加密单元得到的多个第二随机数密文做预设运算得多个第三数据。
优选地,所述第二保存模块,包括:第二解析子模块、判断子模块、协商子模块和保存子模块;
所述第二解析子模块,用于解析所述第一接收模块接收到的链路加密请求得到会话密钥标识;
所述判断子模块,用于判断所述设备存有的会话密钥列表中是否含有所述会话密钥标识;
所述第一发送模块,还用于当所述判断子模块判断出所述设备存有的会话密钥列表中含有所述会话密钥标识时,返回成功响应给相连的移动设备;
所述协商子模块,用于当所述判断子模块判断出所述设备存有的会话密钥列表中不含有所述会话密钥标识时,与所述移动设备协商会话密钥;
所述保存子模块,用于将所述协商子模块得到的会话密钥与所述第二解析子模块得到的会话密钥标识对应保存至所述会话密钥列表中;以及
所述第一发送模块,还用于在所述保存子模块将所述协商子模块得到的会话密钥与所述第二解析子模块得到的会话密钥标识对应保存至所述会话密钥列表中之后,返回成功响应给相连的移动设备。
优选地,所述配对模块,还用于在所述第一发送模块返回错误码给相连的移动设备之后,当所述第一接收模块在第二预设时间内接收到所述相连的移动设备发送来的配对请求时,与所述相连的移动设备配对。
根据本发明,蓝牙设备周期性地改变自身的动态地址,且只能对与之完成了配对过程进行了身份解析密钥交换的可信设备的动态地址进行解析,进而进行通讯,该方式有效防止了黑客窃取数据,保障了蓝牙设备及蓝牙设备使用者的数据的安全;同时,该方式中,对于已完成了配对过程的可信设备,蓝牙设备再次与之建立通讯时,无需再次与之配对,缩短了与之建立通讯的时间,提升了用户体验。
附图说明
图1为本发明实施例1提供的一种蓝牙防追踪的方法流程图;
图2为本发明实施例2提供的一种蓝牙防追踪的方法流程图;
图3为本发明实施例3提供的一种蓝牙防追踪的方法中蓝牙设备的工作方法流程图;
图4为本发明实施例4提供的一种蓝牙防追踪的方法中移动设备的工作方法流程图;
图5为本发明实施例5提供的一种蓝牙防追踪设备的模块组成框图。
具体实施方式
下面将结合附图,对本发明的技术方案进行清楚、完整的描述;显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域的技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明中,蓝牙设备周期性地改变自身的动态地址,并广播自身的动态地址;在蓝牙设备与移动设备成功验证彼此之后,蓝牙设备与移动设备通讯的过程中不再改变自身的动态地址。
本发明中所述的身份解析密钥,即IRK(英文全称:Identity Resolving Key)。
实施例1:
本发明实施例1提供一种蓝牙防追踪的方法,如图1所示,包括:
步骤101:目标蓝牙设备上电,每隔第一预设时间生成第一随机数,并根据第一随机数和自身的第一身份解析密钥生成第一数据,根据第一随机数和第一数据生成第一动态地址,广播含有第一动态地址的广播数据,当接收到移动设备发送来的连接请求时,执行步骤102;
步骤102:目标蓝牙设备连接移动设备,解析连接请求得到相连的移动设备的第二动态地址,返回连接响应给相连的移动设备;
步骤103:目标蓝牙设备等待并接收移动设备发送来的数据,如为配对请求,则执行步骤104;如为链路加密请求,则执行步骤105;
步骤104:目标蓝牙设备与相连的移动设备配对,保存配对请求中含有的第二身份解析密钥至身份解析密钥列表中,并生成含有自身第一身份解析密钥的配对响应,返回配对响应给相连的移动设备,返回步骤103;
步骤105:目标蓝牙设备依次使用自身存有的身份解析密钥列表中的身份解析密钥验证第二动态地址, 判断是否存在验证成功的第二身份解析密钥,是则执行步骤106,否则返回错误码给相连的移动设备,断开连接,结束;
步骤106:目标蓝牙设备根据接收到的链路加密请求保存会话密钥信息,返回成功响应给相连的移动设备并与相连的移动设备通信,结束。
在本实施例1中,步骤105之前,还包括:目标蓝牙设备判断自身存有的身份解析密钥列表是否为空,是则返回错误码给相连的移动设备,断开连接,结束;否则,执行步骤105。
进一步地,本实施例1中的方法还包括:
步骤W1:当移动设备扫描到目标蓝牙设备时,发送含有自身第二动态地址的连接请求给目标蓝牙设备;
步骤W2:当移动设备接收到目标蓝牙设备返回的连接响应时,解析获取到的目标蓝牙设备的广播数据得到第一动态地址;
步骤W3:移动设备判断自身是否存有蓝牙设备的身份解析密钥,是则执行步骤W5,否则执行步骤W4;
步骤W4:移动设备生成含有自身第二身份解析密钥的配对请求,发送配对请求给目标蓝牙设备,接收目标蓝牙设备返回的配对响应,将配对响应中含有第一身份解析密钥保存,执行步骤W6;
步骤W5:移动设备依次使用自身存有的蓝牙设备的身份解析密钥验证第一动态地址,判断是否存在验证成功的第一身份解析密钥,是则执行步骤W6,否则返回步骤W4;
步骤W6:移动设备发送链路加密请求给目标蓝牙设备,接收目标蓝牙设备返回的响应,如为成功响应,则与目标蓝牙设备通信,结束;如为错误码,则断开连接,结束。
在本实施例1中,步骤W6中,当移动设备接收到目标蓝牙设备返回的响应为错误码时,还包括:移动设备通过应用程序提示用户错误信息,并接收来自用户的控件触发信息,如为重新配对信息,则返回步骤W4;如为结束信息,则断开连接,结束;
对应地,步骤105中,返回错误码给相连的移动设备之后,还包括:当第二预设时间内接收到相连的移动设备发送来的配对请求时,返回步骤104。
实施例2:
本发明实施例2提供一种蓝牙防追踪的方法,如图2所示,包括:
步骤201:目标蓝牙设备上电;
步骤202:目标蓝牙设备每隔第一预设时间生成第一随机数,并根据生成的第一随机数和自身的第一身份解析密钥生成第一数据,根据第一随机数和第一数据生成第一动态地址,广播含有第一动态地址的广播数据;
优选地,在本实施例2中,第一预设时间为60s;
在本实施例2中,目标蓝牙设备生成第一随机数,并根据生成的第一随机数和自身的第一身份解析密钥生成第一数据,并根据第一随机数和第一数据生成第一动态地址,具体包括:
步骤a1:目标蓝牙设备生成第一随机数,并对第一随机数进行补位;具体地,目标蓝牙设备生成24位的第一随机数,且生成的第一随机数的最高2位为01,并在第一随机数的左侧补第一预设位的零;优选地,在本实施例2中,第一预设位为104位;例如,在本实施例2中,目标蓝牙设备生成的第一随机数为423456,目标蓝牙设备对第一随机数补位后为00000000000000000000000000423456。
步骤a2:目标蓝牙设备使用自身的第一身份解析密钥对补位后的第一随机数加密得到第一随机数密文;具体地,目标蓝牙设备使用自身的第一身份解析密钥对补位后的第一随机数做AES加密得到第一随机数密文;
例如,在本实施例2中,目标蓝牙设备的第一身份解析密钥为0102030405060708090A0B0C0D0E0F10,得到的第一随机数密文为9912D4DD9EE19546190599551D766B05。
步骤a3:目标蓝牙设备对第一随机数密文做预设运算得第一数据;具体地,目标蓝牙设备使用第一随机数密文对2^24做取模运算得到运算结果,将得到的运算结果作为第一数据;
例如,在本实施例2中,目标蓝牙设备使用上述第一随机数密文对2^24做取模运算得到的运算结果为766B05,即第一数据为766B05。
步骤a4:目标蓝牙设备将第一随机数与第一数据顺序拼接得到第一动态地址;例如,在本实施例2中,目标蓝牙设备将上述第一随机数和第一数据顺序拼接得到的第一动态地址为423456766B05。
步骤203:移动设备扫描周围的蓝牙设备,判断是否扫描到目标蓝牙设备,是则执行步骤204,否则继续执行步骤203;
具体地,第一设备扫描周围的蓝牙设备,并获取扫描到的蓝牙设备的广播数据,解析得到的广播数据得到蓝牙设备的设备名称,判断得到的蓝牙设备的设备名称与目标蓝牙设备的设备名称是否相同,是则判 定扫描到目标蓝牙设备,否则判定未扫描到蓝牙设备。
进一步地,在本实施例2中,步骤203之前,还包括:移动设备生成自身的第二动态地址;
在本实施例2中,移动设备生成自身的第二动态地址的过程同目标蓝牙设备生成第一动态地址的过程相同,在此不再赘述。例如,移动设备生成自身的第二动态地址为683D9752CB5E。
需要说明地,在本实施例2中,步骤202和步骤203可以同时进行,不分先后顺序。
步骤204:移动设备生成含有自身第二动态地址的连接请求,发送连接请求给目标蓝牙设备;
步骤205:目标蓝牙设备接收连接请求,并与发送连接请求的移动设备建立连接,解析接收到的连接请求得到移动设备的第二动态地址,返回连接响应给移动设备;
在本实施例2中,目标蓝牙设备解析接收到的连接请求得到移动设备的第二动态地址之前,还包括:
步骤B1:目标蓝牙设备判断接收到的连接请求中含有的地址是否为动态地址,是则将其作为移动设备的第二动态地址,继续执行解析接收到的连接请求得到移动设备的第二动态地址;否则返回连接响应给移动设备,执行步骤B2;
具体地,目标蓝牙设备判断接收到的连接请求中含有的地址的第二预设位上的数据是否为预设数据,是则判定接收到的连接请求中含有的地址是动态地址;否则判定接收到的连接请求中含有的地址不是动态地址;
在本实施例2中,第二预设位为最高两位,预设数据为01。
例如,在本实施例2中,连接请求中含有的设备地址为683D9752CB5E,判定是动态地址。
步骤B2:目标蓝牙设备等待并接收移动设备发送来的数据,如为链路加密请求,则执行步骤B3;如为配对请求,则与移动设备配对,保存配对信息,并生成含有自身第一身份解析密钥的配对响应,返回配对响应给移动设备,继续执行步骤B2;
步骤B3:目标蓝牙设备判断自身保存的配对信息中是否含有与移动设备的配对信息,是则根据链路加密请求保存会话密钥信息,返回成功响应给移动设备并与移动设备通信,结束;否则返回错误码给移动设备,结束。
在本实施例2中,目标蓝牙设备判断自身保存的配对信息中是否含有与移动设备的配对信息,具体为:目标蓝牙设备判断自身保存的配对信息中是否含有接收到的连接请求中含有的地址,是则判定自身保存的配对信息中含有与移动设备的配对信息;否则判定自身保存的配对信息中不含有与移动设备的配对信息。
进一步地,在本实施例2中,根据链路加密请求保存会话密钥信息,返回成功响应给移动设备并与移动设备通信,具体包括:
步骤t1:目标蓝牙设备解析链路加密请求得到会话密钥标识,判断自身存有的会话密钥列表中是否含有得到的会话密钥标识,是则返回成功响应给相连的移动设备并与所述相连的移动设备通信,结束;否则执行步骤t2;
步骤t2:目标蓝牙设备与移动设备协商会话密钥,将协商得到的会话密钥与会话密钥标识对应保存至会话密钥列表中,返回成功响应给相连的移动设备并与相连的移动设备通信,结束。
步骤206:移动设备接收目标蓝牙设备返回的连接响应,解析目标蓝牙设备的广播数据得到目标蓝牙设备的第一动态地址;
在本实施例2中,解析目标蓝牙设备的广播数据得到目标蓝牙设备的第一动态地址之前,还包括:
步骤D1:移动设备判断目标蓝牙设备的广播数据中含有的地址是否为动态地址,是则将其作为目标蓝牙设备的第一动态地址,继续执行解析目标蓝牙设备的广播数据得到目标蓝牙设备的第一动态地址;否则执行步骤D2;
具体地,移动设备判断目标蓝牙设备的广播数据中含有的地址的第二预设位上的数据是否为预设数据,是则判定目标蓝牙设备的广播数据中含有的地址是动态地址;否则判定目标蓝牙设备的广播数据中含有的地址不是动态地址;在本实施例2中,第二预设位为最高两位,预设数据为01。
例如,在本实施例2中,目标蓝牙设备的广播数据中含有的地址为423456766B05,判定是动态地址。
步骤D2:移动设备判断自身保存的配对信息中是否含有与目标蓝牙设备的配对信息,是则执行步骤D3,否则执行步骤D4;具体地,移动设备判断自身保存的配对信息中是否含有广播数据中含有的地址,是则判定自身保存的配对信息中含有与目标蓝牙设备的配对信息,否则判定自身保存的配对信息中不含有与目标蓝牙设备的配对信息。
步骤D3:移动设备发送链路加密请求给目标蓝牙设备,当接收到目标蓝牙设备返回的成功响应时,与目标蓝牙设备通信,结束;当接收到错误码时,断开连接,结束;
步骤D4:移动设备生成含有自身第二身份解析密钥的配对请求,发送配对请求给目标蓝牙设备,当接收到目标蓝牙设备返回的配对响应时,保存配对信息,返回步骤D3。
步骤207:移动设备判断自身是否存有蓝牙设备的身份解析密钥,是则执行步骤208,否则执行步骤 210;具体地,移动设备判断自身存有的身份解析密钥列表是否为空,是则判定自身未存有蓝牙设备的身份解析密钥,执行步骤210;否则判定自身存有蓝牙设备的身份解析密钥,执行步骤208。
步骤208:移动设备依次使用自身存有的蓝牙设备的身份解析密钥验证第一动态地址,判断是否存在验证成功的第一身份解析密钥,是则执行步骤209,否则执行步骤210;
在本实施例2中,移动设备依次使用自身存有的蓝牙设备的身份解析密钥验证第一动态地址,判断是否存在验证成功的第一身份解析密钥,具体包括:
步骤m1:移动设备读取自身存有的身份解析密钥列表中的第一个身份解析密钥并作为当前身份解析密钥;
步骤m2:移动设备使用当前身份解析密钥验证第一动态地址,判断是否验证成功,是则判定存在验证成功的第一身份解析密钥,执行步骤209;否则执行步骤m3;
步骤m3:移动设备判断当前身份解析密钥是否为自身存有的身份解析密钥列表中的最后一个,是则判定不存在验证成功的第一身份解析密钥,执行步骤210;否则将当前身份解析密钥的下一个身份解析密钥作为当前身份解析密钥,返回步骤m2;
其中,步骤m2具体包括:
步骤m2-1:移动设备解析第一动态地址得到第一随机数和第一数据;
具体地,移动设备读取第一动态地址的高24位得到第一随机数,读取第一动态地址的低24位得到第一数据;
例如,在本实施例2中,解析上述第一动态地址得到的第一随机数为423456,第一数据为766B05。
步骤m2-2:移动设备根据当前身份解析密钥和第一随机数生成第四数据,判断第四数据与第一数据是否相同,是则判定存在验证成功的第一身份解析密钥,执行步骤209;否则,执行步骤m3;
在本实施例2中,移动设备根据当前身份解析密钥和第一随机数生成第四数据的方法,同步骤202中所述的目标蓝牙设备根据第一随机数和自身的第一身份解析密钥生成第一数据的方法相同,在此不再赘述。
步骤209:移动设备发送链路加密请求给目标蓝牙设备;
步骤210:移动设备生成含有自身第二身份解析密钥的配对请求,发送配对请求给目标蓝牙设备;
例如,在本实施例2中,移动设备的第二身份解析密钥为112233445566778899AABBCCDDEEFF00。
步骤211:目标蓝牙设备接收移动设备发送来的请求,判断请求类型,如为配对请求,则执行步骤212;如为链路加密请求,则执行步骤214;
本步骤中,还包括:目标蓝牙设备判断第二预设时间内是否接收到移动设备发送来的数据,是则,如为配对请求,则执行步骤212;如为链路加密请求,则执行步骤214;否则关机,结束。
优选地,在本实施例2中,第二预设时间为35秒。
步骤212:目标蓝牙设备与相连的移动设备配对,解析接收到的配对请求得到相连的移动设备的第二身份解析密钥,保存第二身份解析密钥,生成含有自身第一身份解析密钥的配对响应,返回配对响应给相连的移动设备;
例如,在本实施例2中,目标蓝牙设备解析接收到的配对请求得到移动设备的第二身份解析密钥为112233445566778899AABBCCDDEEFF00。
进一步地,在本实施例2中,目标蓝牙设备保存第二身份解析密钥之前,还包括:
步骤H:目标蓝牙设备判断自身保存的移动设备的身份解析密钥中是否含有第二身份解析密钥,是则生成含有自身第一身份解析密钥的配对响应,返回配对响应给移动设备;否则,继续执行保存第二身份解析密钥;或者,
步骤F:目标蓝牙设备判断自身保存的移动设备的身份解析密钥中是否含有第二身份解析密钥,是则将已保存的第二身份解析密钥移除,继续执行保存第二身份解析密钥;否则,继续执行保存第二身份解析密钥。
步骤213:移动设备解析接收到的配对响应得到第一身份解析密钥,保存第一身份解析密钥,返回步骤209;
步骤214:目标蓝牙设备判断自身是否存有移动设备的身份解析密钥,是则执行步骤215,否则返回错误码给移动设备,与移动设备断开连接,结束;
具体地,目标蓝牙设备判断自身存有的身份解析密钥列表是否为空,是则判定自身未存有移动设备的身份解析密钥,返回错误码给相连的移动设备,与移动设备断开连接,结束;否则判定自身存有移动设备的身份解析密钥,执行步骤215;
步骤215:目标蓝牙设备依次使用自身存有的移动设备的身份解析密钥验证第二动态地址,判断是否存在验证成功的第二身份解析密钥,是则根据接收到的链路加密请求保存会话密钥信息,返回成功响应给 相连的移动设备,执行步骤217;否则返回错误码给相连的移动设备;
在本实施例2中,目标蓝牙设备依次使用自身存有的移动设备的身份解析密钥验证第二动态地址,判断是否存在验证成功的第二身份解析密钥,具体包括:
步骤n1:目标蓝牙设备读取自身存有的身份解析密钥列表中的第一个身份解析密钥并作为当前身份解析密钥;
步骤n2:目标蓝牙设备使用当前身份解析密钥验证第二动态地址,如验证成功,则判定存在验证成功的第二身份解析密钥,执行步骤217;如验证失败,则执行步骤n3;
步骤n3:目标蓝牙设备判断当前身份解析密钥是否为自身存有的身份解析密钥列表中的最后一个,是则判定不存在验证成功的第二身份解析密钥,返回错误码给移动设备,与移动设备断开连接,结束;否则将当前身份解析密钥的下一个身份解析密钥作为当前身份解析密钥,返回步骤n2;
其中,步骤n2具体包括:
步骤n2-1:目标蓝牙设备解析第二动态地址得到第二随机数和第二数据;
具体地,目标蓝牙设备读取第二动态地址的高24位得到第二随机数,读取第二动态地址的低24位得到第二数据;
例如,在本实施例2中,解析上述第二动态地址得到的第二随机数为683D97,第二数据为52CB5E。
步骤n2-2:目标蓝牙设备根据当前身份解析密钥和第二随机数生成第三数据,判断第三数据与第一数据是否相同,是则判定验证成功,存在验证成功的第二身份解析密钥;否则判定验证失败,执行步骤n3;
在本实施例2中,目标蓝牙设备根据当前身份密钥和第二随机数生成第三数据的方法,同步骤202中所述的目标蓝牙设备根据第一随机数和自身的第一身份解析密钥生成第一数据的方法相同,在此不再赘述。
在本实施例2中,当移动设备接收到的目标蓝牙设备返回的响应为错误码时,还可以包括:移动设备通过应用程序提示用户错误信息,并接收来自用户的控件触发信息,如为重新配对信息,则返回步骤210;如为结束信息,则断开连接,结束。
对应地,步骤214中,目标蓝牙设备返回错误码给相连的移动设备之后,还包括:当第二预设时间内接收到相连的移动设备发送来的配对请求时,返回步骤212。
步骤216:移动设备与目标蓝牙设备断开连接,结束;
步骤217:目标蓝牙设备与移动设备通信;
步骤218:移动设备与目标蓝牙设备通讯,结束;
需要说明地,步骤217和218中所述的通信,具体为目标蓝牙设备与移动设备进行API的功能通讯。
实施例3:
本发明实施例3提供一种蓝牙防追踪的方法中目标蓝牙设备的工作方法,如图3所示,包括:
步骤301:目标蓝牙设备上电;
步骤302:目标蓝牙设备每隔第一预设时间生成第一随机数,并根据生成的第一随机数和自身的第一身份解析密钥生成第一数据,根据第一随机数和第一数据生成第一动态地址,广播含有第一动态地址的广播数据,当接收到移动设备发送来的连接请求时,执行步骤303;
优选地,在本实施例3中,第一预设时间为60s;
在本实施例3中,目标蓝牙设备生成第一随机数,根据生成的第一随机数和自身的第一身份解析密钥生成第一数据,并根据第一随机数和第一数据生成第一动态地址,具体包括:
步骤a1:目标蓝牙设备生成第一随机数,并对第一随机数进行补位;
具体地,目标蓝牙设备生成24位的第一随机数,且生成的第一随机数的最高2位为01,并在第一随机数的左侧补第一预设位的零;
优选地,在本实施例3中,第一预设位为104位
例如,在本实施例3中,目标蓝牙设备生成的第一随机数为423456,
目标蓝牙设备对第一随机数补位后为00000000000000000000000000423456。
步骤a2:目标蓝牙设备使用自身的第一身份解析密钥对补位后的第一随机数加密得到第一随机数密文;
具体地,目标蓝牙设备使用自身的第一身份解析密钥对补位后的第一随机数做AES加密得到第一随机数密文;
例如,在本实施例3中,目标蓝牙设备的第一身份解析密钥为0102030405060708090A0B0C0D0E0F10,得到的第一随机数密文为9912D4DD9EE19546190599551D766B05。
步骤a3:目标蓝牙设备对第一随机数密文做预设运算得到第一数据;
具体地,目标蓝牙设备使用第一随机数密文对2^24做取模运算得到运算结果,将得到的运算结果作 为第一数据;
例如,在本实施例3中,目标蓝牙设备使用上述第一随机数密文对2^24做取模运算得到的运算结果为766B05,即第一数据为766B05。
步骤a4:目标蓝牙设备将第一随机数与第一数据顺序拼接得到第一动态地址;
例如,在本实施例3中,目标蓝牙设备将上述第一随机数和第一数据顺序拼接得到的第一动态地址为423456766B05。
步骤303:目标蓝牙设备连接移动设备,解析接收到的连接请求得到移动设备的第二动态地址,返回连接响应给移动设备;
在本实施例3中,目标蓝牙设备解析接收到的连接请求得到移动设备的第二动态地址之前,还包括:
步骤B1:目标蓝牙设备判断接收到的连接请求中含有的地址是否为动态地址,是则将其作为移动设备的第二动态地址,继续执行解析接收到的连接请求得到移动设备的第二动态地址;否则返回连接响应给移动设备,执行步骤B2;
具体地,目标蓝牙设备判断接收到的连接请求中含有的地址的第二预设位上的数据是否为预设数据,是则判定接收到的连接请求中含有的地址是动态地址;否则判定接收到的连接请求中含有的地址不是动态地址;
在本实施例3中,第二预设位为最高两位,预设数据为01。
例如,在本实施例3中,连接请求中含有的设备地址为683D9752CB5E,判定是动态地址。
步骤B2:目标蓝牙设备等待并接收移动设备发送来的数据,如为链路加密请求,则执行步骤B3;如为配对请求,则与移动设备配对,保存配对信息,并生成含有自身第一身份解析密钥的配对响应,返回配对响应给移动设备,继续执行步骤B2;
步骤B3:目标蓝牙设备判断自身保存的配对信息中是否含有与移动设备的配对信息,是则根据链路加密请求保存会话密钥信息,返回成功响应给移动设备并与移动设备通信,结束;否则返回错误码给移动设备,结束。
具体地,目标蓝牙设备判断自身保存的配对信息中是否含有接收到的连接请求中含有的地址,是则判定自身保存的配对信息中含有与移动设备的配对信息;否则判定自身保存的配对信息中不含有与移动设备的配对信息。
步骤304:目标蓝牙设备等待并接收相连的移动设备发送来的数据,如为配对请求,则执行步骤305,如为链路加密请求,则执行步骤306;
本步骤中,还包括:目标蓝牙设备判断第二预设时间内是否接收到移动设备发送来的数据,是则,如为配对请求,则执行步骤305,如为链路加密请求,则执行步骤306;否则关机,结束。
优选地,在本实施例3中,第二预设时间为35秒。
步骤305:目标蓝牙设备与相连的移动设备配对,并解析接收到的配对请求得到相连的移动设备的第二身份解析密钥,保存第二身份解析密钥,生成含有自身第一身份解析密钥的配对响应,返回配对响应给相连的移动设备,返回步骤304;
例如,在本实施例3中,目标蓝牙设备解析接收到的配对请求得到相连的移动设备的第二身份解析密钥为112233445566778899AABBCCDDEEFF00。
进一步地,在本实施例3中,目标蓝牙设备保存第二身份解析密钥之前,还包括:
步骤H:目标蓝牙设备判断自身保存的身份解析密钥中是否含有第二身份解析密钥,是则生成含有自身第一身份解析密钥的配对响应,返回配对响应给相连的移动设备,返回步骤304;否则,继续执行保存第二身份解析密钥;或者,
步骤F:目标蓝牙设备判断自身保存的身份解析密钥中是否含有第二身份解析密钥,是则将已保存的第二身份解析密钥移除,继续执行保存第二身份解析密钥;否则,继续执行保存第二身份解析密钥。
步骤306:目标蓝牙设备判断自身是否存有移动设备的身份解析密钥,是则执行步骤307,否则返回错误码给相连的移动设备,断开连接,结束;
具体地,目标蓝牙设备判断自身存有的身份解析密钥列表是否为空,是则判定自身未存有移动设备的身份解析密钥,返回错误码给相连的移动设备,断开连接,结束;否则判定自身存有移动设备的身份解析密钥,执行步骤307。
步骤307:目标蓝牙设备读取自身存有的移动设备的身份解析密钥中的第一个身份解析密钥并作为当前身份解析密钥;
具体地,目标蓝牙设备从自身存储的身份解析密钥列表中读取第一个身份解析密钥作为当前身份解析密钥。
步骤308:目标蓝牙设备使用当前身份解析密钥验证第二动态地址,如验证成功,则执行步骤310; 如验证失败,则执行步骤309;
在本实施例3中,目标蓝牙设备使用当前身份解析密钥验证第一动态地址的方法,同实施例2的步骤n2中所述的目标蓝牙设备使用当前身份解析密钥验证第二动态地址的方法相同,在此不再赘述。
步骤309:目标蓝牙设备判断当前身份解析密钥是否为自身存有的移动设备的身份解析密钥中的最后一个,是则返回错误码给相连的移动设备,断开连接,结束;否则将当前身份解析密钥的下一个身份解析密钥作为当前身份解析密钥,返回步骤308。
进一步地,在本实施例3中,在目标蓝牙设备返回错误码给相连的移动设备之后,还包括:当第二预设时间内接收到相连的移动设备发送来的配对请求时,返回步骤305。
步骤310:目标蓝牙设备根据接收到的链路加密请求保存会话密钥信息,返回成功响应给移动设备并与移动设备进行通讯,结束。
在本实施例3中,步骤310具体包括:
步骤t1:目标蓝牙设备解析接收到的链路加密请求得到会话密钥标识,判断自身存有的会话密钥列表中是否含有得到的会话密钥标识,是则返回成功响应给相连的移动设备并与相连的移动设备通信,结束;否则执行步骤t2;
步骤t2:目标蓝牙设备与移动设备协商会话密钥,将协商得到的会话密钥与得到的会话密钥标识对应保存至会话密钥列表中,返回成功响应给相连的移动设备并与相连的移动设备通信,结束。
需要说明地,本步骤中所述的与移动设备进行通讯,具体为与移动设备进行API的功能通讯。
实施例4:
本发明实施例4提供一种蓝牙防追踪的方法中移动设备的工作方法,如图4所示,包括:
步骤401:移动设备扫描周围的蓝牙设备,判断是否扫描到目标蓝牙设备,是则执行步骤402,否则继续执行步骤401;
具体地,第一设备扫描周围的蓝牙设备,并获取扫描到的蓝牙设备的广播数据,解析得到的广播数据得到蓝牙设备的设备名称,判断得到的蓝牙设备的设备名称与目标蓝牙设备的设备名称是否相同,是则判定扫描到目标蓝牙设备,否则判定未扫描到蓝牙设备。
进一步地,在本实施例4中,步骤401之前,还包括:移动设备生成自身的第二动态地址;
在本实施例4中,移动设备生成自身的第二动态地址的过程同蓝牙设备生成第一动态地址的过程相同,在此不再赘述。
例如,移动设备生成自身的第二动态地址为683D9752CB5E。
步骤402:移动设备生成含有自身第二动态地址的连接请求,发送连接请求给目标蓝牙设备;
在本实施例4中,步骤402之前,还包括:移动设备每隔第三预设时间生成自身的第二动态地址,其中移动设备生成自身的第二动态地址的过程,同实施例3中所述的目标蓝牙设备生成自身的第一动态地址的过程相同,在此不再赘述。
步骤403:当移动设备接收到目标蓝牙设备返回的连接响应时,解析目标蓝牙设备的广播数据得到目标蓝牙设备的第一动态地址;
在本实施例4中,解析目标蓝牙设备的广播数据得到目标蓝牙设备的第一动态地址之前,还包括:
步骤D1:移动设备判断目标蓝牙设备的广播数据中含有的地址是否为动态地址,是则将其作为目标蓝牙设备的第一动态地址,继续执行解析目标蓝牙设备的广播数据得到目标蓝牙设备的第一动态地址;否则执行步骤D2;
具体地,移动设备判断目标蓝牙设备的广播数据中含有的地址的第二预设位上的数据是否为预设数据,是则判定目标蓝牙设备的广播数据中含有的地址是动态地址;否则判定目标蓝牙设备的广播数据中含有的地址不是动态地址;
在本实施例4中,第二预设位为最高两位,预设数据为01。
例如,在本实施例4中,目标蓝牙设备的广播数据中含有的地址为423456766B05,判定是动态地址。
步骤D2:移动设备判断自身保存的配对信息中是否含有与目标蓝牙设备的配对信息,是则执行步骤D3,否则执行步骤D4;
具体地,移动设备判断自身保存的配对信息中是否含有广播数据中含有的地址,是则判定自身保存的配对信息中含有与目标蓝牙设备的配对信息,否则判定自身保存的配对信息中不含有与目标蓝牙设备的配对信息。
步骤D3:移动设备发送链路加密请求给目标蓝牙设备,当接收到目标蓝牙设备返回的成功响应时,与目标蓝牙设备通信,结束;当接收到错误码时,断开连接,结束;
步骤D4:移动设备生成含有自身第二身份解析密钥的配对请求,发送配对请求给目标蓝牙设备,当接收到目标蓝牙设备返回的配对响应时,保存配对信息,返回步骤D3。
步骤404:移动设备判断自身是否存有蓝牙设备的身份解析密钥,是则执行步骤407,否则执行步骤405;
具体地,移动设备判断自身存有的身份解析密钥列表是否为空,是则判定自身未存有蓝牙设备的身份解析密钥,执行步骤405;否则判定自身存有蓝牙设备的身份解析密钥,执行步骤407。
步骤405:移动设备生成含有自身第二身份解析密钥的配对请求,发送配对请求给目标蓝牙设备;
例如,在本实施例4中,移动设备的第二身份解析密钥为112233445566778899AABBCCDDEEFF00。
步骤406:当移动设备接收到的目标蓝牙设备返回的配对响应时,解析配对响应得到目标蓝牙设备的第一身份解析密钥,保存第一身份解析密钥,执行步骤410;
例如,在本实施例4中,移动设备解析目标蓝牙设备返回的配对响应得到的目标蓝牙设备的第一身份解析密钥为0102030405060708090A0B0C0D0E0F10。
步骤407:移动设备读取自身存有的蓝牙设备的身份解析密钥中的第一个身份解析密钥并作为当前身份解析密钥;
具体地,移动设备从自身存储的身份解析密钥列表中读取第一个身份解析密钥作为当前身份解析密钥。
步骤408:移动设备使用当前身份解析密钥验证第一动态地址,如验证成功,则执行步骤410;如验证失败,则执行步骤409;
在本实施例4中,移动设备使用当前身份解析密钥验证第一动态地址的方法,同实施例2的步骤m2中所述的移动设备使用当前身份解析密钥验证第一动态地址的方法相同,在此不再赘述。
步骤409:移动设备判断当前身份解析密钥是否为自身存有的蓝牙设备的身份解析密钥中的最后一个,是则返回步骤405;否则将当前身份解析密钥的下一个身份解析密钥作为当前身份解析密钥,返回步骤408。
步骤410:移动设备发送链路加密请求给目标蓝牙设备,等待并接收目标蓝牙设备返回的响应,如为成功响应,则与目标蓝牙设备通讯,结束;如为错误码,则断开连接,结束。
需要说明地,本步骤中所述的与目标蓝牙设备通讯,具体为与目标蓝牙设备进行API的功能通讯。
进一步地,在本实施例4中,当移动设备接收到的目标蓝牙设备返回的响应为错误码时,还可以包括:移动设备通过应用程序提示用户错误信息,并接收来自用户的控件触发信息,如为重新配对信息,则返回步骤405;如为结束信息,则断开连接,结束。
实施例5:
本发明实施例5提供一种蓝牙防追踪设备,如图5所示,包括:
上电模块501,用于上电;
第一生成模块502,用于在上电模块501上电之后,每隔第一预设时间生成第一随机数;
第二生成模块503,用于根据第一生成模块502生成的第一随机数和设备的第一身份解析密钥生成第一数据;
第三生成模块504,用于根据第一生成模块502生成的第一随机数和第二生成模块503生成的第一数据生成第一动态地址;
广播模块505,用于广播含有第一动态地址的广播数据;
第一接收模块506,用于接收移动设备发送来的数据;
连接模块507,用于当第一接收模块506接收到移动设备发送来的连接请求时,连接移动设备;
解析模块508,用于解析第一接收模块506接收到的连接请求得到移动设备的第二动态地址;
第一发送模块509,用于返回连接响应给移动设备;
第一接收模块506,还用于在第一发送模块509返回连接响应给所述移动设备之后,等待并接收移动设备发送来的数据;
配对模块510,用于当第一接收模块506接收到移动设备发送来的配对请求时,与移动设备配对;
第一保存模块511,用于保存第一接收模块506接收到的配对请求中含有的第二身份解析密钥至身份解析密钥列表中;
第四生成模块512,用于生成含有设备的第一身份解析密钥的配对响应;
第一发送模块509,还用于返回第四生成模块512生成的配对响应给移动设备;
第一接收模块506,还用于在第一发送模块509返回配对响应给移动设备之后,等待并接收移动设备发送来的数据;
验证模块513,用于当第一接收模块506接收到移动设备发送来的链路加密请求时,依次使用自身存有的身份解析密钥列表中的身份解析密钥验证解析模块508得到的第二动态地址;
第一判断模块514,用于判断是否存在验证成功的第二身份解析密钥;
第一发送模块509,还用于在第一判断模块514判断出不存在验证成功的第二身份解析密钥时,返回 错误码给相连的移动设备;
断开模块515,用于在第一发送模块509返回错误码给相连的移动设备之后,断开连接;
第二保存模块516,用于当第一判断模块514判断出存在验证成功的第二身份解析密钥时,根据第一接收模块506接收到的链路加密请求保存会话密钥信息;
第一发送模块509,还用于在第二保存模块516保存会话密钥信息之后,返回成功响应给相连的移动设备;
通讯模块517,用于在第一发送模块509返回成功响应给相连的移动设备之后,与相连的移动设备通信。
在本实施例5中,第一生成模块502,具体用于:生成第一随机数,对所述第一随机数进行补位;
第二生成模块503,具体用于:使用设备的第一身份解析密钥对补位后的第一随机数加密得到第一随机数密文,对得到的第一随机数密文做预设运算得到第一数据;
第三生成模块504,具体用于:将第一生成模块502生成的第一随机数与第二生成模块503生成的第一数据顺序拼接得到第一动态地址。
本实施例5中的设备,还包括:第二判断模块、作为模块、第二发送模块、第二接收模块、配对保存模块、第三判断模块和第三保存模块;
其中,第二判断模块,用于判断连接请求中含有的地址是否为动态地址;
作为模块,用于当第二判断模块判断出连接请求中含有的地址是动态地址时,其作为移动设备的第二动态地址,触发解析模块508;
第二发送模块,用于当第二判断模块判断出连接请求中含有的地址不是动态地址时,返回连接响应给移动设备;
第二接收模块,用于在第二发送模块返回连接响应给移动设备之后,等待并接收移动设备发送来的数据;
配对保存模块,还用于在第二接收模块接收到配对请求时,与移动设备配对,保存配对信息;
第二发送模块,用于在配对保存模块保存配对信息之后,生成含有设备的第一身份解析密钥的配对响应,返回配对响应给移动设备;
第二接收模块,还用于在第二发送模块返回配对响应给移动设备之后,等待并接收移动设备发送来的数据;
第三判断模块,用于在第二接收模块接收到链路加密请求时,判断保存的配对信息中是否含有与移动设备的配对信息;
第三保存模块,还用于当第三判断模块判断出保存的配对信息中含有与移动设备的配对信息时,根据链路加密请求保存会话密钥信息;
第二发送模块,还用于在第三保存模块保存会话密钥信息之后,返回成功响应给移动设备;
通讯模块517,还用于在第二发送模块返回成功响应给移动设备之后,与移动设备通信;
第二发送模块,还用于在第三判断模块判断出保存的配对信息中不含有与移动设备的配对信息时,返回错误码给移动设备;
断开模块515,还用于在第二发送模块返回错误码给移动设备之后,断开连接。
其中,第二判断模块,具体用于:判断连接请求中含有的地址的第二预设位上的数据是否为预设数据,是则判定连接请求中含有的地址是动态地址;否则判定连接请求中含有的地址不是动态地址。
第三判断模块,具体用于:判断设备保存的配对信息中是否含有接收到的连接请求中含有的地址,是则判定设备保存的配对信息中含有与移动设备的配对信息;否则判定设备保存的配对信息中不含有与移动设备的配对信息。
本实施例5中的设备,还包括:第四判断模块和关机模块;其中,
第四判断模块,用于判断第一接收模块506在第二预设时间内是否接收到移动设备发送来的数据;
关机模块,用于在第四判断模块判断出第一接收模块506在第二预设时间内未接收到移动设备发送来的数据时,关机。
本实施例5中的设备,还包括:第五判断模块,或者第六判断模块和移除模块;
其中,第五判断模块,用于判断设备保存的身份解析密钥列表中是否含有配对请求中含有的第二身份解析密钥;
第四生成模块512,还用于当第五判断模块判断出设备保存的身份解析密钥列表中含有配对请求中含有的第二身份解析密钥时,生成含有设备的第一身份解析密钥的配对响应;
第一保存模块511,具体用于:当第五判断模块判断出设备保存的身份解析密钥列表中不含有配对请求中含有的第二身份解析密钥时,保存配对请求中含有的第二身份解析密钥至身份解析密钥列表中;
第六判断模块,用于判断设备保存的身份解析密钥列表中是否含有配对请求中含有的第二身份解析密钥;
移除模块,用于当第六判断模块判断出设备保存的身份解析密钥列表中含有配对请求中含有的第二身份解析密钥时,将身份解析密钥列表中含有的第二身份解析密钥移除;
对应地,第一保存模块511,还用于在移除模块将身份解析密钥列表中含有的第二身份解析密钥移除之后,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;还用于当所述第六判断模块判断出所述设备保存的身份解析密钥列表中不含有所述配对请求中含有的第二身份解析密钥时,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中。
本实施例5中的设备,还包括第七判断模块;
第七判断模块,用于判断设备存有的身份解析密钥列表是否为空;
对应地,第一发送模块509,还用于当第七判断模块判断出设备存有的身份解析密钥列表为空时,返回错误码给相连的移动设备;
验证模块513,具体用于:当第七判断模块判断出设备存有的身份解析密钥列表不为空时,依次使用设备保存的身份解析密钥列表中的身份解析密钥验证解析模块508得到的第二动态地址。
进一步地,在本实施例5中,验证模块513,包括:第一解析子模块和生成子模块;
其中,第一解析子模块,用于解析第二动态地址得到第二随机数和第二数据;
生成子模块,用于依次根据设备存有的身份解析密钥列表中的身份解析密钥和第二随机数生成多个第三数据;
对应地,第一判断模块514,具体用于:判断是否存在与第一解析子模块得到的第二数据相同的第三数据,是则判定存在验证成功的第二身份解析密钥;否则,判定不存在验证成功的第二身份解析密钥。
在本实施例5中,第一解析子模块,具体用于:读取第二动态地址的高预设位得到第二随机数,读取第二动态地址的低预设位得到第二数据。
在本实施例5中,生成子模块,包括:补位单元、加密单元和运算单元;
其中,补位单元,用于对解析子模块得到的第二随机数进行补位;
加密单元,用于依次使用设备存有的身份解析密钥列表中的身份解析密钥对补位单元补位后的第二随机数加密得到多个第二随机数密文;
运算单元,用于对加密单元得到的多个第二随机数密文做预设运算得多个第三数据。
在本实施例5中,第二保存模块516包括:第二解析子模块、判断子模块、协商子模块和保存子模块;
其中,第二解析子模块,用于解析第一接收模块506接收到的链路加密请求得到会话密钥标识;
判断子模块,用于判断设备存有的会话密钥列表中是否含有第二解析子模块得到的会话密钥标识;
第一发送模块509,还用于当判断子模块判断出设备存有的会话密钥列表中含有会话密钥标识时,返回成功响应给相连的移动设备;
所述协商子模块,用于当所述判断子模块判断出所述设备存有的会话密钥列表中不含有所述第二解析子模块得到会话密钥标识时,与移动设备协商会话密钥;
保存子模块,用于将协商子模块得到的会话密钥与第二解析子模块得到的会话密钥标识对应保存至会话密钥列表中;
第一发送模块509,还用于在保存子模块将协商子模块得到的会话密钥与第二解析子模块得到的会话密钥标识对应保存至会话密钥列表中之后,返回成功响应给相连的移动设备。
在本实施例5中,配对模块510,还用于在第一发送模块509返回错误码给相连的移动设备之后,当第一接收模块506在第二预设时间内接收到相连的移动设备发送来的配对请求时,与相连的移动设备配对。
本发明中的方法,蓝牙设备周期性的改变自身的动态地址,且只能对与之完成配对进行了身份解析密钥交换的可信设备的动态地址进行解析,进而进行通讯,该方式有效的防止了黑客窃取数据,保障了蓝牙设备及蓝牙设备使用者的数据的安全;同时对于已完成了配对过程的可信设备,再次与之建立通讯时,无需再次进行配对,缩短了与之建立通讯的时间,提升了用户体验。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,本领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所附权利要求书的保护范围为准。

Claims (19)

  1. 一种蓝牙防追踪的方法,其特征在于,包括:
    步骤S1:目标蓝牙设备上电,每隔第一预设时间生成第一随机数,并根据所述第一随机数和自身的第一身份解析密钥生成第一数据,根据所述第一随机数和所述第一数据生成第一动态地址,广播含有所述第一动态地址的广播数据,当接收到移动设备发送来的连接请求时,执行步骤S2;
    步骤S2:所述目标蓝牙设备连接所述移动设备,解析所述连接请求得到所述移动设备的第二动态地址,返回连接响应给所述移动设备;
    步骤S3:所述目标蓝牙设备等待并接收所述移动设备发送来的数据,如为配对请求,则执行步骤S4;如为链路加密请求,则执行步骤S5;
    步骤S4:所述目标蓝牙设备与所述移动设备配对,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中,并生成含有自身第一身份解析密钥的配对响应,返回所述配对响应给所述移动设备,返回步骤S3;
    步骤S5:所述目标蓝牙设备依次使用自身存有的身份解析密钥列表中的身份解析密钥验证所述第二动态地址,判断是否存在验证成功的第二身份解析密钥,是则执行步骤S6,否则返回错误码给相连的移动设备,断开连接,结束;以及
    步骤S6:所述目标蓝牙设备根据所述链路加密请求保存会话密钥信息,返回成功响应给相连的移动设备并与所述相连的移动设备通信,结束。
  2. 根据权利要求1所述的方法,其特征在于,所述步骤S2中,所述解析所述连接请求得到所述移动设备的第二动态地址之前,还包括:
    步骤B1:所述目标蓝牙设备判断所述连接请求中含有的地址是否为动态地址,是则将其作为所述移动设备的第二动态地址,继续执行所述解析所述连接请求得到所述移动设备的第二动态地址;否则返回连接响应给所述移动设备,执行步骤B2;
    步骤B2:所述目标蓝牙设备等待并接收所述移动设备发送来的数据,如为链路加密请求,则执行步骤B3;如为配对请求,则与所述移动设备配对,保存配对信息,并生成含有自身第一身份解析密钥的配对响应,返回所述配对响应给所述移动设备,继续执行步骤B2;以及
    步骤B3:所述目标蓝牙设备判断自身保存的配对信息中是否含有与所述移动设备的配对信息,是则根据所述链路加密请求保存会话密钥信息,返回成功响应给所述移动设备并与所述移动设备通信,结束;否则返回错误码给所述移动设备,断开连接,结束。
  3. 根据权利要求1所述的方法,其特征在于,所述步骤S3中,还包括:所述目标蓝牙设备判断第二预设时间内是否接收到所述移动设备发送来的数据,是则继续执行所述步骤S3;否则关机,结束。
  4. 根据权利要求1所述的方法,其特征在于,所述步骤S4中,所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中之前,还包括:
    步骤H:所述目标蓝牙设备判断自身保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥,是则生成含有自身第一身份解析密钥的配对响应,返回配对响应给所述移动设备,返回步骤S3;否则,继续执行所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;或者,
    步骤F:所述目标蓝牙设备判断自身保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥,是则将所述身份解析密钥列表中含有的第二身份解析密钥移除,继续执行所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;否则,继续执行所述保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中。
  5. 根据权利要求1所述的方法,其特征在于,所述步骤S5之前,还包括:
    所述目标蓝牙设备判断自身存有的身份解析密钥列表是否为空,是则返回错误码给相连的移动设备,断开连接,结束;否则,执行步骤S5。
  6. 根据权利要求1所述的方法,其特征在于,所述步骤S5中,所述目标蓝牙设备依次使用自身存有的身份解析密钥列表中的身份解析密钥验证第二动态地址,判断是否存在验证成功的第二身份解析密钥,具体包括:
    步骤b1:所述目标蓝牙设备解析所述第二动态地址得到第二随机数和第二数据;以及
    步骤b2:所述目标蓝牙设备依次根据自身存有的身份解析密钥列表中的身份解析密钥和所述第二随机数生成多个第三数据,并判断是否存在与所述第二数据相同的第三数据,是则判定存在验证成功的第二身份解析密钥;否则,判定不存在验证成功的第二身份解析密钥。
  7. 根据权利要求6所述的方法,其特征在于,所述步骤b2中,所述目标蓝牙设备依次根据自身存有的身份解析密钥列表中的身份解析密钥和所述第二随机数生成多个第三数据,具体包括:
    步骤d1:所述目标蓝牙设备对所述第二随机数进行补位;以及
    步骤d2:所述目标蓝牙设备依次使用自身存有的身份解析密钥列表中的身份解析密钥对补位后的第二随机数加密得到多个第二随机数密文,并对所述多个第二随机数密文做预设运算得多个第三数据。
  8. 根据权利要求1所述的方法,其特征在于,所述步骤S6,具体包括:
    步骤t1:所述目标蓝牙设备解析所述链路加密请求得到会话密钥标识,判断自身存有的会话密钥列表中是否含有所述会话密钥标识,是则返回成功响应给相连的移动设备并与所述相连的移动设备通信,结束;否则执行步骤t2;以及
    步骤t2:所述目标蓝牙设备与所述移动设备协商会话密钥,将协商得到的会话密钥与所述会话密钥标识对应保存至所述会话密钥列表中,返回成功响应给相连的移动设备并与所述相连的移动设备通信,结束。
  9. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    步骤W1:当所述移动设备扫描到所述目标蓝牙设备时,发送含有自身第二动态地址的连接请求给所述目标蓝牙设备;
    步骤W2:当所述移动设备接收到所述目标蓝牙设备返回的连接响应时,解析获取到的所述目标蓝牙设备的广播数据得到所述第一动态地址;
    步骤W3:所述移动设备判断自身是否存有蓝牙设备的身份解析密钥,是则执行步骤W5,否则执行步骤W4;
    步骤W4:所述移动设备生成含有自身第二身份解析密钥的配对请求,发送所述配对请求给所述目标蓝牙设备,接收所述目标蓝牙设备返回的配对响应,将所述配对响应中含有第一身份解析密钥保存,执行步骤W6;
    步骤W5:所述移动设备依次使用自身存有的蓝牙设备的身份解析密钥验证所述第一动态地址,判断是否存在验证成功的第一身份解析密钥,是则执行步骤W6,否则返回步骤W4;以及
    步骤W6:所述移动设备发送链路加密请求给所述目标蓝牙设备,接收所述目标蓝牙设备返回的响应,如为成功响应,则与所述目标蓝牙设备通信,结束;如为错误码,则断开连接,结束。
  10. 根据权利要求9所述的方法,其特征在于,
    所述步骤W6中,当所述移动设备接收到所述目标蓝牙设备返回的响应为错误码时,还包括:所述移动设备通过应用程序提示用户错误信息,并接收来自所述用户的控件触发信息,如为重新配对信息,则返回步骤W4;如为结束信息,则断开连接,结束;以及
    所述步骤S5中,所述返回错误码给相连的移动设备之后,还包括:当第二预设时间内接收到所述相连的移动设备发送来的配对请求时,返回步骤S4。
  11. 一种蓝牙防追踪设备,其特征在于,包括:
    上电模块,用于上电;
    第一生成模块,用于每隔第一预设时间生成第一随机数;
    第二生成模块,用于根据所述第一生成模块生成的第一随机数和所述设备的第一身份解析密钥生成第一数据;
    第三生成模块,用于根据所述第一生成模块生成的第一随机数和所述第二生成模块生成的第一数据生成第一动态地址;
    广播模块,用于广播含有所述第一动态地址的广播数据;
    第一接收模块,用于接收移动设备发送来的数据;
    连接模块,用于当所述第一接收模块接收到移动设备发送来的连接请求时,连接所述移动设备;
    解析模块,用于解析所述第一接收模块接收到的连接请求得到所述移动设备的第二动态地址;
    第一发送模块,用于返回连接响应给所述移动设备;
    所述第一接收模块,还用于在所述第一发送模块返回连接响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
    配对模块,用于当所述第一接收模块接收到移动设备发送来的配对请求时,与所述移动设备配对;
    第一保存模块,用于保存所述第一接收模块接收到的配对请求中含有的第二身份解析密钥至身份解析密钥列表中;
    第四生成模块,用于生成含有所述设备的第一身份解析密钥的配对响应;
    所述第一发送模块,还用于返回所述第四生成模块生成的配对响应给所述移动设备;
    所述第一接收模块,还用于在所述第一发送模块返回配对响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
    验证模块,用于当所述第一接收模块接收到移动设备发送来的链路加密请求时,依次使用自身存有的身份解析密钥列表中的身份解析密钥验证所述解析模块得到的第二动态地址;
    第一判断模块,用于判断是否存在验证成功的第二身份解析密钥;
    所述第一发送模块,还用于在所述第一判断模块判断出不存在验证成功的第二身份解析密钥时,返回错误码给相连的移动设备;
    断开模块,用于在所述第一发送模块返回错误码给相连的移动设备之后,断开连接;
    第二保存模块,用于当所述第一判断模块判断出存在验证成功的第二身份解析密钥时,根据所述第一接收模块接收到的链路加密请求保存会话密钥信息;
    所述第一发送模块,还用于在所述第二保存模块保存会话密钥信息之后,返回成功响应给相连的移动设备;以及
    通讯模块,用于在所述第一发送模块返回成功响应给相连的移动设备之后,与所述相连的移动设备通信。
  12. 根据权利要求11所述的设备,其特征在于,还包括:第二判断模块、作为模块、第二发送模块、第二接收模块、配对保存模块、第三判断模块和第三保存模块;
    所述第二判断模块,用于判断所述连接请求中含有的地址是否为动态地址;
    所述作为模块,用于当所述第二判断模块判断出所述连接请求中含有的地址是动态地址时,其作为所述移动设备的第二动态地址,触发所述解析模块;
    所述第二发送模块,用于当所述第二判断模块判断出所述连接请求中含有的地址不是动态地址时,返回连接响应给所述移动设备;
    第二接收模块,用于在所述第二发送模块返回连接响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
    所述配对保存模块,还用于在所述第二接收模块接收到配对请求时,与所述移动设备配对,保存配对信息;
    所述第二发送模块,用于在所述配对保存模块保存配对信息之后,生成含有所述设备的第一身份解析密钥的配对响应,返回所述配对响应给所述移动设备;
    所述第二接收模块,还用于在所述第二发送模块返回所述配对响应给所述移动设备之后,等待并接收所述移动设备发送来的数据;
    所述第三判断模块,用于在所述第二接收模块接收到链路加密请求时,判断保存的配对信息中是否含有与所述移动设备的配对信息;
    所述第三保存模块,还用于在所述第三判断模块判断出保存的配对信息中含有与所述移动设备的配对信息时,根据所述链路加密请求保存会话密钥信息;
    所述第二发送模块,还用于在所述第三保存模块保存会话密钥信息之后,返回成功响应给所述移动设备;
    所述通讯模块,还用于在所述第二发送模块返回成功响应给所述移动设备之后,与所述移动设备通信;
    所述第二发送模块,还用于在所述第三判断模块判断出保存的配对信息中不含有与所述移动设备的配对信息时,返回错误码给所述移动设备;以及
    所述断开模块,还用于在所述第二发送模块返回错误码给所述移动设备之后,断开连接。
  13. 根据权利要求11所述的设备,其特征在于,还包括:第四判断模块和关机模块;
    所述第四判断模块,用于判断所述第一接收模块在第二预设时间内是否接收到所述移动设备发送来的数据;以及
    所述关机模块,用于在所述第四判断模块判断出所述第一接收模块在第二预设时间内未接收到所述移动设备发送来的数据时,关机。
  14. 根据权利要求11所述的设备,其特征在于,还包括:第五判断模块,或者第六判断模块和移除模块;
    所述第五判断模块,用于判断所述设备保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥;
    所述第四生成模块,还用于当所述第五判断模块判断出所述设备保存的身份解析密钥列表中含有所述配对请求中含有的第二身份解析密钥时,生成含有所述设备的第一身份解析密钥的配对响应;
    所述第一保存模块,具体用于:当所述第五判断模块判断出所述设备保存的身份解析密钥列表中不含有所述配对请求中含有的第二身份解析密钥时,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;
    所述第六判断模块,用于判断所述设备保存的身份解析密钥列表中是否含有所述配对请求中含有的第二身份解析密钥;
    所述移除模块,用于当所述第六判断模块判断出所述设备保存的身份解析密钥列表中含有所述配对请 求中含有的第二身份解析密钥时,将所述身份解析密钥列表中含有的第二身份解析密钥移除;以及
    所述第一保存模块,还用于在所述移除模块将所述身份解析密钥列表中含有的第二身份解析密钥移除之后,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中;还用于当所述第六判断模块判断出所述设备保存的身份解析密钥列表中不含有所述配对请求中含有的第二身份解析密钥时,保存所述配对请求中含有的第二身份解析密钥至身份解析密钥列表中。
  15. 根据权利要求11所述的设备,其特征在于,还包括第七判断模块;
    所述第七判断模块,用于判断所述设备存有的身份解析密钥列表是否为空;
    所述第一发送模块,还用于当所述第七判断模块判断出所述设备存有的身份解析密钥列表为空时,返回错误码给相连的移动设备;以及
    所述验证模块,具体用于:当所述第七判断模块判断出所述设备存有的身份解析密钥列表不为空时,依次使用所述设备保存的身份解析密钥列表中的身份解析密钥验证所述解析模块得到的第二动态地址。
  16. 根据权利要求11所述的设备,其特征在于,所述验证模块,包括:第一解析子模块和生成子模块;
    所述第一解析子模块,用于解析所述第二动态地址得到第二随机数和第二数据;
    所述生成子模块,用于依次根据所述设备存有的身份解析密钥列表中的身份解析密钥和所述第二随机数生成多个第三数据;以及
    所述第一判断模块,具体用于:判断是否存在与所述第一解析子模块得到的第二数据相同的第三数据,是则判定存在验证成功的第二身份解析密钥;否则,判定不存在验证成功的第二身份解析密钥。
  17. 根据权利要求16所述的设备,其特征在于,所述生成子模块,包括:补位单元、加密单元和运算单元;
    所述补位单元,用于对所述解析子模块得到的第二随机数进行补位;
    所述加密单元,用于依次使用所述设备存有的身份解析密钥列表中的身份解析密钥对所述补位单元补位后的第二随机数加密得到多个第二随机数密文;以及
    所述运算单元,用于对所述加密单元得到的多个第二随机数密文做预设运算得多个第三数据。
  18. 根据权利要求11所述的设备,其特征在于,所述第二保存模块,包括:第二解析子模块、判断子模块、协商子模块和保存子模块;
    所述第二解析子模块,用于解析所述第一接收模块接收到的链路加密请求得到会话密钥标识;
    所述判断子模块,用于判断所述设备存有的会话密钥列表中是否含有所述会话密钥标识;
    所述第一发送模块,还用于当所述判断子模块判断出所述设备存有的会话密钥列表中含有所述会话密钥标识时,返回成功响应给相连的移动设备;
    所述协商子模块,用于当所述判断子模块判断出所述设备存有的会话密钥列表中不含有所述会话密钥标识时,与所述移动设备协商会话密钥;
    所述保存子模块,用于将所述协商子模块得到的会话密钥与所述第二解析子模块得到的会话密钥标识对应保存至所述会话密钥列表中;以及
    所述第一发送模块,还用于在所述保存子模块将所述协商子模块得到的会话密钥与所述第二解析子模块得到的会话密钥标识对应保存至所述会话密钥列表中之后,返回成功响应给相连的移动设备。
  19. 根据权利要求11所述的设备,其特征在于,
    所述配对模块,还用于在所述第一发送模块返回错误码给相连的移动设备之后,当所述第一接收模块在第二预设时间内接收到所述相连的移动设备发送来的配对请求时,与所述相连的移动设备配对。
PCT/CN2018/089517 2017-07-03 2018-06-01 一种蓝牙防追踪的方法及设备 WO2019007172A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/609,486 US11381975B2 (en) 2017-07-03 2018-06-01 Method and device for anti-tracking of Bluetooth

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710532595.9 2017-07-03
CN201710532595.9A CN107317606B (zh) 2017-07-03 2017-07-03 一种蓝牙防追踪的方法及设备

Publications (1)

Publication Number Publication Date
WO2019007172A1 true WO2019007172A1 (zh) 2019-01-10

Family

ID=60180115

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/089517 WO2019007172A1 (zh) 2017-07-03 2018-06-01 一种蓝牙防追踪的方法及设备

Country Status (3)

Country Link
US (1) US11381975B2 (zh)
CN (1) CN107317606B (zh)
WO (1) WO2019007172A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220330029A1 (en) * 2019-08-09 2022-10-13 Huawei Technologies Co., Ltd. Method for mutual recognition or mutual trust between bluetooth devices

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107317606B (zh) * 2017-07-03 2020-05-19 飞天诚信科技股份有限公司 一种蓝牙防追踪的方法及设备
CN108668236B (zh) * 2018-04-24 2021-03-12 Oppo广东移动通信有限公司 终端设备的追踪方法、装置及终端设备
CN108901010B (zh) * 2018-08-01 2020-11-24 飞天诚信科技股份有限公司 一种蓝牙设备及蓝牙连接方法
CN111405082B (zh) * 2020-03-23 2022-08-16 Oppo(重庆)智能科技有限公司 一种设备连接方法、电子设备及终端、存储介质
CN111867003A (zh) * 2020-07-24 2020-10-30 深圳创维数字技术有限公司 设备配网方法、装置、设备及计算机可读存储介质
US20220167159A1 (en) * 2020-11-25 2022-05-26 Qualcomm Incorporated Systems and methods for authenticating a wireless device
CN114697000A (zh) * 2020-12-28 2022-07-01 深圳Tcl新技术有限公司 配网方法、装置、终端及计算机可读存储介质
CN112291773B (zh) * 2020-12-31 2021-04-06 飞天诚信科技股份有限公司 一种认证器及其通信方法
CN113242538A (zh) * 2021-05-11 2021-08-10 深圳市创意者科技有限公司 一种蓝牙会议音箱的通讯语音信息加密系统
CN113301572B (zh) * 2021-06-25 2022-09-30 展讯通信(上海)有限公司 蓝牙设备的连接方法及装置、存储介质、蓝牙设备
CN115913600A (zh) * 2021-09-30 2023-04-04 华为技术有限公司 用于标识设备的方法、装置、电子设备和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105933039A (zh) * 2016-06-24 2016-09-07 飞天诚信科技股份有限公司 一种蓝牙设备及其工作方法
EP3073704A1 (en) * 2015-03-23 2016-09-28 Comarch Technologies Spólka z Ograniczona Odpowiedzialnoscia Method of data securing transmitted over bluetooth and transmitter device transmitting secured data over bluetooth
WO2017003337A1 (en) * 2015-07-02 2017-01-05 Telefonaktiebolaget Lm Ericsson (Publ) Bluetooth low energy address resolving
US20170013450A1 (en) * 2015-07-09 2017-01-12 Google Inc. Security for wireless broadcasts
CN106850211A (zh) * 2017-03-06 2017-06-13 深圳市同为数码科技股份有限公司 一种基于mac地址的加密方法及系统
CN107317606A (zh) * 2017-07-03 2017-11-03 飞天诚信科技股份有限公司 一种蓝牙防追踪的方法及设备

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102420821B (zh) * 2011-11-28 2015-05-27 飞天诚信科技股份有限公司 一种提高文件传输安全性的方法和系统
US20130259230A1 (en) * 2012-03-29 2013-10-03 Broadcom Corporation Bluetooth Low Energy Privacy
AU2015214079C1 (en) * 2014-02-05 2017-01-19 Apple Inc. Uniform communication protocols for communication between controllers and accessories
AU2014406395B2 (en) * 2014-09-15 2018-12-20 Huawei Technologies Co., Ltd. Communications method of wearable device, communications system, and related device
US9853969B2 (en) * 2014-10-01 2017-12-26 Gopro, Inc. Bluetooth low energy hostless private address resolution
CN105430605B (zh) * 2015-12-10 2018-09-25 飞天诚信科技股份有限公司 一种蓝牙主从设备及两者建立安全通道的方法
US10735467B2 (en) * 2016-01-11 2020-08-04 Lg Electronics Inc. Method and apparatus for controlling a device using bluetooth technology

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3073704A1 (en) * 2015-03-23 2016-09-28 Comarch Technologies Spólka z Ograniczona Odpowiedzialnoscia Method of data securing transmitted over bluetooth and transmitter device transmitting secured data over bluetooth
WO2017003337A1 (en) * 2015-07-02 2017-01-05 Telefonaktiebolaget Lm Ericsson (Publ) Bluetooth low energy address resolving
US20170013450A1 (en) * 2015-07-09 2017-01-12 Google Inc. Security for wireless broadcasts
CN105933039A (zh) * 2016-06-24 2016-09-07 飞天诚信科技股份有限公司 一种蓝牙设备及其工作方法
CN106850211A (zh) * 2017-03-06 2017-06-13 深圳市同为数码科技股份有限公司 一种基于mac地址的加密方法及系统
CN107317606A (zh) * 2017-07-03 2017-11-03 飞天诚信科技股份有限公司 一种蓝牙防追踪的方法及设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220330029A1 (en) * 2019-08-09 2022-10-13 Huawei Technologies Co., Ltd. Method for mutual recognition or mutual trust between bluetooth devices

Also Published As

Publication number Publication date
US20200145814A1 (en) 2020-05-07
US11381975B2 (en) 2022-07-05
CN107317606B (zh) 2020-05-19
CN107317606A (zh) 2017-11-03

Similar Documents

Publication Publication Date Title
WO2019007172A1 (zh) 一种蓝牙防追踪的方法及设备
JP4804983B2 (ja) 無線端末、認証装置、及び、プログラム
US8787572B1 (en) Enhanced association for access points
CN110192381B (zh) 密钥的传输方法及设备
KR101490214B1 (ko) 공유된 일시적 키 데이터의 세트를 갖는 교환들을 인코딩하기 위한 시스템들 및 방법들
JP4649513B2 (ja) 無線携帯インターネットシステムの認証方法及び関連キー生成方法
KR102210897B1 (ko) 보안 인증 방법, 구성 방법 및 관련 기기
CN112311544B (zh) 一种服务器与认证器进行通信的方法及系统
CN109302412B (zh) 基于CPK的VoIP通信处理方法、终端、服务器及存储介质
US8295489B2 (en) Method for sharing a link key in a ZigBee network and a communication system therefor
US20060274695A1 (en) System and method for effectuating a connection to a network
CN107969001B (zh) 一种蓝牙配对双向认证的方法及装置
KR20160078475A (ko) 키 구성 방법, 시스템, 및 장치
CN106131834B (zh) 网络连接方法、网络连接装置和终端
WO2014180296A1 (zh) 一种设备之间建立连接的方法、配置设备和无线设备
WO2016115807A1 (zh) 无线路由器的接入处理、接入方法及装置
US10944555B2 (en) Secure methods and systems for identifying bluetooth connected devices with installed application
CN111726801A (zh) 一种网络安全控制方法
CN105007163A (zh) 预共享密钥的发送、获取方法及发送、获取装置
CN108306793B (zh) 智能设备、智能家居网关、建立连接的方法及系统
CN105554759A (zh) 一种鉴权方法和鉴权系统
CN111836260B (zh) 一种认证信息处理方法、终端和网络设备
US8666073B2 (en) Safe handover method and system
WO2018126791A1 (zh) 一种认证方法及装置、计算机存储介质
CN111163468A (zh) 一种通信连接方法及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18828432

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18828432

Country of ref document: EP

Kind code of ref document: A1