IP Library Granted Patent US 12,321,646
Granted Patent B1
US 12,321,646 · App. 18/593,341 · Granted Jun 3, 2025

Systems and methods for a content-addressable peer-to-peer storage network

Inventor: James A. Thomason (Las Vegas, NV)
Assignee: EDJX, Inc.
G06F3/067G06F3/0604G06F3/0655G06F12/0802H04L9/3236H04L67/1021H04L67/104H04L67/568G06F2212/263
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 12,321,646
App. No.
18/593,341
Filed
Mar 1, 2024
Granted
Jun 3, 2025
Kind
B1
Examiner
LEE, BRYAN Y
Art Unit
2445
USPC
711/118
Abstract

The present invention provides systems and methods for a content-addressable peer-to-peer storage network. The content-addressable peer-to-peer storage network includes a plurality of nodes. A node generates a new data block, which is witnessed by peer nodes to increase the integrity of the data. Each peer node responds to the node's signature request with an encoded digital signature of the data using a private key. The node appends the signature from each witness node to the data block and then generates a cryptographic hash of the entire data block, which is used as the identity of the block.

Claims (42)

1. A method of retrieving data in a content-addressable peer-to-peer storage network comprising:

providing at least one cloud platform in network communication with a plurality of server nodes including at least one server, wherein information associated with each of the plurality of server nodes is stored in a node database on the at least one cloud platform;

a user device receiving a request for content;

the at least one server geolocating the user device to determine a nearest node of the plurality of server nodes;

transmitting a location of the nearest node to the user device;

the user device connecting to the nearest node;

the nearest node determining if the request is already in a cache on the nearest node or if the request is operable to be resolved using at least one peer node;

the nearest node returning the content related to the request to the user device;

wherein the plurality of server nodes are zero-configuration nodes; and

wherein the content is stored on the nearest node or on the at least one peer node using an object storage architecture.

2. The method of claim 1 , wherein the request is not already in a cache and is not operable to be resolved using at least one peer node, further including fetching the content from an origin server and caching the content in the nearest node before returning the content to the user device.

3. The method of claim 1 , further including the at least one server traversing a root feed to find a domain for the content.

4. The method of claim 1 , wherein the content is returned in near real time.

5. The method of claim 1 , wherein one or more of the plurality of server nodes includes a user feed, an applications feed, an objects feed, a blocks feed, a policy feed, a proxy feed, a bucket feed, a certificate feed, a files mapping feed, a bucket feed, and/or a domain configuration feed.

6. The method of claim 1 , wherein the user device makes a Hypertext Transfer Protocol (HTTP) connection to the nearest node.

7. The method of claim 1 , wherein a cryptographic checksum of the data is used as the address for the data within the content-addressable peer-to-peer storage network.

8. The method of claim 1 , wherein each object in the object storage architecture includes data, metadata, and a globally unique identifier.

9. A system for retrieving data in a content-addressable peer-to-peer storage network comprising:

at least one cloud platform in network communication with a plurality of server nodes including at least one server, wherein information associated with each of the plurality of server nodes is stored in a node database on the at least one cloud platform; and

wherein the at least one server is operable to geolocate a user device requesting content to determine a nearest node of the plurality of server nodes;

wherein the at least one server is operable to transmit a location of the nearest node to the user device;

wherein the nearest node is operable to determine if the request is already in a cache on the nearest node or if the request is operable to be resolved using at least one peer node;

wherein the nearest node is operable to return content to the user device;

wherein the content is stored on the nearest node or on the at least one peer node using an object storage architecture; and

wherein a cryptographic checksum of the data is used as the address for the data within the content-addressable peer-to-peer storage network.

10. The system of claim 9 , wherein each object in the object storage architecture includes data, metadata, and a globally unique identifier.

11. The system of claim 9 , wherein the request is not already in a cache and is not operable to be resolved using at least one peer node, and wherein the nearest node is operable to fetch the content from an origin server and cache the content before returning the content to the user device.

12. The system of claim 9 , wherein the at least one server is operable to traverse a root feed to find a domain for the content.

13. The system of claim 12 , wherein the domain is found in the root feed, and wherein the at least one server is operable to search a domain feed for a domain and find a policy for the content.

