IP Library Granted Patent US 12,381,947
Granted Patent B2
US 12,381,947 · App. 18/221,338 · Granted Aug 5, 2025

Computer-implemented system and method for propagation and communication of data in a network such as a blockchain network

Inventors: Silvia Bartolucci (London, GB); Daniel Joseph (London, GB); Simone Madeo (London, GB)
Assignee: NCHAIN LICENSING AG
H04L67/108G06Q20/065H04L45/16H04L63/1441
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,381,947
App. No.
18/221,338
Granted
Aug 5, 2025
Kind
B2
Abstract

A method of propagating data packets in a network of nodes is disclosed. The method, implemented at one of the nodes, includes: generating at least one data packet of a first type; collecting a set of data packets of the first type during a first time period, the set including the at least one generated data packet and one data packet of the first type received from one or more first nodes in the network; and for each data packet in the set: randomly select two or more neighbouring nodes connected to said one of the nodes; transmit, to each of the two or more selected neighbouring nodes: the data packet, wherein the two or more selected neighbouring nodes are configured to relay the data packet to one or more second nodes in the network using a mode of data propagation arbitrarily selected for that neighbouring node.

Claims (27)

1. A node to propagate data packets in a network of nodes, each node in the network having one or more connections to other nodes, the node comprising:

a processor;

a network interface to provide network connectivity; and

memory including processor-executable instructions that, when executed by the processor, cause the processor to:

collect a set of data packets of a first type during a first time period

arbitrarily select two or more neighbouring nodes connected to the node for each data packet in the set; and

transmit each data packet in the set to the selected two or more neighbouring nodes, wherein the node is further configured to transmit a command to a receiving node to forward a data packet using a mode of propagation based at least in part on a weighted random selection to balance a level of anonymity protection for the node with an overall speed of propagation.

2. The node claimed in claim 1 , wherein processor-executable instructions that cause the processor to transmit each data packet are executed in response to a triggering condition that is based at least in part on collection of a sufficient number of incoming data packets and/or collection of incoming data packets for a sufficient amount of time.

3. The node claimed in claim 2 , wherein the triggering condition comprises expiry of a predetermined duration since a time of generation of at least one data packet of the first type by the node.

4. The node claimed in claim 2 , wherein the triggering condition comprises expiry of a predetermined duration since a time of receipt of a first of at least one data packet of the first type from one or more nodes in the network.

5. The node claimed in claim 2 , wherein the triggering condition comprises a number of data packets collected during the first time period reaching a threshold number.

6. The node claimed in claim 1 , wherein the first time period has a predefined length.

7. The node claimed in claim 1 , wherein the processor-executable instructions, when executed, prevent the processor from transmitting any data packets of the first type during the first time period.

8. The node claimed in claim 1 , wherein the command is transmitted with the data packet.

9. A computer-implemented method of propagating data packets in a network of nodes, each node in the network having one or more connections to other nodes, the method, implemented at one of the nodes, comprising:

collecting a set of data packets of a first type during a first time period

arbitrarily selecting two or more neighbouring nodes connected to the node for each data packet in the set;

transmitting each data packet in the set to the selected two or more neighbouring nodes and;

transmitting a command to a receiving node to forward a data packet using a mode of propagation based at least in part on a weighted random selection to balance a level of anonymity protection for the node with an overall speed of propagation.

10. The method claimed in claim 9 , wherein transmitting each data packet is implemented in response to a triggering condition that is based at least in part on collection of a sufficient number of incoming data packets and/or collection of incoming data packets for a sufficient amount of time.

11. The method claimed in claim 10 , wherein the triggering condition comprises expiry of a predetermined duration since a time of generation of at least one data packet of the first type by the node.

12. The method claimed in claim 11 , wherein the triggering condition comprises expiry of a predetermined duration since a time of receipt of a first of at least one data packet of the first type from one or more nodes in the network.

13. The method claimed in claim 10 , wherein the triggering condition comprises a number of data packets collected during the first time period reaching a threshold number.

14. The method claimed in claim 9 , wherein the first time period has a predefined length.

15. The method claimed in claim 9 , wherein the processor-executable instructions, when executed, prevent the processor from transmitting any data packets of the first type during the first time period.

16. The method according to claim 9 , wherein the command is transmitted with the data packet.

