IP Library Granted Patent US 11,356,282
Granted Patent B2
US 11,356,282 · App. 16/786,807 · Granted Jun 7, 2022

Sending cross-chain authenticatable messages

Inventor: Honglin Qiu (Hangzhou, CN)
Assignee: Advanced New Technologies Co., Ltd.
H04L9/3265G06F9/45558G06F16/2379H04L63/08H04L63/0823G06F2009/45595
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 11,356,282
App. No.
16/786,807
Granted
Jun 7, 2022
Kind
B2
Abstract

Disclosed herein are computer-implemented methods; computer-implemented systems; and non-transitory, computer-readable media, for sending cross-chain messages. One computer-implemented method includes storing an authenticable message (AM) associated with a first account of a blockchain node to a blockchain associated with the first blockchain network, where the AM comprises an identifier (ID) of the first blockchain network, information of the first account, and information of a recipient of the AM. The AM and location information is translated to a relay to be forwarded to the recipient located outside of the first blockchain network, where the location information identifies a location of the AM in the first blockchain and the recipient includes one or more accounts outside of the first blockchain network.

Claims (44)

1. A computer-implemented method for sending cross-chain messages comprising:

storing, through consensus of blockchain nodes of a first blockchain network, an authenticatable message (AM) associated with a first account to a blockchain associated with the first blockchain network, the storing comprising:

receiving, by a first processor of a blockchain node of the first blockchain network, an invocation request for a smart contract, wherein the invocation request is invoked by the first account through a first interface of the first processor, and the invocation request includes recipient object information and message content;

after receiving the invocation request, (i) obtaining, by the first processor of the blockchain node, an identifier of the first account, and (ii) generating, by the first processor of the blockchain node, the AM such that the AM comprises, in a pre-determined format, an identifier of the first blockchain network, the identifier of the first account, the recipient object information, and the message content;

receiving the generated AM, by a second, different, processor of the blockchain node and from the first processor of the blockchain node, wherein the generated AM is received through a second interface of the second processor that is invoked by the first processor of the blockchain node; and

after receiving the generated AM, (i) generating, by the second processor of the blockchain node, a log that includes the AM and a topic that indicates that the AM is to be sent to a recipient outside of the first blockchain network, and (ii) sending the log, by the second processor of the blockchain node and to a virtual machine of the blockchain node, for storage on the blockchain associated with the first blockchain network; and

transmitting the AM and location information to a relay to be forwarded to the recipient located outside of the first blockchain network based on the topic that indicates that the AM is to be sent to the recipient outside of the first blockchain network, wherein the location information identifies a location of the AM in the first blockchain network and the recipient includes one or more accounts outside of the first blockchain network.

2. The computer-implemented method according to claim 1 , wherein the log that includes the AM and the topic has a predetermined data structure.

3. The computer-implemented method according to claim 2 , wherein the topic is a predetermined label.

4. The computer-implemented method according to claim 3 , wherein the predetermined label includes an identifier of the first processor or an identifier of the second processor.

5. The computer-implemented method according to claim 3 , wherein the predetermined label indicates that the log corresponds to the AM.

6. The computer-implemented method according to claim 2 , wherein the log includes a sending field filled by an identifier of the first processor, a receiving field filled by an identifier of the second processor, and a data field filled by the AM, and wherein the second processor comprises a third interface connected to the virtual machine, and the log is provided to the virtual machine by using the third interface to generate a receipt associated with the log.

7. The computer-implemented method according to claim 1 , wherein the first account is a contract account of the smart contract.

8. The computer-implemented method according to claim 1 , wherein the relay is communicably coupled to a second blockchain network, and the recipient object information comprises an identifier of the second blockchain network and an identifier of a second account associated with the second blockchain network.

9. The computer-implemented method according to claim 8 , wherein the AM is generated based on a protocol stack comprising an outer-layer protocol, a middle-layer protocol, and an inner-layer protocol, wherein the outer-layer protocol comprises an identifier of an originating blockchain network and the middle-layer protocol, the middle-layer protocol comprises information of a sending account and the inner-layer protocol, and the inner-layer protocol comprises an identifier of a destination blockchain network, information of a receiving account associated with the destination blockchain network, and content of a message from the sending account to the receiving account.

10. The computer-implemented method according to claim 9 , wherein the outer-layer protocol further comprises a version number of the protocol stack and a reserved field.

11. The computer-implemented method according to claim 9 , wherein the middle-layer protocol further comprises a type field indicating a type of usage scenario of the AM.

12. The computer-implemented method according to claim 11 , wherein the type of usage scenario is one of messaging, remote procedure call, issuance, and subscription.

13. The computer-implemented method according to claim 9 , wherein the inner-layer protocol further comprises a sequence number indicating a relative time-sequence of the AM in a sequence of AMs sent to the receiving second account.

