IP Library Granted Patent US 12,346,298
Granted Patent B2
US 12,346,298 · App. 16/633,836 · Granted Jul 1, 2025

Computer-implemented system and method for managing a large distributed memory pool in a blockchain network

Inventors: Alexandra Covaci (London, GB); Giuseppe Destefanis (London, GB); Simone Madeo (London, GB); Patrick Motylinski (London, GB); Stephane Vincent (Luxembourg, LU)
Assignee: NCHAIN LICENSING AG
G06F16/2255G06F16/176G06F16/1815G06F16/1865G06F16/188G06F16/2365G06F16/24565G06F16/289G06Q10/06G06Q20/065G06Q20/3829H04L9/3234H04L9/3236H04L9/3247H04L9/3273
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,346,298
App. No.
16/633,836
Granted
Jul 1, 2025
Kind
B2
Abstract

A computer-implemented method implemented in a blockchain network is described. Validation nodes receive data regarding a newly mined block comprising a plurality of transactions and send a delete request to a distributed memory pool to delete the plurality of transactions from the distributed memory pool. Nodes storing the distributed memory pool store a plurality of transactions, the plurality of transactions forming at least part of a distributed memory pool of transactions waiting to be mined into a block of a blockchain. The computer-implemented method further comprises receiving a delete request from a validation node of the blockchain network, the delete request identifying one or more transactions which have been included in a newly mined block, the delete request indicating that the one or more transactions should be deleted from the distributed memory pool.

Claims (47)

1. A computer-implemented method for a node of a blockchain network, the computer-implemented method comprising:

storing, in a distributed hash table (DHT), a plurality of transactions, the plurality of transactions forming at least part of a distributed memory pool of unconfirmed transactions waiting to be mined into a block of a blockchain and confirmed mined transactions; and

receiving a delete request from a validation node of the blockchain network, the delete request identifying one or more confirmed transactions in the distributed memory pool of transactions waiting to be mined which have been included in a newly mined block, the delete request indicating that one or more transactions should be deleted from the distributed memory pool, the method further comprising;

verifying the delete request by authenticating that the validation node is authorized to validate transactions by verifying a digital signature of the validation node and confirming the validation node validated the one or more confirmed transactions identified in the delete request;

marking a transaction as removed from the distributed memory pool when a first threshold number of delete requests is received for the transaction, the method further comprising;

deleting the transaction data from the DHT of the distributed memory pool when a second threshold number of delete requests is received for the transaction, wherein the first and second threshold numbers of delete requests are required to come from a threshold number of different validation nodes in the blockchain network, wherein requiring the threshold numbers of delete requests from different validation nodes implements a consensus mechanism that maintains data consistency in the distributed memory pool.

2. The computer-implemented method according to claim 1 , wherein the second threshold number is larger than the first threshold number.

3. The computer-implemented method according to claim 1 , wherein a transaction is physically removed from the distributed memory pool only after a threshold time has passed since receiving a delete request, during which time no further data requests for the transaction are received.

4. The computer-implemented method according to claim 3 , wherein the threshold time corresponds to one or more blocks being incorporated into the blockchain after the transaction was incorporated into the blockchain for which deletion from the distributed memory pool is requested.

5. The computer-implemented method according to claim 1 , wherein transactions are physically removed from the distributed memory pool in descending order of time passed since receiving a delete request during which time no further data requests for the transaction are received.

6. The computer-implemented method according to claim 1 , further comprising marking the transaction as removed from the distributed memory pool when the transaction depends on a previously removed transaction.

7. The computer-implemented method according to claim 1 , wherein delete requests are stored in a database.

8. The computer-implemented method according to claim 1 , wherein delete requests received from validators which didn't validate the transactions are discarded.

9. The computer-implemented method according to claim 8 , wherein said transactions are discarded only if a check validator option is enabled.

10. The computer-implemented method according to claim 1 , further comprising monitoring a number of data requests for transactions already marked as removed from the distributed memory pool.

11. The computer-implemented method according to claim 1 , further comprising marking a transaction as a candidate for reversion back into the distributed memory pool after a threshold number of data requests is received for a transaction which is marked for removal from the distributed memory pool.