17. A non-transitory processor-readable medium storing processor-executable instructions to participate in a process for propagating data packets in a network of nodes, wherein the processor-executable instructions, when executed by a processor in a node of the network of nodes, cause the processor to carry out the method claimed in claim 9 .

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2023
From: BARTOLUCCI, SILVIA; JOSEPH, DANIEL; MADEO, SIMONE
To: NCHAIN HOLDINGS LTD
Reel/Frame 064233/0598 →
CHANGE OF NAME Recorded Jul 12, 2023
From: NCHAIN HOLDINGS LTD
To: NCHAIN LICENSING AG
Reel/Frame 064267/0782 →
Priority Claims (1)
GB 1719654 · Nov 27, 2017 · national
Continuity (3)
Continuation 17592387 · Feb 3, 2022
Continuation 16767559
Related Publication 20240015211A1 · Jan 11, 2024
References Cited (39)
US 9668238B1 · Sevindik · 2017 [cited by examiner]
US 9826431B2 · Mineta · 2017 [cited by examiner]
US 20040025436A1 · Canino · 2004 [cited by applicant]
US 20070009102A1 · Gong et al. · 2007 [cited by applicant]
US 20090061871A1 · Gross · 2009 [cited by examiner]
US 20110085442A1 · Lin · 2011 [cited by examiner]
US 20120050025A1 · Hoeffel · 2012 [cited by applicant]
US 20120297405A1 · Zhang et al. · 2012 [cited by applicant]
US 20130091294A1 · El-Beltagy et al. · 2013 [cited by applicant]
US 20130120523A1 · Zhang · 2013 [cited by examiner]
US 20150195189A1 · Winzer · 2015 [cited by examiner]
US 20150372897A1 · Han et al. · 2015 [cited by applicant]
US 20160269102A1 · Park · 2016 [cited by applicant]
US 20170026468A1 · Kumar et al. · 2017 [cited by applicant]
US 20190082007A1 · Klarman et al. · 2019 [cited by applicant]
US 20190098625A1 · Johnson et al. · 2019 [cited by applicant]
US 20200403899A1 · Bartolucci et al. · 2020 [cited by applicant]
JP 2011164677A · 2011 [cited by applicant]
JP 2012050025A · 2012 [cited by applicant]
JP 2016528763A · 2016 [cited by applicant]
JP 2017188883A · 2017 [cited by applicant]
WO 2017065209A1 · 2017 [cited by applicant]
WO 2017109140A1 · 2017 [cited by applicant]
WO 2017199807A1 · 2017 [cited by applicant]
Akcora et al., “Blockchain: A Graph Primer,” arXiv preprint arXiv: 1708.08749, Aug. 10, 2017, https://pdfs.semanticscholar.org/1098/64228a62da90454f4d41dfced7c274939f7f.pdf, 16 pages. [cited by applicant]
Antonopoulos, “Mastering Bitcoin—Unlocking Digital Cryptocurrencies,” O'Reilly Media, Inc., Dec. 20, 2014, 282 pages. [cited by applicant]
Biryukov et al., “Deanonymisation of clients in Bitcoin P2P network,” Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, Nov. 3, 2014, 15 pages. [cited by applicant]
Fanti et al., “Dandelion: Privacy-Preserving Transaction Propagation,” Jun. 6, 2017, 4 pages. [cited by applicant]
International Search Report and Written Opinion mailed Feb. 18, 2019, Patent Application No. PCT/IB2018/059092, 12 pages. [cited by applicant]
Maxwell et al., “Blocksonly mode BW savings, the limits of efficient block xfer, and better relay,” Bitcoin Forum, Feb. 26, 2016, https://bitcointalk.org/index.php?topic=1377345.msg, 13 pages. [cited by applicant]
Miller et al., “bips/bip-dandelion.mediawiki,” GitHub, Jun. 10, 2017, https://github.com/gfanti/bips/blob/master/bip-dandelion.mediawiki, 8 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]
Neudecker et al., “Timing Analysis for Inferring the Topology of the Bitcoin Peer-to-Peer Network,” 2016 International IEEE Conferences on Ubiquitous Intelligence & Computing, Advanced and Trusted Computing, Scalable Co… [cited by applicant]
Pustogarov, “Deanonymisation techniques for Tor and Bitcoin,” PhD Dissertation, The Faculty of Sciences, Technology and Communication, Docteur de L'Université du Luxembourg en Informatique, Jun. 12, 2015, https://brbilu… [cited by applicant]
Satoshi et al., “Connection Limits,” Bitcoin Forum, Aug. 9, 2010, https://bitcointalk.org/index.php?topic=741.0;brev_next=prev, 2 pages. [cited by applicant]
UK Commercial Search Report mailed Feb. 28, 2017, Patent Application No. GB1719654.4, 6 pages. [cited by applicant]
Uk IPO Search Report mailed May 9, 2018, Patent Application No. GB1719654.4, 4 pages. [cited by applicant]
Van Renesse, “A Blockchain Based on Gossip?—a Position Paper,” Cornell University, 2016, https://www.zurich.ibm.com/dccl/papers/renesse_dccl.pdf, 4 pages. [cited by applicant]
Wang et al., “Towards Better Understanding of Bitcoin Unreachable Peers,” arXiv preprint arXiv:1709.06837, Sep. 20, 2017, https://arxiv.org/pdf/1709.06837.pdf, 7 pages. [cited by applicant]