IP Library › Granted Patent US 12,517,893
Granted Patent B2
US 12,517,893 · App. 18/590,537 · Granted Jan 6, 2026

DAG based methods and systems of transaction processing in a distributed ledger

Inventor: Baohua Yang (Foster City, CA)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06F16/2379G06F16/2365G06F16/9024
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,517,893
App. No.
18/590,537
Granted
Jan 6, 2026
Kind
B2
Abstract

Described herein are systems and methods for a DAG based transaction processing system and method in a distributed ledger. In accordance with an embodiment, a DAG based transaction processing system and method in a distributed ledger can be introduced. The model can help achieve improved throughput performance. With additional weight mechanism, the final performance can be adjusted based on various business requirements. This is different from existing work that uses linear structure and can achieve better performance.

Claims (60)

1 . A method for directed acyclic graph (DAG) based transaction processing in a distributed ledger, comprising:

providing, at a computer comprising a microprocessor, a distributed ledger framework running a blockchain ledger;

receiving instructions to commit a plurality of new transactions to the blockchain ledger;

generating a collision graph for the plurality of new transactions; and

based upon the generated collision graph, committing at least one of the plurality of new transactions to a block of the blockchain ledger, wherein the at least one of the plurality of new transactions committed to the block of the blockchain ledger is determined, based upon the generated collision graph, to not collide with any others of the plurality of new transactions.

2 . The method of claim 1 ,

wherein the generated collision graph comprises a directed acyclic graph.

3 . The method of claim 2 ,

wherein each of the plurality of new transactions is associated with a weight parameter.

4 . The method of claim 3 ,

wherein each weight parameter is used along with the generated collision graph to score each of the plurality of new transactions.

5 . The method of claim 4 , further comprising:

based upon the score of each of the plurality of new transactions, determining the at least one of plurality of new transactions to be committed to the blockchain ledger.

6 . The method of claim 5 ,

wherein determining the at least one of plurality of new transactions to be committed to the blockchain ledger comprises:

comparing the score for each of the plurality of new transactions;

selecting a transaction of the plurality of new transactions having the highest score to be committed.

7 . The method of claim 6 ,

wherein determining the at least one of plurality of new transactions to be committed to the blockchain ledger further comprises:

determining another transaction of the plurality of new transactions having a next highest score;

upon determining that the another transaction of the plurality of transactions does not collide with the transaction of the plurality of new transactions, selecting the another transaction of the plurality of new transactions to be committed; and

upon determining that the another transaction of the plurality of transactions collides with the transaction of the plurality of new transactions, discarding the another transaction of the plurality of transactions.

8 . A system for directed acyclic graph (DAG) based transaction processing in a distributed ledger, comprising:

a computer comprising a microprocessor and a memory, wherein the microprocessor is configured to perform a method comprising:

providing, at a computer comprising a microprocessor, a distributed ledger framework running a blockchain ledger;

receiving instructions to commit a plurality of new transactions to the blockchain ledger;

generating a collision graph for the plurality of new transactions; and

based upon the generated collision graph, committing at least one of the plurality of new transactions to a block of the blockchain ledger, wherein the at least one of the plurality of new transactions committed to the block of the blockchain ledger is determined, based upon the generated collision graph, to not collide with any others of the plurality of new transactions.

9 . The system of claim 8 ,

wherein the generated collision graph comprises a directed acyclic graph.

10 . The system of claim 9 ,

wherein each of the plurality of new transactions is associated with a weight parameter.

11 . The system of claim 10 ,

wherein each weight parameter is used along with the generated collision graph to score each of the plurality of new transactions.

12 . The system of claim 11 , the method further comprising:

based upon the score of each of the plurality of new transactions, determining the at least one of plurality of new transactions to be committed to the blockchain ledger.

13 . The system of claim 12 ,

wherein determining the at least one of plurality of new transactions to be committed to the blockchain ledger comprises:

comparing the score for each of the plurality of new transactions;

selecting a transaction of the plurality of new transactions having the highest score to be committed.

