IP Library › Granted Patent US 10,841,213
Granted Patent B2
US 10,841,213 · App. 16/160,605 · Granted Nov 17, 2020

Apparatus and method for communication between chains in a decentralized system

Inventors: Xiaohu Chen (Mountain View, CA); Xinle Yang (Portland, OR); Zhengpeng Li (Columbia, MD); Qing Xu (Palo Alto, CA); Yuechao Ma (Seattle, WA); Xiannong Fu (Irvine, CA); Yang Chen (Bellevue, WA)
Assignee: MOAC BLOCKCHAIN TECH INC
H04L45/44H04L9/0861H04L9/3247
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 10,841,213
App. No.
16/160,605
Granted
Nov 17, 2020
Kind
B2
Abstract

A packet including a message intended for a smart contract associated with the second subchain and a node identifier is constructed at each of a plurality of nodes associated with the first subchain. The message constructed by the plurality of nodes are identical and may be a transaction request requesting the smart contract to execute on a blockchain. Each of the packets is sent to one or more nodes associated with the second subchain. The packets and messages received by one or more of a plurality of nodes associated with the second subchain are monitored and processed at the second subchain to determine if a consensus on request has been reached from the first subchain. If a consensus on request has been reached from the first subchain, the smart contract associated with the second subchain executes on the blockchain in accordance with the transaction request.

Claims (28)

1. A method for facilitating communication between a first subchain and a second subchain in a decentralized network, the method comprising:

constructing, by one or more processors, at each of a plurality of nodes associated with the first subchain, of a packet including a message intended for a second smart contract associated with the second subchain and a node identifier, where the messages constructed by the plurality of nodes are identical, wherein the packet comprises a target address corresponds to an address of a first smart contract associated with the first subchain;

transmitting, by the one or more processors, each packet to one or more nodes associated with the second subchain;

monitoring, by the one or more processors, the packets received by one or more of the plurality of nodes associated with the first subchain to determine if a consensus on request has been reached from another subchain, which other subchain may correspond to the second subchain or a third subchain different from the second subchain; and

processing, by the one or more processors, the message if a consensus on request has been reached from the other subchain.

2. The method of claim 1 , wherein the message corresponds to one of a transaction request or a transaction reply.

3. The method of claim 1 , wherein the node identifier corresponds to a signature signed by the private key of the node.

4. The method of claim 1 , accessing, by the one or more processors, a nodelist that includes node identifiers for a plurality of nodes associated with the other subchain, and wherein a consensus on request is determined to have been reached when an identical message has been received from a threshold measure of nodes identified in the nodelist.

5. The method of claim 4 , wherein the threshold measure corresponds to a percentage of the total number of nodes identified in the nodelist.

6. The method of claim 5 , further comprising receiving, by the one or more processors, information relating to the nodes associated with the other subchain and to update the nodelist accordingly.

7. An apparatus for facilitating communication between a first subchain and a second subchain in a decentralized network, the apparatus comprising:

a network interface;

a memory having a smart contract logic; and

a processor coupled to the network interface and the memory and configured to execute the smart contract logic to:

cause each of a plurality of nodes associated with the first subchain to construct a packet including a message intended for a second smart contract associated with the second subchain and a node identifier, where the messages constructed by the plurality of nodes are identical, wherein the packet comprises a target address corresponds to an address of a first smart contract associated with the first subchain; and

cause each of the plurality of nodes to transmit its packet to one or more nodes associated with the second subchain, wherein the processor is further configured to execute the smart contract logic to monitor packets received by one or more of the plurality of nodes associated with the first subchain to determine if a consensus on request has been reached from a another subchain, which other subchain may correspond to the second subchain or a third subchain different from the second subchain.

8. The apparatus of claim 7 , wherein the processor is further configured to execute the smart contract logic to obtain a nodelist that includes node identifiers for a plurality of nodes associated with the other subchain, and wherein a consensus on request is determined to have been reached when an identical message has been received from a threshold measure of nodes identified in the nodelist.

9. The apparatus of claim 8 , wherein the smart contract logic that obtains the nodelist is configured to receive information relating to the nodes associated with the other subchain and to update the nodelist accordingly.

10. A method of communication between a first subchain and a second subchain in a decentralized network, the method comprising:

constructing at each of a plurality of nodes associated with the first subchain, a packet including a message intended for a second smart contract associated with the second subchain and a node identifier, where the messages constructed by the plurality of nodes are an identical message, wherein the packet comprises a target address corresponds to an address of a first smart contract associated with the first subchain;

sending each packet to one or more nodes associated with the second subchain;

at the second subchain, monitoring the packets received by one or more of a plurality of nodes associated with the second subchain to determine if a consensus on request has been reached from the first subchain; and

constructing at each of a plurality of nodes associated with the second subchain, a packet including a message intended for the first smart contract associated with the first subchain and a node identifier where the messages constructed by the plurality of nodes are an identical message.

11. The method of claim 10 , further comprising, if a consensus on request has been reached from the first subchain, processing the identical message at the second subchain.

12. The method of claim 10 , further comprising:

sending each packet to one or more nodes associated with the first subchain; and

at the first subchain, monitoring the packets received by one or more of a plurality of nodes associated with the first subchain to determine if a consensus on request has been reached from the second subchain.

13. The method of claim 12 , further comprising, if a consensus on request has been reached from the second subchain, processing the identical message at the first subchain.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 19, 2018
From: CHEN, XIAOHU; YANG, XINLE; LI, ZHENGPENG; XU, QING; MA, YUECHAO; FU, XIANNONG; CHEN, YANG
To: MOAC BLOCKCHAIN TECH INC
Reel/Frame 047234/0263 →
Continuity (1)
Related Publication 20200120019A1 · Apr 16, 2020
Cited By (2)
US 12,425,246 US 12,737,712