IP Library Granted Patent US 12,368,652
Granted Patent B2
US 12,368,652 · App. 18/732,201 · Granted Jul 22, 2025

Distributed oracle agreement system and method

Inventors: Saurabh Bhanuprasad Joshi (Hyderabad, IN); Aniket Kate (West Lafayette, IN); Joshua Tobkin (Perham, MN); Yin Yang (Hong Kong, HK)
Assignee: Unity Chain, Inc.
H04L41/30
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,368,652
App. No.
18/732,201
Granted
Jul 22, 2025
Kind
B2
Abstract

A distributed oracle agreement system and method thereof includes obtaining, by a first oracle node and a second oracle node of a consensus network, a first set and second set of data points from a data source that is external to the consensus network having a plurality of nodes. The method further includes computing a first median of the first set of data points and a second median of the second set of data points. The method includes forming, by an aggregator node, a cluster of data points from the sets of data points with the cluster contains data points within a predetermined distance. The method includes proposing the cluster to the plurality of nodes such that a vote on the cluster is performed. The method includes generating a quorum certificate message in response to the vote. The method includes committing the cluster to a block of the consensus network.

Claims (68)

1. A method comprising:

obtaining, by a first oracle node of a consensus network, a first set of data points from a data source that is external to the consensus network having a plurality of nodes;

obtaining, by a second oracle node of the consensus network, a second set of data points from the data source that is external to the consensus network;

computing, by the first oracle node, a first median of the first set of data points;

computing, by the second oracle node, a second median of the second set of data points;

forming, by an aggregator node, a cluster of data points from the first set of data points and the second set of data points, wherein the cluster contains data points within a predetermined distance;

proposing, by the aggregator node, the cluster to the plurality of nodes such that a vote on the cluster is performed by the plurality of nodes;

generating, by the aggregator node, a quorum certificate message in response to the vote; and

committing, by the aggregator node, the cluster to a block of the consensus network.

2. The method of claim 1 , wherein the distance defines a maximum distance between any two data points of the cluster.

3. The method of claim 1 , wherein the consensus network comprises oracle nodes, aggregator nodes, and blockchain nodes.

4. The method of claim 1 , wherein forming, by an aggregator node, a cluster of data points from the first set of data points and the second set of data points, wherein the cluster contains data points within the predetermined distance, comprises:

computing a distance between each point of the first set of data points and each point of the second set of data points;

inserting values into the cluster corresponding to the first set of data points and each point of the second set of data points that are within the predetermined distance; and

excluding values from the cluster corresponding to the first set of data points and each point of the second set of data points that exceed the predetermined distance.

5. The method of claim 1 , further comprising:

detecting volatility of the first set of data points or the second set of data points, wherein detecting volatility comprises:

comparing a value from the first set of data points or the second set of data points with a previous value that is weighted by a constant parameter and a historical value parameter; and

classifying the volatility based on the comparison of the value.

6. The method of claim 1 wherein the cluster of data points from the first set of data points and the second set of data points includes the first median and the second median.

7. The method of claim 1 , wherein generating, by the aggregator node, the quorum certificate message in response to the vote comprises:

receiving votes from a set of oracle nodes of the consensus network, wherein each vote is generated by an oracle node of the set of oracle nodes; and

creating the quorum certificate in response to receiving a vote from a majority of oracle nodes from the set of oracle nodes.

8. A distributed oracle agreement system comprising:

a consensus network comprising a set of oracle nodes and an aggregator node;

wherein the set of oracle nodes includes a first oracle node configured to:

obtain a first set of data points from a data source that is external to the consensus network;

compute a first median of the first set of data points;

wherein the set of oracle nodes includes a second oracle node configured to:

obtain, a second set of data points from the data source;

compute a second median of the second set of data points;

wherein the aggregator node is configured to:

form a cluster of data points from the first set of data points and the second set of data points, wherein the cluster contains data points within a predetermined distance;

propose the cluster to the set of oracle nodes such that a vote on the cluster is performed by the set of oracle nodes;

generate a quorum certificate message in response to the vote; and

