2020 Focus Preview: Read the core of cross-chain technology and understand blockchain interoperability

Written by: Lucas Nuzzi (co-founder and technical director of Digital Asset Research, a crypto asset research organization)

Compile: Zhan Juan

Source: Chain News

This article is part of the "2020 Focus Preview" series of articles launched by Lianwen.

2019 is the year that Cosmos started its ecology. With the launch of Cosmos Hub and IRISnet in the first half of 2019, "cross-chain" has become one of the hot concepts of the year. However, whether it is the most important and most anticipated component of Cosmos, the "cross-chain communication protocol IBC", or another giant cross-chain project Polkadot, the real delivery period is in 2020-the real core technology of "cross-chain" Development should look towards 2020.

Lianwen introduces readers to a special research report on "blockchain interoperability" written by Digital Asset Research, a New York-based crypto asset research organization, to help readers better understand the complex technical field of "cross-chain" and welcome 2020 The coming of the year.

With the launch of Cosmos in the first half of 2019, and the market's close attention to Polkadot, which is scheduled to be launched in 2020, "cross-chain" or "blockchain interoperability" is a hot area. Blockchain interoperability is a topic that has been discussed a lot, but at the same time it is a bit puzzling and somewhat mysterious. To put it simply, "interoperability" stems from a simple premise, which is to develop a way for two blockchains to exchange information. Today, technology in this area is very complex.

In order to clarify blockchain interoperability, we have written this article to provide an overview of the main methods for achieving interoperability through intermediary networks. This article explores the differences between "interoperability" and "composability" in scenarios such as Ethereum, Cosmos, Polkadot, and why such differences will undoubtedly change people's views on value creation.

Although the term "blockchain interoperability" has been used in different contexts, we only define it as "the ability to exchange information", especially when it involves moving from one cryptocurrency network to another Ownership of various assets of the cryptocurrency network.

By definition, all blockchains share a common data structure to organize and reach consensus on ownership changes. Even if the implementation of the blockchain is very different, for example, Bitcoin and Ethereum are different, but the Merkle tree will be used to link transactions in time intervals (that is, blocks) in a similar way, when these blocks are linked together At that time, a complete transaction history-the blockchain. Although the word "blockchain" has become a semantic nightmare in the past five years, its etymology and technical nature are still encrypted with Bitcoin, Ethereum, and most in between The currency network is the same.

However, despite these similarities, Ethereum smart contracts do not have a reliable mechanism to verify that Bitcoin transactions are fully confirmed and vice versa. Therefore, we have a large number of blockchain networks today. Although they have the same consensus system on the basis, they are isolated due to the lack of a robust transport layer for transmitting these proofs. This recognition has led to the development of a solution that was later referred to as blockchain interoperability, especially over the past three years, with varying levels of complexity.

Today, the term blockchain interoperability is used to describe a set of simultaneous but completely different technologies; from decentralized exchanges to federated sidechains to intermediaries like Cosmos and Polkadot The internet. This has led to a very vague understanding of what blockchain interoperability is and how to achieve interoperability.

Dozens of projects emerged at the end of 2017, which took advantage of the complexity of the term and launched solutions and tokens that have nothing to do with bridging information between different cryptocurrency networks, which made the situation even more confusing.

At DAR, we launched the Interoperability Intermediary Index (DII), hoping to better track the performance of cross-chain project tokens and compare the valuation of such investment themes. The index shows that after the speculative bubble of 2017, the prices of tokens for interoperability solutions, including ICX, AION, WAN and ATOM, have fallen significantly:

Blue is the smart contract platform index, red is the interoperability intermediary index

In addition to almost all of the "interoperability intermediary index" component tokens facing some problems of their own, we also attribute this trend decline to several reasons: interoperability as a theme, its complexity is increasing day by day; this technology Lack of relevant use cases; and increasing doubts about tokenization solutions during the 2018 bear market.

Although the price performance of tokenized interoperability solutions has been disappointing, which has reduced the mainstream's overall interest in the technology, we will continue to consider interoperability as an important development direction as the industry matures. The core of the cross-chain investment theme is that when different assets and applications are seen as a whole moving forward, the ability to exchange information and assets through the cryptocurrency network will enable market forces to function more effectively.

