Data Migration Mechanism Based on Cross-chain Oracle in Heterogeneous Blockchain
Summary
Currently, the blockchain industry is segregated between many different platforms and protocols, resulting in various blockchain silos . Restrictions on asset transfer and data migration between different blockchains reduce the usability and comfort of users, and hinder the innovative development of the blockchain ecosystem. Interoperability will be the main theme of the next generation of blockchain technology. In this paper, we focus on how to achieve interoperability between two heterogeneous blockchains in the context of data migration . We first Build a cross chain bridge data migration architecture based on the data migration oracle . Secondly, the data migration mechanism is designed on the basis of the original architecture . By using the proposed data migration architecture, it is equivalent to opening a secure channel between two heterogeneous blockchains, allowing secure data migration. By applying the data migration mechanism, the confidentiality, integrity and security of the migrated data can be well guaranteed .
introduction
1. Background
Blockchain technology has received a lot of attention in recent years, with an initial interest in Bitcoin sparking a focus on blockchain technology, followed by a richer discussion. Blockchain technology is considered a key enabler for building trust among multiple untrusted parties, allowing a set of anonymous and mutually untrusted entities to reach consensus on a set of transactions. Blockchain technology is essentially a distributed ledger technology (DLT) that integrates p2p networks, cryptography, distributed consensus protocols and smart contracts. It has the characteristics of decentralization, transparency, immutability, anonymity and traceability, and has become an area of concern for all walks of life.
2. Problems to be solved urgently
With the “infiltration” of blockchain in various scenarios, the blockchain ecosystem is full of projects based on different consensus protocols and architectures. Currently, each independent blockchain project is more like an island, operating as an independent environment, separated from each other. The exchange and synchronization of assets and data in different blockchains is not realistic. In the financial industry, asset transfer and data exchange are essential. For example, in 2018, China’s cross-border RMB trade settlement transactions totaled more than 5.11 trillion yuan , according to a report by the People’s Bank of China. Commodity-related assets and data are transferred from one organization to another during cross-border transactions, which require a high degree of privacy, confidentiality, and integrity. A blockchain with interoperability would be a suitable solution to the above problems.
As more and more people continue to focus on this emerging technology and its capabilities, migrating to the new blockchain is becoming more and more necessary. One development trend in blockchain technology will come down to how different blockchain networks interact. It introduces the concept of interoperability, a feature of efficient communication and direct exchange of information from one blockchain to another, while preserving the essence of a single blockchain, including irreversibility and traceability [ 1].
3. Our work
Our work focuses on how to achieve interoperability between two heterogeneous blockchains and how they insist on performing data migration with confidentiality, integrity, and privacy. In this context, we propose an oracle-based data migration architecture. The architecture consists of three components: source blockchain, target blockchain and cross-chain data migration oracle [2].
The source blockchain and the target blockchain are the data provider and receiver, respectively. Oracle acts as a reliable notary and is responsible for receiving data migration requests from users and delivering messages during the data migration process. The data migration process is divided into three stages: preparation, execution and migration. The predefined conditions are to prepare for later stages. Then the two heterogeneous blockchains work simultaneously to generate commit data and commit nodes for the execution phase. On this basis, the final migration phase is performed to generate an asymmetric key to ensure the confidentiality, integrity and privacy of the migrated data.
1. We analyze the application of interactive blockchain architecture in data migration .
2,We build an oracle-based Cross chain bridge development data migration architecture, providing details of two heterogeneous blockchains and cross-chain oracles .
3.On this basis, we design a data migration mechanism, which specifically describes the communication process between oracle and two heterogeneous blockchains .
Section 2 gives an overview of the interactive blockchain architecture. Section 3 introduces the oracle-based cross-chain interactive decentralized architecture. Section 4 elaborates the oracle-based data migration mechanism in the interaction of two heterogeneous blockchains. Section 5 elucidates cross-chain related projects and research that achieve interoperability between blockchains .
Interactive Blockchain Architecture
Data migration between two heterogeneous blockchains involves five layers that help data flow smoothly from one blockchain to another. Figure 2 depicts the five-layer architecture, and then we illustrate the function of each layer from bottom to top and how they perform the data migration process .
The data layer includes transaction format, data block, link mode, etc. Different blockchains will inevitably have different characteristics than the above. Data management is a fundamental task of the blockchain system [3] . The data generator in the source blockchain is responsible for extracting the information data from the data blocks and delivering the data packets, while on the destination side, the data generator is used to parse the data packets and write them to the blockchain. However, packetization and parsing involves the bottleneck — the transaction format . Without a unified data format, it will be difficult to facilitate data migration. A simple but workable idea is to unify the format. The format will be included in the request material and will be set forth in Section 4.
The network layer assists in the internal communication between different peers in the blockchain. In order to realize real-time and reliable communication, P2P network and gossip protocol are commonly used in the network layer. The scalability, fault tolerance, decentralization, and consistency of the gossip protocol enable fast peer-to-peer communication and data transfer within the blockchain. The data migration mechanism performs well as long as the internal communication is not interrupted.
The consensus layer ensures the consistency of the state in the blockchain system. It includes mainstream consensus protocols such as Practical Byzantine Fault Tolerance (PBFT), Proof of Work (PoW), and Proof of Stake (PoS). The function of these protocols is to maintain a consistent state among peers in a blockchain system, so a joint name called consensus module is used to refer to the aforementioned protocols.
The contract layer was originally designed to constrain the behavior of blockchain systems. Bridge Smart Contract Development Services [4] are self-executing agreements embedded in computer code managed by a blockchain. This code contains a set of rules according to which parties to a smart contract agree to interact with each other. They can be used to formalize a simple agreement between two parties — the constitution of an organization [5]. However, in order to achieve cross-chain interoperability, smart contracts inside the blockchain are not enough. In this case, we deploy an oracle contract that can interact with off-chain oracles and internal smart contracts.
The application layer provides an interface for the application and the underlying message transport. When performing cross-chain data migration, the interface in the application should support the data transmission of the underlying network.