Thumbnail Image

Cross-blockchain smart contract interoperability

Westerkamp, Martin

Blockchain technologies' rapid evolution has resulted in the fragmentation of decentralized applications across multiple networks. Since blockchain protocols do not permit the autonomous retrieval of external data, deployed smart contracts are restricted to their host blockchain. The resulting lock-in effect contradicts the initial proposition of smart contracts to enable independent decentralized applications. Therefore, cross-blockchain interoperability methods are needed to enable smart contracts to interact across blockchain network boundaries. Current approaches to blockchain interoperability suffer from centralization, high transaction costs, or require economic rationality assumptions. The execution of present cross-blockchain smart contract messaging protocols incurs high delays and costs, as multiple transactions must be executed sequentially. In addition, these protocols do not remedy the tight binding between smart contracts and their host blockchain. This thesis presents novel cross-blockchain smart contract interoperability concepts that are trustless, efficient, and do not require financial preconditions. The first contribution depicts a chain relay utilizing verifiable off-chain computations to off-load the validation of Proof-of-Work (PoW) block headers. As a result, on-chain validation costs are reduced by orders of magnitude without compromising security. The concept is evaluated based on a prototype relaying Bitcoin and Ethereum block headers to blockchains that support the Ethereum Virtual Machine (EVM). In recent years, Proof-of-Stake (PoS) blockchains have become increasingly popular. The second contribution of this thesis introduces an efficient chain relay scheme addressing PoS blockchains that guarantee finality. The consensus protocol's finality guarantee enables the chain relay to operate on a subset of finalized block headers. As a result, transaction costs are minimized without compromising the relay's security. The introduced cross-chain state access methods depict the foundation for smart contract interoperability across blockchain networks. As a third contribution, we present the concept of smart contract forks to mitigate the close dependency of smart contracts on their host blockchain. The business logic and state of smart contracts are migrated to other blockchains that support the same execution environment. As a migration result, smart contract users benefit from the properties the target blockchain provides, and lock-in effects are alleviated. The fourth contribution of this thesis is a concept for smart contract synchronization, which enables instant read-only cross-blockchain function calls. Replica contracts are created on target blockchains and updated according to the initially deployed instance. We evaluate smart contract forks and synchronizations based on a prototype that supports EVM-compliant blockchains.
Die rapide Entwicklung von Blockchain-Technologien hat zu einer Fragmentierung dezentraler Anwendungen über mehrere Netzwerke hinweg geführt. Da Blockchain-Protokolle keinen autonomen Abruf externer Daten zulassen, sind darauf ausgeführte Smart Contracts auf ihre Host-Blockchain beschränkt. Der daraus resultierende Lock-in-Effekt widerspricht der ursprünglichen Prämisse, unabhängige und dezentrale Anwendungen mittels Smart Contracts zu ermöglichen. Daher werden Methoden für die Interoperabilität von Blockchains benötigt, die es Smart Contracts ermöglichen, über Blockchain-Netzwerkgrenzen hinweg zu interagieren. Aktuelle Ansätze zur Blockchain-Interoperabilität weisen einen hohen Zentralisierungsgrad auf, resultieren in hohen Transaktionskosten oder setzen die wirtschaftliche Rationalität teilnehmender Entitäten voraus. Die Ausführung darauf aufbauender Blockchain-übergreifender Smart-Contract-Messaging-Protokolle verursacht hohe Ausführungsverzögerungen und Kosten, da mehrere aufeinanderfolgende Transaktionen benötigt werden. Zudem beheben diese Protokolle nicht die enge Bindung zwischen Smart Contracts und Host-Blockchains. In dieser Arbeit werden effiziente Konzepte für Blockchain-übergreifende Smart-Contract-Interoperabilität vorgestellt, die weder Vertrauen in Dritte noch finanzielle Voraussetzungen erfordern. Das erste Konzept stellt ein Chain-Relay dar, welches überprüfbar korrekte Off-Chain-Berechnungen für die Validierung von Proof-of-Work-(PoW-)Block-Headern nutzt. Hierdurch werden die Validierungskosten auf der Ziel-Blockchain um ein Vielfaches reduziert, ohne die Sicherheit des Protokolls zu beeinträchtigen. Das Konzept wird anhand eines Prototyps evaluiert, welcher die Abbildung von Bitcoin- und Ethereum-Block-Headern auf Blockchains ermöglicht, welche die Ethereum-Virtual-Machine (EVM) unterstützen. In jüngster Vergangenheit hat der Konsensmechanismus Proof-of-Stake (PoS) an Beliebtheit gewonnen. Das zweite in dieser Arbeit vorgestellte Konzept stellt ein Chain-Relay-Schema dar, das PoS-Blockchains adressiert, welche die zeitnahe Finalisierung von Blöcken garantierten. Die Finalisierungsgarantie des Konsensmechanismus ermöglicht die Konzeptionierung eines Chain Relays, welches nur eine Teilmenge von finalisierten Block-Headern für die Validierung voraussetzt. Infolgedessen werden die Transaktionskosten minimiert, ohne die Sicherheit des Relays zu beeinträchtigen. Die vorgestellten Methoden für den Blockchain-übergreifenden Zustandsabruf stellen die Grundlage für die Interoperabilität von Smart Contracts über Blockchain-Netzwerke hinweg dar. Das dritte Konzept dieser Arbeit umfasst Smart-Contract-Forks, welche die Abhängigkeit von Smart Contracts zu ihren Host-Blockchains mindern. Die Geschäftslogik und der Zustand von Smart Contracts werden zwischen Blockchains migriert, welche dieselbe Ausführungsumgebung unterstützten. Durch die Migration profitieren Smart-Contract-Nutzer von den Eigenschaften der Ziel-Blockchain und Lock-in-Effekte werden abgemildert. Das vierte in dieser Arbeit vorgestellte Konzept stellt Smart-Contract-Synchronisationen dar, welche sofortige Blockchain-übergreifende Funktionsaufrufe mit Lesezugriff ermöglichen. Replica-Contracts werden auf Ziel-Blockchains erstellt und entsprechend der ursprünglichen Instanz aktualisiert. Smart-Contract-Forks und -Synchronisationen werden anhand eines Prototyps evaluiert, welcher EVM-kompatible Blockchains unterstützt.