This post presents Sirrah, a minimalist demo of extending a blockchain with confidential computing using Trusted Execution Environments (TEEs). We'll cover the development end-to-end: starting from Gramine-SGX and ordinary REVM, and ending with MEV-aware auction application... and a timelock encryption demo that you can try right now.
Writings
A collection of articles and papers from Flashbots.
Illuminating Ethereum's Order Flow Landscape
We live in a world where decentralized finance ("defi") market structure and transaction execution is constantly changing, and poorly understood by most. Among this complexity, it is easy to forget that defi's market structure today is meaningfully different from the current state of traditional finance ("tradfi"). From the roots of a permissionless, global, decentralized genesis, defi is already well along the path to addressing a number of the criticisms levied at tradfi execution, by market participants and regulators alike.
Open sourcing the Flashbots MEV-Share Node
Users should be able to see and control how their transactions are processed in the MEV supply chain. In order to bring more transparency to orderflow auctions, Flashbots has open sourced our implementation of a MEV-Share Node.
Transparency in the MEV supply chain is critical for parties that create orderflow (eg. users, wallets, and dapps) to make informed decisions. It also enables other actors like builders and searchers to better understand the guarantees and requirements of the systems they integrate.
We encourage all teams to develop their orderflow auctions in the open, and we advise the community to work with OFAs that follow the norms of free and open source software.
The Flashbots Node is one of several references and tools for MEV-Share that Flashbots has open sourced, including:
Join us in building a more decentralized and transparent MEV supply chain.
The MEVM, SUAVE Centauri, and Beyond
In this post, we preview the SUAVE Centauri release defined in the November 2022 roadmap in the Future of MEV. SUAVE Centauri consists of two parts: A privacy-aware orderflow auction (“OFA”), which we released with mev-share’s beta; and a SUAVE Devnet. This post aims to explain, at a high level, several key ideas that will help understand SUAVE and Flashbots more broadly. Moreover, we invite the community to experiment alongside us with the upcoming devnet launch detailed in the post.
FRP Year in Review
Flashbots Research Proposals (FRP) is a grants program that Flashbots uses to fund community research, work with collaborators, and ensure that researchers beyond our internal team have the resources they need to illuminate the dark forest. While FRPs have existed since early Flashbots, our pace of grants-making accelerated in the past year. This post outlines our goals and methodology for FRP and highlights some cool projects this program made possible. Through FRP, we want to ensure that MEV is not only one of the most intellectually engaging areas to do research, but also one where passionate researchers can always find funding and support for their work. In the past year, FRP has made large strides in that direction, allowing Flashbots to support a range of external researchers including seasoned academics, ecosystem contributors, and new entrants to independent MEV research.
Searching On MEV-Share
MEV-Share is a new paradigm for searchers. It unlocks new orderflow, features, and searching strategies. This short guide will get you up to speed on new ways of searching and explain how to upgrade your strategies to leverage MEV-Share.
Block Building inside SGX
We are excited to announce that Flashbots is successfully running a block builder inside an SGX enclave, a trusted execution environment (TEE) developed by Intel. The SGX block builder is now live on the Ethereum Sepolia testnet, and soon on mainnet!
Our previous work on running Geth inside SGX demonstrated the technical feasibility of this approach. Now, we’ve made the next step towards block building inside encrypted enclaves, and want to share our key learnings and challenges, as well as the all the code and tooling for running a block builder inside SGX.
Backrunning Private Transactions Using Multi-Party Computation
This article examines the use of secure multi-party computation in allowing searchers to backrun users’ transactions while preserving transaction and search strategy confidentiality.
Running Geth within SGX: Our Experience, Learnings and Code
At Flashbots, we are exploring trusted execution environments (TEEs) such as SGX, as well as other privacy technologies including Multi-Party Computation and Homomorphic Encryption, as important building blocks for trustless collaboration along the transaction supply chain. This is particularly relevant for applications such as decentralized block building and sharing private orderflow.
Today we are happy to publish our efforts and a number of key learnings about running Geth inside SGX, for others to reuse, experiment with, and build upon.
The Future of MEV is SUAVE
TLDR:
- After successfully isolating the centralizing effects of MEV to the block builder role, we turn ourselves toward a new challenge: to decentralize block building itself. Exclusive orderflow and cross-domain MEV present emerging centralization threats to all cryptocurrencies, so we must make sure to keep MEV decentralized, or the decentralization of crypto will be lost.
- To hold ourselves to our decentralization commitments, we are building SUAVE - the Single Unifying Auction for Value Expression.
- SUAVE unbundles the mempool and block builder role from existing blockchains and offers a highly specialized and decentralized plug-and-play alternative. Sharing the same sequencing layer allows crypto to stay decentralized, block builders to capture cross-domain MEV, validators to maximize their revenue, and users to transact with the best execution, while reducing the economic centralization pressure on each domain.
- We are building SUAVE in the open and invite all interested parties — users, wallets, searchers, builders, researchers, and blockchain developers — to work with us.