IP Library Granted Patent US 11,582,575
Granted Patent B2
US 11,582,575 · App. 16/899,488 · Granted Feb 14, 2023

Secure and private cloud based broadcast identification

Inventor: Josselin de la Broise (Mountain View, CA)
Assignee: Tile, Inc.
H04W4/02H04L67/303H04L67/52H04W12/06H04W64/006H04L63/12H04L67/51H04W12/10Y02D30/70
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 11,582,575
App. No.
16/899,488
Granted
Feb 14, 2023
Kind
B2
Abstract

In one embodiment, a method includes storing, by a tracking server, a hash value for each of one or more tracking devices associated with the tracking server. The method includes receiving, at the tracking server from a user device, a hash value associated with a tracking device, the hash value computed based on a static value uniquely associated with the tracking device and a dynamic value maintained by the tracking device. The method includes identifying, by the tracking server, the tracking device based on a comparison between one of the stored hash values and the received hash value. The method includes updating, by the tracking server, one or more records associated with the identified tracking device based on the receiving the hash value.

Claims (68)

1. A method comprising:

generating, by a tracking server, a hash value for each of one or more tracking devices based on a static value uniquely associated with each of the one or more tracking devices and a dynamic value maintained by the tracking device;

storing, by the tracking server, the hash value for each of the one or more tracking devices associated with the tracking server;

receiving, at the tracking server from a user device, a first hash value associated with a first tracking device, wherein the first hash value is computed based on both a static value uniquely associated with the first tracking device and a dynamic value maintained by the first tracking device;

identifying, by the tracking server, the first tracking device based on a comparison between one of the stored hash values and the received hash value;

updating, by the tracking server, one or more records stored in a database accessible to, and maintained by, the tracking server that are associated with the identified tracking device based on the receiving the hash value; and

periodically updating, by the tracking server, the hash value generated for each of the one or more tracking devices based on the static value associated with each of the one or more tracking devices and an updated dynamic value.

2. The method of claim 1 , wherein the first hash value is received via the user device as an advertisement from the first tracking device.

3. The method of claim 1 , wherein the first hash value is received by the user device via a first communication network and is received by the tracking server from the user device by a second communication network.

4. The method of claim 1 , wherein the first hash value is received in a communication packet comprising the first hash value and the dynamic value maintained by the first tracking device.

5. The method of claim 1 , wherein the first hash value is received in a communication packet comprising the hash value and one or more of:

information describing a broadcast power by the first tracking device;

a time of communication;

an identity of the user device;

an identity of a user device previously associated with the first tracking device;

an identity of a user associated with the first tracking device;

a digital signature associated with the first tracking device; and

a digital signature associated with the communication packet.

6. The method of claim 1 , wherein the static value associated with the first tracking device comprises one or more of:

a tracking key stored by the first tracking device and tracking server, wherein the tracking key is not transmitted by the first tracking device or the tracking server;

a unique identifier for the first tracking device; and

a device identifier for the first tracking device.

7. The method of claim 1 , wherein the dynamic value maintained by the first tracking device comprises one or more of:

a time;

a location;

a counter value; and

an incrementing value associated with time.

8. The method of claim 1 , wherein the hash value was computed by the first tracking device in response to a predetermined stimulus.

9. A system comprising:

one or more processors; and

one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to perform operations comprising:

generating a hash value for each of one or more tracking devices based on a static value uniquely associated with each of the one or more tracking devices and a dynamic value maintained by the tracking device;

storing the hash value for each of the one or more tracking devices associated with the system;

receiving from a user device, a first hash value associated with a first tracking device, wherein the first hash value is computed based on both a static value uniquely associated with the first tracking device and a dynamic value maintained by the first tracking device;

identifying the first tracking device based on a comparison between one of the stored hash values and the received hash value;

updating one or more records stored in a database accessible to, and maintained by, the tracking server that are associated with the identified tracking device based on the receiving the hash value; and