Although the cryptocurrency market is usually integrated, the lack of meaningful use of most decentralized applications, coupled with the endless hype of difficult-to-understand technology, will ultimately hinder market efficiency. We believe that increasing connectivity, especially between Bitcoin and Ethereum, can increase the use of useful applications and allow “vaporware” (Vaporware) to be used by developers during or before product development. Announcements, and therefore products that may not be released, most of which refer to certain software) are more easily discovered. In essence, interoperability can be a catalyst for the success of a project, and we see it as a free-market element worth pursuing.

We believe the following potential benefits have spurred developers and researchers to start exploring blockchain interoperability:

  • Market efficiency

The "invisible hand" of DApps has been described above. Users and developers can select specific applications across the blockchain and let market efficiency challenge the market adaptability of all deployed applications.

  • Scalability

Interoperability enables the transfer of value to be parallelized across multiple networks instead of using a single blockchain to process and store all transactions on a single thread. The calculation of smart contracts can also be parallelized, increasing the potential functionality of certain applications.

  • Functional specialization

The ability to outsource the functions of a service, decentralized application or financial product, or to a highly specialized network.

  • Cross-chain oracle and identity system

The ability to verify events and identities across blockchains, and the ability of events in one blockchain to trigger the execution of contracts located in different blockchains.

  • Asset lien

The ability of a contract in one blockchain to guarantee or guarantee a balance in another chain. These balances can then be used by the contract as collateral for financial derivatives, leveraged products, bankruptcy recovery, liens, and any use case that may require collateral or margin.

  • Generalized Mining and Governance

Interoperability can enable stakeholders of one network to participate in transaction verification and governance of different networks. Similarly, it enables stakeholders to operate as a pool of stakes and strategically deploy their stakes on networks that utilize the mechanism.

Multiple ways to achieve blockchain interoperability

Although blockchain interoperability seems to be one of the most cutting-edge "meta" themes that the industry can provide, the concept itself is almost invented like Bitcoin.

In fact, the idea of ​​bridging information between multiple blockchains running in parallel (the concept of a sidechain) dates back to 2010, when BitDNS, a Bitcoin-based domain name service (a database that is human-readable URL to numeric IP address). Although BitDNS has never been implemented in Bitcoin, it kicked off a preliminary discussion of blockchain interoperability and spawned potential use cases for sidechains in the next few years.

Today, nine years after the introduction of the sidechain concept, available implementations that promote blockchain interoperability are still in their infancy. From our perspective, current blockchain interoperability can be divided into four broad categories:

They are: side chain / Relayer, off-chain atomic swap, on-chain atomic swap, network interoperability

Although the four very common methods described in the above figure have their own characteristics, the ultimate goal is the same: to obtain assets / information from a blockchain, verify its existence and some prerequisites (such as time lock ) And then "synthetically" refactor it in another chain.

If you have read about blockchain interoperability before, you may have seen the use of the word atomic, such as atomic swaps. In the context of blockchain interoperability, this term is either used to describe that all underlying operations of an asset exchange (such as swap) will be determined to execute successfully, or that no operation has occurred at all. In the absence of a third party, atomicity is necessary because if one side of the exchange fails and the other succeeds, one of them will suffer unequal damage.

Trustless and unmanaged systems are especially difficult to develop because they need to design a single system to satisfy completely different blockchains, such as Bitcoin and Ethereum. This means that specific data structures, digital signatures, and consensus finality must be translated and generalized, which is not easy. This has led to the creation of several interoperable intermediaries.The way to solve this problem is to build a tokenized independent blockchain with its own consensus engine and smart contract functions, thereby bridging the asset flow across the blockchain. .

To better understand interoperability through intermediaries, consider the following hypothetical scenario: Alice stores part of her savings in the form of bitcoin, hoping to obtain loans from banks running on the Ethereum network. To assess the risk of the loan, the bank needed to audit Alice's financial records and hold collateral in case she failed to pay it on time. Through an interoperable intermediary, the bank created a smart contract (multi-signature) on Bitcoin, which effectively locked Alice's collateral during the loan. With the help of the intermediary, the contract can be used to programmatically return the collateral to Alice, or transfer the collateral to the bank if she fails to make timely payments. In this way, Alice can choose which network to use to store her collateral, but still benefit from services provided by other networks.

