US 12,256,021 B1
Rolling encryption and authentication in a low power physical asset tracking system
Gabriel Torres, Boulder, CO (US); Ernie Aguilar, Austin, TX (US); Wael Barakat, San Francisco, CA (US); Eli Peer, San Carlos, CA (US); David Gal, Oakland, CA (US); Pierre Gavaret, Novato, CA (US); and Matthew Basham, Oakland, CA (US)
Assigned to Samsara Inc., San Francisco, CA (US)
Filed by Samsara Inc., San Francisco, CA (US)
Filed on Jun. 24, 2024, as Appl. No. 18/752,000.
Claims priority of provisional application 63/631,353, filed on Apr. 8, 2024.
Int. Cl. H04L 9/32 (2006.01); H04L 9/06 (2006.01); H04L 9/40 (2022.01)
CPC H04L 9/3247 (2013.01) [H04L 9/0631 (2013.01); H04L 9/3242 (2013.01); H04L 63/0428 (2013.01)] 17 Claims
OG exemplary drawing
 
1. A system comprising:
a peripheral having first one or more hardware computer processors and first one or more computer readable storage mediums storing first software instructions that, when executed by at least one of the first one or more hardware computer processors cause the peripheral to:
during a particular time interval, generate an encrypted device identifier utilizing at least a device identifier associated with the peripheral, a first shared encryption key, a counter value associated with the particular time interval, and a nonce associated with the particular time interval;
during the particular time interval, generate a signature utilizing at least a second shared encryption key, the counter value associated with the particular time interval, the nonce associated with the particular time interval, and a broadcast payload;
generate a broadcast packet including at least the encrypted device identifier, the signature, the counter value, and the broadcast payload; and
broadcast the broadcast packet; and
a backend having second one or more hardware computer processors and second one or more computer readable storage mediums storing second software instructions that, when executed by at least one of the second one or more hardware computer processors cause the backend to:
receive an observation comprising the broadcast packet;
decrypt the encrypted device identifier included in the broadcast packet; and
verify the signature included in the broadcast packet;
wherein the first shared encryption key is derived using a global encryption private key and a backend public encryption key, wherein the global encryption private key is associated with each peripheral of a plurality of peripherals, and wherein the backend public encryption key is associated with a backend.