Blockchain Communication and Message Ordering
This paper mainly proposes a computer-implemented method and system for maintaining a sequential record of messages on one or more blockchains, and provides related cross-chain transaction technology. The following is a summary of the key points:
Blockchain Message Ordering:
Method Overview: A computer-implemented method for recording the order of messages on one or more blockchains is described. The method identifies multiple messages on a blockchain and stores records of these messages in a data store to indicate the relative order between the messages.
Verification Set: A method for maintaining the order of messages across multiple blockchains using a verification set is proposed. The verification set contains identifiers (such as hash values) of the messages and is stored on the blockchain to ensure the reliability and immutability of the message order.
Cross-chain Message Ordering: By monitoring new blocks on multiple blockchains and updating the verification set when relevant messages are detected, the method is able to maintain the correct order of messages across multiple blockchains.
Cross-chain Transaction (XLT):
Two-phase Commit Process: The implementation of Cross-chain Transaction (XLT) is described in detail, especially the two-phase commit process to ensure the security and reliability of transactions. This includes publishing a proposed XLT transaction on the source blockchain, publishing a ready XLT transaction on the target blockchain, and submitting the final XLT transaction on both blockchains after confirming that specific conditions are met.
XLT conditions: The completion of XLT depends on a series of conditions, including whether the proposed XLT transaction and the ready XLT transaction match, and whether they are recorded in the validation set in the correct order.
The role of validation sets in XLT: Validation sets play a vital role in cross-chain transactions because they record the relative order of messages and can be used to verify that XLT transactions meet the expected order and conditions.
System Architecture and Implementation:
Architecture Overview: The document also provides a system architecture for implementing the above method, including a posting communication layer, which is located between the application function layer and the distributed ledger technology (DLT) layer. The posting communication layer is responsible for handling interactions with the DLT and allows the application function layer to interact with the DLT in an abstract way.
Software Development Kit (SDK): A software development kit (SDK) is proposed, which contains the tools and interfaces required to implement the above method and architecture. SDK enables developers to more easily integrate blockchain functionality into their applications without having to deeply understand the complexity of the underlying DLT protocol.
Abstraction and decoupling: By introducing the posting communication layer and SDK, this provides a way to decouple application functionality from the underlying DLT, thereby improving the flexibility and scalability of the system.
Security and reliability:
Blockchain fork handling: The impact of blockchain forks on message order is discussed, and a method to solve the problem of message loss after forking through verification sets is proposed. By replaying the lost verification sets and messages, it can be ensured that the order record of messages remains consistent even in the case of forks.
Data integrity and verification: By storing the hash value or other unique identifier of the message on the blockchain, this method allows the integrity of the message stored in the off-chain message storage to be verified at any time. This helps prevent the message from being tampered with during transmission or storage.
Application scenarios and scalability:
Multi-blockchain support: This method is not only applicable to a single blockchain, but can also be extended to support multiple different blockchain technologies. This enables developers to flexibly transfer data and perform cross-chain transactions between different blockchains.
Future Scalability: By decoupling application functions from the underlying DLT, the method provides better adaptability and scalability for the development and changes of future blockchain technologies. As new DLT technologies emerge, developers can more easily integrate these new technologies into their applications without major refactoring.
Technical Details and Implementation:
Hashing and Encryption: The document mentions the use of hashing algorithms (such as SHA-256) to generate unique identifiers for messages and the use of encryption techniques to ensure the security of data transmission. These technologies are key components for implementing message sorting and cross-chain transactions.
Illustrations and Examples: The document contains multiple illustrations and examples to intuitively demonstrate the workflow of the method and the architecture of the system. These illustrations and examples help readers better understand the technical details and implementation methods described in.
In summary, this document proposes an innovative blockchain message sorting and cross-chain transaction technology, which achieves reliable recording of message order on multiple blockchains and secure execution of cross-chain transactions by introducing components such as verification sets, posting communication layers, and SDKs. These technologies help improve the flexibility, scalability, and security of blockchain applications.