14. The system of claim 9 , wherein one or more of the plurality of server nodes includes a user feed, an applications feed, an objects feed, a blocks feed, a policy feed, a proxy feed, a bucket feed, a certificate feed, a files mapping feed, a bucket feed, and/or a domain configuration feed.

15. A system for retrieving data in a content-addressable peer-to-peer storage network comprising:

at least one platform in network communication with a plurality of server nodes including at least one server; and

wherein the at least one server is operable to geolocate a user device requesting content to determine a nearest node of the plurality of server nodes;

wherein the at least one server is operable to transmit a location of the nearest node to the user device;

wherein the nearest node is operable to determine if the request is already in a cache on the nearest node or if the request is operable to be resolved using at least one peer node;

wherein the nearest node is operable to return content to the user device; and

wherein a cryptographic checksum of the data is used as the address for the data within the content-addressable peer-to-peer storage network.

16. The system of claim 15 , wherein the content is stored on the nearest node or on the at least one peer node using an object storage architecture.

17. The system of claim 15 , wherein each object in the object storage architecture includes data, metadata, and a globally unique identifier.

18. The system of claim 15 , wherein one or more of the plurality of server nodes includes an objects feed, a blocks feed, a policy feed, a proxy feed, a bucket feed, a certificate feed, a files mapping feed, and/or a bucket feed.

19. The system of claim 15 , wherein the at least one server includes at least one Domain Name System (DNS) server.