14 . The system of claim 13 ,

wherein determining the at least one of plurality of new transactions to be committed to the blockchain ledger further comprises:

determining another transaction of the plurality of new transactions having a next highest score;

upon determining that the another transaction of the plurality of transactions does not collide with the transaction of the plurality of new transactions, selecting the another transaction of the plurality of new transactions to be committed; and

upon determining that the another transaction of the plurality of transactions collides with the transaction of the plurality of new transactions, discarding the another transaction of the plurality of transactions.

15 . A non-transitory computer readable storage medium having instructions thereon for directed acyclic graph (DAG) based transaction processing in a distributed ledger, which when read and executed cause a computer to perform steps comprising:

providing, at a computer comprising a microprocessor, a distributed ledger framework running a blockchain ledger;

receiving instructions to commit a plurality of new transactions to the blockchain ledger;

generating, based upon a weight parameter assigned to each of the plurality of new transactions, a collision graph for the plurality of new transactions, the generated collision graph comprising a directed acyclic graph;

scoring, based upon the generated collision graph and each weight parameter, each of the plurality of new transactions;

based upon the generated collision graph, committing at least one of the plurality of new transactions to a block of the blockchain ledger, wherein the at least one of the plurality of new transactions is determined based upon the scoring;

determining another transaction of the plurality of new transactions having a score less than the at least one of the plurality of new transactions;

upon determining that the another transaction of the plurality of transactions does not collide with the transaction of the plurality of new transactions, selecting the another transaction of the plurality of new transactions to be committed; and

upon determining that the another transaction of the plurality of transactions collides with the transaction of the plurality of new transactions, discarding the another transaction of the plurality of transactions.

16 . The non-transitory computer readable storage medium of claim 15 , the steps further comprising:

based upon the score of each of the plurality of new transactions, determining the at least one of plurality of new transactions to be committed to the blockchain ledger.

17 . The non-transitory computer readable storage medium of claim 16 ,

wherein determining the at least one of plurality of new transactions to be committed to the blockchain ledger comprises:

comparing the score for each of the plurality of new transactions;