At the time in 2016, it was thought that using intermediaries to relay cross-chain communication could simplify many frictions that prevented fully interoperable blockchains. Since different networks require different confirmation times (for technically savvy people, this is the economic finality threshold), it is believed that the existence of an intermediary can make the flow of information between cryptocurrency networks easier, And it may be more secure in the case of reorgs or consensus failures.

Although this is true from a higher-level perspective, in the past few years, it has proven that the added interposer has been extremely challenging to build and protect.

Composability vs. Interoperability

As interoperability intermediaries develop into mature smart contract platforms, they begin to face the same implementation challenges in consensus engines, virtual machines, and network protocols as projects such as Ethereum.

Because the boundary between the interoperability intermediary layer and the smart contract platform becomes blurred as implementation issues arise, a clear distinction must be made between "interoperability" and "composability" in order to effectively evaluate the current connection Blockchain approach. Although these terms are often used interchangeably, summing up the differences between them will undoubtedly change people's perception of value creation, especially in the context of smart contract networks such as Ethereum, Cosmos and Polkadot.

In simple terms, "composability" is the ability to define (and change) an application in a single environment based on specific needs. For example, in cloud computing, composability is a popular approach to IT infrastructure because it enables developers to select and extend cloud services as their applications evolve. With platforms like AWS, system administrators don't need to locally acquire, configure, and maintain specialized hardware to support their business.

Instead, system administrators can choose compute, storage, networking tools, and identity solutions as stand-alone, modular services and change them in the same environment as needed. Composability is key to smart contract platforms as they try to mimic these similar benefits to DApp developers. On the other hand, "interoperability" is similar to the system's ability to obtain services and exchange information between different environments (such as AWS and Azure, or Bitcoin and Ethereum).

To better understand this difference, let's take a closer look at composability on Ethereum.

Ethereum pursues composability through a single verification environment for Turing-complete computing, the Ethereum Virtual Machine (EVM). In this way, the Ethereum DApp can at least theoretically make use of existing services in the network and, like AWS, integrate specific functions, such as stablecoin payments, identity solutions, protocol governance solutions, or decentralized storage, All outsourced.

Although it can be viewed as a type of interoperability, it is limited to a single environment and has nothing to do with bridging an exogenous environment or a cryptocurrency network. Therefore, the use of the term "interoperability" in this context can be seriously misleading, as it contradicts the etymology of the term. Instead, use "composability" to describe it, because it describes the interaction between interoperable applications in the same environment.

Of course, service specialization in a single system is beneficial because it allows developers to focus on the core value proposition of their application without having to build all the components of their DApp from scratch. Suppose there is a carpool application called dUber (Decentralized Uber). With platforms like Ethereum, dUber developers can use existing network solutions to outsource location services, identity management, payment technology, and corporate governance.

Although this sounds good, it is difficult to implement in practice. In addition to the obvious challenge of being able to scale the application, one of the biggest obstacles to composability on Ethereum is the rise of a utility token model that requires the acquisition of DApp native token ownership to obtain its services . Although some applications may require corresponding tokens for governance or to play a quasi-equity role, simply using them as gatekeepers will undoubtedly undermine composability on Ethereum. Unlike being able to pay for various specialized services via ETH, the app, its developer, or user will have to deal with additional friction.

This restored demand for a decentralized exchange (DEX) to facilitate programmatic access to specific tokens, which ultimately exacerbated the nightmare of blockchain interoperability. Although there are dozens of projects exploring decentralized exchange business, the vast majority still face fundamental challenges, such as how to reduce the risk of preemptive transactions and collusion fraud. Even though future DEXs are expected to address these issues, the challenge of obtaining token liquidity before using specialized services remains. Therefore, the need to obtain a certain type of assets in order to obtain the status quo of specialization through the application has a negative impact on the composability of Ethereum.

Ethereum's revised roadmap, ETH2.0, is designed to alleviate some of these frictions, as its ultimate goal is to support a composable architecture, where each specific service or DApp can have its own independent blockchain or shard. Blockchain sharding is the main method for achieving scalability in Ethereum, because it divides the network into many independent shards to support parallel computing. If successfully implemented, sharding can improve scalability and composability on Ethereum.