commit the cluster to a block of the consensus network.

9. The distributed oracle agreement system of claim 8 , wherein the predetermined distance defines a maximum distance between any two data points of the cluster.

10. The distributed oracle agreement system of claim 8 , wherein the aggregator node is further configured to:

compute a distance between each point of the first set of data points and each point of the second set of data points;

insert values into the cluster corresponding to the first set of data points and each point of the second set of data points that are within the predetermined distance; and

exclude values from the cluster corresponding to the first set of data points and each point of the second set of data points that exceed the predetermined distance.

11. The distributed oracle agreement system of claim 8 , wherein the set of oracle nodes is further configured to:

detect volatility of the first set of data points or the second set of data points, wherein detecting volatility comprises:

compare a value from the first set of data points or the second set of data points with a previous value that is weighted by a constant parameter and a historical value parameter; and

classify the volatility based on the comparison of the value.

12. The distributed oracle agreement system of claim 8 , wherein the cluster of data points from the first set of data points and the second set of data points includes the first median and the second.

13. The distributed oracle agreement system of claim 8 , wherein to generate, by the aggregator node, the quorum certificate message in response to the vote comprises:

receiving votes from a set of oracle nodes of the consensus network, wherein each vote is generated by an oracle node of the set of oracle nodes; and

creating the quorum certificate in response to receiving a vote from a majority of oracle nodes from the set of oracle nodes.

14. A method comprising:

obtaining, by a set of oracle nodes, a first set of data points and a second set of data points from a set of data sources that is external to the set of oracle nodes;

selecting a cluster value from the set of first set of data points or the second set of data points;

forming, by the set of oracle nodes, a cluster of data points from the first set of data points and the second set of data points, wherein the cluster of data points are within a predetermined distance of the cluster value;

proposing, by a node of the set of oracle nodes, the cluster value to the other nodes of the set of oracle nodes, such that a vote on the cluster is performed by the set of oracle nodes;

generating, by the node, a quorum certificate message in response to the vote; and

committing, by the node, the cluster to a block of a blockchain.

15. The method of claim 14 , wherein the predetermined distance defines the maximum distance between any two data points of a cluster of data points.

16. The method of claim 14 , wherein forming, by the set of oracle nodes, a cluster of data points from the first set of data points and the second set of data points comprises:

computing a distance between each point of the first set of data points and each point of the second set of data points;

inserting values into the cluster corresponding to the first set of data points and each point of the second set of data points that are within the predetermined distance; and

excluding values from the cluster corresponding to the first set of data points and each point of the second set of data points that exceed the predetermined distance.

17. The method of claim 14 further comprising:

detecting volatility of the first set of data points or the second set of data points, wherein detecting volatility comprises:

comparing a value from the first set of data points or the second set of data points with a previous value that is weighted by a constant parameter and a historical value parameter; and

classifying the volatility based on the comparison of the value.

18. The method of claim 14 wherein the cluster of data points from the first set of data points and the second set of data points includes a first median and a second median.

19. The method of claim 14 , wherein the set of oracle nodes and the blockchain are components of a consensus network.