selecting a transaction of the plurality of new transactions having the highest score to be committed.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 29, 2024
From: YANG, BAOHUA
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 066600/0833 →
Continuity (4)
Continuation 17521560 · Nov 8, 2021
Continuation 16261371 · Jan 29, 2019
Provisional Application 62722595 · Aug 24, 2018
Related Publication 20240248894A1 · Jul 25, 2024
References Cited (115)
US 9870508B1 · Hodgson et al. · 2018 [cited by applicant]
US 10123202B1 · Polehn et al. · 2018 [cited by applicant]
US 10366247B2 · Beecham · 2019 [cited by applicant]
US 10452998B2 · Cuomo et al. · 2019 [cited by applicant]
US 10509919B1 · Wang · 2019 [cited by applicant]
US 10579974B1 · Reed · 2020 [cited by applicant]
US 10691763B2 · Han et al. · 2020 [cited by applicant]
US 10762079B2 · Shi et al. · 2020 [cited by applicant]
US 10789104B2 · Ivanov et al. · 2020 [cited by applicant]
US 11048689B2 · Christidis · 2021 [cited by applicant]
US 11151558B2 · Ferenczi · 2021 [cited by applicant]
US 11182379B2 · Yang · 2021 [cited by applicant]
US 11509455B2 · Trevethan · 2022 [cited by applicant]
US 11546425B2 · Yang · 2023 [cited by applicant]
US 11741075B2 · Yang · 2023 [cited by applicant]
US 11822538B2 · Yang · 2023 [cited by applicant]
US 11921703B2 · Yang · 2024 [cited by applicant]
US 20120110155A1 · Adlung et al. · 2012 [cited by applicant]
US 20130046894A1 · Said et al. · 2013 [cited by applicant]
US 20160070740A1 · Vermeulen · 2016 [cited by applicant]
US 20160292213A1 · Stanfill · 2016 [cited by applicant]
US 20160292680A1 · Wilson, Jr. et al. · 2016 [cited by applicant]
US 20160301739A1 · Thompson · 2016 [cited by applicant]
US 20170048079A1 · Nethi et al. · 2017 [cited by applicant]
US 20170116693A1 · Rae et al. · 2017 [cited by applicant]
US 20170212795A1 · Prabhakar et al. · 2017 [cited by applicant]
US 20170228731A1 · Sheng · 2017 [cited by examiner]
US 20170250972A1 · Ronda et al. · 2017 [cited by applicant]
US 20180077027A1 · VanderKwaak · 2018 [cited by applicant]
US 20180130050A1 · Taylor et al. · 2018 [cited by applicant]
US 20180158034A1 · Hunt · 2018 [cited by examiner]
US 20180167217A1 · Brady et al. · 2018 [cited by applicant]
US 20180255090A1 · Kozloski et al. · 2018 [cited by applicant]
US 20180302215A1 · Salgueiro et al. · 2018 [cited by applicant]
US 20180307857A1 · Beecham · 2018 [cited by applicant]
US 20180308072A1 · Smith et al. · 2018 [cited by applicant]
US 20180332011A1 · Gray · 2018 [cited by applicant]
US 20180343111A1 · Chen et al. · 2018 [cited by applicant]
US 20180367575A1 · Narayanaswamy · 2018 [cited by applicant]
US 20190020665A1 · Surcouf et al. · 2019 [cited by applicant]
US 20190089537A1 · Gray · 2019 [cited by applicant]
US 20190102423A1 · Little et al. · 2019 [cited by applicant]
US 20190104196A1 · Li et al. · 2019 [cited by applicant]
US 20190245856A1 · Irwan et al. · 2019 [cited by applicant]
US 20190282906A1 · Yong · 2019 [cited by applicant]
US 20190370148A1 · Wang · 2019 [cited by applicant]
US 20190370486A1 · Wang · 2019 [cited by applicant]
US 20200037158A1 · Soundararajan · 2020 [cited by applicant]
US 20200151269A1 · Christidis · 2020 [cited by applicant]
US 20200193425A1 · Ferenczi · 2020 [cited by applicant]
US 20200204346A1 · Trevethan · 2020 [cited by applicant]
US 20200394552A1 · Ganapavarapu · 2020 [cited by applicant]
US 20210256009A1 · Zhang · 2021 [cited by applicant]
US 20210382870A1 · Yang · 2021 [cited by applicant]
US 20220058186A1 · Yang · 2022 [cited by applicant]
US 20220138182A1 · Yang · 2022 [cited by applicant]
CN 106952124 · 2017 [cited by applicant]
CN 106982205 · 2017 [cited by applicant]
CN 108389129 · 2018 [cited by applicant]
JP 2010510590 · 2010 [cited by applicant]
JP 2015507301 · 2015 [cited by applicant]
JP 2016115301 · 2016 [cited by applicant]
JP 2017520844 · 2017 [cited by applicant]
JP 2018511886 · 2018 [cited by applicant]
JP 2020503598 · 2020 [cited by applicant]
WO 2016160416 · 2016 [cited by applicant]
WO 2017011601 · 2017 [cited by applicant]
WO 2017040313 · 2017 [cited by applicant]
WO 2017136956 · 2017 [cited by applicant]
WO 2018141792 · 2018 [cited by applicant]
WO 2019067986 · 2019 [cited by applicant]
WO 2019067988 · 2019 [cited by applicant]
WO 2019067989 · 2019 [cited by applicant]
United States Patent and Trademark Office, Office Communication dated May 23, 2024 for U.S. Appl. No. 18/493,345 , 80 pages. [cited by applicant]
The State Intellectual Property Office of People's Republic of China, Notification to Grant Patent Right for Invention dated Sep. 20, 2024 for Chinese Patent Application No. 201980055454.X , 3 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Jan. 15, 2025 for U.S. Appl. No. 18/493,345 , 86 pages. [cited by applicant]
Abbott, Brendan Michael; “A Security Evaluation Methodology for Container Images”, BYU ScholarsArchive, Mar. 1, 2017, 94 pages. [cited by applicant]
Akabane, et al., “Blockchain: Mechanism and Theory”, Ric Telecom, Oct. 28, 2016, First Edition, pp. 198-217, 24 pages. [cited by applicant]
Baldini, et al., “Serverless Computing: Current Trends and Open Problems”, InResearch Advances in Cloud Computing, Jun. 10, 2017, 20 pages. [cited by applicant]
Cachine, Christian; “Architecture of the Hyperledger Blockchain Fabric”, InWorkshop on distributed cryptocurrencies and consensus ledgers, Jun. 25, 2016, 4 pages. [cited by applicant]
Cachin, et al., “Blockchain, cryptography, and consensus”, IBM Research, Jun. 2017, 63 pages. [cited by applicant]
“Chaincode for Operators”, retrieved from https://web.archive.org/web/20170731011000/http://hyperledger-fabrics-docs.readthedocs.io:80/en/latest/chaincode4noah.html on Jan. 23, 2019, 8 pages. [cited by applicant]
Hofman, et al., “Applying blockchain technology for hyperconnected logistics”, 4th International Physical Internet Conference, Jul. 2017, 12 pages. [cited by applicant]
Honda, Kazuyuki; “Destruction or Evolution of Existing Business Model?: Innovation of Blockchain”, 34, Weekly BCN, BCN Inc. Mar. 6, 2017, vol. 1668, p. 20, 5 pages. [cited by applicant]
“Hyperledger Fabric Model”, retrieved from https://web.archive.org/web/20170731225254/http://hyperledger-fabric-docs.readthedocs.io:80/en/latest/fabric_model.html# on Jan. 23, 2019, 4 pages. [cited by applicant]
“IBM and Docker Announce Strategic Partnership to Deliver Enterprise Applications in the Cloud and on Prem”, published on Dec. 4, 2014, retrieved on Nov. 4, 2020 from https://web.archive.org/web/20150110041918/http://ww… [cited by applicant]
“Ledger”, retrieved from https://web.archive.org/web/20170731010523/http://hyperledger-fabric-docs.readthedocs.io:80/en/latest/ledger.html on Jan. 23, 2019, 4 pages. [cited by applicant]
Miller, Ron; “Service based on open source Hyperledger Fabric technology”, published Mar. 19, 2017, retrieved from https://techcrunch.com/2017/03/19/ibm-unveils-blockchain-as-a-service-based-on-open-service-hyperledger-… [cited by applicant]
Nagappan, Ramesh; “Unpacking HyperLedger Fabric 1.0—Under the hood of a Permissioned Blockchain”, published Jul. 7, 2017, retreived Jul. 12, 2019 from http://websecuritypatterns.com/blogs/2017/07/07/unpacking-hyperledge… [cited by applicant]
Sato, et al., “Defining Technical Challenges of Blockchain Platform ‘Hyperledger Fabric’ through Quarantine Evaluation”, IPSJ SIG Technical Report, Feb. 24, 2017, vol. 2017-IOT-36, No. 30., pp. 1-8, 8 pages. [cited by applicant]
Seijas, et al., “Scripting smart contracts for distributed ledger technology”, IACR Cryptology ePrint Archive, Dec. 16, 2016, 30 pages. [cited by applicant]
Stanciu, Alexandru; “Blockchain based distributed control system for Edge Computing”, 2017 21st International Conference on Control Systems and Computer Science, May 29, 2017, pp. 667-671, 5 pages. [cited by applicant]
Tackmann, Bjorn; “Secure Event Tickets on a Blockchain”, International Conference on Simulation, Modeling, and Programming for Autonomous Robots, Sep. 2017, pp. 437-444, 8 pages. [cited by applicant]
Tateishi, et al., “Practice and Future Tasks of Development of Blockchain Applications”, Information Processing Society of Japan, Symposium, Software Engineering Symposium 2017, Information Processing Society of Japan, … [cited by applicant]
“Transaction Flow”, retrieved from https://web.archive.org/web/20170804103334/http://hyperledger-fabric-docs.readthedocs.io:80/en/latest/txflow.html on Jan. 23, 2019, 4 pages. [cited by applicant]
Tschorsh, et al., “Bitcoin and Beyond: A Technical Survey on Decentralized Digital Currencies”, IEEE Communications Surveys & Tutorials, vol. 18, No. 3, Aug. 19, 2016, pp. 2084-2123, 40 pages. [cited by applicant]
“Understanding the architecture”, Docker Docs Ja Project, published on Oct. 27, 2016, retrieved on Nov. 4, 2020 from https://web.archive.org/web/20161027042432/https://docs.docker.jp/engine/introduction/understanding-do… [cited by applicant]
Vukolic, Marko; “Hyperledger Fabric”, IBM Corporation, Jun. 22, 2017, https://docplayer.net/53437090-Hyperledger-fabric-an-open-source-distributed-operating-system-for-permissioned-blockchains-swiss-blockchain-summer-sc… [cited by applicant]
Vukolic, Marko; “Rethinking Permissioned Blockchains”, Proceedings of the ACM Workshop on Blockchain, Cryptocurrencies and Contracts, Apr. 2017, 6 pages. [cited by applicant]
Burkhardt, et al., “Distributed Ledger: Definition & Demarcation”, 2018 IEEE International Conference on Engineering, Technology, and Innovation, 9 pages. [cited by applicant]
Popove, Serguei, “The Tangle”, Version 1.4.3, Apr. 30, 2018, 28 pages. [cited by applicant]
F. M. Benčić and I. Podnar Žarko, “Distributed Ledger Technology: Blockchain Compared to Directed Acyclic Graph,” 2018 IEEE 38th International Conference on Distributed Computing Systems (ICDCS), 2018, pp. 1569-1570, do… [cited by applicant]
Intellectual Property India, Examination report under sections 12 & 13 of the Patents Act, 1970 and the Patents Rules, 2003 dated Jan. 12, 2022 for Indian Patent Application No. 202147001644 , 5 pages. [cited by applicant]
China National Intellectual Property Administration, Notification of the First Office Action dated Feb. 27, 2024 for Chinese Patent Application No. 201980055454.X , 5 pages. [cited by applicant]
Japanese Patent Office, Notice of Reasons for Refusal dated May 20, 2022 for Japanese Patent Application No. 2021510064 , 4 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Mar. 3, 2022 for U.S. Appl. No. 17/090,594 , 32 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Aug. 8, 2022 for U.S. Appl. No. 17/090,594 , 25 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Jan. 20, 2023 for U.S. Appl. No. 17/090,594 , 25 pages. [cited by applicant]
Pyoung, Chan Kyu et al., “Blockchain of Finite-Lifetime Blocks With Applications to Edge-Based IoT” IEEE Internet of Things Journal, vol. 7, No. 3, Mar. 2020, 2102-2116. [cited by applicant]
United States Patent and Trademark Office, Notice of Allowance and Fee(S) Due dated Jul. 12, 2023 for U.S. Appl. No. 17/090,594 , 10 pages. [cited by applicant]
Biwas, Sujit et al., “A Scalable Blockchain Framework for Secure Transactions in IoT”, IEEE Internet of Things Journal, vol. 6, No. 3, Jun. 2019, pp. 4650-4654. [cited by applicant]
Japan Patent Office, Notice of Reasons for Refusal dated Sep. 29, 2023 for Japanese Patent Application No. 2022-136003 , 9 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Dec. 22, 2022 for U.S. Appl. No. 17/521,560 , 18 pages. [cited by applicant]
United States Patent and Trademark Office, Office Communication dated Apr. 27, 2023 for U.S. Appl. No. 17/521,560 , 19 pages. [cited by applicant]
United States Patent and Trademark Office, Notice of Allowance and Fee(s) Due dated Nov. 1, 2023 for U.S. Appl. No. 17/521,560 , 8 pages. [cited by applicant]