IP Library Granted Patent US 10,846,372
Granted Patent B1
US 10,846,372 · App. 16/731,415 · Granted Nov 24, 2020

Systems and methods for trustless proof of possession and transmission of secured data

Inventors: Guha Jayachandran (Cupertino, CA); Volkmar Frinken (San Jose, CA); Patrick Grinaway (Brooklyn, NY); Shriphani Palakodety (Palo Alto, CA); Galana Gebisa (Mountain View, CA)
G06F21/00
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 10,846,372
App. No.
16/731,415
Granted
Nov 24, 2020
Kind
B1
Abstract

A system for trustlessly proving possession of secured data includes a storing device designed and configured to store a collection of data, divide the collection of data into a plurality of lots, receive a cryptographic accumulator of the collection of data, the cryptographic accumulator having a root and a plurality of accumulated elements, wherein each accumulated element is produced by performing an encryption process on each lot of the plurality of lots, evaluate a posting of the root to an immutable sequential listing, select an accumulated element as a function of the root and a public pseudorandom function, generate a secure proof of possession of a data lot used to produce the accumulated element and transmit the secure proof and the accumulated element.

Claims (48)

1. A system for trustlessly proving possession of secured data, the system comprising a storing device designed and configured to:

store a collection of data;

divide the collection of data into a plurality of lots;

receive a cryptographic accumulator of the collection of data, the cryptographic accumulator having a root and a plurality of accumulated elements, wherein each accumulated element is produced by performing an encryption process on each lot of the plurality of lots;

evaluate a posting of the root to an immutable sequential listing;

select an accumulated element as a function of the root and a public pseudorandom function, wherein selecting further comprises:

providing a plurality of identifiers of the plurality of accumulated elements, the plurality of identifiers associated with the root;

generating an output of the public pseudorandom function, wherein the output indicates an identifier of the plurality of identifiers; and

selecting the accumulated element associated with the identifier;

generate a secure proof of possession of a data lot used to produce the accumulated element; and transmit the secure proof and the accumulated element.

2. The system of claim 1 , wherein the storing device is further configured to store the collection of data further comprises encrypting the collection of data.

3. The system of claim 1 , wherein the encryption process further comprises a cryptographic hashing process.

4. The system of claim 1 , wherein the cryptographic accumulator further comprises a Merkle tree.

5. The system of claim 1 , wherein the storing device is further configured to evaluate a digital signature signing the root.

6. The system of claim 1 , wherein the storing device is further configured to receive the request by receiving a proof of identity of the requesting device.

7. The system of claim 6 , wherein the proof of identity further comprises a digital signature.

8. The system of claim 6 , wherein the proof of identity further comprises a secure proof of possession of at least a portion of the data.

9. The system of claim 1 , wherein the selection function includes a generation of a mathematical representation of at least a portion of the immutable sequential listing.

10. The system of claim 9 , wherein the at least a portion of the immutable sequential listing is the root.

11. A method of trustlessly proving possession of secured data, the method comprising: storing, by a storing device,

a collection of data;

dividing, by the storing device, the collection of data into a plurality of lots;

receiving, at the storing device, a cryptographic accumulator of the collection of data, the cryptographic accumulator having a root and a plurality of accumulated elements, wherein each accumulated element is produced by performing an encryption process on each lot of the plurality of lots;

evaluating, by the storing device, a posting of the root to an immutable sequential listing;

selecting, by the storing device, an accumulated element as a function of the root and a public pseudorandom selection function, wherein selecting further comprises:

providing a plurality of identifiers of the plurality of accumulated elements, the plurality of identifiers associated with the root;

generating an output of the public pseudorandom function, wherein the output indicates an identifier of the plurality of identifiers; and

selecting the accumulated element associated with the identifier;

generating, by the storing device, a secure proof of possession of a data lot used to produce the accumulated element; and

transmitting, by the storing device, the secure proof and the accumulated element.

12. The method of claim 11 , wherein the cryptographic accumulator further comprises a Merkle tree.

13. The method of claim 11 , wherein evaluating the root posted to the immutable sequential listing further comprises evaluating a digital signature digitally signing the root.

14. The method of claim 11 , wherein receiving the request further comprises receiving a proof of identity of the requesting device.

15. The method of claim 14 , wherein the proof of identity further comprises a digital signature.

16. The method of claim 14 , wherein the proof of identity further comprises a secure proof of possession of at least a portion of the data.

17. The method of claim 11 , wherein the selection function includes a generation of a mathematical representation of at least a portion of the immutable sequential listing.

18. The method of claim 17 , wherein the at least a portion of the immutable sequential listing is the root.

19. A non-transitory computer-readable storage medium containing machine-executable instructions for performing a method of trustlessly proving possession of secured data, the method comprising: storing, by a storing device,

a collection of data;

dividing, by the storing device, the collection of data into a plurality of lots;

receiving, at the storing device, a cryptographic accumulator of the collection of data, the cryptographic accumulator having a root and a plurality of accumulated elements, wherein each accumulated element is produced by performing an encryption process on each lot of the plurality of lots;

evaluating, by the storing device, a posting of the root to an immutable sequential listing;

selecting, by the storing device, an accumulated element as a function of the root and a public pseudorandom selection function, wherein selecting further comprises:

providing a plurality of identifiers of the plurality of accumulated elements, the plurality of identifiers associated with the root;

generating an output of the public pseudorandom function, wherein the output indicates an identifier of the plurality of identifiers; and

selecting the accumulated element associated with the identifier;

generating, by the storing device, a secure proof of possession of a data lot used to produce the accumulated element; and

transmitting, by the storing device, the secure proof and the accumulated element.

Assignments (2)
CHANGE OF NAME Recorded Nov 23, 2021
From: ONU TECHNOLOGY, INC.
To: ONAI INC.
Reel/Frame 058739/0945 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2020
From: GRINAWAY, PATRICK; FRINKEN, VOLKMAR; JAYACHANDRAN, GUHA; PALAKODETY, SHRIPHANI; GEBISA, GALANA
To: ONU TECHNOLOGY, INC.
Reel/Frame 052867/0118 →
Cited By (8)
US 12,299,171 US 12,307,099 US 12,554,885 US 12,574,258 US 12,587,371 US 12,639,705 US 12,664,251 US 12,732,386