20. The method of claim 14 , wherein the first set of data points and the second set of data points are each vectors that include multiple data points, and wherein the predetermined distance is the distance of the vector coordinates from an origin of a vector space.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2024
From: JOSHI, SAURABH BHANUPRASAD; KATE, ANIKET; TOBKIN, JOSHUA; YANG, YIN
To: UNITY CHAIN, INC.
Reel/Frame 067602/0768 →
Continuity (3)
Continuation PCTUS2023036923 · Nov 7, 2023
Provisional Application 63423631 · Nov 8, 2022
Related Publication 20240323100A1 · Sep 26, 2024
References Cited (61)
US 10073906B2 · Lu · 2018 [cited by examiner]
US 10242087B2 · Soceanu · 2019 [cited by examiner]
US 10416958B2 · Singh · 2019 [cited by examiner]
US 10789507B2 · Saha · 2020 [cited by examiner]
US 11088568B2 · Huberman · 2021 [cited by examiner]
US 11392621B1 · Jaffrey · 2022 [cited by examiner]
US 11483338B2 · Jimenez-Delgado · 2022 [cited by examiner]
US 11522758B1 · Mutalikdesai · 2022 [cited by examiner]
US 11621902B2 · Simanavicius · 2023 [cited by examiner]
US 11626993B2 · Zamani · 2023 [cited by examiner]
US 11630855B2 · Allen · 2023 [cited by examiner]
US 11809915B1 · Simpson · 2023 [cited by examiner]
US 11847488B2 · Zheng · 2023 [cited by examiner]
US 11875400B2 · Padmanabhan · 2024 [cited by examiner]
US 11887619B2 · Yang · 2024 [cited by examiner]
US 11941588B2 · Goeringer · 2024 [cited by examiner]
US 11962402B2 · Hoptroff · 2024 [cited by examiner]
US 11966501B2 · Ramanan · 2024 [cited by examiner]
US 11966818B2 · Manamohan · 2024 [cited by examiner]
US 11995525B2 · Gidney · 2024 [cited by examiner]
US 12002045B2 · Ronnow · 2024 [cited by examiner]
US 12010236B2 · Varilly · 2024 [cited by examiner]
US 12020246B2 · Dey · 2024 [cited by examiner]
US 12032556B2 · Michaelis · 2024 [cited by examiner]
US 12034299B1 · Caruso · 2024 [cited by examiner]
US 12056708B2 · Kim · 2024 [cited by examiner]
US 12056766B2 · Ingargiola · 2024 [cited by examiner]
US 20190394047A1 · Karame et al. · 2019 [cited by applicant]
US 20200089791A1 · Raman · 2020 [cited by examiner]
US 20220147774A1 · Bölderl-Ermel et al. · 2022 [cited by applicant]
US 20220278854A1 · Tobkin et al. · 2022 [cited by applicant]
US 20220351288A1 · Britz · 2022 [cited by examiner]
US 20220368621A1 · Simanavicius · 2022 [cited by examiner]
US 20230185965A1 · Li · 2023 [cited by examiner]
US 20230216755A1 · Bergsten · 2023 [cited by examiner]
US 20230315891A1 · Liu · 2023 [cited by examiner]
US 20230318857A1 · Nazarov · 2023 [cited by examiner]
US 20230319141A1 · Doshi · 2023 [cited by examiner]
US 20240015023A1 · Stock · 2024 [cited by examiner]
US 20240020944A1 · Krishnakumar · 2024 [cited by examiner]
US 20240045851A1 · Li · 2024 [cited by examiner]
US 20240046318A1 · Muriqi · 2024 [cited by examiner]
US 20240064031A1 · Gwilliams · 2024 [cited by examiner]
US 20240080191A1 · Vinayagamurthy · 2024 [cited by examiner]
US 20240111024A1 · Lau · 2024 [cited by examiner]
US 20240111785A1 · Oh · 2024 [cited by examiner]
US 20240127321A1 · Karri · 2024 [cited by examiner]
US 20240129113A1 · Lee · 2024 [cited by examiner]
US 20240143838A1 · Ardhanari · 2024 [cited by examiner]
US 20240171413A1 · Dravneek · 2024 [cited by examiner]
US 20240171559A1 · Chen · 2024 [cited by examiner]
US 20240176776A1 · Tsiatsikas · 2024 [cited by examiner]
US 20240185191A1 · Bernardi · 2024 [cited by examiner]
US 20240223595A1 · Bakshi · 2024 [cited by examiner]
US 20240236075A1 · Breitner · 2024 [cited by examiner]
US 20240259201A1 · Enciso · 2024 [cited by examiner]
US 20240265005A1 · Li · 2024 [cited by examiner]
GB 2604093A · 2022 [cited by examiner]
WO WO2017132428A1 · 2017 [cited by examiner]
WO WO2022191959A1 · 2022 [cited by examiner]
PCT Search Report and Written Opinion (PCT/US23/36923), mailed Mar. 1, 2024 (8 pages). [cited by applicant]