periodically updating the hash value generated for each of the one or more tracking devices based on the static value associated with each of the one or more tracking devices and an updated dynamic value.

10. The system of claim 9 , wherein the first hash value is received via the user device as an advertisement from the tracking device.

11. The system of claim 9 , wherein the first hash value is received by the user device via a first communication network and is received by the system from the user device by a second communication network.

12. One or more computer-readable non-transitory storage media embodying software that is operable when executed to perform operations comprising:

generating a hash value for each of one or more tracking devices based on a static value uniquely associated with each of the one or more tracking devices and a dynamic value maintained by the tracking device;

storing the hash value for each of the one or more tracking devices;

receiving from a user device, a first hash value associated with a first tracking device, wherein the first hash value is computed based on both a static value uniquely associated with the first tracking device and a dynamic value maintained by the first tracking device;

identifying the first tracking device based on a comparison between one of the stored hash values and the received hash value;

updating one or more records stored in a database accessible to, and maintained by, the tracking server that are associated with the identified tracking device based on the receiving the hash value; and

periodically updating the hash value generated for each of the one or more tracking devices based on the static value associated with each of the one or more tracking devices and an updated dynamic value.

13. The computer-readable non-transitory storage media of claim 12 , wherein the first hash value is received via the user device as an advertisement from the first tracking device.

14. The computer-readable non-transitory storage media of claim 12 , wherein the first hash value is received by the user device via a first communication network and is received from the user device by a second communication network.

15. The system of claim 9 , wherein the first hash value is received in a communication packet comprising the first hash value and the dynamic value maintained by the first tracking device.

16. The system of claim 9 , wherein the first hash value is received in a communication packet comprising the hash value and one or more of:

information describing a broadcast power by the first tracking device;

a time of communication;

an identity of the user device;

an identity of a user device previously associated with the first tracking device;

an identity of a user associated with the first tracking device;

a digital signature associated with the first tracking device; and

a digital signature associated with the communication packet.

17. The system of claim 9 , wherein the static value associated with the first tracking device comprises one or more of:

a tracking key stored by the first tracking device and tracking server, wherein the tracking key is not transmitted by the first tracking device or the tracking server;

a unique identifier for the first tracking device; and

a device identifier for the first tracking device.

18. The system of claim 9 , wherein the dynamic value maintained by the first tracking device comprises one or more of:

a time;

a location;

a counter value; and

an incrementing value associated with time.

19. The system of claim 9 , wherein the hash value was computed by the first tracking device in response to a predetermined stimulus.

20. The computer-readable non-transitory storage media of claim 12 , wherein the first hash value is received in a communication packet comprising the first hash value and the dynamic value maintained by the first tracking device.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2024
From: DE LA BROISE, JOSSELIN
To: TILE, INC.
Reel/Frame 067052/0052 →
RELEASE OF SECURITY INTEREST Recorded Jan 10, 2022
From: CAPITAL IP INVESTMENT PARTNERS LLC
To: TILE, INC.
Reel/Frame 058671/0383 →
SECURITY INTEREST Recorded Sep 28, 2021
From: TILE, INC.
To: CAPITAL IP INVESTMENT PARTNERS LLC AS ADMINISTRATIVE AGENT
Reel/Frame 057633/0569 →
RELEASE OF SECURITY INTEREST Recorded Sep 2, 2021
From: SILICON VALLEY BANK
To: TILE, INC.
Reel/Frame 057650/0820 →
Continuity (8)
Continuation 16575979 · Sep 19, 2019
Continuation 16241858 · Jan 7, 2019
Continuation In Part 15947207 · Apr 6, 2018
Continuation 15660766 · Jul 26, 2017
Continuation 15472281 · Mar 29, 2017
Continuation 14822580 · Aug 10, 2015
Provisional Application 62062062 · Oct 9, 2014
Related Publication 20200304937A1 · Sep 24, 2020