14. The computer-implemented method according to claim 9 , wherein the originating blockchain network is the first blockchain network, the sending account is the first account, the destination blockchain network is the second blockchain network, the receiving account is the second account, and the message from the sending account to the receiving account is the message content.

15. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform operations comprising:

storing, through consensus of blockchain nodes of a first blockchain network, an authenticatable message (AM) associated with a first account to a blockchain associated with the first blockchain network, the storing comprising:

receiving, by a first processor of a blockchain node of the first blockchain network, an invocation request for a smart contract, wherein the invocation request is invoked by the first account through a first interface of the first processor, and the invocation request includes recipient object information and message content;

after receiving the invocation request, (i) obtaining, by the first processor of the blockchain node, an identifier of the first account, and (ii) generating, by the first processor of the blockchain node, the AM such that the AM comprises, in a pre-determined format, an identifier of the first blockchain network, the identifier of the first account, the recipient object information, and the message content;

receiving the generated AM, by a second, different, processor of the blockchain node and from the first processor of the blockchain node, wherein the generated AM is received through a second interface of the second processor that is invoked by the first processor of the blockchain node; and

after receiving the generated AM, (i) generating, by the second processor of the blockchain node, a log that includes the AM and a topic that indicates that the AM is to be sent to a recipient outside of the first blockchain network, and (ii) sending the log, by the second processor of the blockchain node and to a virtual machine of the blockchain node, for storage on the blockchain associated with the first blockchain network; and

transmitting the AM and location information to a relay to be forwarded to the recipient located outside of the first blockchain network based on the topic that indicates that the AM is to be sent to the recipient outside of the first blockchain network, wherein the location information identifies a location of the AM in the first blockchain network and the recipient includes one or more accounts outside of the first blockchain network.

16. The computer-implemented system according to claim 15 , wherein the log that includes the AM and the topic has a predetermined data structure.

17. The computer-implemented system according to claim 16 , wherein the topic is a predetermined label.

18. The computer-implemented system according to claim 17 , wherein the predetermined label includes an identifier of the first processor or an identifier of the second processor.

19. The computer-implemented system according to claim 16 , wherein the log includes a sending field filled by an identifier of the first processor, a receiving field filled by an identifier of the second processor, and a data field filled by the AM, and wherein the second processor comprises a third interface connected to the virtual machine, and the log is provided to the virtual machine by using the third interface to generate a receipt associated with the log.

20. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

storing, through consensus of blockchain nodes of a first blockchain network, an authenticatable message (AM) associated with a first account to a blockchain associated with the first blockchain network, the storing comprising:

receiving, by a first processor of a blockchain node of the first blockchain network, an invocation request for a smart contract, wherein the invocation request is invoked by the first account through a first interface of the first processor, and the invocation request includes recipient object information and message content;

after receiving the invocation request, (i) obtaining, by the first processor of the blockchain node, an identifier of the first account, and (ii) generating, by the first processor of the blockchain node, the AM such that the AM comprises, in a pre-determined format, an identifier of the first blockchain network, the identifier of the first account, the recipient object information, and the message content;

receiving the generated AM, by a second, different, processor of the blockchain node and from the first processor of the blockchain node, wherein the generated AM is received through a second interface of the second processor that is invoked by the first processor of the blockchain node; and

after receiving the generated AM, (i) generating, by the second processor of the blockchain node, a log that includes the AM and a topic that indicates that the AM is to be sent to a recipient outside of the first blockchain network, and (ii) sending the log, by the second processor of the blockchain node and to a virtual machine of the blockchain node, for storage on the blockchain associated with the first blockchain network; and

transmitting the AM and location information to a relay to be forwarded to the recipient located outside of the first blockchain network based on the topic that indicates that the AM is to be sent to the recipient outside of the first blockchain network, wherein the location information identifies a location of the AM in the first blockchain network and the recipient includes one or more accounts outside of the first blockchain network.

21. The non-transitory, computer-readable medium of claim 20 , wherein the log that includes the AM and the topic has a predetermined data structure.

22. The non-transitory, computer-readable medium of claim 21 , wherein the topic is a predetermined label.

23. The non-transitory, computer-readable medium of claim 22 , wherein the predetermined label includes an identifier of the first processor or an identifier of the second processor.

24. The non-transitory, computer-readable medium of claim 21 , wherein the log includes a sending field filled by an identifier of the first processor, a receiving field filled by an identifier of the second processor, and a data field filled by the AM, and wherein the second processor comprises a third interface connected to the virtual machine, and the log is provided to the virtual machine by using the third interface to generate a receipt associated with the log.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053754/0625 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053743/0464 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2020
From: QIU, HONGLIN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 052566/0600 →