In this new roadmap, the beacon chain forwards information to specific shards, which may represent independent DApps and / or specialized crypto assets. This may reduce the need for highly functional, programmatic and liquid decentralized exchanges required for utility tokens, as assets locked in the beacon chain can be created in the form of synthetic assets in specialized shards come out. However, it will take at least a few years for the underlying Ethereum to deploy these technologies.

Polkadot: a composable solution

Gavin Wood is the main implementer of Ethereum and the founder of Polkadot. He was one of the earliest researchers to put forward the concept of a highly composable framework for decentralized applications. Gavin Wood introduced a relatively simple architecture in the 2016 Polkadot white paper to try to circumvent the implementation challenges Ethereum faces as research around shards, hypercubes, and Casper becomes more complex. As an active Ethereum developer, Gavin Wood has years of first-hand experience in implementing Ethereum redesigns and changes.

His solution is to allow Polkadot to be developed as an optional solution by allowing multiple "iterations" (ie, parallel chain solutions) of the same blockchain to interoperate with each other, thereby maximizing composability.

Since the introduction of Polkadot, we have been closely following the evolution of the two roadmaps of Polkadot and Ethereum, and we have observed with interest that over time, especially after Ethereum modified the roadmap, Polkadot and How the overall architecture of Ethereum is gradually converging.

Just like Polkadot's relay chain, Ethereum's beacon chain will act as a hub, connecting multiple shards or parachains together. These two hubs are also responsible for verifying transactions, relaying messages, and selecting block validators under Proof of Stake as random oracles. And Polkadot seems to have borrowed many ideas from Ethernet. In November 2018, Polkadot released detailed information about its flagship consensus engine GRANDPA, many of which reflected the main achievements of Ethereum on the Casper project.

With sharding, relay hubs, and Casper-based consensus, the ideal versions of Polkadot and Ethereum are undoubtedly similar. However, despite these architectural similarities, Polkadot was built from scratch to promote composability. Achieving composability on Ethereum's existing application and tokenized service ecosystem will require a lot of engineering and coordination.

To maximize composability, Polkadot created Substrate, a framework for creating parachains that are compatible with Polkadot. With this framework, it is not necessary to build all the network and consensus code from scratch. Similar to ERC20 tokens, Ethereum's existing network infrastructure can be used instead of building its own base layer. The difference is that Substrate has already implemented most of the functions, so the building on it feels like each ERC token has its own independent network, with a unique set of functions and validators.

The distinction between interoperability and composability is particularly important here, as contrary to popular belief, Polkadot is not designed to bridge different cryptocurrency networks such as Bitcoin and Ethereum. Instead, the team is committed to making Substrate-based chains fully composable, but only interoperable between them.

Although they do plan to build a bridge contract that will be able to connect Polkadot to other networks, it is undeniable that their main focus is on Substrate. As a result, Polkadot will require developers to migrate organically to the platform and start building applications on it; this took three years for Ethereum to achieve.

Although data service providers like Aragon have considered setting up a secondary network on Polkadot (eventually, Aragon chose the Cosmos ecosystem), reaching adoption and value accumulation commensurate with Ethereum may take a long time.

In the long run, Polkadot's focus on composability may pay off, but when the project attracts developers in the short to medium term, it may be difficult to defend its valuation, considering that its ICO funds are vulnerable to the Parity multi-signature vulnerability. Still locked, even more so. Nevertheless, it is interesting to track the progress of Polkadot's research.

Cosmos: an interoperable solution

Cosmos takes a more pragmatic approach to interoperability and composability, and its stack is based on a set of existing technologies. Although the entire project is still complex, its foundation is based on an interconnected instance of the Ethereum Virtual Machine (EVM) running on Tendermint, a pBFT consensus engine. Consensus design is one of the most important elements for interoperability through intermediaries, and the Cosmos team has been working on Tendermint since 2014.

Although Ethereum and Cosmos differ in key implementations, such as different data structures, serialization formats, and digital signature algorithms, given EVM's status as the industry's leading virtual machine, Cosmos's choice to use EVM can bring better interoperability And support infrastructure.

The simple combination of Tendermint and EVM also enables Cosmos to leverage the existing ecosystem of Ethereum development tools and open source applications, but it can still improve its composability, interoperability, and scalability through sharding.