12. The computer-implemented method according to claim 1 , further comprising unmarking a transaction as removed from the distributed memory pool when a revert request is received for the transaction.

13. The computer-implemented method according to claim 1 , further comprising unmarking a transaction as removed from the distributed memory pool when a threshold number of revert requests is received for the transaction.

14. The computer-implemented method according to claim 13 , wherein the threshold number of revert requests is required to come from a threshold number of different validation nodes in the blockchain network.

15. The computer-implemented method according to claim 1 , further comprising sending a message indicating that a transaction has been removed from the distributed memory pool in response to a query for a transaction which has been removed from the distributed memory pool.

16. The computer-implemented method according to claim 15 , wherein said message indicating that a transaction has been removed from the distributed memory pool also indicates a number of delete messages received for the removed transaction.

17. The computer-implemented method according to claim 1 , wherein a transaction comprises three states with respect to the distributed memory pool:

available;

removed; and

physically removed.

18. The computer-implemented method according to claim 1 , wherein delete requests are activated by one or more of:

reception of a mined block;

blockchain reorganization; and

double spending or other form of transaction conflict.

19. The computer-implemented method according to claim 1 , wherein pruning of transactions from the distributed memory pool is activated by one or more of:

manual pruning;

transaction expiration; and

a memory limit being reached for transaction in the distributed memory pool.

20. A node of a blockchain network, the node configured to perform the method of claim 1 .

21. An electronic device comprising:

an interface device;

one or more processor(s) coupled to the interface device; and

a memory coupled to the one or more processor(s), the memory having stored thereon computer executable instructions which, when executed, configure the one or more processor(s) to perform the method of claim 1 .

22. An electronic device comprising:

an interface device;

one or more processor(s) coupled to the interface device; and

a memory coupled to the one or more processor(s), the memory having stored thereon computer executable instructions which, when executed, configure the one or more processor(s) to:

store, in a distributed hash table (DHT), a plurality of transactions, the plurality of transactions forming at least part of a distributed memory pool of unconfirmed transactions waiting to be mined into a block of a blockchain and confirmed mined transactions; and

receive a delete request from a validation node of a blockchain network, the delete request identifying one or more confirmed transactions in the distributed memory pool of transactions waiting to be mined which have been included in a newly mined block, the delete request indicating that one or more transactions should be deleted from the distributed memory pool;

verify the delete request by authenticating that the validation node is authorized to validate transactions by verifying a digital signature of the validation node and confirming the validation node validated the one or more confirmed transactions identified in the delete request;

mark a transaction as removed from the distributed memory pool when a first threshold number of delete requests is received for the transaction; and

delete transaction data from the DHT of the distributed memory pool when a second threshold number of delete requests is received for the transaction, wherein the first and second threshold numbers of delete requests are required to come from a threshold number of different validation nodes in the blockchain network, wherein requiring the threshold numbers of delete requests from different validation nodes implements a consensus mechanism that maintains data consistency in the distributed memory pool.

