IP Library Granted Patent US 9,191,772
Granted Patent B2
US 9,191,772 · App. 13/985,848 · Granted Nov 17, 2015

Bluetooth connection method and system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,191,772
App. No.
13/985,848
Granted
Nov 17, 2015
Kind
B2
Abstract

The present disclosure provides a Bluetooth connection method, the method includes that: a client reads information stored in a Radio Frequency Identification (RFID) card and establishes a Bluetooth connection with a server according to the read information. The present disclosure also provides a Bluetooth connection system, wherein a Bluetooth address and an identification (ID) value of the RFID card are pre-stored in the RFID card; after reading the information stored in the RFID card, the client directly uses a Service Discovery Protocol (SDP) service search to carry out an interaction with the server, achieving automatic completion of a Bluetooth authentication while a Bluetooth service search is performed, thereby establishing a secure and reliable Bluetooth connection; The method significantly reduces the time for establishing a Bluetooth connection, and makes the application of the Bluetooth service more concise and rapid to realize, costing less, more efficient, and easier to popularize.

Claims (38)

1. A Bluetooth connection method, comprising:

reading, by a client, information stored in a Radio Frequency Identification (RFID) card; and

establishing, by the client, a Bluetooth connection with a server according to the read information,

wherein the establishing, by the client, the Bluetooth connection with the server according to the read information is:

carrying out, by the client, a Bluetooth authentication with the server by utilizing a challenge/answer mechanism of a Service Discovery Protocol (SDP) service search and utilizing the RFID according to the read information, and establishing, by the client, the Bluetooth connection when the Bluetooth authentication is successful,

wherein the carrying out, by the client, a Bluetooth authentication with the server by utilizing a challenge/answer mechanism of a Service Discovery Protocol (SDP) service search and utilizing the RFID is:

generating, by the server, one random number R; and sending, by the server, the R and a Query to the client;

calculating, by the client, H(ID), H(ID∥R), ID*=S(ID), and H(ID*)=H(S(ID)) via a one-way Hash function according to the received R and the read ID; and sending, by the client, the H(ID) and the H(ID∥R) to the server;

forwarding, by the server, the H(ID) and the H(ID∥R) received, as well as the R, to a background database;

calculating, by the database, H(ID* i ) according to the received data and a list stored in the database itself; and forwarding, by the database, the H(ID* i ) to the client through the server; and

comparing, by the client, whether the received H(ID* i ) and the calculated H(ID*) are equal, if so, updating, by the client, the ID in the RFID card to ID*, and determining that the client passes the Bluetooth authentication.

2. The method according to claim 1 , further comprising: before reading, by a client, information stored in an RFID card,

storing a Bluetooth address and an ID of the RFID card in the RFID card.

3. The method according to claim 1 , wherein the calculating, by the database, H(ID* i ) according to the received data and a list stored in the database itself is:

determining, by the database, whether there exists an i satisfying H(ID i )=H(ID) in the list stored in the database itself; if so, finding, by the database, the ID i corresponding to H(ID i ), and calculating, by the database, H(ID i ∥R); and comparing, by the database, whether the H(ID i ∥R) and the received H(ID∥R) are equal; if so, further calculating, by the database, ID* i =S(ID i ) and H(ID* i )=H(S(ID i )), and sending, by the database, the H(ID* i ) to the server.

4. The method according to claim 3 , further comprising: after sending, by the database, the H(ID* i ) to the server,

determining, by the database, whether an associating pointer in the list corresponding to the calculated H(ID* i ) is 0; if so, adding a new record; otherwise, modifying a record pointed to by the associating pointer.

5. The method according to claim 3 , further comprising: after comparing, by the database, whether the H(ID i ∥R) and the received H(ID∥R) are equal,

when they are not equal, deciding the current client is an unauthorized terminal.

6. A Bluetooth connection system comprising a Radio Frequency Identification (RFID) card, a client, and a server, wherein