20. The system of claim 15 , wherein the content is associated with a Uniform Resource Indicator (URI).

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2024
From: THOMASON, JAMES A.
To: EDJX, INC.
Reel/Frame 066648/0246 →
Continuity (2)
Continuation 17496437 · Oct 7, 2021
Provisional Application 63090265 · Oct 11, 2020
References Cited (91)
US 6661799B1 · Molitor · 2003 [cited by applicant]
US 6829654B1 · Jungck · 2004 [cited by applicant]
US 7032031B2 · Jungck et al. · 2006 [cited by applicant]
US 8392912B2 · Davis et al. · 2013 [cited by applicant]
US 8539079B2 · Thireault · 2013 [cited by applicant]
US 8694610B2 · Jungck · 2014 [cited by applicant]
US 9104326B2 · Frank et al. · 2015 [cited by applicant]
US 9391856B2 · Kazerani et al. · 2016 [cited by applicant]
US 9444858B1 · Boyle et al. · 2016 [cited by applicant]
US 9685077B2 · Schlienz et al. · 2017 [cited by applicant]
US 9713000B2 · Oertle et al. · 2017 [cited by applicant]
US 9787560B2 · Maddux et al. · 2017 [cited by applicant]
US 9880756B2 · Mutalik et al. · 2018 [cited by applicant]
US 9904603B2 · Mutalik et al. · 2018 [cited by applicant]
US 10122547B2 · Mahindra et al. · 2018 [cited by applicant]
US 10334446B2 · Ashrafi · 2019 [cited by applicant]
US 10341868B2 · Ross et al. · 2019 [cited by applicant]
US 10445698B2 · Hunn · 2019 [cited by applicant]
US 10559202B2 · Yang et al. · 2020 [cited by applicant]
US 10567291B2 · Sabella et al. · 2020 [cited by applicant]
US 10575244B1 · Gustafson et al. · 2020 [cited by applicant]
US 10692367B2 · Nguyen · 2020 [cited by applicant]
US 10778794B2 · Wei et al. · 2020 [cited by applicant]
US 10915862B2 · Long et al. · 2021 [cited by applicant]
US 10938916B2 · Enat et al. · 2021 [cited by applicant]
US 10957191B2 · McEnroe et al. · 2021 [cited by applicant]
US 10986173B1 · Thomason · 2021 [cited by applicant]
US 11164450B2 · Tsfasman et al. · 2021 [cited by applicant]
US 20010047241A1 · Khavakh et al. · 2001 [cited by applicant]
US 20030065763A1 · Swildens et al. · 2003 [cited by applicant]
US 20040064693A1 · Pabla et al. · 2004 [cited by applicant]
US 20050210149A1 · Kimball · 2005 [cited by examiner]
US 20050273593A1 · Seminaro et al. · 2005 [cited by applicant]
US 20080060054A1 · Srivastava · 2008 [cited by examiner]
US 20100223364A1 · Wei · 2010 [cited by applicant]
US 20100287019A1 · Guo et al. · 2010 [cited by applicant]
US 20120076134A1 · Brownrigg · 2012 [cited by applicant]
US 20120221652A1 · Sainio et al. · 2012 [cited by applicant]
US 20130103785A1 · Lyon · 2013 [cited by applicant]
US 20130111024A1 · Setia et al. · 2013 [cited by applicant]
US 20130297669A1 · Wang · 2013 [cited by applicant]
US 20130332559A1 · Mas Ivars · 2013 [cited by examiner]
US 20140136952A1 · Zhu et al. · 2014 [cited by applicant]
US 20140164563A1 · Leekley · 2014 [cited by examiner]
US 20150074296A1 · Eidelman et al. · 2015 [cited by applicant]
US 20170366591A1 · Thomas · 2017 [cited by applicant]
US 20180041578A1 · Lee et al. · 2018 [cited by applicant]
US 20180052839A1 · Sharma et al. · 2018 [cited by applicant]
US 20180130098A1 · Swanson et al. · 2018 [cited by applicant]
US 20180132015A1 · Borrelli et al. · 2018 [cited by applicant]
US 20180241814A1 · Kristiansson et al. · 2018 [cited by applicant]
US 20180288091A1 · Doron et al. · 2018 [cited by applicant]
US 20180302440A1 · Hu et al. · 2018 [cited by applicant]
US 20180331832A1 · Pulsifer · 2018 [cited by applicant]
US 20180357604A1 · Li et al. · 2018 [cited by applicant]
US 20180365635A1 · Lucrecio et al. · 2018 [cited by applicant]
US 20190007521A1 · Lipstone et al. · 2019 [cited by applicant]
US 20190035267A1 · Balzer et al. · 2019 [cited by applicant]
US 20190036764A1 · Canessa et al. · 2019 [cited by applicant]
US 20190050647A1 · Malkes et al. · 2019 [cited by applicant]
US 20190051166A1 · Bronk · 2019 [cited by applicant]
US 20190188581A1 · Chabin et al. · 2019 [cited by applicant]
US 20190199537A1 · Seo et al. · 2019 [cited by applicant]
US 20190236793A1 · Chan · 2019 [cited by applicant]
US 20190272496A1 · Moeller · 2019 [cited by applicant]
US 20190327180A1 · Todd et al. · 2019 [cited by applicant]
US 20190386995A1 · Chafe et al. · 2019 [cited by applicant]
US 20200008007A1 · Belghoul et al. · 2020 [cited by applicant]
US 20200019626A1 · Todd et al. · 2020 [cited by applicant]
US 20200107403A1 · Frydman et al. · 2020 [cited by applicant]
US 20200125604A1 · Canessa et al. · 2020 [cited by applicant]
US 20200151655A1 · Khoche · 2020 [cited by applicant]
US 20200153786A1 · Ward et al. · 2020 [cited by applicant]
US 20200159511A1 · Frydman et al. · 2020 [cited by applicant]
US 20200177606A1 · Valluri et al. · 2020 [cited by applicant]
US 20200259836A1 · Kumar · 2020 [cited by applicant]
US 20200296155A1 · McGrath et al. · 2020 [cited by applicant]
US 20200312128A1 · Higuchi et al. · 2020 [cited by applicant]
US 20210012282A1 · Smith et al. · 2021 [cited by applicant]
US 20210027452A1 · Mok et al. · 2021 [cited by applicant]
US 20210027624A1 · Oberdanner et al. · 2021 [cited by applicant]
US 20210044675A1 · Frydman et al. · 2021 [cited by applicant]
US 20210233045A1 · Singh et al. · 2021 [cited by applicant]
US 20210295684A1 · Cen et al. · 2021 [cited by applicant]
US 20210400485A1 · Ergen et al. · 2021 [cited by applicant]
US 20220201056A1 · Zajac et al. · 2022 [cited by applicant]
US 20220224759A1 · Khosrowpour et al. · 2022 [cited by applicant]
CN 111226429A · 2020 [cited by applicant]
KR 101823293B1 · 2018 [cited by applicant]
KR 101925268B1 · 2019 [cited by applicant]
WO 2018225069A1 · 2018 [cited by applicant]
Cited By (1)
US 12,446,082