Specular: Towards Secure, Trust-minimized Optimistic Blockchain Execution (2212.05219v2)
Abstract: An optimistic rollup (ORU) scales a blockchain's throughput by delegating computation to an untrusted remote chain (L2), refereeing any state claim disagreements between mutually distrusting L2 operators via an interactive dispute resolution protocol. State-of-the-art ORUs employ a monolithic dispute resolution protocol that tightly couples an L1 referee with a specific L2 client binary--oblivious to the system's higher-level semantics. We argue that this approach (1) magnifies monoculture failure risk, by precluding trust-minimized and permissionless participation using operator-chosen client software; (2) leads to an unnecessarily large and difficult-to-audit TCB; and, (3) suffers from a frequently-triggered, yet opaque upgrade process--both further increasing auditing overhead, and broadening the governance attack surface. To address these concerns, we outline a methodology for designing a secure and resilient ORU with a minimal TCB, by facilitating opportunistic 1-of-N-version programming. Due to its unique challenges and opportunities, we ground this work concretely in the context of the Ethereum ecosystem--where ORUs have gained significant traction. Specifically, we design a semantically-aware proof system, natively targeting the EVM and its instruction set. We present an implementation in a new ORU, Specular, that opportunistically leverages Ethereum's existing client diversity with minimal source modification, demonstrating our approach's feasibility.
- Gavin Wood et al. Ethereum: A secure decentralised generalised transaction ledger. Ethereum project yellow paper, 151(2014):1–32, 2014. https://ethereum.github.io/yellowpaper/paper.pdf.
- Arbitrum: Scalable, private smart contracts. In 27th USENIX Security Symposium (USENIX Security 18), pages 1353–1370, 2018.
- Sok: Validating bridges as a scaling solution for blockchains. Cryptology ePrint Archive, 2021. https://eprint.iacr.org/2021/1589.pdf.
- Shades of finality and layer 2 scaling. arXiv preprint arXiv:2201.07920, 2022. https://arxiv.org/pdf/2201.07920.pdf.
- Arbitrum nitro: A second-generation optimistic rollup. 2022.
- Bedrock explainer | optimism docs. https://community.optimism.io/docs/developers/bedrock/. Accessed on 08/02/2023.
- The state of the layer two ecosystem. https://l2beat.com/scaling/summary, 2023.
- Refereed delegation of computation. Information and Computation, 226:16–36, 2013.
- Our pragmatic path to decentralization. https://medium.com/ethereum-optimism/our-pragmatic-path-to-decentralization-cb5805ca43c1. Accessed on 08/06/2022.
- Noah Citron. Building magi: A new rollup client for optimism. https://a16zcrypto.com/posts/article/building-magi-a-new-rollup-client-for-optimism/. Accessed on 08/01/2023.
- N-version programming: A fault-tolerance approach to reliability of software operation. In Proc. 8th IEEE Int. Symp. on Fault-Tolerant Computing (FTCS-8), volume 1, pages 3–9, 1978.
- An experimental evaluation of the assumption of independence in multiversion programming. IEEE Transactions on software engineering, (1):96–109, 1986.
- Enter the hydra: Towards principled bug bounties and {{\{{Exploit-Resistant}}\}} smart contracts. In 27th USENIX Security Symposium (USENIX Security 18), pages 1335–1352, 2018.
- Ethereum/go-ethereum: Official go implementation of the ethereum protocol. https://github.com/ethereum/go-ethereum. Accessed on 04/26/2022.
- Ethereum improvement proposals. https://eips.ethereum.org/. Accessed on 08/06/2022.
- Sok: Blockchain governance. arXiv preprint arXiv:2201.07188, 2022. https://arxiv.org/pdf/2201.07188.pdf.
- Fuellabs/fuel-core: Rust full node implementation of the fuel v2 protocol. https://github.com/FuelLabs/fuel-core. Accessed on 08/01/2023.
- Fuelvm - fuel specifications. https://specs.fuel.network/master/fuel-vm/index.html. Accessed on 08/03/2023.
- Bringing the web up to speed with webassembly. In Proceedings of the 38th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI 2017, page 185–200, New York, NY, USA, 2017. Association for Computing Machinery.
- Mips: A microprocessor architecture. In Proceedings of the 15th Annual Workshop on Microprogramming, MICRO 15, page 17–22. IEEE Press, 1982.
- Kevm: A complete formal semantics of the ethereum virtual machine. In 2018 IEEE 31st Computer Security Foundations Symposium (CSF), pages 204–217, 2018.
- Formal and executable semantics of the ethereum virtual machine in dafny. In International Symposium on Formal Methods, pages 571–583. Springer, 2023.
- ethereum-optimism/operating-manual: Operating manual of the optimism collective. https://optimism.io/vision. https://github.com/ethereum-optimism/OPerating-manual. Accessed on 08/03/2023.
- Ethereum merge: Run the majority client at your own peril! https://dankradfeist.de/ethereum/2022/03/24/run-the-majority-client-at-your-own-peril.html. Accessed on 08/01/2023.
- Eleazar Galano. Infura mainnet outage post-mortem 2020-11-11. https://blog.infura.io/post/infura-mainnet-outage-post-mortem-2020-11-11. Accessed on 05/30/2022.
- Go ethereum on twitter. https://twitter.com/go_ethereum/status/1431264560019820547. Accessed on 05/30/2022.
- Finding consensus bugs in ethereum via multi-transaction differential fuzzing. In 15th USENIX Symposium on Operating Systems Design and Implementation (OSDI 21), pages 349–365, 2021.
- Base: Using abstraction to improve fault tolerance. ACM SIGOPS Operating Systems Review, 35(5):15–28, 2001.
- Base: Using abstraction to improve fault tolerance. ACM Transactions on Computer Systems (TOCS), 21(3):236–269, 2003.
- Introducing evm equivalence. https://medium.com/ethereum-optimism/introducing-evm-equivalence-5c2021deb306. Accessed on 08/06/2022.
- Patrick McCorry. Q&A session on plasma, rollups and validating bridges, - cryptocurrency class 2022 – crowdcast, 2022.
- Roberto Tamassia. Authenticated data structures. In Algorithms-ESA 2003: 11th Annual European Symposium, Budapest, Hungary, September 16-19, 2003. Proceedings 11, pages 2–5. Springer, 2003.
- Practical delegation of computation using multiple servers. In Proceedings of the 18th ACM conference on Computer and communications security, pages 445–454, 2011.
- Ledgerwatch/erigon: Ethereum implementation on the efficiency frontier. https://github.com/ledgerwatch/erigon. Accessed on 08/03/2023.
- Versum: Verifiable computations over large public logs. In Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, pages 1304–1316, 2014.
- Verifiable delegation of computation on outsourced data. In Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security, pages 863–874, 2013.
- Ralph C Merkle. A digital signature based on a conventional encryption function. In Conference on the theory and application of cryptographic techniques, pages 369–378. Springer, 1987.
- Authenticated data structures, generically. ACM SIGPLAN Notices, 49(1):411–423, 2014.
- Permissionless refereed tournaments. arXiv preprint arXiv:2212.12439, 2022.
- Bold: Bounded liquidity delay in a rollup challenge protocol. https://github.com/OffchainLabs/bold/blob/main/docs/research-specs/BOLDChallengeProtocol.pdf. Accessed on 12/07/2023.
- High-availability computer systems. Computer, 24(9):39–48, 1991.
- Separating agreement from execution for byzantine fault tolerant services. In Proceedings of the nineteenth ACM symposium on Operating systems principles, pages 253–267, 2003.
- Client diversity | ethereum. https://clientdiversity.org/. Accessed on 08/06/2022.
- https://github.com/paradigmxyz/reth. Accessed on 08/03/2023.
- https://github.com/NethermindEth/nethermind. Accessed on 04/26/2022.
- protolambda/asterisc: Work in progress risc-v interactive fraud-proof tech. https://github.com/protolambda/asterisc. Accessed on 12/01/2023.
- OffchainLabs/nitro: Nitro goes vroom and fixes everything. https://github.com/OffchainLabs/nitro. Accessed on 05/30/2022.
- privacy-scaling-explorations/zkevm-circuits. https://github.com/privacy-scaling-explorations/zkevm-circuits. Accessed on 12/07/2023.
- EIP-4844: Shard Blob Transactions [DRAFT]. Ethereum Improvement Proposals, no. 4844, February 2022. [Online serial]. Available: https://eips.ethereum.org/EIPS/eip-4844. Accessed on 2022/06/01.
- Compact merkle multiproofs. arXiv preprint arXiv:2002.07648, 2020.
- Keccak. In Annual international conference on the theory and applications of cryptographic techniques, pages 313–314. Springer, 2013.
- Erigon staged sync. https://github.com/ledgerwatch/erigon/blob/devel/eth/stagedsync/README.md. Accessed on 08/03/2023.
- Uniswap/v2-core: Core smart contracts of uniswap v2. https://github.com/Uniswap/v2-core. Accessed on 05/30/2022.
- ensdomains/ens-contracts. https://github.com/ensdomains/ens-contracts. Accessed on 08/03/2023.
- Ballot contract: Implements voting process along with vote delegation. https://github.com/ethereum/remix-project/blob/a35901fe511f852c381f60086cde4fcb08df2b9a/apps/remix-ide/contracts/ballot.sol. Accessed on 08/03/2023.
- Fredrick Dahlgren. It pays to be circomspect. https://blog.trailofbits.com/2022/09/15/.
- Fiat-shamir security of fri and related snarks. Cryptology ePrint Archive, 2023.
- Automated detection of under-constrained circuits in zero-knowledge proofs. Proceedings of the ACM on Programming Languages, 7(PLDI):1510–1532, 2023.
- Formalizing soundness proofs of snarks. Cryptology ePrint Archive, 2023.
- L. Peter Deutsch. DEFLATE Compressed Data Format Specification version 1.3. RFC 1951, May 1996.
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.