The Cosmos Software Development Kit (SDK) is equivalent to the Substrate framework on Polkadot. Like Substrate, the purpose of the Cosmos SDK is to promote composability of the networks connected to the Cosmos hub by standardizing consensus and network code. The SDK is designed to serve an ecosystem in which various open source modules (such as privacy plugins or user identity solutions) can be added to applications as needed. An essential part of the system is an application security model that describes the security permissions of the various modules of the application.

This permission is achieved through object capabilities (ocaps). In short, ocaps can programmatically prevent malicious or defective modules from changing certain states, such as reserve balances or contract ownership.

We have found this approach to composability and application security to be very interesting, as the unpredictability of highly complex smart contracts on Ethereum has triggered a large number of attacks over the past few years. However, opcaps are not a panacea, because developers still need to properly define the interactions between modules.

In addition to composability, Cosmos also outlines how its network will handle interoperability between Cosmos Hub and exogenous networks. The solution they proposed to solve the interoperability problem includes the introduction of an additional intermediary blockchain between Cosmos Hub and Ethereum and other exogenous networks, namely the Peg Zone (Chain News Note: also translated as "pegged partition"). As an intermediary, Peg Zone can provide a probabilistic guarantee of economic finality (that is, the irreversibility of the block) for the proof-of-work blockchain.

For example, when a transaction is included in an Ethereum block to bridge to Cosmos, the Peg Zone will apply 100 block confirmations as the finality threshold before the confirmation is valid. This final checkpoint reduces the probability that transactions on the peg chain will be recovered during a blockchain reorganization or a 51% attack event. One obvious benefit of this intermediary is that it simplifies the escrow of cross-chain assets. All Cosmos users share the balance through a centralized multi-signature smart contract wallet, thereby promoting the inflow and outflow of liquidity.

Other projects, including Polkadot, have tried similar architectures. Recently, the Loom network leveraged Ethereum-based sidechain Plasma to provide a similar intermediary for Ethereum users. Considering that interoperability through intermediaries has proven to be a very challenging task, we expect this "Peggy" layered structure to be a blueprint for cross-chain interoperability through intermediaries.

Peggy: Blueprint for Interoperability with Intermediaries

The external blockchain and Peg Zone will be connected to the Cosmos hub through two main protocols, namely the "Inter-Blockchain Communication Protocol, or Inter-Blockchain Communication (IBC)" and "Application Blockchain" Interface "(Application Blockchain Interface, ABCI) protocol. The IBC protocol is essentially a messaging system that tracks the status or total balance of all connected areas. As any communication requires authentication, another important aspect of Cosmos (especially Tendermint) is the ABCI protocol, which runs as a network socket protocol, connecting the Tendermint consensus engine with various applications on the platform. Through this interface, Allows the application layer to communicate with the bottom-line consensus layer and network layer.

In Peggy's case, IBC controls the inflow and outflow of user funds between Ethereum, and ABCI handles consensus on the validity of these transactions. This mechanism can be understood through this example: Alice's Ethermint Zone in Cosmos (chain note, that is, a proxy chain of Ethereum, through which the connection between Ethereum and the Cosmos chain) has funds, and wants to send the currency. Through IBC, Alice can transfer these funds from her zone to Peggy's Peg Zone. Unlike Ethereum's Elliptic Curve Digital Signature Algorithm (ECDSA), the signature in Cosmos is done using the Edward's Curve Digital Signature Algorithm (EdDSA), so ABCI translates the signature into a language that Ethereum can understand and verify.

Peggy also relies on a network of repeaters, which send batches of transactions and accompanying translation signatures to Ethereum smart contracts that act as custodians. Once released, Cosmos users can trade on the Ethereum network.

Witnesses are Cosmos users who run full nodes on Ethereum, and they are responsible for notifying Peggy of state changes in Ethereum. Intervals are generated every 100 blocks, and witnesses prove that a series of Ethereum transactions sent back to Peggy have ended. Through repeaters and witnesses, Cosmos can provide the full bidirectionality of Ethereum.

We doubt whether this general model can develop in the field of interoperability through intermediation, and the full deployment of solutions like Peggy still takes time. At this point, Cosmos's IBC protocol still needs improvement, and based on our knowledge of the Peggy codebase, it will take at least a year to achieve bidirectionality. However, Cosmos is close to releasing a one-way Peggy-based bridge from Ethereum to Cosmos, and it should be interesting to see how people use it.

Digital Asset Research authorized Lianwen to publish the research report.