Assignments (4)
CHANGE OF NAME Recorded Feb 3, 2025
From: NCHAIN HOLDINGS AG
To: NCHAIN LICENSING AG
Reel/Frame 070096/0502 →
CHANGE OF NAME Recorded Apr 25, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 063455/0051 →
SECURITY INTEREST Recorded Jun 15, 2021
From: TOAST, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 056602/0054 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2020
From: DESTEFANIS, GIUSEPPE; MOTYLINSKI, PATRICK; VINCENT, STEPHANE; MADEO, SIMONE; COVACI, ALEXANDRA
To: NCHAIN HOLDINGS LTD
Reel/Frame 051610/0491 →
Priority Claims (1)
GB 1711879 · Jul 24, 2017 · national
Continuity (1)
Related Publication 20230334036A1 · Oct 19, 2023
References Cited (61)
US 7590236B1 · Boneh · 2009 [cited by examiner]
US 10097356B2 · Zinder · 2018 [cited by examiner]
US 10521780B1 · Hopkins, III · 2019 [cited by examiner]
US 10891383B2 · Daniel · 2021 [cited by examiner]
US 11468411B2 · Destefanis · 2022 [cited by examiner]
US 20060167960A1 · Lomet · 2006 [cited by applicant]
US 20140173226A1 · Gold · 2014 [cited by applicant]
US 20150356555A1 · Pennanen · 2015 [cited by applicant]
US 20160007750A1 · Goetz et al. · 2016 [cited by applicant]
US 20160330034A1 · Back · 2016 [cited by examiner]
US 20160342977A1 · Lam · 2016 [cited by applicant]
US 20160342989A1 · Davis · 2016 [cited by examiner]
US 20170017955A1 · Stern et al. · 2017 [cited by applicant]
US 20170041148A1 · Pearce · 2017 [cited by examiner]
US 20170236120A1 · Herlihy · 2017 [cited by examiner]
US 20170344435A1 · Davis · 2017 [cited by examiner]
US 20170357966A1 · Chandrasekhar · 2017 [cited by examiner]
US 20170366353A1 · Struttmann · 2017 [cited by examiner]
US 20180101560A1 · Christidis · 2018 [cited by examiner]
US 20180101848A1 · Castagna · 2018 [cited by examiner]
US 20180130034A1 · Taylor · 2018 [cited by examiner]
US 20180139278A1 · Bathen · 2018 [cited by examiner]
US 20180176228A1 · He · 2018 [cited by examiner]
CN 106506638A · 2017 [cited by applicant]
CN 106650494A · 2017 [cited by applicant]
EP 3468095A1 · 2019 [cited by examiner]
GB 2549075A · 2017 [cited by applicant]
JP 2017050763A · 2017 [cited by applicant]
WO WO2016186873A1 · 2016 [cited by examiner]
WO WO2017112664A1 · 2017 [cited by examiner]
WO WO2018059939A1 · 2018 [cited by examiner]
WO WO2018073564A1 · 2018 [cited by examiner]
Tien TuanAnh Dinh et al., “Blockbench: AFrameworkforAnalyzing Private Blockchains”, Proceedings of the 2017 ACM international conference on management of data, Mar. 12, 2017, pp. [cited by examiner]
Alexandru Stanciu, “Blockchain Based Distributed Control System for Edge Computing”, 2017 21st International Conference on Control Systems and Computer Science (CSCS) (2017, pp. 667-671). [cited by examiner]
Xinping Min et al., “A Permissioned Blockchain Framework for Supporting Instant Transaction and Dynamic Block Size”, 2016 IEEE Trustcom/Big DataSE/ISPA (2016, pp. 90-96). [cited by examiner]
Nagata, et al., “A Study on a Method of Identity Verification in Blockchains”, IPSJ SIG Technical Report, vol. 2017-DPS-170 No. 19, 2017, Information Processing Society of Japan, 12 pages. [cited by applicant]
Yoshiharu, Akabane, “Outside Block Chain Structure and Theory Core Technology of FinTech Studied with Sample” 1st Edition, Japan, Co. Ltd. RIC Telecom, Nov. 30, 2016, 5 pages. [cited by applicant]
Alqassem et al., “Towards Reference Architecture for Cryptocurrencies: Bitcoin Architectural Analysis”, 2014 IEEE International Conference on Internet of Things and IEEE Green Computing and Communications, Taipei, Taiwa… [cited by applicant]
Bitfury Group, “Incentive Mechanisms for Securing the Bitcoin Blockchain” White Paper, Dec. 7, 2015, 23 pages. [cited by applicant]
Tsai, et al., “Design Issue in Permissioned Blockchains for Trusted Computing”, 2017 IEEE Symposium on Service-Oriented System Engineering, Apr. 2017, 8 pages. [cited by applicant]
KPMG LLP, “Consensus—Immutable Agreement for the Internet of Value Understanding an Evolving Blockchain Technology Landscape of Consensus-driven Opportunity in Financial Services”, Appendix 3—Detailed Interview/Question… [cited by applicant]
Antonopoulos, “Mastering Bitcoin—Unlocking Digital Cryptocurrencies,” O'Reilly Media, Inc., Dec. 20, 2014, 282 pages. [cited by applicant]
Ethereum Reddit, “Why are There No Blockchain Based Voting Systems Yet?” retrieved from https://www.reddit.com/r/ethereum/comments/59ccyi/why_are_there_no_blockchain_based_ voting_systems/, Oct. 25, 2016, 23 pages. [cited by applicant]
Helios, “Helios Voting,” retrieved from https://web.archive.org/web/20160810095052/https://vote.heliosvoting.org/faq, Aug. 10, 2016, 4 pages. [cited by applicant]
International Search Report and Written Opinion mailed Sep. 28, 2018, Patent Application No. PCT/IB2018/055589, 11 pages. [cited by applicant]
Maiavictor, “How to Create a Decentralized Secret Ballot Among a Small Group of People?” retrieved from https://crypto.stackexchange.com/questions/39261/how-to-create-a-decentralized-secret-ballot-among-a-small-group-of… [cited by applicant]
Meter, “Design of Distributed Voting Systems,” Feb. 8, 2017, 125 pages. [cited by applicant]
Möser, “Anonymity of Bitcoin Transactions,” retrieved from https://www.wi.uni-muenster.de/sites/wi/files/public/department/itsecurity/mbc13/mbc13-moeser-paper.pdf, Jul. 18, 2013, 10 pages. [cited by applicant]
Nakamoto, “Bitcoin: A Peer-to-Peer Electronic Cash System,” Bitcoin, Oct. 31, 2008, https://bitcoin.org/bitcoin.pdf, 9 pages. [cited by applicant]
Openbazaar, “Protocol—OpenBazaar Docs,” retrieved from https://web.archive.org/web/20170617003245/https://docs.openbazaar.org/03.-OpenBazaar- Protocol/, Jun. 17, 2017, 30 pages. [cited by applicant]
Satoshi et al., “Connection Limits,” Bitcoin Forum, Aug. 9, 2010, https://bitcointalk.org/index.php?topic=741.0;prev_next=prev, 2 pages. [cited by applicant]
Schaub et al., “A Trustless Privacy-Preserving Reputation System,” retrieved from https://eprint.iacr.org/2016/016.pdf, 2016, 25 pages. [cited by applicant]
Soska et al., “Beaver: A Decentralized Anonymous Marketplace with Secure Reputation,” retrieved from https://eprint.iacr.org/2016/464.pdf, 2016, 15 pages. [cited by applicant]
Tarasov et al., “Internet Voting Using Zcash,” International Association for Cryptologic Research, Jun. 15, 2017, 8 pages. [cited by applicant]
UK Commercial Search Report mailed Dec. 1, 2017, Patent Application No. GB1711879.5, 7 pages. [cited by applicant]
UK IPO Search Report mailed Jan. 16, 2018, Patent Application No. GB1711879.5, 6 pages. [cited by applicant]
Valenta et al., “Blindcoin: Blinded, Accountable Mixes for Bitcoin,” Medical Image Computing and Computer-Assisted Intervention, Sep. 5, 2015, 16 pages. [cited by applicant]
Yang et al., “Survey of Confidentiality and Privacy Preserving Technologies for Blockchains,” R3, retrieved from https://z.cash/static/R3_Confidentiality_and_Privacy_Report.pdf, Nov. 14, 2016, 32 pages. [cited by applicant]
Ziegeldorf et al., “CoinParty: Secure Multi-Party Mixing of Bitcoins,” Proceedings of the 5th ACM Conference on Data and Application Security and Privacy, Mar. 2, 2015, 12 pages. [cited by applicant]
National Intellectual Property Administration, PRC, “Third Office Action” in Application No. 201880049013.4, Mar. 29, 2024, 8 pages. [cited by applicant]
Anonymous: “Mempool—How Do Transactions Leave the Memory Pool?—Bitcoin Stack Exchange”, Apr. 8, 2017, 1 page. [cited by applicant]
Cited By (1)
US 12,445,291