Please note: This master’s thesis presentation will take place in DC 2314.
Solomon Davidson, Master’s candidate
David R. Cheriton School of Computer Science
Supervisor: Professor Bernard Wong
The increasing demand for blockchain applications and services has led to a surge of new public blockchains to support this growth. Although the availability of additional blockchains enables the support of more applications and users, it also fragments liquidity, which can create a challenging user experience. Cross-chain communications can tackle this issue by providing interoperability for smart contracts across blockchains. However, current cross-chain delivery solutions either only support message passing between directly connected chains, which significantly limits their connectivity, or are heavily centralized, requiring messages to be routed through a single hub chain.
In this thesis, we present Baton, an interoperability protocol for efficient and secure cross-chain message routing and delivery. Baton is built on the Inter-Blockchain Communication protocol (IBC). IBC is a protocol for general message passing between blockchains. Developers independently connect chains over IBC as they see fit, and Baton can route messages across the IBC topology to allow pairs of chains to communicate. This reduces the need for additional trusted connection setup periods, which are vulnerable for exploitation. Routes are computed off-chain and verified on-chain to minimize the cost of route computation. Unlike IBC where users must manually specify routes, users can send cross-chain messages just by specifying a destination chain. Baton enforces cryptoeconomic incentives to ensure that near-optimal routes, based on a user specified metric, are maintained.
Unlike packet routing in traditional networks where the packets have to traverse one or more transit networks, Baton delivers messages directly from the source to the destination and only uses the state of the intermediate chains to construct a proof to verify the authenticity of the message. Baton can also include information about chain security properties within these proofs, such as how stake is distributed. These user-specified security policies disallow messages from being sent along routes with less secure blockchains. Baton can send messages along multiple disjoint paths connect the same chains. By verifying that messages sent along disjoint paths are the same, Baton can detect compromised chains and fabricated messages.
Cosmos Hub and Axelar are hub chains that connect to other blockchains, and that enable wide-spread interoperability by forwarding messages between pairs of chains. If Cosmos Hub or Axelar become unavailable, only 32.8% and 48.2% of chain pairs can communicate, respectively. In contrast, Baton can maintain connectivity between 57.5% of chain pairs when the top 10 most connected blockchains become unavailable. Our evaluation shows that Baton can deliver up to 20.6% and 3.26% more messages than if blockchains were arranged in a mesh topology or a hub-and-spoke topology respectively, given the same number of cross-chain proof transactions.