the client is configured to read information stored in the RFID card and establish a Bluetooth connection with the server according to the read information,

wherein the client is configured to carry out a Bluetooth authentication with the server by utilizing a challenge/answer mechanism of a Service Discovery Protocol (SDP) service search and utilizing the RFID according to the read information, and establish the Bluetooth connection when the Bluetooth authentication is successful;

wherein the system further comprises a database;

accordingly, the server is configured to generate one random number R, send the R and a Query to the client, and forward the R and H(ID) and H(ID∥R) sent by the client to the database;

the database is configured to calculate H(ID* i ) according to the received data and a list stored in the database itself and forward the H(ID* i ) to the client through the server; and

the client is further configured to calculate H(ID), H(ID∥R), ID*=S(ID), and H(ID*)=H(S(ID)) via a one-way Hash function according to the R and the read ID i send the H(ID) and the H(ID∥R) to the server, compare whether the received H(ID* i ) and the calculated H(ID*) are equal, and determine that the client passes the Bluetooth authentication if they are equal.

7. The system according to claim 6 , wherein the RFID card is configured to store a Bluetooth address and an ID of the RFID card.

8. The system according to claim 6 , wherein the database is configured to: determine whether there exists an i satisfying H(ID i )=H(ID) in the list stored in the database itself, find the ID i corresponding to H(ID i ) and calculate H(ID i ∥R) if there does; compare whether the H(ID i ∥R) and the received H(ID∥R) are equal, and calculate ID* i =S(ID i ) and H(ID* i )=H(S(ID i )) when the H(ID i ∥R) and the received H(ID∥R) are equal, and send the H(ID* i ) to the server.

9. The system according to claim 8 , wherein the database is further configured to determine whether an associating pointer in the list corresponding to the calculated H(ID* i ) is 0, to add a new record when the associating pointer is 0, and to modify a record pointed to by the associating pointer when the associating pointer is not 0.

10. The system according to claim 8 , wherein the calculating, by the database, H(ID* i ) according to the received data and a list stored in the database itself is:

determining, by the database, whether there exists an i satisfying H(ID i )=H(ID) in the list stored in the database itself; if so, finding, by the database, the ID i corresponding to H(ID i ), and calculating, by the database, H(ID i ∥R); and

comparing, by the database, whether the H(ID i ∥R) and the received H(ID∥R) are equal; if so, further calculating, by the database, ID* i =S(ID i ) and H(ID* i )=H(S(ID i )), and sending, by the database, the H(ID* i ) to the server.

11. The system according to claim 10 , further comprising: after sending, by the database, the H(ID* i ) to the server,

determining, by the database, whether an associating pointer in the list corresponding to the calculated H(ID* i ) is 0; if so, adding a new record; otherwise, modifying a record pointed to by the associating pointer.

12. The system according to claim 10 , further comprising: after comparing, by the database, whether the H(ID i ∥R) and the received H(ID∥R) are equal,

when they are not equal, deciding the current client is an unauthorized terminal.

13. The system according to claim 7 , wherein the database is configured to: determine whether there exists an i satisfying H(ID i )=H(ID) in the list stored in the database itself, find the ID i corresponding to H(ID i ) and calculate H(ID i ∥R) if there does; compare whether the H(ID i ∥R) and the received H(ID∥R) are equal, and calculate ID* i =S(ID i ) and H(ID* i )=H(S(ID i )) when the H(ID i ∥R) and the received H(ID∥R) are equal, and send the H(ID* i ) to the server.

14. The system according to claim 13 , wherein the database is further configured to determine whether an associating pointer in the list corresponding to the calculated H(ID* i ) is 0, to add a new record when the associating pointer is 0, and to modify a record pointed to by the associating pointer when the associating pointer is not 0.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2022
From: ZTE CORPORATION
To: EIGHT DEER VENTURES, LLC
Reel/Frame 060641/0036 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2013
From: XUE, TAO
To: ZTE CORPORATION
Reel/Frame 031377/0094 →