<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Maven11 Research</title>
        <link>https://paragraph.com/@Maven11Research</link>
        <description>undefined</description>
        <lastBuildDate>Thu, 05 Nov 2026 15:02:09 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <language>en</language>
        <copyright>All rights reserved</copyright>
        <item>
            <title><![CDATA[We need Encrypted Data Availability (+ mempools), and the Death of PBS]]></title>
            <link>https://paragraph.com/@Maven11Research/we-need-encrypted-data-availability-mempools-and-the-death-of-pbs</link>
            <guid>wvTTDMzE053kODwGW61C</guid>
            <pubDate>Fri, 03 Apr 2026 18:54:20 GMT</pubDate>
            <description><![CDATA[Encrypted/Private Mempools are not just needed for MCP setups, but also for live blockchain systems today - as Julian Ma eloquently puts it, it can solve/help on many fronts - especially ensuring that the entirety of DeFi happens on-chain (and not party off-chain). ]]></description>
            <content:encoded><![CDATA[<p>If you wanna help share the word about this article, feel free to interact w/ this tweet:</p><div data-type="twitter" tweetid="2032481575221264737">
  <div class="twitter-embed embed">
    <div class="twitter-header">
        <div style="display:flex">
          <a target="_blank" href="https://twitter.com/rainandcoffee">
              <img alt="User Avatar" class="twitter-avatar" src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4f66aa9550b5cc44d7ef81da951cedb4bf61810257f4f9e77655e99b51276e29.jpg">
            </a>
            <div style="margin-left:12px;margin-right:auto;line-height:1.2;">
              <a target="_blank" href="https://twitter.com/rainandcoffee" class="twitter-displayname">rain &amp; coffee</a>
              <p style="margin-top:2px;line-height:1;"><a target="_blank" href="https://twitter.com/rainandcoffee" class="twitter-username">@rainandcoffee</a></p>
    
            </div>
            <a href="https://twitter.com/rainandcoffee/status/2032481575221264737" target="_blank">
              <svg class="twitter-logo" width="20" height="20" viewBox="0 0 24 23" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path d="M0.256759 0L9.36588 12.1823L0.200012 22.0873H2.26348L10.289 13.4158L16.7728 22.0873H23.7935L14.1723 9.21978L22.7043 0H20.6409L13.2506 7.98633L7.27889 0H0.258127H0.256759ZM3.29035 1.52002H6.51495L20.7571 20.5673H17.5325L3.29035 1.52002Z" fill="currentColor"></path>
              </svg>
            </a>
          </div>
        </div>
      
    <div class="twitter-body">
      <a class="twitter-content-link" href="https://t.co/z90qQcOGqB" target="_blank">x.com/i/article/2032…</a>
      
      
       
    </div>
    
     <div class="twitter-footer">
          <a target="_blank" href="https://twitter.com/rainandcoffee/status/2032481575221264737" style="margin-right:16px; display:flex; align-items:center;">
            <svg class="twitter-heart" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg">
              <path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"></path>
            </svg>
            20
          </a>
          <a target="_blank" href="https://twitter.com/rainandcoffee/status/2032481575221264737"><p>16:39 • 13 Mar 2026</p></a>
        </div>
    
  </div> 
  </div><hr><p>Quick side note: Encrypted/Private Mempools are not just needed for MCP setups, but also for live blockchain systems today - as Julian Ma eloquently puts it, it can solve/help on many fronts - especially ensuring that the entirety of DeFi happens on-chain (and not party off-chain). I would recommend reading his flurry of tweets: <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://x.com/_julianma/status/2032067843635007508"><strong>here</strong></a>, <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://x.com/_julianma/status/2032365122027438341?s=20"><strong>here</strong></a> and <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://x.com/_julianma/status/2032406889720349159?s=20"><strong>here</strong></a>.</p><p>Many moons ago, we wrote a<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://maven11.substack.com/p/modular-mev-part-2-finality-actors"><strong> blogpost</strong></a> about the mechanisms and setups of MEV in a modular ecosystem. In that piece, we had a section aptly named <em>data availability MEV</em>. There, we mentioned that most MEV (if not all, barring specific cross-domain situations) would likely end up in the execution layer, where leader election happens, since they decide inclusion and ordering. However, over the last few weeks I’ve had several discussions in which the idea of DA MEV has come up. Funnily enough, not in the context of modularity, but rather on monolithic L1s (specifically ones utilising multi-concurrent proposers (MCP)).</p><p>With this newfound context, we thought it would be fruitful to dive a little bit deeper into this topic, alongside other interesting mechanical changes coming to several more modern chains, and their effects on MEV.</p><p>In<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://rainandcoffee.substack.com/p/the-case-for-and-against-mcp"><strong> my last article</strong></a>, we focused on the development of multiple concurrent proposers (MCP) and their possible effects not only on censorship resistance, but also on throughput and customisation. An interesting (and somewhat underexplored) aspect of MCP is its potential effect on MEV, specifically on the data-availability side.</p><p>If you need a quick primer on data availability: DA allows us to check with a very high probability that all the data for a block has been published. Data availability is required to be able to detect fraud and also to recreate the entirety of the chain.</p><p>And a primer on MCP; instead of a singular proposer deciding what block gets proposed, multiple concurrent proposers contribute mini-blocks that get merged into a singular, larger one.</p><figure float="none" data-type="figure" class="img-center"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto,width=3840,quality=85/https://storage.googleapis.com/papyrus_images/674d8fd1a4f9c237c703f69bd524d315de7e5bfd4d485e943b623f663c6a821e.jpg" alt="post image" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><h2 id="h-the-da-mev-problem" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>The DA MEV Problem</strong></h2><p>In setups with delayed execution, where transaction inputs are published before execution (MCP), there’s a high probability that MEV-prone validators could participate in transaction stealing by taking transactions from the DA layer and engaging in front-running.</p><p>For example, a validator (or a set of them) could collaborate in playing<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://ethresear.ch/t/timing-games-implications-and-possible-mitigations/17612"><strong> timing games</strong></a>, waiting for bids and then submitting higher ones. This is especially important in cases where the DA layer does not have the ability to Replace-by-Fee (RBF). Meaning you could see one validator’s set of transactions published first, take the ones you deem valuable and outbid for execution.</p><p>While DA generally doesn’t have a significant impact on MEV in most cases, due to the absence of leader election (in most L2s) and the fact that a single leader is chosen in advance on most L1s. However, MCP changes this equation entirely. MCP introduces <em>several concurrent leaders</em>. And with several concurrent leaders all observing a public mempool, you get a multiplicative effect on the MEV attack surface.</p><p>A possible solution to these types of attacks is to <strong>encrypt the data being made available</strong> in relation to the transactions about to be executed and put into a confirmed block. The reason for doing this is to reduce the potential for MEV games arising from the introduction of more novel mechanism designs. However, most methods for achieving encrypted DA are likely to lead to an increase in latency, as both ZK and FHE have considerable compute overhead (although we’re<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://eprint.iacr.org/2025/1772"><strong> closer to closing the gap with ZK</strong></a>). There are, however, other ways to get to the same goal.</p><h2 id="h-encrypted-da" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>Encrypted DA</strong></h2><p>The core idea is straightforward: utilise cryptography (or hardware) to hide transaction content until the finalised ordering of transactions in a block is irrevocably committed. This removes the ability to steal transactions and engage in timing games. One thing to keep in mind, though, is that while providing encryption, we also want to limit the latency we introduce into the system.</p><p>There are several methods you could utilise to achieve this, each with different tradeoffs and properties. Let’s explore the main ones:</p><p><strong>1. Threshold Encryption (e.g., Shutter Network)</strong></p><p>Transactions are encrypted to a threshold committee; the decryption key is released only after block ordering is committed. Shutter is already live on Gnosis Chain, providing the closest real-world validation of this approach.</p><p><strong>The tradeoff: </strong>liveness depends on the threshold committee. If t-of-n participants are offline or colluding, decryption stalls.</p><p><strong>2. Verifiable Encryption + Private DA (VE-PDA)</strong></p><p>Users encrypt transactions but attach a ZK proof that the ciphertext is valid (correct format, sufficient gas, no double-spend). Validators can verify correctness without seeing content.<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://docs.celestia.org/build/private-blockspace/about/"><strong> Celestia’s Private Blockspace proposal</strong></a> extends this to the DA layer, where blobs are encrypted at submission and are decryptable only post-ordering.</p><p><strong>The tradeoff:</strong> ZK proof generation adds user-side latency (seconds on consumer hardware today); proving overhead is the main bottleneck.</p><p><strong>3. Trusted Execution Environments (TEEs)</strong></p><p>Hardware-based: transactions flow through secure enclaves (SGX/ TXD etc) that order before revealing content. Explored by Flashbots in their<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://writings.flashbots.net/network-anonymized-mempools"><strong> anonymised mempool post</strong></a>.</p><p><strong>The tradeoff: </strong>the trust assumption shifts entirely to the hardware manufacturer (Intel) and the supply chain and of possible physical attacks (maybe we put them Space? But latency.. see Spacecomputer!) SGX has a well-documented history of side-channel attacks (Spectre, Plundervolt).</p><p><strong>4. Delayed Reveal / Commit-Reveal Schemes</strong></p><p>The simplest approach: users commit a hash of their transaction, ordering is determined, then plaintext is revealed.</p><p><strong>The tradeoff:</strong> two-round latency doubles block time, and users can grief by never revealing.<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://forum.celestia.org/t/account-user-centric-private-blockspace/2155"><strong> Celestia’s account-centric private blockspace</strong></a> proposes a variant where reveal is enforced via stake slashing.</p><p><strong>5. Time-Lock Puzzles / Timed-Release Encryption</strong></p><p>A transaction is encrypted such that it becomes computable to decrypt only after X seconds — no key ceremony needed.</p><p><strong>The tradeoff:</strong> computationally expensive, and adversaries with faster hardware can decrypt early. Not yet practical at blockchain timescales.</p><h2 id="h-public-vs-encrypted-da" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>Public vs. Encrypted DA</strong></h2><p>Let’s make the contrast concrete.</p><figure float="none" data-type="figure" class="img-center"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto,width=3840,quality=85/https://storage.googleapis.com/papyrus_images/7fe0ef76c2a2e82624ae1f2dc6e8340e4f6a7e7011f4f3840dafcbaebba97743.png" alt="post image" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p><strong>Under public DA:</strong> A proposer sees swap(USDC→ETH, amountIn=50000) in the mempool. They can immediately construct a front-run buy and back-run sell around it. The content of the transaction is what enables the attack. However, on Ethereum, a very large portion of today’s order flow is private, and what actually goes on behind the scenes is less than clear - but it does mitigate some of the issues (but not in a verifiable, decentralised nor trustless manner.</p><p><strong>Under encrypted DA:</strong> The proposer sees 0x9f3a...c2b1, a ciphertext. They have no idea if it’s a swap, transfer or a contract deployment. They cannot construct a sandwich because they don’t know the token pair, direction, size, or anything else meaningful. The ordering commitment happens before decryption. Once the block order is irrevocably finalised on-chain, the decryption key is released and transactions execute in that committed order. At that point there is nothing to front-run; the ordering is already done. However, efficiently constructing a block becomes significantly more difficult (if not impossible) since the proposer has no clue about how much gas a specific transaction will consume (and if he knows, then he will also have an idea of what type of transaction is committed).</p><h2 id="h-quantifying-the-mev-under-mcp" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>Quantifying the MEV under MCP</strong></h2><p>Let’s look at some data to understand just how needed encrypted DA is (especially in a multi-proposer situation).</p><figure float="none" data-type="figure" class="img-center"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto,width=3840,quality=85/https://storage.googleapis.com/papyrus_images/451f6a1429790b566af26fbe259e2c6b2aec9a2b47ca3a840722510d294c566b.png" alt="post image" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>*7 proposers is the proposed number of Sei Giga proposers in the only live MCP system<br><br><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://arxiv.org/abs/2405.17944"><strong><em>The probability of a sandwich attack per transaction on Ethereum accounts for around 2%</em></strong></a><em>. The true figure likely sits between 2% and 12% per block, depending on whether the base is all DEX swaps, or only swaps above the minimum profitable size threshold. Public DA values are lower bounds; however, it could be much higher because of structural MCP-specific mechanisms such as coordination breakdown, timing games, and duplicate inclusion which compound (we’ll get into these type of attacks further on).</em></p><p><em>Under Proposer-Builder Separation, it is block builders, not proposers, that execute sandwiches; however, we’ll get further into MCP vs PBS further on in the article. Flashbots’ BuilderNet partially addresses builder centralisation but redistributes rather than eliminates MEV, leaving the extraction mechanism intact.</em></p><p>Some important caveats on this model. It assumes proposers act independently, whereas in reality, they likely coordinate or bid through the same MEV infrastructure (like MEV-Boost relays), which changes the math. The<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://arxiv.org/abs/2601.19570"><strong> strongest real-world evidence</strong></a> for encrypted DA solving sandwich attack iis essentially zero sandwich attacks on rollups with private mempools.</p><p>The 1.8-3.5% floor for encrypted DA that we model is illustrative. It would depend on relay-level leakage (if MEV-Boost or equivalent infrastructure sees plaintext before encryption, a possibility in TEE-based schemes), timing attacks (the existence and size of a ciphertext can leak information even if content is hidden), and statistical inference (high-frequency traders can sometimes infer transaction content from size + timing patterns on known protocols).</p><p>As for why encryption eliminates the content-visibility attack vector, the Flashbots <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://writings.flashbots.net/network-anonymized-mempools"><strong>anonymised mempools paper</strong></a> directly argues this. Without content visibility, front-running requires guessing rather than reading. Shutter Network’s deployed implementation on Gnosis Chain shows near-zero sandwich attacks on encrypted transactions in practice.</p><p><strong>Why does MCP increase the chance of attacks (in this case, sandwich attacks)?</strong></p><p>On Ethereum today, many searchers compete to find and submit sandwich bundles, but they all route through the single builder who wins the block-building action and the single proposer who proposes it. The builder acts as a coordinator and filter — only one sandwich bundle is executed per victim transaction, because only one block is finalised. The many searchers compete <em>with each other</em> to get their bundle picked, bidding away profits to the builder via gas. You’re not adding new searchers, you’re adding new block assemblers that the <em>same pool of searchers</em> can already route to.</p><p>The real reasons MCP with public DA increases MEV risk are structural and specific to concurrent block production. Three matter most. First, timing games: with N proposers all watching the same mempool and each other’s DA proofs, the game-theoretic equilibrium shifts toward delay wherein proposers hold back their block to observe competitors, widening the extraction window for every pending transaction. Second, same-tick duplicate inclusion: multiple proposers can independently include the same victim transaction in concurrent block proposals, creating races in which several sandwich attempts land in the same slot, and the victim’s transaction is manipulated by more than one actor before consensus resolves which block wins. Third, coordination breakdown: the current builder is a centralised coordinator that picks the single best bundle — under MCP, that coordination disappears, and the absence of a chokepoint means chaotic multi-party extraction rather than the orderly, profit-maximising single extraction you get today.</p><h2 id="h-concurrent-proposers-need-encrypted-da" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>Concurrent proposers need encrypted DA</strong></h2><p><strong>A protocol that decentralises its proposer set without introducing encrypted DA will temporarily be subject to arguably the worst possible MEV environment. </strong>Which is the predicted outcome of applying the sandwich model to any N &gt; 1 public-DA MCP system.</p><p>The only way to reach “low” amounts of MEV with high decentralisation in the block building is encrypted MCP (if you just encrypt block building, the public DA is still possible to attack). Encryption collapses the content attack window to near zero. The residual reflects side-channel leakage from transaction size and timing signals (more on this below) and MCP-specific timing-game effects that persist even after content is hidden. However, despite that, you still achieve lower sandwich MEV than Ethereum while providing materially stronger guarantees of censorship resistance via MCP</p><p>As such, encrypted DA feels less like an optionality and more of an architectural need to prevent decentralisation from amplifying MEV.</p><p><strong>MCP-specific MEV Attacks:</strong></p><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out graf markup--anchor markup--anchor-readOnly" href="https://seiresearch.io/articles/mcp-mev"><strong>Landers &amp; Marsh</strong></a> formalise some rather interesting MEV-attacks that are introduced in an MCP context:</p><p><strong>Same-tick duplicate steals:</strong> Proposer B copies a high-value transaction from Proposer A’s block and includes it in their concurrent block for the same tick. A loses the fee.<br><strong>Proposer-to-proposer auction race: </strong>N proposers race to include the highest-value pending transaction, creating an implicit priority-fee auction without a formal builder market.<br><strong>Proof-of-availability timing game: </strong>all collaborating proposers delay block release to the last moment T to observe competitors’ DA proofs. This creates a systemic latency floor. Encrypted DA eliminates content leakage but not the timing signal itself.<br><strong>Threshold key release delay:</strong> If keyholders are bribed by a block proposer, a colluding subset could delay decryption after ordering commitment, enabling last-second content observation.</p><p>If you’re interested in how to mitigate these, I’d recommend reading the article linked above.<br><br>One very interesting aspect of the article is that in most cases, encrypted MEV does not fully eliminate timing games itself, and likely there’s a need for both encryption and priority DAGs.</p><h2 id="h-the-death-of-pbs-in-an-mcp-world" class="text-3xl font-header !mt-8 !mb-4 first:!mt-0 first:!mb-0"><strong>The Death of PBS in an MCP world</strong></h2><p>The issues of MEV eventually led to the introduction of proposer-builder separation in Ethereum, as PGA wars heated up. The fair-exchange problem between the builder and the proposer (solved by the “trusted” relay) remains a persistent issue. However, in a world with MCP, PBS is unnecessary and probably harmful.</p><p>This is primarily because the properties gained from MCP are similar to those from PBS (currently implemented outside the base protocol), but are based on in-protocol rules rather than external ones.</p><p>PBS was necessary due to the market dynamics of the Ethereum block-building and validation phase. However, in a world where not a singular validator has control over what block gets proposed (and where the fair exchange problem isn’t as big a problem), there is no need to split block building from validation - since optimisation and performance won’t matter as much (you can get included anywhere).</p><p>PBS essentially removes the probabilistic censorship-resistance benefits gained from MCP, which would be a step in the wrong direction (unless you then start working on the fair exchange problem, but again, you’ve already solved this with MCP). What PBS does do well is force highly optimised building, but at the cost of centralisation (with the gain of performance). This single-builder censorship also reduces the inclusion probability. Furthermore, running a PBS auction with several validators rather than one is a whole different beast; the economics are not the same.</p><p>However, given that most nodes are run by a handful of service providers, do we really achieve true separation of block building?</p><figure float="none" data-type="figure" class="img-center"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto,width=3840,quality=85/https://storage.googleapis.com/papyrus_images/1f119d5076d1304aea433c214416f2988f601df4cf7e6cbd4433f30cd436515a.png" alt="post image" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Source: Hildobby, Dune.</p><p>Perhaps a needed change is to allow each provider to have only a single subblock per MCP block. The security threshold isn’t that hard to reach for a set of colluding staking providers.</p><p>Essentially, by having MCP, you decentralise the sequencer/builder (since we go back to validators ordering blocks) and remove the centralising bottleneck of before (singular leader).</p><hr><p>Something we’d love to see explored more in-depth is also the MEV in delayed execution environments (especially Monad)</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <enclosure url="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/38b06084b57b63aa97ea0ae6350493be8e0b2721569aaa0b259bc7f4659b09de.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[The Case for and Against MCP]]></title>
            <link>https://paragraph.com/@Maven11Research/the-case-for-and-against-mcp</link>
            <guid>wvsfBKGFs7eTc6lSgHlb</guid>
            <pubDate>Tue, 20 May 2025 15:52:50 GMT</pubDate>
            <description><![CDATA[A look at the positives and negatives of implementing multiple concurrent proposers. ]]></description>
            <content:encoded><![CDATA[<p>Multiple Concurrent Proposers, the idea of having multiple active proposers at the same time (hereby referred to as MCP), not to be confused with Multi Context Protocol (its AI counterpart in the colloquial vertical) nor Multi Party Computation (MPC); although some similarity could be found here, is an interesting mechanism to solve censorship issues. In this article, we will cover the what's, the how's, and why having more than a singular proposer be responsible for block proposing is an integral part of improving blockchain mechanism design. <strong><br></strong><br>While the general idea of MCP is relatively simple to understand, it isn’t a reality on practically any blockchain today. However, to some extent, Bitcoin's mining pools function somewhat akin to multiple concurrent proposers. Plus, anyone can get a transaction included in Bitcoin if they run a Bitcoin full node.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/c5991af225fa43cb15ef7708d20e4957.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAJCAIAAADcu7ldAAAACXBIWXMAAAsTAAALEwEAmpwYAAACVklEQVR4nG2SX2hScRTHf6891WNPPSzooV7WNoi1oL0E+tQfJ0jstjaMtUa9uJZEl/yTka41iru7jWtKGSisy12/QAe7mho2yAkbeHVM2QyaYzq8o3ll8179Rd0y0334PZwfv/M95/zOOQAdxudw+InF8trhSCYSCKHyX2TbTjnGxmwQwkO15f8Bq2troVBwfWOjwW8ewnd2e7M+n8sGWC+XSKXT6w1xGwwZEFuK9vcPhELBhkD3+vqU7e1b2SzHcTRNsyzr8bhz+QIxfvfUcWA139xIJ0VRbK7A6XROjE9QFDUzNePxeMCw3ggAaLt0FSFUqVZlzejgoOpi91McV55toxlGo9FgGKZWq40mi+HRUFcHOHkUXFGCxUhoryhwXDyVSrEsu721PeeHD0x6/bOHRpsJf/6Y53lQI+BnrTab0+nU6XTk5CSmVPYqFJlMJplIEAThcrl6elTLKxzxYrTlGOjuBJ0dR2LRSCqVhvCDz+fDcXzpa5RwT1++cW3g/q3rt3sH8WFJlMB5hQoAcKK1CyHE87uCIMhN9DLMW5KUv7V/cLBXLG5ufs/lC9SrvtYz4MI5cLoFvKH0v5u+X98iSZQkUfo3A57fpT/6BEGQ76IoLvp8C253YHY24vWGIVxwu8PM3H6pJDvEV5anxszT40Ybrot9CSGESqVSbcfqt6hSrfxK0DyleZfLOnTn5cgIZTDIydbj8drrj0Ih8J6O+j+FGfhtdbVZ3gAol8uC8KcEGZokcQwza7VmrTYIIU2SEa83yDDQ4Sjs7FSq1frTsPXN/AQVWKTY8SV7RgAAAABJRU5ErkJggg==" nextheight="461" nextwidth="1600" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">On the Bitcoin blockchain, you could have multiple concurrent chains for a bit too. You could also (<em>stretchingly</em>) argue that mining pool operators are a single proposer, but we will leave this notion up to the reader.</figcaption></figure><p>On the other hand, the multiple concurrent builders of Solana share some similarities with how a full MCP implementation would look, and at least have the concept of several different actors contributing to the creation (but not proposing of a block). On Ethereum, most blocks (~95%) are built through MEV-Boost. While several builders are active at any time, there can only be one auction winner, so it loses the angle that you could argue Solana has with the multiple concurrent builders. The fact of the matter is that there isn't a singular chain today with more than one proposer with the power to propose a block at any time.&nbsp;</p><p>The easiest way to think about MCP is to break it down into having more than one proposer providing blocks at a time, and a final merging of those sub-blocks.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/c95bc786dca35a0ad654df5c23799842.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAcCAIAAACPoCp1AAAACXBIWXMAAAsTAAALEwEAmpwYAAAEtklEQVR4nHVWIbSsKhR18sSXptw0xWQymUwmJ9lINBONRqIRSUYajWYz2ow0mpFII/rXdf/lu3fWvB1csxjxHM7eZx+K4xNyzsdxaK0554yxGOPbC0IIzrm19m09pUQIEULgC8dxFB8DbNs2zzPnnBDS9y+ttXMOYZZlMcY0TdO2LefcGLMsy3EcIQRjzDzP4zgyxswJ7/2HADFGKeW6rm3bfn193e93pdS2bVprIcQ0TUqpsizv9/vz+VzX1VqrlNJaY0tZlkVRMMa898MwfAiw7/s0TajDMAyMsXVdj+Ow1nLOY4whhHEc+/4lpcw5xxiFECiX1ppSem2RUn4HyCeu0scYOefTNKFEjDEhhJTSGKO1xgm01kqptxWttbXWGGOtnaZJCDGO498T5JxTSghQ1/VFbD6j4itSSsbYRSDAOcdZvfdvRNZ1XczzXJ+glOJJKf36+kopOee6ruv7V0pJSnm73ZqmIYTknKWUKNFxHI/HoyiK2+227/uyLMMJ7/2+719fX0XO2Xu/bVuMcd93PBHAey+l1FqDj+JE37+O4zDGXDLt+9fz+WzbFnullEop/L7f7x9ITim1bWuMCT9AKUUwxtiyLN77EIL3HmoWQlBKp2lCroDWuqqqzypSSs3z7Jyz1roT27YZYyDfeZ5B5jRN1tp1XRljkKm1Fvxrrf/KFCq6tLTv+ziOl0jkmbjW2hijlGKMob3RsVARViCbYRg450opa23fvz6XqCzLfd9/qkid8RhjlNJrEdmgenVdv6nIWts0TeGcI4TwE8MwaK2HYajrOqW0bRvyzTkLIR4nyrLEZiHEPM8xxsfj8efPn6Io4glQEkKw1n7LdNs2IYRSyjknpVyWZZqmuq5zzuu6QrU5Z855URRlWXZdB1F1XSelfAsQQiCEUEq998657xN8LFFd19bai5j9ZMUYg++GEC7C1nUFGRAeDrHve0pJa9227QeSQwjTNK3rKk6APe89vMg5B6oJIeM4aq2XZSGEwHGhCLQ96PmsIkopWJVSooBwGHjUTzkZY5xz4zjit5QSHFyBf3kRAqSUns/nmyTkmRo5cb15HIf3njGmlKqq6tpyCa/rum+S27at67rvX23bwj4fj0dKaZ5ndiKlhLcfjwchBN7HOYeKqqrC5IgxIp6Uct93IcQ3yTlndPblCt77qqqwPgzDTxUVRVHXNbKD2aWU4HRFUaSUUF5KaQjh/xN8VFHTNOu6xhhRjRgjmpkQMgxDCOHKaVkWkNR13TzP8KgQAvzmFwcXYoxKKc5537+apun7FyHEnkC50YnoCcaYcw5eJKUkhNR1XVVV378g63+e4Go9rfU8z/AvIQQhxBiznti2De9IKdEouC1AWkjoV4BrcP5ropHTVN6OC1FiHvzcgpIWlNLn89n3r67rmqYZhkEpBS9SSt3v96ZpMFVAMlTUdV1ZlkKIa6LBKowxZVlWVfWLg/1ESukyhqqq0olt26BukIwbA25HzjnswmLfv2KMKaV1XbHFGPNr6L95EXjDfUJrjQkhpaSU4vYAVjEJMOkgJ845Ght/fQiQc0ZwSiladxxHIQQmJaYKIaRtW5RUSum9RxLouNvt9ng8UO3/AOj0xdTw/o3fAAAAAElFTkSuQmCC" nextheight="1378" nextwidth="1600" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Think of each proposer building their own "chain”, but at the end of the slot, being merged into one singular (final) chain.</figcaption></figure><p>These groups of proposers are likely subcommittees (like the current ones in Ethereum) since doing this with the entire validator set would be unfeasible. This also means we must ensure that no single subcommittee is just one staking pool, which could lead to censorship and collusion concerns. Another thing to remember is the relatively unsophistication of the fabled home staker - MCP means increased complexity.</p><p>Let's summarise the reasons why MCP has properties worth having:<strong><br><br>Reasons for having multiple concurrent proposers:</strong></p><ul><li><p>Increase censorship resistance (more so than ever, especially with current bottlenecks)</p></li><li><p>Scale the base protocol instead of outsourcing</p></li><li><p>Disperse MEV as no single proposer (or builder) decides on inclusion</p></li></ul><p><strong>Issues that are immediately clear from implementing MCP</strong></p><ul><li><p>Prevalence of competition in ordering (inclusion and ordering) - rise of PGA?</p></li><li><p>Invalid transactions - simulations</p></li><li><p>Hardware requirements increase</p></li><li><p>Data availability of invalid transactions</p></li><li><p>Needing a finality gadget</p></li></ul><p>Let’s review the properties one by one, starting with the strengths. Then, we’ll consider whether the possible issues might arise and whether they’re too grand for MCP to be implemented on chains with considerable technical baggage.</p><br><ol><li><p><strong>Increase censorship resistance</strong></p></li></ol><p>Most blockchains today that have a deterministic approach to finality and consensus derive this from a singular leader that sets the path for what gets included and added to a block (some nuances). Afterwards, a block is propagated, and eventually, most of the validator set agrees to the block and gets added to the canonical chain. In Ethereum, we have subcommittees of this set to enable faster blocks (but longer epochs to get the extensive set to agree). In an MCP setup, several different proposers are building their own local blocks that will eventually be merged. This means that instead of a singular block proposer (or builder/relay, preferably we forgo these in MCP setups), there are now several entry areas into a block. This makes censorship considerably harder (easy to go to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.mevwatch.info/"><u>https://www.mevwatch.info/</u></a> and see the effect a centralised relay has on inclusion). In a world where there are several includers, censorship resistance is hardened.&nbsp;</p><p><em>Current bottlenecks (do note that several teams, including Flashbots, are also working on improving the current situation) are specifically the fact that a single builder wins an auction that a single proposer proposes. This is further exacerbated by a single (trusted) relay sitting in the middle as auctioneer. While the core Ethereum protocol is decentralised, the way we currently get included in the Ethereum blockchain isn't. On Solana, the centralised aspect of the Jito relay/builder is also a legitimate concern they're trying to solve via restaking (the FIRST real yield restaking “AVS”!!). In Bitcoin, this can be solved by running your own full node, which is relatively low effort; however, this does come at the cost of finality. Bitcoin has probabilistic finality and no “finality gadget, " which would be needed to ensure deterministic and fast finality in MPC implementations. Bitcoin relies on the longest chain rule.</em></p><br><ol start="2"><li><p><strong>Scale the base protocol instead of outsourcing&nbsp;</strong></p></li></ol><p>Generally, to solve issues with the primary protocol, much of the actual development has been outsourced to third-party teams to solve problems inherent with the “stale” design of L1s. This isn't limited to just Ethereum, but goes much broader. By implementing MCP, you start to deal with some of the issues previously solved/created by out-of-protocol implementations. In this case, you heighten hardware requirements (but increase censorship resistance) - potentially a worthwhile trade-off depending on the decentralisation needs of the users of the protocol. Anyhow, this is also something you could expect to see on Solana, especially with the centralised aspects of Jito. Furthermore, since you're outsourcing elements of the block building to several parties, the end result is an increase in total bandwidth</p><br><ol start="3"><li><p><strong>Disperse MEV</strong></p></li></ol><p>One of the more unique outcomes of MCP is that, instead of leaving all the MEV in one basket since either a single proposer or builder decides on inclusion, the MEV is distributed among active proposers in a specific block. This means that you no longer have to hope to win the MEV lottery, but rather, with more likelihood, can expect a more even stream of rewards (most companies, which most validators are, would prefer a constant reward structure). It is also generally a better way to ensure that no single party can re-order to extract MEV (the current case). However, this also fits into the censorship-resistant case.&nbsp;</p><hr><p>If you've read any of our other articles in the past, you might be familiar with the term <em>CAP theorem</em>: Three informal properties that you must possess for a distributed system to work as intended. <strong><br><br>C</strong>: This stands for consistency; basically, the UX should be identical from user to user, and users should feel like they are interacting with a single database every time they use the system.<br><strong>A</strong>: Stands for availability, which is what we also refer to as liveness. It refers to the fact that all messages are handled by nodes in the system and reflected in future blocks/queries. All commands need to be carried out.<br><strong>P</strong>: This stands for partition tolerance (or censorship resistance), which means that the system needs to uphold consistency and availability even during an attack or partition of network nodes.</p><p>MCP is one of the best ways to achieve key parts of the CAP theorem (specifically censorship resistance), which are generally waved off as game-theoretic issues. <strong><em>Trust the protocol, not game theory.</em></strong></p><p>Now, positives don't come without negatives, and the CAP theorem works in ways that with something great, something bad comes as well - it is almost impossible to fulfil it in its entirety. As such, let's look at some issues that may arise when implementing MCP.</p><hr><p><strong>Issues with MCP that need to be addressed</strong></p><p>The main issue is generally considered to be the fact that MCP, to some extent, introduces two phases of competition within a block. The first is an inclusion fee, and the second is an ordering fee. The ordering fee is specifically difficult to deal with since in the first phase, the local producer only has his view of a block—and not the whole view. This means that trying to optimise how much needs to be bid to be somewhere specific in a block is a difficult task.&nbsp;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/574d20ee31c115365a144d551169d7f1.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAADiUlEQVR4nK1Ub2jcdBh+8ZP9ItQpNwgq59rJvC8Lyn3YDuc5NNL1cCWl49xGWtbI6dkxhO1OsFkLYeCi2GYVS/2QwhbEu+Idoczdh0LAaZjTsEpzrbt0/ol/ILBuue5uubL1ld5vO0VualefDyF5+eV93ud93vcH2Ay+7wuCoKqqIAiGYeAGAE2jnue1tLS0trYCgCAIhPL/JPB9n2EYjuMYhtF1/f5SNydYqdVWajXC4Xme7/uxWIx0yfO8mzerGyVowK8DESVJCgQCrus24hsimL90aSafJyLIExHHx8cB4PCbr8V7XiyXb6yPoFERSffh8HDPzkghk/l+dpbUe/36tbVzdXREoeOlZ26vriKu3qeC06dOHT148IX2pw7s3l0qFhGR9P25HVv2d8P4SFvgAbhwwVyHAtu23btAxLmLF4cSiYkTJ8SBgdzkZC431cE8j4iXS4tPPArbHoNdu3Z++ZXRMKlh1T0JYrFYNBqNRCI8zyPi5+fO5TVNVdVXuroy2ant22DLQ3CI61rjnpvN56cc55dgMGia/1UExOPxQCBA07QkScTPTzKZz3I5AHgQoC8OGXUHAGynn81mM6RYiqI4jnNdV9d1wzB0XXcc554E5JxlWeTnK/PzM/l8bnLS+ubbs5r2dBu0b4JX9+0pFudHR0dYlgUAWZY5jmNZlqbpaDRKPsnCV6qVW7dvLV1bIi9/N3np6tVUb+87PD/Adr/d3+8sXslmP93XvadxwPM8WZaTyaRlWYqihEKhcDisqup3c3PpY8fk02OdfXtf5jr59OudfXs/OjNxZ0wbRq3UakOJxNlMhqSrB1fJIPl+rWFmOp02TbNQKFAUFQwG0+m04zhEwYK9YP9kV6qV5cqNcqX8T5tMUg8OHhXF46R2RNQ0DQAoinIcp1Ao0DQdDodlWbZte3hoODejvTvxfs8bB/Yf4d77+INDqcSIMgaGYUiSpGmaZVmIuFwuu65rmqZlFUdHpK2boW0zTE9PIyLP91MUZZqmoigMw/A8v7UOrg5RFBHx199/K5YWLv9Y+uLr88XSwuLPP4AoipFIhGEYRVF0XQ+FQgzDkL1tARiTHj+eBuph4Hr5VCpFuuR5nm3bTh32XRCJTaaIZdlkMkmGAREdx/F9f7m81j5h8K32R+DJTaCeUarV6r/u1F9BRuiOyeRaburBkcP8yZNr2ldqf5q8LvwB/ZCzBioa7sEAAAAASUVORK5CYII=" nextheight="899" nextwidth="1533" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>Not only is it difficult, but it essentially (in an auction-type setup) brings us back to the days of priority gas auctions (PGAs). While you do have much higher guarantees of censorship resistance, you essentially bring back what MEV-Boost sought to adhere to—high median gas fees in competitive slots, pricing out others during inclusion, etc.</p><p>There are other issues around transactions than just how you order them (both from a local and global perspective). Here we are referring specifically to part of the propagation of the local&lt;-&gt;global view of a block, and what sending invalid transactions means. Considering that, at the beginning of a phase (before the merging of blocks into a singular, multiple proposer built block), there is no view of what state changes might affect other transactions from different proposers. This means there's the possibility that proposers give each other invalid transactions (even more of an issue if this is posted on-chain, as data availability). It could also be that the parameters a validator in the current MCP set has aren't being followed, such as max gas (and going beyond that). These specific issues are rather simplistic to solve since you need an actor (or set of rules in the protocol) that, when the previously mentioned DA is revealed, you can order txs by fees and take out those with the lowest fees with the same wanted state changes. Again, the issue with this is that we reinforce a problem we had already solved (PGAs). However, if we don't have any mechanics such as auctions (PGA) for searchers/builders to control block positioning, then we just resort to spam and reinforced latency games. Everything we'd also discussed likely breaks the likelihood of preconfs.</p><p>An extra consideration on both Ethereum (post Pectra, so now) and on Solana is the fact that transactions aren't invalidated by nonce w/ 7702 and obviously the lack of nonces (for transactions, not accounts) on Solana. This means that figuring out if a transaction is invalid or not becomes quite the issue - essentially, you'd need to simulate all combinations to figure out what the correct ordering should be, which will likely add considerable bandwidth strain to the network. On Solana, the already decent hardware requirements will likely make this process easier, but on Ethereum, an increase is definitely needed on the hardware side. However, one likely way to solve this on the Ethereum side is that when the merging of subblocks happens, the actual ordering is computed on the execution client (instead of trusting the builder+relay), again, we need better hardware.&nbsp;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/10915b29689b1b014a0612ffa63061bd.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAIAAACMdijuAAAACXBIWXMAAAsTAAALEwEAmpwYAAADW0lEQVR4nGP4DwX//v////DB7a7GoNPHtvz////3798QkiTwHwMwQKjfv3/9//9/0byenjqO8nznz1++/acSYEDm/P3/f/2qWTu2b5o1e/byZUtvXbq0fvniZfPnTu/rmdLbNb2vd2Jn24wJvdP7emdM6J3c0zlrYv/86VNAaMbUVYsXHD+w7/fPn1gsAHsO5IOd21Yf2AcKn0+fP127cqW7vmpKR8OElrq+xuoJLbXTOpvigrxNtVR9nWzCfdz8HCx7qopbi3OaCzO7ygtmttcVpiS8fPbs////X8AAEmIM8Ai4evVaU5laZ63G7Nmz9+/fP7Gvr7WiNNTGMlBHN9LUNNbS0l9HJ97TbXp385S2hunt9eYOngxm/oymPhxWQQyGHjZu/h2VRS+fPTt67NiOHTtOgcHu3bsZ9u/fP2XKlHnz5p09d3Hb+r5l8xt27d67du3ajra2opRERylZBQYGFQYGTQYGNQaGAAP92T1t09obprU3MGg5MvAbMPBoM4ibgBg6rrWF2cePHNm1e/exY8cmTJhwDGwTw8WLFzeAwaNHT/dsXzqlv/gv2FMvnj3LT44v9nDPsrbJtLL2V1Yttnc0EBIW42SuLchUl5NgkNJncEpjsE9ksIljsE9ms4+ozE2vr62dO29eV2envb393bt39+/fj4jk128+tFWZtpSLTJzQPWv27Iz0tPrC3EBNrRQTsygdvWA1zQR9w1AT4+qCzFldLVW5aQwGngz2qQxOaYzRtQzW8XweKWWZKfdu3167dt2HDx++fPny////lStXokTy4YObNq2dDfHB65cvK3IzzMTEbfjFyhxdyh1dK1w8CgL8pne3TGlrmNXVrO0dy+CUzuCSwRBQyhBeaRiS2VCc/fbV6ytXr+7evXsLGFy9ehUlmf748WvT+vkvXzz+8uXrtClTagtz0uKDw7ztA92tgz1t4oPc28oKJrfWTe1o7CzLi3N2cDE09rJx8LCydTE2i3exK46PeP3yJTx7YstoczsnNgrWlXktXbZqYl/v0lkz2hsrK8rzEpLDI2IDEhPD6grz6ooL6ooLKrLS86LDM/290nzcC8KDi8KCymIiJjfUYc8H8JT68MHtzoaA/btXwEVQwb+/f/78/fMXjiB5E39OBgADeAInwAd38QAAAABJRU5ErkJggg==" nextheight="621" nextwidth="1600" class="image-node embed"><figcaption htmlattributes="[object Object]" class=""><br></figcaption></figure><p>On the DA side, as mentioned earlier, another important aspect is the issue of leaking these invalid transactions on-chain (making them essentially free). This further exacerbates the simulations mentioned above before consensus, meaning you can filter the invalid transactions during merging. Some various implementations have been done for FOCIL (sending address rather than tx) work that could likely be reused for this (unless we just trust the simulation completely, although if there's an actor involved here (and not the protocol rules), then it could interfere with simulations by making other transactions invalid).&nbsp;</p><p>As mentioned in the summary, a likely needed aspect of implementing MCP is the fact that we'd likely need a finality gadget that handles synchronisation - this is also what we've alluded to above in the ordering simulation pre-consensus aspect. This also introduces the ability to delay the block proposal for timing games, which we already see during MEV-boost auctions. An effect of this could be seeing other blocks before proposing your own, creating possibilities for sending transactions that invalidate others’ (especially useful for a searcher). If we implement extremely stringent rules to combat timing games, we run into an issue of shutting off validators that aren't as performant as others (meaning more missed blocks).&nbsp;</p><p>Possible ways to combat the timing games could also be obtained from learning from improvements done by chains such as Monad, which utilises asynchronous execution (delayed execution). Here, you could implement a rule that says the full effects of a transaction set from all active proposers in a slot can't be known until the entire set has been constructed.&nbsp;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/a239d2fd4aeb9629582eaa9fa01e5bd1.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAADKElEQVR4nJ1UPavkNhTV/Iap3LhSM5UrVaqmcuWp3Kly58qdO1XuXKoI6qJOpDFpnGYFm4AgsKr2eWGDIAtOCMRdRAiYXchzwPc9r+P3kl32YAbmSNyje+4HWv4D1lrn3LIs8w7LsvQrDvw8z23bwoUD0LPRu66jlOZ5rrXeyBCCMYZzXhQFaG/o+/56vSqlxnH8tEAIIU3TPM+VUoSQLLtZa7uua9s2iiJKKWPsfD4XRVFVVV3XTdNQSqsVQgiI8H8C0zTleZ4kCaX0crkwxuwKY0wURefzGY601tbavu8553EcJ0mSpikI7L1Cv//27td3P/3y85u//vxjY40xekUURVJK55wQwnuvte77XkqJMTaPmKaprmspJWSmtZZSGmMeBL7/TvfffPXi26/vXr3c5wGv4JwTQoqiIIQMw7B5eL1e+QrGGPgeQhjHMY7jpmmEEGVZAv8vi/ZdAT7WK7TWaZqCwDzP0zQxxqBO1+t1K+w0TZTSsiyLosjzfJqmB4EP798/20vLsnjvwYeu6/bOAmOMsdZu/DzP0MR932/3EUS31lJKs+yWP4Ixtv3Nshs8eQNc2E7hA3K7AC3+YBEk3nUdxjiKoiRJsuyGMY7j2Fo7TdP4CEg8hOC93xhACAG8hXqAyejt6x8P5fXeR1EEoZcnZRdCRFHEGHvqZ9M0hBCl1J5Ed+6Hu1cv/76/L8tSSllVFeccrajruigKMLTve2j8NE3hNEkSKaUQQimltVZKxXGMEMqy234UPlpUVVXbtl3XKaVOpxNCiHPeti1MGQyac44xdjqdMMYwH7Cy/ApKKUKoqqqDwP36PZjjnBuGgRByuVy01s45Y8w4jt57cEwIQQhhjDnnIMr2CwJ1XT+fwbIsMKJZdivLknNOKQUHMMbgDLzOew9FNsYopbLsRghJkgTy2LrAWhtCeH6bHgqrVtMopVDA/UAURZEkCUKIELJN3DzP8FYhxFHgsOXnNRa0B2yhg0AIoSzLPM+llN77fahhGOZ5/kQGywqtdRzHoHE4CiEwxhBC21I64LMEhmFACGGMwd+nGtvu+nIBWAyH0fsc/AMFn5COvVaQpgAAAABJRU5ErkJggg==" nextheight="978" nextwidth="1600" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>This considerably limits throughput, since the likelihood of the same transactions being included by more than one proposer is relatively high. The delayed execution also means that despite being “included” in the subblock, the possibility of not getting included in the merged block is possible, meaning that a reverted transaction (despite inclusion) will happen. This mirrors back to the double inclusions mentioned in the beginning. Note that you'd likely need some finality gadget that acts this way (and as such executes, propagates and finalises the block)</p><p>While we've primarily focused on the Ethereum side so far, it is worth noting that <strong>Solana is more actively pursuing MCP</strong>. This has been exacerbated by the fact that Max Resnick is now part of Anza, and Anatoly has been outspoken about wanting to implement it as well. Anatoly recently had a post covering it, so let's summarise parts of their focus and the issues they foresee:</p><ul><li><p>What if blocks arrive at different times from different validators (this could also be timing games)</p></li><li><p>How to merge transactions, again, we've covered this before</p></li><li><p>How to split capacity in a block (max gas) between validators to increase bandwidth to the max</p></li><li><p>Issues arising from wasted resources (via having the same transactions land in several subblocks, also an issue raised above)</p></li></ul><p>Generally, many of the problems in implementing MCP on Solana resonate with the issues on Ethereum. However, Solana puts a lot more weight on optimising bandwidth and performance, meaning that managing block resources and merging blocks matter a lot more while ensuring that consensus stays robust.</p><p>Another key aspect we alluded to at the article's beginning: MCP can also be used to scale the protocol, not just strengthen it. Not only that, but it can also be used to protocolise application-specific sequencing (ASS) via ordering (which we have a lot of writing, see <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://maven11.substack.com/p/the-cross-domain-thesis-part-31-ordering"><u>here</u></a> &amp; <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://maven11.substack.com/p/the-opinionated-application"><u>here</u></a>). There could be a world where, instead of a proposer for XYZ transactions, an app is the proposer and orders its own set of transactions according to its wishes (the world <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/deltadotnetwork">delta</a> is working towards) - or vice versa, the app gives a proposer a set of rules to follow regarding ordering its transactions. Interestingly enough, MEV taxes to applications (the tx originators) together with MCP is also being explored (and a lot easier since not a single proposer controls inclusion)</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/maxresnick1/status/1920522138789802006?s=46"><u>In a recent post by Max and Anatoly</u></a>, they view MCP as enabling tighter spreads (the decentralised NASDAQ idea) via application-specific sequencing. In the current climate, as mentioned before, only a single leader proposes blocks. This means that in a situation where prices move, when using an orderbook, quoters will seek to cancel certain bids. In the single proposer situation on Solana, a Jito auction is run as the proposer has a monopoly. Preferably (as on Hyperliquid), cancels should be prioritised to allow makers to have tighter spreads. Hence wanting ASS to prioritise exactly that for apps, with a single leader they have monopoly to run auctions, with MPC we can forego this. However, in all likelihood ASS in this case is going to be limited to state silos. The presented proposal essentially means that application developers can define what should be prioritised for a specific account (i.e., a cancellation). The highest priority txs that get executed first for that specific account (not necessarily max tip, but instead cancels since they're essential for active liquidity). The idea is that you have a threshold for everyday transactions regarding fees, while certain prioritised transactions can exceed this.</p><p>We also discussed the issue of both inclusion and ordering fees above. Solana seems fine with this. Inclusion fees will go to the validator who included a transaction, while ordering fees will be paid to the protocol (burned). When you merge a block from the many subblocks, you then just take the merged set of transactions and order them according to the set ordering fees (and execute them).&nbsp;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/1ed44dfdbc3629421a2a8c6d42cdcd47.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAY3RFWHRSYXcACmdlbmVyaWMgcHJvZmlsZQogICAgICAzNAo0OTQ5MmEwMDA4MDAwMDAwMDEwMDMxMDEwMjAwMDcwMDAwMDAxYTAwMDAwMDAwMDAwMDAwNTA2OTYzNjE3MzYxMDAwMAozQmzXAAADSklEQVR4nK2UTWjUQBTHB8GLgh4ED1oQFMGLFxUVQVBBseDHQUEEPSgeFPTkRaR+FxWWqtTPuoiVVVaqVulq3aXudgkxDcRNNTpNqWm3qenqsmyaNJlksztJZJNao3T9wv9hmBmS95t5/zcPuDWUy+Xy+XwsFmtsbGxtbb3oKRwOt7S0hEKhcDjc1NTU3NwcCoVYli0UCrIsTxkH1AJACBmG4TiOZVmaphmG8Uee50mSZBjG32dZ9q0nSZJ+D8Ce3P8qMDlzbNuxbW+CgzyMcdkT/qX+AOC6GY5P92Q0ZPzDSXENjA9wrIrNpR9HGurvNWx7dH73yGB/8CNZlnmeF8Vhnu8bGhoSBKGWpcF7+7wqwJ+dPXcCfFNXssvfxN7IcVw0+jBNvO6IvUx0pTrjCY57FwxaLpcpiorH46IoTnEDx8v76UgUrK0H67eArbtSPfToyEipZPk/q+Mq/2Fgx4Z9G1fs2LhiZ6IjZZhI1/RgII7jKIry6wpC6C8hhBMelEqWaWpspieZfFEs5kzTQAiJ4rBpmo5tF8dUuqtjEwCrAFgNQNulBsWwdE0LAiCEPoAkSYqiSE8DAwOTJleidztXL92zZtne+nVH3vVC/+y5XE6W5Ww2S6SI2WCGn8AbV64bpvHTDXi+j/bEMAxFUclkkmVZRVGqANt2XNc9fPLCNwtmP0+8+uy9ZEEQIpFI75s3qQwNli4AddPBwlnn79+xdKQj9FOKCIKgaZqiqO7u7kKh8N3kKqOC29LPVx7aumz/5u2nDnB9Hxzb0TQtm80qijIyOBjvocGS5WBuHahbdKY1Yul6EIAxzjAMQRAkSdI0HXzYE4Cqk0U19SLd+aQz2z9sGIamaaIoYoxt25Hl4nv48eiZeweOXj547FaKfDsmF1HguZhIfRw+F4/H29vbnz17CiH8sYpsu+w40YvH1wOwbhrYNBOQycQnaRTjin86SZLy+S/auGwi1UBjhUJekkZN05yMoiOjLZYQBIH3FCzWCYDrujebGucDMA+AxXMASaSrtlQLuCqEqhlXxzVFURVF1TQdIfSHXWsiRbhSons/Xn1AXHuQvt32elicujW6f6+a7fq/ASb7RgVjq1yxymXrd43zr/QVMHjhJPA3EywAAAAASUVORK5CYII=" nextheight="911" nextwidth="1600" class="image-node embed"><figcaption htmlattributes="[object Object]" class=""><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.anza.xyz/blog/the-path-to-decentralized-nasdaq"><strong><u>The Path to Decentralised Nasdaq, Max Resnick (Anza) &amp; Anatoly Yakovenko (Solana Labs)</u></strong></a></figcaption></figure><p>The setup above plays into Turbine, Solana's block propagation mechanism. Leaders (MCP) use shreds, they send it to a relay in the Turbine tree - relays should have shreds from all leaders. Relays send ping to single consensus leader about shreds - this leader must include large enough fraction of messages and then broadcast + come to consensus.</p><p>With the recent announcement of <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.anza.xyz/blog/alpenglow-a-new-consensus-for-solana">Alpenglow</a>, this implementation might look slightly different considering the single layer of relay nodes. As well as the removal of voting as on-chain transactions (now on-chain). This coupled together should make running a validator cheaper which would likely increase the amount of them, and allow less sophisticated ones to participate. This sounds great for decentralisation, but could have likely effects on the performance of the chain. One questions interesting to ask, with the new announcements is specifically how they plan to deal with faults of validators in a world where we have MCP on Solana. </p><p><strong>MCP in other ecosystems:</strong></p><p>There has also been some work done on the Cosmos side on implementing MCP,&nbsp;<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/adiseredinschi/status/1919790760549089335?s=46"><u>notably Informal Systems has just released a spec for multi-proposer in a BFT consensus model</u></a>. Notably, they use a secure broadcasting protocol, wherein vote extensions force each sunblock from a validator to be acknowledged by other validators. The block building part of Tendermint/CometBFT then agrees on a set of these. This means you have a large number of subblocks from specific validators.</p><p>Sei is also currently working on MCP (and trying to become the first to implement it) via their work on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.sei.io/autobahn-sei-gigas-multi-proposer-approach-to-blockchain-consensus/"><u>Sei Giga</u></a>, which derives part of its design from the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://arxiv.org/pdf/2401.10369"><u>Autobahn paper</u></a>, which we highly recommend reading. The general idea is that data availability is separate from ordering, and made available faster via separate (multiple) lanes before being ordered into a global chain. It differs slightly from the idea of MCP on Ethereum because validators aren't necessarily all providing blocks simultaneously in set slots, but rather continuously and then merged to a global view.&nbsp;</p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/_patrickogrady/status/1910364527952310699"><u>Patrick O'Grady of Commonware</u></a> is also working on an approach to this.</p><p>Lastly, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/deltadotnetwork"><u>Delta</u></a> also has a <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/spjoleh/status/1823382538817060972"><u>design</u></a> wherein the base layer functions as a censorship-resistant bulletin board. At the same time, each application runs its concurrent sequencer, which produces blocks settled onto a global state layer.</p><p><strong>Recommended Reading:</strong><br><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.anza.xyz/blog/the-path-to-decentralized-nasdaq"><u>The Path to Decentralised Nasdaq, Max Resnick (Anza) &amp; Anatoly Yakovenko (Solana Labs)</u></a></p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://publish.obsidian.md/netbound/Multiple+Concurrent+Proposers%2C+FOCIL+and+Preconfirmations"><u>Multiple Concurrent Proposers, FOCIL and Preconfirmations</u></a></p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://efdn.notion.site/Block-construction-session-bd611621250f45948eff05fcf6a34067"><u>Block construction session </u></a></p><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.sei.io/autobahn-sei-gigas-multi-proposer-approach-to-blockchain-consensus/"><u>Autobahn Sei Multiple Proposers<br></u></a><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://arxiv.org/pdf/2401.10369"><u>Autobahn paper</u></a></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <enclosure url="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/35867813b98135464b50162be777c159.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[The Opinionated Application]]></title>
            <link>https://paragraph.com/@Maven11Research/the-opinionated-application</link>
            <guid>jtEVWPt7kQXcCtlTBZ7o</guid>
            <pubDate>Tue, 03 Dec 2024 17:13:31 GMT</pubDate>
            <description><![CDATA[Much of my time in Bangkok was spent talking to and discussing the idea of infrastructure and middleware being tailored specifically to an application’s need - providing a catered and better user experience. As they grow in traction, most applications quickly realise that their customisation and internalisation choices are limited as simple smart contracts. Applications are inherently opinionated about many things, especially ordering in the DeFi case. The idea is relatively simple: the fat a...]]></description>
            <content:encoded><![CDATA[<p>Much of my time in Bangkok was spent talking to and discussing the idea of infrastructure and middleware being tailored specifically to an application’s need - providing a catered and better user experience.</p><p>As they grow in traction, most applications quickly realise that their customisation and internalisation choices are limited as simple smart contracts. Applications are inherently opinionated about many things, especially ordering in the DeFi case.</p><p>The idea is relatively simple: the fat application and protocol are the same, and both benefit each other. There are perfect examples of this already, such as taking advantage of ordering and customisation for a better application. <br><br>The idea comes from the fact that we at Maven11 generally believe that applications are opinionated by default. They all have some idea of how they want specific things to function within their application (often without the power to do so); this could be related to ordering, fairness, distribution, customisation &amp; and the list goes on. To better understand why we believe that applications are opinionated, it may be easier to look at blockchain applications as actual companies (which they often are). Companies in the real world are opinionated about many things and can often be expressive (meaning they aren’t limited/restricted too much). You could compare the current situation for most blockchain applications to that of “companies” in a central planning economy run by a socialist dictatorship. Most real-world companies in modern economies, while they have to adhere to some degree of governmental laws and legislation, their landlord isn’t watching over their every step. This, in turn, allows companies to compete across more axes as they can define and fine-tune a more significant part of the user experience.<br><br>Let’s take an example of a real-life company, in this case, a burger joint. In this joint, the local landlord controls how the seats should be placed, where the windows are allowed, and the burgers' pricing. What business would appreciate this type of overreach? Not many. The fundamental issue with most businesses functioning as smart contracts on generalisable blockchains is that they run into these issues - a complete lack of control and, therefore, a degrading user experience. While some aspects of newer monolithic systems have provided models like local fee markets, even there, much of the customisation is still lacking. In the rest of this article, we aim to present our thesis on why applications are opinionated and how they can become opinionated (and those who are already expressing these opinions).</p><p>All the applications we've spoken to had one thing in common: they were all opinionated about how to service their users best. Can they do so in current conditions in a generalisable environment - in most cases, no. Although application-specific sequencing aims to solve some of the ordering concerns some applications have, we'll cover them in more depth later.</p><p>Conceptually there are simple reasons why an application would want to control aspects of its design that isn’t possible on a baselayer w/o significant changes (either ASS, off-chain or rollup-esque setups):</p><ul><li><p><strong>Static VMs</strong></p></li><li><p><strong>No ordering control</strong></p></li><li><p><strong>Inelastic scaling</strong></p></li><li><p><strong>MEV leakage</strong></p></li><li><p><strong>Global state (good &amp; bad)</strong></p><ul><li><p>Contention, the beauty and the beast of composability</p></li></ul></li></ul><p>We have specifically covered the ordering part in depth in a complete article on the concept of transaction ordering, which can be found <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://paragraph.xyz/@maven11research/the-cross-domain-thesis-part-31-ordering">here</a>. As such, we’ll just summarise shortly why this matters:</p><ul><li><p>Allows for internalising MEV (end the proposer monopoly!! Or become your own proposing monopolist?)</p></li><li><p>Ordering constraints for specific apps: fair ordering, welfare maximisation, priority lane, LVR auctions, frequent batch auctions and swap splits (and the list goes on)</p></li></ul><p>While many projects (most successfully CoWSwap) are utilising batch auctions for their intent batches, something we specifically would like to see on an application-specific level is noted below;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6d5211b98e42f9b30c66b2fc493f5e5e.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAIAAACMdijuAAAACXBIWXMAAAsTAAALEwEAmpwYAAADBUlEQVR4nGO4cuE0Mjp1/PCp44ePHtgryMfp6eYEF7lz/TKEceXC6etXLr548uDFkweP79168eQ+mIRyXz599OLJfZgUiGSAG33n+uVtm9bVV1W0tzb2dLW2tjS2Nte3NtRC0PZN6x/fu/X43s071y/v27nV081JX0czNjLcxcE2KT7W0txEUVY6Ky3V2FDX1src0c46IyXR1Eg/NyMNZMGd65evXDj9+N6tnvaWvOyM1obaxIgwGwO9MC+PtsaG3o622Mjw/JysZYvm97S31FdVzJ42ZeHcWfNnz1y+eP7CubOWL56/bNH82dOmLFs0v6+nY9kikOCm9atnT5uyftVyhrbGBjVlBVsr8+jwEBkpibKiwitnThQlxOtKiOtLSuTGRDUW5kpyc4QG+q9fvWLbpnUQB4F9cwvCuHP98p3rV8AkVBxZCuSDU8cP79u17cqF03WVZfk5WR5ODiZammIsTJI8XIYaajERYbGR4bOmToKZBfIu3N/IJFaEiANIEOVmpM2fPXPK1P4Z0ybNmj11/ryZC+fOSo6PmdzXBTHl6IG9EPVHD+w9emDv9k3r9+3cun71iqMH9u7buRWLBXeuX4ZE97vXz1sbavNzsq5dOTdpau+kqT2TpvYuXT7/xZP7WWmprQ21L5486GlvYWBgkJGSYIABFwfb2MhwbQ1VTXVVawtTuPUIC5Ytmp+SEAdJKtHhIZXlxfduXFu6ZP6qVYvXb1i1ds2yO9cvZ6Wl9rS3vHjyoLGuChLhsZHh9VUVZUWFh/fvhrjv6oVzd65fweKD9auWZ6WltjU2NNZVRYeHFBfmNnbUTJraU99SVVFXCgn0rLSknvYWtGh8fO/Wg7s34RkFwsAXRJ8+vO5pb8lISYzPivEO83T0c4hOi3QLca5sLMvNSOtpb3l87xbELLiJxCBoKoLk1brKsvSUhLKaotrGirKaorKaopD44C2b12alpba3NDy+d4tIQ7GnojvXLy9bND8tMT4tMQGM4jOSQIz46MiUhLiFc2fhSYt4LAAA8I/rdcm2uQAAAAAASUVORK5CYII=" nextheight="562" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Priority “highway” for MEV actors</figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/ca7cfe61463606e7c93c3ee90ff2cdd1.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="356" nextwidth="344" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">“fair ordering” via verifiable sequencing rules</figcaption></figure><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/8428128596fce119feb8cef0161942b8.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEaklEQVR4nK1UW0zbVhhO+zAJpD2gSqs6qFrKw9RpT6XStC0vVGuhY2u5dJdSHgpZIbCGUbYBnRglZFyyshFuzQZNGTHY5BjH4HhZ4xBrBZvAEhJwnSurjRakJkOaVh6218l1GhDjZWzS/3Ds7/j/vvP937EiFgntrLgo+Ji53Fdebqqr87PsLijgWTp/Jq+xTkNY4Lgo7EJrKytV5WUjfQaB51KoIi4KO7dS0zgGQfXqakNXJ2W1kgAIPCdDrMtJAnDhXL766lX47ggJQNTnTUIUZUdRTXXVhXP5em0bARCWopIEnJuV98na3fRsj05XWviWrIK2EZTVKmu3oyj3s/v9ooskAAlR9DFz9zFM1odB5lgkpL3Z3Kj5KBYJCTyHQWZZt4JxOHzMnEzAUo6AZ1GvbcvOyoTvjsRFwU3PAvOY8HDFjqIkAJybzc7KqldXBzxLUZ+XBOCxsBYXhZlJJBYJVZR98Fpurg1YBJ6bRiY2olGJwE3Pyl4/I1jSa9tO5pzAICgWCdE2YqTPQNsI2GTCIIhzsy+dOK692Rz1ef3zjA1YYuHgY2EtRZCnVBIAkU8QCwcFnlPsGq+bnr3V+FlGejoGmbc2N5cZZoGm/3qyFV31Sxa52ecPHqyvqUmI4hrH2aesifVYQhRliy4XF2VnZbIUtbG2RgKwtbmZEMVtArkYh4MEADaZevUd75YV1X9cMzjY0z9wO7Lq88w/YGYdGGQeHjC8d6W4oeH64GBPb19X0O/xzzOsy/kDsEij1lRXqMq/M/b3D3w1g01KKWIp6TM7ilLT+Lf6rs6mRpokgXlM391+/OiRoncK9N3tBIr06bQSZCNIAPSd2mPHXiy/fEnX3oKMmmwI3KxWz8DjlNU62N+TX5BXWPCmFUecdlw6QdTvxyDoPobZUbSjqUlVUjIDwzPwuBMnpifM+Pj3jN1hR9HW+rpWTS0BEAmy4gQMIcNGymq1AQtiGr5WWjJmvEMC4JomXDiOj48m1mNxUUhaJPDcyqI0apEPiHwg4FmKRUI4QEaHDLx7TuA54eGKJGXVL6+jPm94eWnR+aP0+LTWQ4HUOrLsWaDsUudwMEkQFx99eO2K4YsW3Zef325uHh01fqpW9X7TWVn6dnh5UQ5c1OeVYvNsWo84/8rcTzIk8JycziQaDvJuKfpSTFOvbtRWjxnvdOtutX7SMGTo0agqpmCo5UbtL5w31cXtcop8IBYJbUSjTwnof0Jyt9WFB8l7IMOmoSF1ReXXnR2NdZrrVVXd2vYzSqW6ogJHkF/DgZ1R3o5cOCj7tgcUCaWgJEHQ633yW5x1OQvPnr1UWJinVNqAhQBTHobd9eW/rd33QNYiNQ0HJ6CJ/t6ByLIU821//yOBwHMJUTQbjWkKRfH5gvQDBw5nZLxx+jRsMu3vKHsTTN67l3n4hVdPnUpTKMRQ8M8/ft+3UXtbZAOWkzk5GWnP5RzNUpWXvZ6bK9+M/4cgIYpg7N6RQ4cuFuTLvz/aRux7Bn8DE4svxW2k9fsAAAAASUVORK5CYII=" nextheight="863" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Batch auctions to aggregate and settle orders uniformly = reduces front-running, great price discovery, and integrates arbitrage opportunities.</figcaption></figure><p>In terms of live implementations of ordering rules, there are quite a few - some highly successful already, and several significant players are moving towards using ordering rules to their advantage in the coming year. Underneath are just a few examples.</p><p><strong>Hyperliquid;</strong> prioritises cancels and makers over takers by running cancels and post-only orders first.</p><p><strong>Unichain;</strong> TEE builder(s) to ensure no malicious actors in the supply chain with a “highway” for arbitragers.</p><p><strong>Penumbra;</strong> ordered batch auction with an accrued time arbitrage value</p><p><strong>Slinky (Skip);</strong> oracle data at block level (protocol-level) to ensure the application(s) on the chain can utilise fresh (and cryptoeconomic secure) oracle data</p><p><strong>Oval (UMA) and Warlock;</strong> Oracle-Extractable Value auction for the right to act on updated information - specifically relevant for liquidations, but could also work for arbitrage.</p><p>Generally, many of these ordering rules can (and are going to be) implemented on generalisable chains via applications-specific sequencing (ASS); however, some considerable constraints need to be kept in mind, specifically around composability, resource locks and exogenous vs endogenous MEV capture. And certainly also a spectrum of security, we'll cover some of the security considerations and composability settings both for ASS and other setups below;<br><br>While ASS has been pushed primarily (at least as a concept) via bundles, fat TXs and off-chain (guardian) node systems, there are several different ways of achieving control over sequencing:</p><ul><li><p><strong>App-chain</strong></p></li><li><p><strong>App-rollup</strong> (deriving security)</p></li><li><p><strong>App-based-rollup</strong> (if lanes/flags)</p></li><li><p><strong>Fat TXs/Bundles</strong></p></li><li><p><strong>Off-chain node systems</strong></p></li></ul><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/d834903ce5789dadf1fe04940a29091f.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAADQUlEQVR4nK2SW0gUURjHTxdDTfNSWtkde8nswcKibKWCpCLKDImeSrDAMOg5sFbFoJd6kXowS0wiKLpoZbIoKJnXrZ11d2ecbXemnb257c64zs7NmTkndo2I1B6qj9/D+X8Hzv+7HKCJM/+ILvHRcAgn7CRJ4oRdmmF1if95C/7xdVWIQkUIBRgrPkl5/RM4HmO//U8DLYHCc2zQ7ybxmUhIFaJzbc3ZgJ9iMbQ/lq/wnMJzqhCVeZYmHVDhFZ6TZ1iRC4tcWBGmgcJzIseKXCTGhmPsNz4SJ8aGRC4icqwUZdXFDISoJsUQ0hGCCEFNm/X7GISQps26KcpN0zaCCAZ8wEfZgp7PjHvcm8DvsfhpS4CxTnmxOAwWDnh0KTa/dqTJLtx2ubrqWm3N1dqa2iuXL1VfvFZbU1Nd1dL6wDxh6+zuefigBQToT52WJ8+H26Dq0mWS833g/IMBx0txGoPaV1nAGbcdKqImRn8bOkLwQ58JAJCWlpK0FCQnL0tPXZGWmpScnLRt2+bCwoK8vHXnKiuAjzI/HW/rGGzVZUrmJ51DbY7Bdoup2Wpq9nx6GqQHGIqAiqAuYKB/7O9duRxs2pC3fdfuzZs2rslZnbs2Z+263MysjJw12QCA8+cqgY82v+5pGcU6v3j6Jz39tK2LHLhvNTVT2Av3WAdmaqZdeNxAmG+Aet++Kjp6pshQtmFLfnrGqsojh08aSsr2FZ85ZCjeVVBuOHi2ohx4qfFR5zsz8W4IfzNIdLuG28e67mDddyf67rlGHpMjT2jSBhVxQYO+9107So7u3Htga/76rKzM06WGsn3Fx0v2nyo9WLqn6MKxssqKcjDlxaAWn74uO6Hq5sNm10i719FJYc+myLeyQHgpIrHkBXbQ39sDAEhZsSQze1VG+kqQiKXLAVgCUlOTAAAnjh8DQYbwUhYXbnbaR0j7sNMx+oUwOwkz5bQw1ESAtk2HfHri2/yKwnNwVqRJh7HuelNDfePNulv1RuONG41G4+2mhqaG+qaGemPd9Y5HrQBp6nygqkBV+SGhiqCyCCr6ERAhNM1YBeZz/JSQc3mgitG/RhY4iWcTRCQh5nMMM7YBSYjF5Vxe4L4DlOQ9tEP8wEsAAAAASUVORK5CYII=" nextheight="622" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Simplistic Overview of The Different Choices</figcaption></figure><p>Key things to keep in mind between all the various solutions is that there are generally four key security parameters that must be taken into account:</p><ol><li><p><strong>Decentralisation</strong></p></li><li><p><strong>Transparency</strong> or <strong>Privacy</strong> (either can play a big part in censorship; TEE could be used to “trustlessly” enforce rules in the supply chain). The <em>caveat here is that a lot of power is still in the app/wallet pre-ordering</em></p></li><li><p><strong>Censorship</strong></p></li><li><p><strong>Stakes/bonds</strong> (rules backed by economic security)</p></li></ol><p>Looking at the five ways of achieving sequencing control above, generally, we'd flag the issues/powers as</p><ul><li><p><strong>App-chain</strong></p><ul><li><p>Orchestration push, but complete control - need to write everything yourself. Lend itself well to eg. Perps</p></li></ul></li><li><p><strong>App-Rollup</strong></p><ul><li><p>Less push, inherit security, complete control - flurry of SDKs. Composability is still hard.</p></li></ul></li><li><p><strong>Based-Rollup</strong></p><ul><li><p>Less built out, higher degree of composability depending on outsourcing/delegation, less specific control but gain network effects</p></li></ul></li><li><p><strong>Fat TXs/Bundles</strong></p><ul><li><p>Less lift, exogenous MEV is hard to capture, endogenous MEV easier. Might have to change call data of txs, dependent on global ordering rules. Susceptible to exogenous MEV if composable.</p></li></ul></li><li><p><strong>Off-chain node(s)</strong></p><ul><li><p>Less secure, solid complete control, composability essentially impossible</p></li></ul></li></ul><p>In most of the cases above, your likely dependencies will be; the underlying chain, your own protocol or not, are you inheriting some security (ie DA/Dispute Resolution) and is there a need for a consensus algorithm or economic bonds. How much of this is outsourced (and is incentivisation needed?). Also, but not least, are you on contested global state.</p><p>Do consider that most of the app-specific chain or rollups can enforce rules on a “consensus” protocol level, meaning the protocol is built respecting rules rather than forced in. This is also why economic security or verifiability (validity proving) is so vital in most setups. You could argue there's quite some likelihood that based rollup setups with execution flags or lanes could provide the best of both worlds (still unclear aspects though, specifically around execution preconfs with sync composability and ordering lanes). When we say both worlds, we're specifically referring to also dealing with the issue of composability (while retaining control), let's look at the composability spectrum.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/34aec1e47d5e7d7d3c6b180bc1a0f777.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAJCAIAAADcu7ldAAAACXBIWXMAAAsTAAALEwEAmpwYAAADCklEQVR4nE2S+09ScRjGz9bWb9UPtdpMK1dmZc4r3jOzZhpuzhrTDcHLQVGmE4fzRAjea+RoknRQIUeCacd05iVHNFAKFAT1yC2Bo0cKatTWv9Dad7G++/zy3Z69z97nfSC/Cw+SRDgU8LtwtK/nuahzakQWDgV+fv8WJAnS5/E6dwAHXs/q8sxreY9+aWJe/Wx1eSp0uL/n3IoIAITbeej7Qrid4AvZzEYuh5149fLgQE9na3MrXN3WAGdT0mLPRQsRnsmgc9gtQLplXc9KT85ISYiLjbl0ITo5IR7TqP4fvb/nDJLEiELa/eTRqFJG+jykzwNxOWylXCZEeL0ivkQ8UHgzj9/B49TDjXDN0KCYy2GvLMwB6fL8bBYl9dSJ49C/F3X65MaaPmJgMugWZ7FxxQvJ4MCIbAibnPi4sgg1sWoxjQrTqFYW5jCNqqqCph4fW5zF9Nr302pVn0j4dnoSGKBSicmg+/3rR5Akvh54Q4f7fSKhUi4LkoTXueOwWxrhGqVcppTL1ONjr5SjCnSYVc2AyqjFjEpaeWmJEOFVVdDyczILcrNyMtJgJh1m0oUIb35mChgMPX28sjBXUlRY+aD8fuk9h93SJUBQqQQYmAw6mEl32C1VFTSAZ3db+LADaoRrqipoHW0t7dzmLgGiQIfLqMVFt26kJV2HmfSXI2jEQNzfbVv/bDMbTQbdJ/2HIEmgUklkA5vZyKikhUMBz+62w26xmY3hUKCd2/w3ol4RH5VKJOKBXhEfZtLzczIBmalJTaxacAMwroxaPDQo7hIgIIpeEd9qWvO7cHADcX83o5JGvXu7IC+7pKiwvo7RJUCgLeu6enws6Vp8E6tWr13Sa5cwjSo3I52SnCju796yroMWBUlCKZdBEHTs6BEIgmLPneVy2DazMdIxACU5MSbqDMigndu873VDfheOb268m3mj1y75XTjhduKbGwp0GNOoTAad34U77FaA1bRWx6BTUpIuno8uoxYnXIm7U5DX0tRAuJ1A4HfhQoSnQIdBEUifx2G3/gH6pf1s4mhyhgAAAABJRU5ErkJggg==" nextheight="420" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>This is heavily based on the <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/ThogardPvP/status/1843380495314497710">great work</a> by <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/ThogardPvP">Thogard</a> but simplified to provide a simpler explanation of the tradeoffs, if you want the nitty gritty aspects - I heavily recommend checking out his work. Keep in mind that app-chain could also mean app-rollup. The general idea is that while some control is possible in terms of ordering and MEV internalisation on the baselayer with existing contracts, not all MEV is capturable (especially exogenous MEV, which is highly prevalent in intent based protocols). Furthermore, on the baselayer, you're still constrained in customising the infrastructure backing the applications. Let's take a look at what we mean when we say customisation (and specilisation), since there are several aspects that are important to keep in mind for a business (application) founder.</p><hr><p>The customisation part of a chain, often overlooked by many (but a big issue for specifically EVM-chains), is how that affects UX. A great example is the constant approval needed of tokens to trade, and of course the hated EoA. EIPs like 7702 can be implemented (and adjusted) to fit your application needs. However, that's just the beginning of what you could implement; how about changing your VM to one better fitting your developer's needs (and, as such, providing a better user experience). Maybe your chain needs a high degree of security with ZK verification, and the native BNS-128 isn't good enough on Ethereum, so change that. The reasoning here for your own infrastructure (and so many providers offer this now) is that you should be allowed to be opinionated about how you build your business and not be constrained.</p><p>Other things that might be interesting to add for an application could be new precompiles (which can take a long time to implement on a baselayer).</p><p>Another reason, and one generally utilised as the most prominent reason in the past (but has subsided since then), is scalability. Now, we don't just wanna trout the “modular scalability horn” yet again. However, we will note that the elasticity (i.e., increasing gas limits) you're afforded regarding scaling and latency can be a considerable gain depending on the application.</p><p>However, we see this move towards infrastructure control as an evolution that the application takes on as it increases in complexity and popularity (although newly built applications with complete control have seen to do well because they're able to provide a much better UX). The general evolution is likely a 4 step process (or 5 if you consider smart contract into smart contract w/ ASS)</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/5b70d29d7990852fd658c623567f9364.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAPCAIAAAAK4lpAAAAACXBIWXMAAAsTAAALEwEAmpwYAAACf0lEQVR4nLWTT0gVQRzHh4qwKMKgLCnM/khCISVUWoIUvDRZsYSCDl1MEPYQibxWqBeEUbShsacXaRvZgNqcBjrMbanDOwRDHua2WjDkYUll8bkMPmPD/eH22PfsEPVhDzM/fvP7znx/v0XhP0IpFYbh8MuR6sZD+aV8HEelqZ7n5Zfy+aW853m+76t1ylYEpJSc89mZGfvdmzuDdznnIsJ1XWTbdnEqY2xqYqr25FFUgaYmJgkhNAJj7DhOcWlN0yzLgq1t2zzC87zF+UUhhOM4nHPLshBjrFiAEDL3fe7j50/vP5DEsxhjxRE/AgQopRDBGI+OjQohIIdSmrSIMQbOvBgewRgPDQ1lMhkhhO/7CYFirwhZu42U0jAM0zRBb0OB6S/TUkrwhBCCMRZCcM7jY6UClmU5EWBULpejlOZyOdM0kwJSSkopY8xxHLYOyEgpywrETYbSAGzXmhz+Z1DZ+YNgPKAxG1VRSi0Hy6VfEATlX7CwuDD77Wti2P8OZFkW5zyuxTkffzueutaGqreMvRqzIrLZLLQRzkCmruvxXE3SyfTjwb603tPf29Pf25fWjSf3Hzx/+HrCRoZhQB4co5RKKYMg+LEwr5SCSYc2wizGuK4LbS+sFOrbTqGLVZtTB/dfP1F5ta6ioxa17tuqHa5sOpC0iBDieZ7rut3d3bqua5qGMY6nq9SB1Z+rhZVCY1fzmYHU8Vvn0C6EatGOVE3LQHtz+nJ1y5HfTYYF/PRKKSmlFyGlVEoJIf4g0NB5tvVR14V7V1BL1e7OY/W3mzqe3mx/dmPv+ZrkC4QQtm1nI8wI6AEIlxUIw7Dh0mm0Da2xHaFN0SJiZ92eXxBoqITby7hLAAAAAElFTkSuQmCC" nextheight="677" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>This is not the time to get into the complexity, orchestration and cost of a fully decentralised app-chain, but if you're interested in our thoughts on this, feel free to watch our presentation from Denver last year (<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/0xRainandCoffee/status/1764712495531647232">link to slides</a>)</p><p>The clearest and most famous example of the many mentions of specialisation above is the one needing composability the least (one of the downsides often associated with app-specific infrastructure) - the “decentralised” exchange <strong>Hyperliquid</strong>. It does two specific things that benefit its users immensely- controlling ordering and customising its infra to the user.</p><p>On the ordering front, they prioritise cancel and maker orders to provide a better trading experience. On the customisation front, the general trading experience we usually associate with on-chain venues is abstracted away via infinite approvals and one-click trades (ie EIP7702-esque), as well as elastic scaling and a tailored consensus algorithm to penalise inefficient nodes for “CEX-esque” experience (even w/ a larger/decentralised set, I expect this to feel much the same)</p><p>It's just the beginning innings of the game. With other larger players like Uniswap moving in a similar direction (but as a rollup), we expect to see many more similar announcements as time passes.</p><hr><p>One aspect to also keep in mind as we see more applications move aspects off-chain is that we keep the censorship resistance of the protocol (especially with the advent of auctions). There are various ways to achieve this, such as:</p><ul><li><p><strong>Based sequencing</strong> (w/ some nuances depending on the degree of outsourcing, fair-exchange and proposer monopoly)</p></li><li><p><strong>TEE</strong> (obfuscate the ability for dishonesty in the supply chain)</p></li><li><p><strong>Bonds/Stakes</strong></p></li><li><p><strong>Application-specific rollups</strong> w/ decentralised rotating sequencers</p></li><li><p><strong>Mixture</strong> (ie Unichain)</p></li><li><p><strong>Fair exchange </strong>solving via consensusless decentralised protocols against censorship</p></li></ul><p>Other issues to keep in mind as we specialise further are:</p><ul><li><p>With faster chains, how do we deal with reverts? how fast can simulations get (ie can the top of block invalidate the bottom)?</p></li><li><p>If the decentralised sequencing mentioned above is not single leader but competitive, how much of this is latency games</p></li><li><p>Consensus is slow, might make sense to just stream txs (but then latency game as said above)</p></li><li><p>TEE's might push towards spamming (already a massive issue) because of private OF</p></li></ul><p>Generally there are some downsides to taking control:</p><ul><li><p>Lack of composability depending on setup, with ASS a lot (just like chain abstraction) comes down to resource locks.</p></li><li><p>If ASS, lack of own fee market? Lack of VM/EIP control</p></li></ul><hr><p>To give a broader view of the vertical in terms of taking control (beyond the simplistic - go build app rollup/chain), there are other examples of app-specific infrastructure for specific needs:</p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/Spire_Labs"><strong>Spire</strong></a> (building based-rollups, app-specific ones will have much control)</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/AstriaOrg"><strong>Astria</strong></a><strong>/</strong><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/EspressoSys"><strong>Espresso</strong></a><strong>/</strong><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/radius_xyz"><strong>Radius</strong></a>, allowing for app-specific builders (+ shared seq for composability)</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/spicenetio"><strong>Spicenet</strong></a> (sovereign rollup on Celestia)</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/SorellaLabs"><strong>Sorella</strong></a> (LVR auctions in Univ4 hooks)</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/initia"><strong>Initia</strong></a> (Apps can ASS their sequencer using the mempool lanes on each minitia / Skip's Protocol-owned-Builer)</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/magicblock"><strong>Magicblock</strong></a> (ephemeral/based rollups on Solana)</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/deltadotnetwork"><strong>Delta</strong></a> (each app is its own sequencer but with a global state layer underneath)</p></li></ul><p>Offering Application-specific sequencing on a baselayer there are specifically:</p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/SemanticLayer"><strong>Semantic Layer</strong></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/0xFastLane"><strong>Fastlane Labs</strong></a></p></li><li><p>RaaS - in theory, all RaaS providers could/are providing some degree of ordering/customisation control</p></li></ul><p>The fat protocol and applications thesis are one and the same, they merge ever closer together as applications become businesses, and businesses become infrastructure. <br>Whether that is sequencing rules, using a different virtual machine or making custom changes to existing ones (such as adding new opcodes or changing gas limits) is really up to the end developer, depending on their product.</p><p>Something we'll start to see happen (and already is) this year is the move of many smart contract applications to their own application-specific rollups. This is primarily to control ordering (either for priority fee extraction or to provide specialised setups that gets closer to fair ordering). But also the ability to customise/specialise your VM, OPCodes, precomplies, new curve support for ZKPs or even gas limits (e.g. keep all active world state on disk).</p><p>One thing that we do need to mention as well is that there's undoubtedly also a ton of validity in the idea of a “fat wallet thesis” considering their power as the transaction originator, curated interface with revenue share from various protocols - however, gaining ground here is much more complicated because of the network effects we generally see. There are also multiple things to remember, such as wallets are unlikely to change calldata of txs, which can limit aspects of monetisation and things like NBBO.</p><p><strong><em>The gist of the thesis on app-infra and opinionated applications is that opinions matter</em></strong>;</p><ul><li><p><em>They enable applications to become better and more akin to real-world businesses.</em></p></li><li><p><em>Creates better user experience</em></p></li><li><p><em>When applications can conform to user’s wants, users are more sticky</em></p></li></ul><p>If you're building opinionated applications, we'd love to talk to you - please reach out!</p><p>We'll leave you with a great quote to ponder (and chart) from the <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/RyanWatkins_/status/1843791818640720124">Syncracy Capital</a></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/190a5d745c9caa7ad00471e216097ff1.png" blurdataurl="data:image/png;base64,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" nextheight="1068" nextwidth="1178" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <enclosure url="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/56039e4e605ec8cd51df31b74559ff8e.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[The Road To Based Applications]]></title>
            <link>https://paragraph.com/@Maven11Research/everything-on-based-rollups</link>
            <guid>AjH7wlvsuBZQP0Yd5T7H</guid>
            <pubDate>Thu, 01 Aug 2024 16:34:37 GMT</pubDate>
            <description><![CDATA[Based rollups; preconfirmations, commitments and superbuilders. The rise of applications-specific based rollups.]]></description>
            <content:encoded><![CDATA[<div class="relative header-and-anchor"><h2 id="h-based-rollups-101">Based Rollups 101</h2></div><p>There’s been much discussion and excitement around based rollups. The reason for this is quite simple, based rollups are based. Specifically, they allow applications to stick to their underlying layer (+ retain synchronicity) - while gaining several superpowers that are usually reserved for rollups and app-chains (while deriving security). These are things like customisation, MEV internalisation and specialisation. The reason why we generally haven’t spoken about based rollups much in the past is that the implementation ideas in the past were generally centred around overloading the proposers and turning everything into singular chains - something that isn’t scalable in these hyper-decentralised systems. Furthermore, the UX of these setups (in the absence of preconfirmations or soft guarantees) just weren’t up to par for what applications would want.</p><p>In our view, the current dogma around based rollups has changed for the better. However, significant assumptions, what-ifs, and centralisation concerns remain. Underneath, we’ll give a simple overview of how based rollups were planned to work in the past, how current implementations work, and how an eventual ideal out-of-protocol implementation would look (and the in-protocol end-game).</p><p>In the past, the way based rollups were generally thought to be implemented in a way that was likely to either be cost-heavy, put significant pressure on existing proposers (and provide terrible UX) or be dependent on actors and middlemen that were outside the realm of usual Ethereum participants. This was because there were a lot of discussions specifically around having L1 validators also actively sequence and execute based rollup transactions (essentially turning it into a single chain, although with compression happening off-chain). Other ideas have centred around opt-in/opt-out but outside MEV-Boost, which, as we know, is responsible for most of the built Ethereum blocks - making an active integration out-of-protocol much more difficult to manage and gain traction for. As you’ll see later, we believe at least a first implementation of “efficient” based rollups is likely to happen within the MEV-Boost sphere of influence, as it makes integrations and conformity much easier.&nbsp;&nbsp;</p><p>In any of the below examples and mentions of rollups keep in mind that compressions happen off-chains (and data posted to the L1 is done so in compressed form). We’re pretty used to this from existing L2s with their sequencers handling this work (and full nodes keeping the full state). In a based rollup, the compression work is a larger question since, in the below Taiko example, anyone can do this compression. In a MEV-Boost example this is likely done by searchers and builders that are also running full nodes on the based rollups. One caveat to make here is that similar to any other blockchain, the incentive to run a full node has to be created by there being significant traction on the based rollup. Either the amount of activity on the rollup has to be significant enough so that someone does the compression work or that searchers and builders become active there. Or in the initial bootstrapping phases they have to be additionally incentivised.<br><br>In terms of live implementations of based rollups on Ethereum to date, the most obvious example of this is Taiko, which functions quite a bit differently than described above. It also operates in a manner quite different from what a more integrated (pre-endgame) solution might look like. We give an overview of how Taiko operates below:</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/35c3a17865633414a98ddfccd59b6db3.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAIAAACMdijuAAAACXBIWXMAAAsTAAALEwEAmpwYAAADAElEQVR4nJWU7UtTURzHLwUR0V8QUb2ssCAwJFDUKJ96Uy8yw4yIDJ8yRxRmttrwYS5dPixbuZloUxypQ53o1KVzMh+auWHT3Mq18jbv5Z4zd8/c3dxc6K0hvlCD77tzfufz+32/5xzMDUhy0Ubhdgq3w6VFhgZuQLoBicDSmtf765tpWFXmJAkfcvkQDDAowCBI4Oye3QgrTU/PiIzKjo7Jjo7NiIwa6uxAy4DC7U7CsfB1WiG9WldxbKCjYP6LyTg5rtdqDHpd0M/8ByDtbET4vgNJh46E7z94GsOe52Q5cLvNYjYZpj40lZfzj95OxVreXizhFSQlxKddT755I0UirvYhSAPCSTichGMHwIvMzOzomAcJiZy4+Ozo2ImBvlUPjcCSl6a8aGVK966v9cr3uVGL2awd7B0fGdZp1GNajRuQXhr4EPR7XDsA3ICEBB7S5jUvDX7bFpSK5jXG46UBGwArLw1UvWqdbrSzp2+dASkfgqGQAgxi2QEGrQO2Eb5gGR8ZJhYX2NghgTsJxwok5mbNYlnzqbjk89fu8EW19RKxRFxdKRSUFfPELytEwlKDXjdrNMwaDdsBKNwe9DMYhp0JO9mjbK8RCRukEqt5JsAgm2V+enJCKqtvaGxu6+i6lZrCuZejkDc2yeqkktrO9rbB3u62Vrm6W7nVIkjgro1O2UnJRbtOMwgJPOhn2MEhgf+wzJk+jRn0WgH/mUGv9Xtc/aquj+reznYFKxoQIa8wH4LB1ZUAg4J+hj2F1eexkSG1SlwuqBKUDKlVSsV7dbfSap6xmk24zeoGpA/B9UEh5SIdoSrW981NY8bJcUlNZUtjQ5Osrv7N67YWeb+qSyqp5d7PuZQYtWcvhmFYxLmw4ycOX066QOE/2TC3mMlm4wYkDYgtNwXTazW8pwXFPK68QSYSls5MT9oss2NaTVE+pzA3Mz/n7pO8TC4nqzA3Q8jNd0Nq90/sL2Ddon/mBP3MRoPLHhcQlxXxHuWVPH7Iip/PqX9VFfpIdg/4Aw6qm297BjkkAAAAAElFTkSuQmCC" nextheight="544" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Current Based Rollup Implementation</figcaption></figure><p>Taiko employs a separate L2 mempool where searchers participate in a just-in-time (JIT) auction to construct the most valuable L2 batch, similar to how Proposer-Builder Separation (PBS) operates on L1. These searchers bid to have their batch included by an L1 block builder, who selects the most valuable batch. This model can lead to L2 block builders competing to extract maximum MEV, mirroring L1 PBS.</p><p>In this setup, to get Ethereum synchronicity and composability, you would need the leading proposers and the known look-ahead subcommittee to be participants in the based rollup scheme. This is not the case at the moment, and blocks/transactions are, in theory, just forced in - which is very akin to centralised sequencers of today’s rollups.<br><br>An eventual out-of-protocol implementation of based rollups that fits into the current block-building pipeline (MEV-Boost sidecar) with full participation would likely be the next step in achieving the properties that most application developers wanting to build a based rollup are looking for. These properties are generally:</p><p><strong>Properties:</strong></p><ul><li><p><strong>Composability</strong><br>- Atomic Inclusion; guarantees from one or more actors that a set of transactions will be included on domain(s) or none of them will<br>- Atomic Execution guarantees a set order of execution (for example, via pre/post state commitments). It is needed for composability between applications. <br>- Synchronous Composability; cross-chain contract calls.</p><ul><li><p>L2 txs conditional on L1 state are possible today; in the other direction (L1-L2), you either need to prove state is correct at sequencing time (real-time validity proving) or the L1 sequencer set needs to be the same as L2 (hence integrations and collateralisation)</p></li></ul></li><li><p><strong>Cross-Rollup Interoperability&nbsp;</strong></p></li><li><p><strong>MEV Retention/Internalisation</strong></p></li><li><p><strong>Derive Ethereum security</strong></p></li><li><p><strong>Customisation/Specialisation</strong></p></li><li><p><strong>Fork Choices<br></strong>- Fair Ordering<br>- Validity Conditions (oracle, gas token etc)</p></li><li><p><strong>Fast UX (with Preconfirmations)</strong></p></li></ul><p>A noteworthy mention of the MEV retention/internalisation aspect is that in most of the proposed setups, the Ethereum validators (inclusion powers) still hold quite some power, as they ultimately decide what gets into the block (and what doesn’t). As such, they will want to be paid some amount. You can almost picture rollups as searchers in the current paradigm (and as such, can derive some value from an auction).</p><p>What is very clear from the current state of Ethereum (and other monolithic chains) is that there’s a large number of applications yearning for customisation, specialisation and MEV retention while deriving Ethereum security (and synchronicity). We’ve previously covered the reasons for a modular setup quite in-depth in the articles <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://maven11.substack.com/p/the-cross-domain-thesis-part-31-ordering">here</a>, and <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://maven11.substack.com/p/commoditising-your-complements-with">here</a> as well as two recent presentations we did on why app developers will build modular <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/0xRainandCoffee/status/1815066380007530655">here</a> and <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/0xrainandcoffee/status/1764712495531647232">here</a>. <strong><br><br></strong>A MEV-Boost sidecar integration would likely end up looking somewhat like this, keep in mind that this requires that builders integrate with the supported rollups (unless we go straight to a MEV-Boost relay-esque setup, although this loses many of the above powers). The builders would likely end up as increasingly powerful entities, something we’ll get into later. The proposers are also required to opt-in (as they currently do with MEV-Boost), although if profits are higher for proposers running such a based rollup side-car, then others are likely to participate too (as most profit-seek).</p><figure float="none" width="801px" data-type="figure" class="img-center" style="max-width: 801px;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/5a0473508c483aaaa161f55b239f671f.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEZUlEQVR4nKWUfUwbdRjHn798+YvEmOgSFxNcNDo2RVlGtmXi1MleMkkchM1lvm0Mkhl1L45FSRxu4yWABJoOhPE6YWuoTNbhEMGOUVo42l7LXXu99ndtf9felSttx0gKasKZ7gyZGwPiku8fd7/fc7/P77nn+T4QwtzDNCX4+3/ra+/o7NR0tXdormi0zIS16PSpS63NMUkIIM8S3y4IltiLiHxjQ2P2voNHCj7/6FDesa8L9TrdNyeOGf8YCLgZzDqDnPuRAFOCX6vVllbVVNWqq2rVNaoLliF9ROQlnsOsw+uwcxOkj3X8f0AIczxymYb1E5YxykKwlC0sYMGP7g1g7ZZHArAUyTH0lOBX9GAAom1Bjl0pIMixAeRUFBF5liJZihQxultPH48YHrnuE6JtiLY9uK7oPwARo9thKR6fi8fnZuOzLGUjRoZoK+EgSePN/oEbv1jGzAxF0laCthI2wqSIuKUnbukXXu8TbSUSgLCAgxwzE4td76zITIEd6+HjTHCQBMfQM7EoadJVFm9Ql6f1agpoi4FjHO67V1auhVkHfkidIyJPEkYY7mnT/9zgd9l4H5cOkAKwDmANQKu6pE+n02q6mlT5teeebFfvbKpJbVLlFx4vvFinEgNYOcXrsC8BsBEm6Gko7WuvZS2GPk1dGsAbAK8CpAFwDHWppbH3arfLbqgs3tbww5aW2gxDf9ufs7PVZWc7mn+MhUMiRktnkAAM97QZey8zZoPTPFKQk7x5DeS+DZah7ikxxDF0TBJC2EePDo4Ndo4PXnGajXPx6SSAN9PW/v3XrBjAo4O/I9qmmCMs4EUAIewLYV9Y4MOiEJaigYAUi965HZZ4xDATVqX4IkaJgISw026eDGEp6MUsNdbfcyorq7etNSTyzITV52GjkrCAWQD820IJ+dlJ7J7E7iDH8sjFUmQIcwHkCSCP0nYCx7Vpmk+WnKioL23vabvw3bcfvPRKYXa2puXiof256rISh8ngIIyLABb1MDNhnRL8MSkYEXnFaDEpOCX43SxlHTeahge9bkfJ0QJtvbq7Tt1RXtL6/RlDz1WLflAK+oKce3kAS5G03f5rb/9A/8CQXm+4OXT92o1Rg0GW57ekpgCALM+PmIaUjlIaNyoJ0UTZVpCB1+0MckxX97Xkt3Je3r5vXeaBF7fvf33Pp52XtaTZ1NisKqs40zeg87noBU8os2BhciwDCCAPosm0D49Dym5Iz4ENeyE1C5IztL06WZ6PRcKyLN+JSrI8H5+ZXnQcLQMIYW58ZPix94/CC+/Cc5th1UbYlAtpew/nHXkGoKK46PmnnlCVn1/1OHyV90l8ZvrePCIivyJAYntnPqzeCkmvwbPpsHYXvHd41zsZkPDBegDYsXUjAKx+OkmW53nkioi8crTHSXndTh65lvlFdsL42emybXlFe74s2f3FuU0HT56trp/EnrDAB5BHwN4ASjwLfuQkzcro5RjaNKyvLD2vqq5QVVdpO3/6Bxpzxwy1Ht1YAAAAAElFTkSuQmCC" nextheight="926" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">MEV-Boost Sidecar integration of preconfirmations + based rollups</figcaption></figure><p>Keep in mind that the L2 ticket auction is likely to be done in advance (in terms of which L1 proposer is supposed to include what L2 block). This is because the based rollup gateway protocol needs to ensure that the proposer has opted into the based rollup scheme. The gateway will know this since we also have the look-ahead of future proposers in the current/upcoming validator subcommittee (and can see who has opted in)</p><p>There are already a few proposals for how such an implementation might end up looking on Ethereum (both on the preconfirmation level but also with how based rollups would fit in):<br><br><strong>For based rollups:</strong></p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://twitter.com/Spire_Labs">Spire</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://twitter.com/taikoxyz">Taiko</a>/<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://twitter.com/gwyneth_taiko">Gwyneth</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://github.com/init4tech/zenith">Init4</a></p></li></ul><p><strong>For preconfirmations:</strong></p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://twitter.com/chainbound_">Chainbound</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://twitter.com/primev_xyz">Primev</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://twitter.com/NethermindEth">Nethermind</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://github.com/Commit-Boost/commit-boost-client">Commit-Boost</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/lu_ban_">Luban</a></p></li></ul><p>However, there's no clear view on how this is going to be implemented fully (as in all MEV-Boost validators and builders participating), but it's very clear that these things are coming, and they're coming outside of the core protocol first.</p><p>There's also a clear desire to better support based rollups from within the core Ethereum community. Here we are specifically referring to wanting single slot finality but also faster block times - which lends itself much better to based rollups. These things are, as with most upgrades on Ethereum - quite far out. Preconfirmations/proposer commitments, on the other hand, are already in production both on mainnet and testnets - although they're seeing some considerable backlash from members of the community (again, centralisation concerns - we'll get into these more as we continue).</p><p>There are also some other interesting ideas (to provide preconfirmations) that make use of partial block building within a single MEV-Boost auction, by running several auctions within the usual timespan of one. In <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://ethresear.ch/t/based-preconfirmations-with-multi-round-mev-boost/20091">Based Preconfirmations with Multi-round MEV-Boost</a> by <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/linoscope">Linoscope</a> (Nethermind), the idea is that you have a fixed number of <em>faster </em>rounds in the MEV-Boost auction, where you build (and sign) a partial payload (of a block), this signing (from the proposer) acts as a preconfirmation. The full block (with the partial payload(s)) is then propagated as normal at the end of the normal slot. <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="http://docs.xga.com">XGA</a> above also makes use of similar ideas. However, instead of splitting up one auction into more, they split blockspace into two lanes - priority and non-priority. This is done to provide the ability (without enabling too much MEV) of selling future blockspace that is less leaky - meaning validators would be selling access to the non-priority blockspace (for preconfirmations).&nbsp;</p><figure float="none" width="838px" data-type="figure" class="img-center" style="max-width: 838px;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/8a9c6f6f9415d1bd9316b205f10d2c8f.png" alt="" blurdataurl="data:image/png;base64,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" nextheight="1096" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Flowchart of a based rollup within the MEV-Boost pipeline</figcaption></figure><p>Keep in mind that things such as slashing, registry, and pricing are kept out for simplicity's sake</p><p>A preconfirmation protocol, as outlined in the diagram above, could be similar to what the <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://twitter.com/Spire_Labs">Spire</a> team proposed in their Preconfirmation Gateway; <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://ethresear.ch/t/the-preconfirmation-gateway-unlocking-preconfirmations-from-user-to-preconfer/18812">see here</a>. The proposer/preconfer (likely having delegated the sequencer role) is known in advance via the Ethereum proposer lookahead. In the case of no active sidecar participants in the lookahead, a based rollup could likely use a fallback mechanism to elect a sequencer. Other use cases for the fallback mechanism (<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/mteamisloading">h/t mteam</a>) could also be if a participant in the preconf sidecar has been slashed (or is out of collateral)&nbsp;</p><hr><p>While much of the above has focused on the intricacies of Ethereum and its road towards providing a platform for based rollups to shine, there are also other networks that can support them. Below, we will cover some of the places where based rollups can be built and networks specifically built to support them.<br><br>In terms of networks that could support (and are built to support based rollups) there are quite a few. Here is especially worth noting shared sequencers, which are essentially networks for sequencing (based) rollups:</p><ul><li><p><strong>Shared Sequencers</strong></p><ul><li><p>Astria</p></li><li><p>Espresso</p></li><li><p>Radius</p></li><li><p>Nodekit</p></li></ul></li><li><p><strong>Data Availability Layers (w/ Consensus)</strong></p><ul><li><p>Celestia</p></li><li><p>Avail</p></li></ul></li><li><p><strong>Fast Monoliths</strong></p><ul><li><p>Solana (large ecosystem + properties that allow for efficient based rollups)</p></li></ul></li></ul><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6535d6c539d4ec05c405b3be3dd8a9a2.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="542" nextwidth="966" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p><strong>To summarize, based rollups are:</strong></p><p>An off-chain state machine that delegates the sequencing of its blocks to the underlying layer (and its proposers). The sequencer is generally the winner of an auction or leader election (such as Ethereum's subcommittees and their subsequent slots). This sequencer is, in most cases (to avoid overloading), likely to be a proposer (that’s a part of the underlying layer’s set) tasked with inclusion; while it delegates/outsources the execution, constraints and building of the rollup block to more sophisticated actors (builders) - ala MEV-Boost.</p><div class="relative header-and-anchor"><h2 id="h-requirements-and-properties">Requirements and Properties</h2></div><p>Now that we’ve covered the whats of based rollups, it’s worth spending some time on the hows. There’s obviously nothing wrong with launching a based rollup right now, but quite a few changes have to be made around or on the baselayer to really support them in a way that makes them comparable to non-based rollups.</p><p>Obviously, it would make a ton of sense to have based rollups on a chain that is more suited to it (such as one with faster block times). However, since we're obviously interested in leveraging the decentralisation, censorship resistance and users alongside the liquidity of Ethereum, there are quite some changes needed here.</p><p>Although based rollups would also make a ton of sense on a Solana because of the faster/continuous slots, changes would need to be made (ie. sidecar) for sync functions to handle synchronous composability. Some interaction with Jito here (ala MEV-Boost) probably makes a lot of sense as well for the auctions and delegation.&nbsp;</p><p>We've already mentioned a few of the requirements above, but let's cover all of them (to the best of our abilities) that we see as key to based rollups on Ethereum, Solana and Celestia.</p><p><strong>For Ethereum</strong>, the requirements (for proper UX and the gaining of the properties outlined further up):</p><ul><li><p><strong>Preconfirmations</strong></p><ul><li><p>Inclusion guarantee</p></li><li><p>Execution guarantee</p></li><li><p>In/out of protocol&nbsp;</p></li></ul></li><li><p><strong>Integration into the block building pipeline (MEV-Boost) via sidecar for based rollups with preconfirmations</strong></p><ul><li><p>Custom block validity rules</p></li><li><p>Super-builders</p></li><li><p>Spectrum of guarantees (sequencing/validation)&nbsp;</p></li><li><p>Sidecar for synchronization</p></li></ul></li><li><p><strong>Not overloading Ethereum consensus (hence the spectrums above)</strong></p></li><li><p><strong>Non-builder+relay full node runners</strong></p></li><li><p><strong>Faster block times (Vitalik was recently pushing for 2-4s, however; this is probably quite far out as we'd need significant changes to the protocol specs and consensus) - <em>f</em></strong><em>aster block times would also make preconfs less important, although integrations within schemes help improve synchronization.</em></p></li><li><p><strong>Keep in mind that the 12s block time is worst case scenario, most users aren't sending transactions at the beginning of a slot </strong>(<em>median inclusion time likely to be 7 seconds when accounting for latency and end-of-slot non-acceptance of txs within MEV-Boost)</em></p></li></ul><p><strong>For Solana</strong>, the chain actually lends itself extremely well to support-based rollups. It has "fast" (in this case, continuous) block times, which provides fast deterministic consensus (a wanted property in the absence of preconfirmations for based rollups). There are, however, still issues that remain here, for example:</p><ul><li><p><strong>Integration into the growing block-building pipeline in Jito</strong></p></li><li><p><strong>Side-car for sync functions and synchronicity&nbsp;</strong></p></li><li><p><strong>Not overloading Solana validators (already heavy requirements)</strong></p><ul><li><p>Super-builders?</p></li></ul></li><li><p><strong>Decentralisation of block building pipeline&nbsp;</strong></p></li></ul><p>On a side note, we're already seeing based-like structures (ZK Compression) come to market on Solana, alongside renewed interest and funding in projects enabling/building rollups on Solana. ZK Compression, in some ways, works a lot like a based ZK-validium. This is generally because even though Solana is obviously an extremely efficient single state machine, it is becoming rather bloated - and apps don’t have customisation control nor mev internalisation.</p><p><strong>For Celestia</strong>, there are actually a lot of properties that lend themselves very well to based rollups. There's the ease of verifiability with light clients, plenty of blockspace and a "lazy" base layer that provides consensus. There are a few changes that would make it even better for based rollups:</p><ul><li><p><strong>Faster block times for better UX in the absence of preconfirmations</strong></p></li><li><p><strong>Standards for cross-based-rollup interoperability (preferably atomic)</strong></p></li><li><p><strong>ZK accounts for base layer asset velocity (preferably coupled with real-time proving)</strong></p></li></ul><div class="relative header-and-anchor"><h3 id="h-to-sequence-or-not-to-sequence"><strong>To Sequence, Or Not to Sequence</strong></h3></div><p>As mentioned above, there's quite a spectrum of how based sequencing can be implemented natively (or out of protocol) to allow synchronization. This spectrum is quite relevant in the current (and older) discourse since it very much fits into the "don't overload Ethereum consensus" and the grace of homestakers. Many of the implementations that would allow for execution and sequencing guarantees (from the entire or a subcommittee) of validators would very much overload Ethereum consensus. As such, we find it vital to cover this topic a little bit more:</p><ul><li><p><strong>Based Sequencing</strong></p><ul><li><p>Sequencing is done by a subset (or the entire) underlying layer's proposers - meaning that they'll need to run execution full nodes and actively build blocks</p></li><li><p>Overloads validators with state bloat, hardware requirements and vertical scaling</p></li><li><p>Likely to be delegated to specialised actors - the rise of super-builders</p></li></ul></li><li><p><strong>Based Validation&nbsp;</strong></p><ul><li><p>Sequencing is done by sophisticated actors specialised in block building, constraints and pricing</p></li><li><p>Inclusion guarantees are provided by proposers initially, and proposers might validate the execution validity later on (this is likely still an overload of current proposer specs, and we're likely to only get inclusion guarantees as outlined below)</p><ul><li><p><em>In a perfect world, the L1 proposers would be sophisticated enough to handle all load (network/compute) and run L2 nodes. However, this is unlikely, and it is reinforced by their likely unavailability to price pre-confs/based roll-up blocks themselves. Hence, delegation.</em></p></li></ul></li></ul></li></ul><div class="relative header-and-anchor"><h3 id="h-promise-me-i-just-need-confirmation"><strong>Promise Me, I Just Need Confirmation</strong></h3></div><p>Furthermore, as we've also seen, there are, at least pre-faster blocks, a need for preconfirmations. There's still much debate about how this will get implemented, but it's certainly worth considering already. As a refresher, preconfirmations are commitments about future inclusion or execution provided by proposers or delegated actors that have the ability to lock or provide access to state at designated times. In based rollups, this is significant because proposers can provide guarantees that a rollup block will eventually be executed/included. There is obviously likely to be a significant <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://ethresear.ch/t/credibly-neutral-preconfirmation-collateral-the-preconfirmation-registry/19634">slashing of bonds</a> imposed onto actors in such schemes to ensure that commitments are honoured. This is in an ideal world in-protocol since out-of-protocol reverts to social slashing by a small subset of people rather than the entire protocol's social consensus. </p><ul><li><p><strong>Inclusion Guarantees&nbsp;</strong></p><ul><li><p>Delegation of execution, block building and sequencing</p></li><li><p>Guarantees that blocks/txs will be included in a block (but not that they'll be executed by execution clients) or put in a specific order</p></li><li><p>Inability to ensure composability between applications&nbsp;</p></li><li><p>Easier to price</p></li><li><p>Collaboration by the outsourced sequencer (builder) and proposer (relays likely play the usual role, although strain here is likely too)</p></li></ul></li><li><p><strong>Execution Guarantees</strong></p><ul><li><p>Real-time validity proving or collateralisation.</p></li><li><p>Puts a heavy strain on proposers</p></li><li><p>Harder to price</p></li><li><p>Important if we consider that based rollups might synchronously touch the Ethereum L1 state - wherein app composability requires execution guarantees</p></li></ul></li></ul><p>While preconfirmations are quite limited in use at the moment, the wider scope is extremely broad and can provide a rather flexible baselayer for proposer commitments. The current properties of proposer commitments (outside of preconfirmation/commitment sidecars) are limited to state confirmations at block construction (meaning every 12 seconds). However, there are already a few out-of-protocol commitment schemes (such as Chainbound) that can enable the proposer to issue commitments to others about their specific block while supporting a key based rollup property in inclusion preconfirmations. Which, as outlined above, is something we're extremely keen to have. If you're interested in out-of-protocol preconfirmations, we highly recommend <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://streameth.org/zuberlin/watch?session=666828e8f9b8e98b1ec97e79">this talk by the Chainbound team.</a></p><figure float="none" width="700px" data-type="figure" class="img-center" style="max-width: 700px;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/63088aa6bc099a0364433e7d817032a4.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFb0lEQVR4nJWUf2xSVxTH77K5ZFmiLuqMS+OPWGdXtS4hnSD9QdcWbKmpsRHa5AkJha3FhhS7UkqgpIFawIRg7UqV0lZsjbSyFuxqq4GhgmhFagOvvPAG7HUMFlkXZmYy/zBZ6lNsnLbu5Zub85J7z+ece865AIX97ygMRbp12gIykZRL2J2ZSdi/j5RLKCATl3TwwAuDTCyh5JdQ8supxYyjR+q4HPCO3gM+bxyLNAsFG9ev+zxzZ052VgGZ6LrlTC0mkcDcHadzxu3CdfemIxoKJhOxZCLWqWj/H4BkIsZhQbcdN1pFTSWU/AIyacfWjK8L8247bszevzd7/57vrhtnDA0Y3U57HIvIxKJ3AoTnAziDsH+fVq2atP4gE4s0SoVcKrl8cXDG7dJ36ayj5pFh04zbFQ0F28QtHBaEwn65VLI6AEMRt9M+MmzyelyV9DKvx8Xn1eJ3zWFBdVwOJY8Enn8fAFBOLc39MqeCRoWYDB6HXUAmrgII+LzWUbN11Oz1uFKLyRJKvttpZxw9Qti/b3dmZiml0KDvBgBATIZMLKLTSgEA7wFQQaOScgk7tmZs2bRhJYDbaR8aMHo9LgxF8BpQ8siO6clmocCg7z5/tuvHcUuLsNFkNMSxCIYicSyCZwkxGUcPV0DVTFIuYSXAyLDpgcezvMiUPNKUbWzKNtat0wIAGuq/tY6akcBcMhGLhoIBnxeF/V6Py+20u512FPa/tYswFJmyjTmmJzEUWQ4ooeRbzJfwYOVSSaeivY7LaRYKOCxIq1ZhKIIE5vDj+KpRKt4MsE9NWEfNae/oSwCdVuqYnsR7vFko0CgVEJPRKmrisdk44LUo35wBhiJ1XM7y8NGXgOqqKk2H0tjb09+rBwDwebUW86WhAePs/XuP4gv/9bMEaBYKuOzjHBbEY7MF/PpWUROHBRl7e3CngWWKY5FKelklvczY26NokynaZDKxqFXUJBOLWDXV8w99r+1/MQctJ4XPnj1NJmJ//J5IJmJP/3ky0Gcw6LufPE5hKJIWCvtTi0lNh5J84Cu5VCLg17NqqsuppeXU4goadeO6tRCTATEZ1VVVEJPBYUF8Xq2w4cTSJPN5tZX0sgIyMSc7a8fWjJzsLFIu4dNP1pdSCrt1Wq1apVWrdKfVF/rO0WmlOdlfDA0Yjb09AICP17y/cd3aNQDou87IxKK3tSKQSyUGfbe+S9cqatKqVRbzpXJq8ZEK+tCAsZJe9tnmTRlbNuNP28iwSaNU6Lt0tisjAIAtmzYIG078/fhPFPa3CBvfCliqm1LBZR/n82q57OP4QOpOq588To0Mm7RqlVwqaRYK5FJJHIvcvH6t5aQQLw/e747pScf0pLDhxGst9AowZRvTd+m0apWmQ6lVq86c1vT36r0eV8DnjYaCcSySFuzzzrhdz2+fSS0qpOSRqEWFlfSy6qoquVQSng/MP/ShsB/2eeHnFX4BwKcmjkUexRcexRdwO92aAZ8XCczFouFoKIivyUQstZhMLSbxacB/41gkFg2nt8Wi4VeAVV9Tx4Ttcu/3jgnbqLHfcXXcMWEbMw2OGA1u+w23/brj6viYadBtv269eGHMNDhz66dznacs/X3pJFYBwD4vq6Q466MPjx0k1hTkfQfVFO3aVZS589hB4jcVdNqePYf27i3K3Jm/fTt527YqEpFVUsw5RONVlDmujkdDwSXAL2hwBf0Mz1kvXrAMGNv59WflbZZ+g7ZVfMV43nltwtLfJ+Fy1M1N5zpPdTQKuuSyRsaxdn59MhH7K7WIoQjuAQR8D1ZWKAiHgnA0jCIBf9pA/A9DQTixgMUXotEwGg2jKBJM/PZrYgHzP5iZvXsnffxfBtlnbf6d3f4AAAAASUVORK5CYII=" nextheight="988" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Preconfirmation side-car</figcaption></figure><p>Beyond just faster blocks for better UX, there are also other key points that preconfirmations would bring to the table (beyond being used for based rollups). Here are things such as:&nbsp;</p><ul><li><p>Solvers/Chain Abstraction UX</p></li><li><p>MEV mitigation/capture</p></li></ul><div class="relative header-and-anchor"><h3 id="h-proposer-commitments-tickets-and-attesters"><strong>Proposer Commitments, Tickets and Attesters</strong></h3></div><p>The endgame of proposer commitments is extremely broad, and the general idea is that they'll be able to support even more use cases, such as: </p><ul><li><p>Partial block building (multiple concurrent proposers)</p></li><li><p>State preconfirmations (synchronicity/sync functions) + cancellations</p></li><li><p>L1 blockspace auctions and claims</p></li></ul><p>In terms of in-protocol commitments and block proposal rights, there are several proposals and implementations being discussed, such as <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://efdn.notion.site/PEPC-FAQ-0787ba2f77e14efba771ff2d903d67e4">Protocol Enforced Proposer Commitments (PEPC)</a> and <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://ethresear.ch/t/execution-tickets/17944">Execution tickets (ET)</a> (+ <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/jon_charb/status/1805802838028960150">attester-proposer-separation (APS)</a>). ET is seeing significant focus as they would allow for an <em>in-protocol </em>market (lottery) for block proposal purchasing rights. The idea around APS is that you split L1 validator roles into two separate ones - an Execution and a Beacon (consensus) proposer. The former would be tasked with proposing the block payload (the building of this is likely outsourced to builders, or we get builders to play this part). The latter (beacon, or attesters) would be tasked with voting on set block validity rules (especially important with based rollup blocks as more rules are likely outlined) and constrain execution powers through inclusion lists. This is likely (especially in a world of super-builders and centralisation concerns around preconfirmations and based rollup) to provide higher censorship resistance. If you're interested in preconf history (<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/uriklarman/status/1814667932489711757">check this out</a>).</p><div class="relative header-and-anchor"><h2 id="h-theyre-getting-big">They're Getting Big</h2></div><div class="relative header-and-anchor"><h3 id="h-super-builders">Super-Builders</h3></div><p>As you might have noticed over the course of this article, there's a lot of delegation and outsourcing of work to more specialised actors either in the name of avoiding overloading or to ensure better market efficiency. What this means is that, and what it leads to has been happening for a while on Ethereum - a clear road towards putting most of the hefty work in the hands of the builders (highly sophisticated entities). This is leading to what has been coined as "super-builders".&nbsp; The group of current builders within the MEV-Boost pipeline will likely also play key roles both in protocol (and out) for based rollups, preconfirmations and commitments.</p><p>The reason for why is quite clear, we don't want to overload Ethereum's consensus. We can't require every proposer to be as specialised, nor are they able to. It's general market forces, but it does lead to centralisation, and with that comes many risks. This is already in effect today, with 3 builders building the vast majority of Ethereum blocks today (with two of them, Titan and Beaverbuild, building almost 80%!). Proposers today also have an extremely trusted relationship with relays (which is hoped to be lessened by the advance of ePBS, although this is still not clear yet)</p><p>The builders are likely (in a based rollup case) going to be running full nodes on the rollups for sequencing, execution guarantees and block-building reasons. At the same time, they need to be able (in the preconfer case) to price these blocks/bundles correctly (some builders might outsource this preconf pricing to searchers). Inclusion guarantee preconfirmations are much easier to price, while execution guarantees require significant sophistication, and are still an open question.<br><br>On the subject of based rollups, a super-builder can generally be thought of as a specialised actor that isn’t building for a single chain (Ethereum) but a group of them (Ethereum+Rollups). This is needed, especially if we want intra-block synchronicity and cross-domain rollup interoperability. To some extent, you could also view Optimism's Superchain sequencer/builder as a super-builder of OP-Stack chains. As well as the decentralised sequencer networks of Astria/Espresso (but more multi concurrent, if no single leader). An interesting aspect of the delegation to builders is that a ticket holder of multiple rollups can provide inclusion guarantees for synchronous composability across these domains.</p><figure float="none" width="765px" data-type="figure" class="img-center" style="max-width: 765px;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/70e56527b4be137a07f28b4acd11693c.png" alt="" blurdataurl="data:image/png;base64,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" nextheight="1370" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Super-builders and their strain</figcaption></figure><p>The term super-builders could also be used to refer to the <em>extracurricular</em> activities that they might take on outside of their original duties (building blocks!), such as commitments, and preconfirmations.<br><br>In all of these cases, we likely need significant bonds (stakes) for builders, especially with the growing work delegated to them. Preferably, a lot of these functions outsourced to them should also be provable on-chain (in-protocol) to ensure fair, robust and correct slashing. This signals an increase in horizontal scaling on the builder side (which Justin Drake offhandedly said they were fine with?). There are quite some worries here, such as multi-block MEV, a builder building for way more rollups than all others (or better at extracting MEV), and possibly out-bidding all other builders consistently. This further sophistication and optimisation are also, as with everything, going to lead to further centralisation and a higher barrier to entrance for new participants (unless they're Citadel). One thing that does seem quite clear is that at least Inclusion Lists (IL) are sorely needed in a world where builders are empowered even more.<br><br>This is all on top of the fact that the flow is increasingly moving off-chain/towards private order flow. Builders with exclusive providers (and ones that are integrated) do much better than the ones without, and these few are also the ones likely to profit the most of any based rollup integrations. This could also be worrying in the case where some applications (or Telegram bots) might have a rollup and also have exclusive flow towards a builder. <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=%C3%96z,+B">Burak Öz</a>, <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Sui,+D">Danning Sui</a>, <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Thiery,+T">Thomas Thiery</a>, <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Matthes,+F">Florian Matthes</a> highlight these issues well in their recent paper <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://arxiv.org/abs/2407.13931"><em>Who Wins Ethereum Block Building Auctions and Why?</em></a>, especially around the high barrier to entry issues presented above.<br><br>An interesting caveat to this heightening of work put on the builders is that in terms of profit distribution, they're (at least on-chain) the ones receiving the least. Although since two of the three key builders are also prop shops the searcher profits are obviously much in their camp as well. Even the non-trading builders are likely to have agreements with searchers for revenue share since they don't trade on their flow. Currently, as pointed out by <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/ballsyalchemist/status/1815596472785641838">Yuki</a> (Sorella/Fenbushi), the MEV to non-MEV profits are split roughly equally there's a large amount of profits kept on the table for applications, which often end up in the hands of proposers.&nbsp;&nbsp;</p><p>One thing that it does make extremely clear is that there's a huge opportunity for applications (or projects) that allow/can capture (meaning internalising) their own/others' MEV. Clearly, in this day and age, with the amount of economic activity on-chain, it will likely mean they can outcompete those that cannot. These margins left on the table are opportunities for protocols that allow applications to become better and more efficient.</p><div class="relative header-and-anchor"><h2 id="h-how-would-an-application-build-their-app-on-a-based-rollup">How would an application build their app on a based rollup?</h2></div><p>As mentioned much earlier, there are quite a few reasons why you'd build an application as a based rollup—especially if you're already entrenched and deployed on the underlying layer. Let's take an example of how an application might launch as a based rollup while keeping its existing contracts on the L1.&nbsp;</p><p>In the case of Uniswap, you could have the <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://docs.uniswap.org/contracts/universal-router/overview">Uniswap Router</a> live in the based rollup, and have applications make calls through the rollup (meaning Uniswap would get to hopefully internalise part of the flow that runs through them via an auction). For example, an intent protocol that would want to touch L1 Uniswap liquidity would have to make the call through the router on the based rollup.&nbsp;</p><figure float="none" width="658px" data-type="figure" class="img-center" style="max-width: 658px;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/994e006ebe0c0ad8705b504a4bdc457c.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="1491" nextwidth="1456" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Based Uni-chain</figcaption></figure><p>This would likely also play alongside synchronicity to have functions created as a result of based rollup actions that could be executed on the L1. This would be interesting since applications would have access (at least read) to Ethereum and in the future, possibly make calls to and from its smart contracts. This is something that especially Uniswap would want since many applications are making calls to its routers/contracts every single block (think most of the intent protocols, and many others). The same goes for Aave, Maker and so on.</p><p>In the case of how a Uniswap (and all other applications that would want to internalise their MEV revenue) might pick a sequencer, it would likely be one that is willing to pay to sequence a block - which would mean returning some value to the application. In a world of a few of these types of actors, the likelihood of it reaching the exact total amount of possible returnable value is quite low, unless all actors have complete information symmetry between them and are able to all bid to the upper limit (although at this point you'd expect some collusion to start happening).&nbsp;</p><div class="relative header-and-anchor"><h2 id="h-future-research-and-ending-thoughts">Future Research and Ending Thoughts</h2></div><ul><li><p>As is probably clear throughout the entire article, there are significant assumptions around how this is all going to end up and how it affects certain aspects of the protocols we use today. The timeline is also unclear, especially when its related to things in protocol.&nbsp;</p></li><li><p>However, what is clear is that there’s a large ecosystem of applications on very well-developed monolithic chains that yearn for the ability to customise, internalise, and derive security while being composable.&nbsp;</p></li><li><p>Order agnostic sequencing for specific applications (ie. see <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://maven11.substack.com/p/the-cross-domain-thesis-part-31-ordering">our ordering article</a>) - not just MEV internalisation, but also verifiable sequencing rules, frequent batch auctions, fair ordering etc.</p></li><li><p>Rollup specific fork choice rules (eg. valid blocks only if oracle pricing update)</p></li><li><p>Optimal block validity (beyond highest fee), can be quite arbitrary (something different than =&gt; maximise value for example)</p></li><li><p>Block builder sophistication and horizontal scaling needs more research around the danger (+ multiblock mev, block bids); how does this change with opcodes/gas limits/VMs/fork choice rules specialisation.&nbsp;</p></li><li><p>Partial block building + Multi concurrent proposers</p></li><li><p>Constraining block builders with in and out-of-protocol Inclusion Lists</p></li><li><p>Pricing for non integrated builders if delegated to (out delegate to searchers?)</p></li><li><p>Rollup payment for orderflow</p></li><li><p>Continuous block building (<a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://jito-labs.gitbook.io/mev/searcher-services/shredstream">ala Shreds on Solana</a>)</p></li><li><p>Timing games and effects (+ <a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://x.com/nero_eth/status/1813968765778034983">attester wrong head votes</a>)</p></li></ul><hr><p>If you're an application currently living on a monolithic singular chain and you're interested in exploring how you might be able to start taking advantage of aspects of modularity (as we've touched upon many times over the past year) while staying composable and aligned with the underlying layer, feel free to reach out to us.&nbsp;</p><p><strong>Further Reading:&nbsp;</strong></p><ul><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://research.chainbound.io/examining-the-based-sequencing-spectrum">https://research.chainbound.io/examining-the-based-sequencing-spectrum</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://ethresear.ch/t/based-preconfirmations/17353">https://ethresear.ch/t/based-preconfirmations/17353</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://mteam.space/eth-sequencing-preconfs-resources/based_rollups.html">https://mteam.space/eth-sequencing-preconfs-resources/based_rollups.html</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://github.com/spire-labs/poc-monorepo">https://github.com/spire-labs/poc-monorepo</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://ethresear.ch/t/based-rollups-superpowers-from-l1-sequencing/15016">https://ethresear.ch/t/based-rollups-superpowers-from-l1-sequencing/15016</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://scalability.guide/posts/forced_vs_based/">https://scalability.guide/posts/forced_vs_based/</a>&nbsp;</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://blog.20squares.xyz/preconfirmations-splitting-the-block/">https://blog.20squares.xyz/preconfirmations-splitting-the-block/</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://mirror.xyz/preconf.eth/3SXageNPpcQMz8L2YfW5ipvthNl-InPzaPAfb3LxwqA">https://mirror.xyz/preconf.eth/3SXageNPpcQMz8L2YfW5ipvthNl-InPzaPAfb3LxwqA</a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow" class="dont-break-out" href="https://vitalik.eth.limo/general/2024/06/30/epochslot.html">https://vitalik.eth.limo/general/2024/06/30/epochslot.html</a>&nbsp;</p></li></ul><p>Thanks to Mathijs van Esch (Maven11) and mteam (Spire) for review.</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <enclosure url="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/b5b9770cd42817fd430c9efc18f3f367.jpg" length="0" type="image/jpg"/>
        </item>
        <item>
            <title><![CDATA[Commoditising Your Complements With Modular Architecture]]></title>
            <link>https://paragraph.com/@Maven11Research/commoditise-your-complements</link>
            <guid>UpZXtNRrNwDXUZ5OFj8t</guid>
            <pubDate>Tue, 09 Apr 2024 00:00:00 GMT</pubDate>
            <description><![CDATA[Commiditising your complements while retaining control. Ways to customise and specialise, at a lower cost.]]></description>
            <content:encoded><![CDATA[<p>In our last article, we primarily focused on the concept of transaction ordering and how it can be used to an application's advantage through customisation and specialisation. In this article, we will start to touch more upon some of the other possible avenues you can go down to optimise your environment.<br><br>However, before we start digging too deep into the various specialisations and customisations that open up, we find it pivotal that we explain part of the microeconomic reasoning behind doing so. Here, we are referring to the idea of <em>commoditising your complements and bringing value back to the protocol and its users.&nbsp;</em></p><hr><p>The wider crypto community has long had a complements problem. The vast majority of products, infrastructure and security derivable haven't been commoditised, and building applications with more control is expensive. This is changing.</p><p>The idea of commoditising your complements was widely popularized as a concept back in 2002 by Joel Spolsky (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.joelonsoftware.com/2002/06/12/strategy-letter-v/"><u>Read the entire piece here if you're interested</u></a>). The core goal of it is to increase profitability, innovation and user acquisition. This is a result of commoditising your complements (the things your applications rely on) e.g. API costs, hardware, and user acquisition (for example, offering some free software that gets you into their ecosystem) which can also lead to success for things you're either reliant on or directly involved with.</p><p>What we're starting to see happen for several different parts of the modular stack is that there are several competitors for every single service. This also means that competitors now have to start to differentiate, be cheaper, white glove services or give out grants to attract new developers. This is a vicious cycle as you're forced to give away significant incentives or time. One method to attract developers in this case could be to develop open-source software that is competitive (and cheaper/free) that acts as a funnel towards the project. A good example of this is the creation of various SDKs such as <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://rollkit.dev/"><u>Rollkit</u></a>. We are starting to see now that data availability, to some extent, is commoditized (there are obviously degrees of quality to that blockspace which we won't get into right now). This commoditization also means we're seeing a large influx of rollups of all shapes and kinds being developed. This "commoditization" of blockspace (specifically data availability, but we expect to see this happening with other parts of the modular stack as well) led by lower prices, has&nbsp;increased demand.</p><p>Another example of this we like to use is sequencing, and how that relates to Rollups-as-a-Service (RaaS). <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/0xRainandCoffee/status/1753124765848785119"><u>As mentioned previously</u></a>, we see shared sequencers as the premier RaaS providers of the future. They're able to provide the service much cheaper with the added caveat of composability. Beyond that, it also makes it a lot easier for the RaaS provider (the shared sequencer), in this case, to monetise via economies of scale. Shared sequencing and those aforementioned economics can be compared to some extent to the way Visa operates. It is essentially a volume-driven business with relatively thin margins on a per rollup business (although you're able to take a sequencing fee, and perhaps some notion of MEV). Visa's margin is quite thin, yet its revenues are substantial. If we could make a prediction of where we see the vast majority of RaaS customers going (beyond the ones needing very specific, white glove services), we foresee them going to shared sequencers such as <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.astria.org/"><u>Astria</u></a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.espressosys.com/"><u>Espresso</u></a>, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.theradius.xyz/"><u>Radius</u></a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.madara.build/"><u>Madara</u></a>.<br><br>Beyond lowering the cost of your complements, commoditising your complements also ties into the idea of growing the market around you (the things you are dependent on). This will lead to creating value for yourself; while creating moats and monopolistic tendencies around your product. We especially see this in Web2 with open-source software, though this is likewise becoming a trend in Web3. This could also be something as simple as a Tesla wanting to lower the cost of making batteries since they're dependent on them in their cars. Or, in blockchain terms, a chain wanting to lower the cost of key aspects of it; such as having low-cost hardware sample data availability (e.g. Celestia)<br>On the topic of "growing the market" around you and, as such, growing yourself, one "crypto-native" idea of growing the surrounding market we see is airdropping to the protocols you are utilising in your setup. This is likely to grow the user base of the underlying and direct users, narrative, and attention towards your product. After all, at the end of the day, one of the most powerful aspects of blockspace is its alignment. Although, realistically (in a perfect market), it's based on quality (deterministic, block times), ease of verifiability, liquidity on top of it, cost etc.</p><p>Inefficient systems, high costs, and the inability to customise applications stiffen innovation. Commodification removes hindrances to innovation and allows developers to think outside the box, as they're not held back by costs and shackled to a set rulebook. Crypto is more BD/attention-driven at this point, but as the industry matures, this becomes more vital.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/f4e6dcb19fe42ea3ae20626d90926d2f.jpg" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p>This can also be applied to how we build applications on/with blockchains. I started touting this idea during and before ETHDenver, starting with the idea of controlling ordering (while retaining security) as an application - and how this can help monetisation, customisation, and valuations. We think a few general examples will help explain how and where you can start to see this commodification happening and how you can take advantage of it.</p><ul><li><p>Data Availability (Celestia, Avail, EigenDA)</p></li><li><p>Rollup SDKs (Sovereign, RollKit, OPStack, ZKStack)</p></li><li><p>Shared Sequencing (Astria, Espresso, Superchain etc)</p></li><li><p>MEV-alignment + Auctions (SUAVE, Intents)</p></li><li><p>Economic Security (ICS, Eigenlayer, Babylon)</p></li><li><p>Solvers (Outsource execution and pricing)</p></li><li><p>VMs (zkVMs)</p></li></ul><p>Now keep in mind some of these have been commoditized already to a certain extent, while others are still to be. Some (like solvers) are less likely to be and are instead forced to be incentivised to present the best possible outcomes. Although, there's a case to be made that solvers are likely to become commoditised (as market makers have been) over time - although, as with searching, there are always ways to improve (but less "clear" in a perfect world).</p><p>Specifically, regarding the latter commodification of zkVMs and its effect on the surrounding complements (such as rollups), we're seeing teams build generalised zkVMs rather than custom circuits. This is becoming possible by running the rollups' State Transition Function (STF) in Rust through compatible generalised zkVMs such as <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.risczero.com/"><u>Risc Zero</u></a> and <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://succinct.xyz/"><u>Succinct</u></a>. While a fully-fledged custom circuit zkVM for a certain blockchain VM is definitely more optimised, generalisable ones are catching up. This also means less maintenance and upgrading as the VM in question progresses. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.sovereign.xyz/"><u>Sovereign Labs</u></a> (one of the SDKs mentioned above) is going down this route. This provides a large degree of customisation on the application logic (such as custom/specific changes) while retaining the scalability and security of ZK. Another important point to add is also on the ZK acceleration part of things. Optimising software and hardware acceleration for specific schemes, algorithms and VMs is much easier for a generalisable VM than for specific use-cases where a custom circuit setup is used. Integration efforts are also likely to be much easier, and more prudent for hardware acceleration companies since there would be a larger possible customer base to tap into. This is something we're already seeing with companies like <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.ingonyama.com/"><u>Ingonyama</u></a> where integrations with specific highly utilised products are prioritised. This means as a user of a generalisable zkVM, your "customer support" is generally going to be much better.&nbsp;</p><p>While many of these zkVMs are providing it open-source, one might ask where the monetisation comes from. One thing that has become quite clear is that, especially in web3, monetising software (specifically open-source) is quite difficult (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://maven11.substack.com/i/136109205/raas-sdks-and-cross-chain-applications"><u>as covered here</u></a>). However, as explained earlier in the commodification of complements, providing open-source software by for-profit companies is not a new idea; rather, it is used as a funnel. Risc Zero is a great example of this, utilising their open-source zkVM to funnel developers into their ecosystem, who are all potential customers of "monetisable offerings" such as<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dev.risczero.com/litepaper"> <u>Bonsai</u></a>. This is a trend we're likely to see also happen with Succinct, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.modulus.xyz/"><u>Modulus</u></a> and other ZK companies.</p><p>The baseline is that as the prices of a product's complements decrease, the demand for the product increases. So, if an Ethereum with higher gas limits and block sizes, alongside pruning and keeping active state on disk, in memory, would decrease the cost of using Ethereum - the usage of Ethereum would, in turn, increase. And the greater the demand, the larger the profits.</p><hr><p>To give a clearer overview of how we're looking at utilising commoditised complements within the modular stack, let's look at how this could potentially look for an application developer looking to build an application-specific rollup to take advantage of customisation. It is important to note that to an end user, this optionality in design choices will all be abstracted away. Essentially, the end goal is to provide web2 UX but with web3 security.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/59ad76ccc40457f89640075280796aa8.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAIAAAAUMWhjAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEwklEQVR4nK1VbWwTBRi+EP2hCfzwD/4ymBgxiomRSAxBEzFAEAUcDDLZHDCarEhQMCkElS1MKZGPwOgYWzfHvtjarW1oujZdbTPajl52u+6u3rW36/V6u2/v1uvWyRITEwxcLGNujCxc3n/35p73ed7nfQ6QWeb/lZN4AkPq669brVY+Qy3Y84wFLAbgcjjKDxqMR4/jCJyT+OcMoHATBIY03mgc9HoVbuL5M3hEQiAxVBW5vCrnJF6v5QDwGYomksWSWUZTRFXkZJb55uxPTpcjHouO3ouOjcQIDFkOwN+z9x88+KdYMsukIDCNwInRkYpdJU0Wi6On22W3+T3uSDCwDBKAua52X8nuqq/LD5TuOXLoIAaPOBsbQs7+FAKDwYDCTRS0ybwq60Ith8G855WVL+VVGU+MMRRJYAhDkfp3+QxV9KvIZpcPsG3zJ7Mz0zgC8xkqEgxEggEUAh9tm9UUUVPEnMTrbHRaej0NQGSzJIbSRBJHYJpIMhRJYqh+CiSG8hmKxFAcgVtuNPx89ESw1wEOhx093SG/z+NyhPw+v8c96HEvYVNdhKLENJHE4pDMMlxmnMuMyyxzv6D13Gx+E1j51cYtXe1tZ0zfX75wvtpQZa6rDfl9kWDgKdcOFPWd2ySyWQQa9Xs8EsuqkqiTiHq8Y5HhoiyzM9OzM9MFbbKgTT5l//MPTaDTMssQyMiV05U1xi8azh42mw5hcaigTd4vaAVNkVlan6bo3QGX8+7iDn4MkJN4W3dnWenemxbLQE9jxccvG7e/enjzymNfvgVGh2zdnW3NTXf67cV+cDjc29lRc+ZUR6sVHA4vzSAn8ZfMv2zcsP7Srxe9Pde3vQPsfH/F5rWAcde6JAJB98LR0CAcCzPjGJcZp3AYjkXMdbXmutrjxuoBl/OZGNzps7e3NrU1NyPg3cidloDNMuRojPn7CDQuZam8Ik6pyn9KErFwqNpQddxYvfvzHbbuTt2s83Y5fwdz3f1XfoqhKEkQpyYnVZ5nyVQGR0F/Pxr1UnhclUQsDnW0WutqfrRcvTJ6L5qTeJHNFsOxePlPAAh0Wh8hm07hYxCJIQKVTiTi1/raIQQSKIpE4VQcFGhCH1afSU9GPkO1Nd80nfx28NFlDLicOAIvGtfVhqqy0r22210zee3UtfPAay8cPGeaUhWRf/g2k/xDoImC9qcqsqrITpDjJIaiEGhtsJwxnaz94bS5rrbaUNXa1DjocS8AkJO4AZeTxBCawHMSHx0NN3l7EziicBP6zycn8SPR6G1rJx5HcARmKFKPrJwk5FVZFTlV5HR9BDq9AEB2nEjjKYak/G5PYMA3FAwmYhAERn2/u90+RzqZwHH0UGXlR5++bjSVDrqdoN+bgkCBTjNkks9QehQWV/0EgEjT05p08Vzzhrf3v7d257o3dmxaX75lk+HDd8tqTJcVgc6mU9l0UpPl9t+u7r2wbX/DvnZrvaO+3nb9ashhD/TcDtp7U3FI38oiADnh1LGLa1ZvBYBVAACsANauevGDNau3njCc15THTtdkueFWfZvdqoqcpkhzv7hEVOQVoaulr6LEdGD3d3u2G0s/O7Znu7G8xHSryZ5XhLmdQz5f2P8wIfR0WQzgX9AZHHhHyziaAAAAAElFTkSuQmCC" nextheight="1188" nextwidth="1600" class="image-node embed"><p>In this case, an application built as infrastructure (rollup) has outsourced much of the work to its complements and is instead focused on providing the best possible product and user experience without having to deal with orchestrating everything that makes an efficient blockchain, efficient.&nbsp;</p><p>What this also signals is that the ever-famous <em>API Economy </em>of web2 seems to be coming to crypto as well, slowly, but surely.</p><hr><p>Now, when you open up and commoditize the complements you surround yourself with, you can also customise and specialise your specific infrastructure and environment to your application and, therefore, the end consumer's needs. This is specifically something we covered during our last piece on ordering. However, there are other important aspects and needs of developers that go beyond that. One point that is important to get across is that offering choice is not a bad thing. Choices and free permissionless markets are in our opinion extremely vital for innovation. Ultimately, at the end of the day, customers will, through market forces, settle on some number of products that they deem viable.</p><p>A few examples of this are (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://paragraph.xyz/@maven11research/the-cross-domain-thesis-part-31-ordering"><u>beyond the </u><em><u>fair </u></em><u>ordering, verifiable sequencing rules and MEV-extraction ideas that we presented in our previous article</u></a>):</p><ul><li><p>Resource Pricing Efficiency (beyond the fees paid for complements)</p></li><li><p>Warehousing of blockspace</p></li><li><p>Custom OPCodes, Precomplies, Curves (e.g. <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://alignedlayer.com/"><u>Aligned</u></a>-esque setup)</p></li><li><p>Alternative VMs</p></li><li><p>Gaslimits &amp; block times</p></li><li><p>State DB/Merklelisation optimisations - hardware changes</p></li><li><p>Formal Verification</p></li><li><p>Monitoring &amp; Response w/ Fraud Proofs and Assertions on an ordering level - there's an entire discussion to be had here on "good" censorship as well.&nbsp;</p></li><li><p>Oracle Extractable Value (OEV) w/ Protocol-Owned-Oracles (<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.bbo.exchange/"><u>BBOX</u></a>/<a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://twitter.com/warlock_xyz">Warlock</a>). Providing this with high degree of "security" can be done on a rollup level much easier.</p></li></ul><p>One very important fact to note is that the commodification of complements is not always used in a collaborative or "friendly" way but rather as a way to make competitors <em>irrelevant</em>. These forrays can be used as attempts to commodity another project elsewhere in the stack, or even defend against others doing the same. This is also visible within the crypto VC space as well, for their portfolio companies (whether unintentional or not is a different discussion); such as the high rate of releasing open-source software that directly competes with others (and helps portcos).</p><p>Crypto applications have for long also been either prone or likely to participate in vampire attacks on protocols that might have common interests with one another. While in theory, if either side grows, they all grow (and their complements with them). For example, AVSs grow if Eigenlayer grows. Rollups on Celestia grow if Celestia grows. Ethereum grows if Ethereum rollups grow. Infinite games as the Eigenlayer community likes to put it. Although there are some nuances here. For example, a larger number of AVSs utilising the same compounded economic security, the higher the slashing risk (and social layer fork chances), and the more of the same competitor - the less revenue goes to each. In some cases it also depends on the layer you're deriving from. E.g. in a settlement layers case (where execution and liquidity also exist on the baselayer) rollups could be seen as parasitic. For a DA layer, it is its sole purpose to provide a service to rollups, and the more, the merrier.</p><hr><p>As we mentioned earlier, there are ways for applications to gain customizability and control; however, it is often at the expense of security. The reasoning for building these applications, as infrastructure - is that it allows us to retain the aforementioned powers while deriving security from elsewhere. Now, there are several ways in which this can be done, let's cover some of them: <br><br>1. <strong>DA</strong> (last bastion of truth)&nbsp;</p><p>2. <strong>Settlement</strong> (censorship resistance of dispute resolution)</p><p>3. <strong>Consensus</strong> (shared security model)</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/809085d161496808652a39782ff1de96.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAALCAIAAACRcxhWAAAACXBIWXMAAAsTAAALEwEAmpwYAAADB0lEQVR4nHWTzW/TSBjGLTiwEv8HiENX4sKBG0JCXDiwUvfGp4TUrcQBBFSVkFbaA12+VA58KQW6qIUWJCgNK2AP24V0EVVbIP1KghMnTtwktieeGXvsGduTdFbBJuVrR+9lNHrfZ37PMyMxG0UVODhwcGfLbBi6nlmZX/63fzF1srhwi64ffaeIZVaLhUohj4wqMqpVtVhXi44FpNDFoYt9glzccCyD2lbUQFGD+2F+YeL52N7U5L7szACB0Aa6DXQPwa+m+wQLsQbNum/D4dGHt8eTFDUcCzR5KEGjxiB8Nvvi9F+//Tpz8VnmReh6kYxPsAO0ijxdzk4ZlRWCYHYxvaoqjgVcCDwEIyVOHVNTB/v7zaIihDjUe2rPz0eFECNXBnt/2i+V5FxNUUZTY4dHjm87suPe1H3OAoJijtC1A9dzIeKMyZnlK5cuDF44fydxo1pUmgEL3balnLlaPrdz65al16lmwGwL6KvlZsAmR0dunj/XtohTj2BQLssLb+c6ozvlIWBoRSHE9h+7pE9rz+5doFopF2Rk1CLWtVYLAx0DkyAYeK5jNQiCa62mFJF+TNhZSb+Xl5folxYTaFn1mhDi8u8DkiRt/mHTxg3S0PVroFpR5ZyhqZ2QOXWUXPbW0NDBAwdG/xhuBr4DdCm2wkMu1POZdL1S+DxDzmxOLQdWW5wQ16obFc6YEKIZME4dTp3IpUhACPFLT0+E2N3dLYQglhkJwKlk5t7V2bHE/OTIgl6qBwRRBEMPv32VH0/MPxiambibXppbmZmemnudKhdk2rYuDjkWQJYQrcT1a11dbScfjo9x5noIxgQ3BlJnjj3p60me7X1ayqyGHqYIcobHE7MnDj3q60meOPr43bTSDEj7Bf//b/AJtq2GkstSEpO1BXyCsunSm78/zP4jz73KYxN0CD6kSy+T2enncurPbL1YCwikENBvHsL6dKDXSopeLpmaGrkXE3Bm+7bhmRpnOCDrPaGHOYsrIAhran0xjTXV/3TBrwS8hgGVPJRzdjkO/z8NXX5fAm2B6wAAAABJRU5ErkJggg==" nextheight="540" nextwidth="1600" class="image-node embed"><p>We made an argument during our <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://x.com/0xRainandCoffee/status/1764712495531647232"><u>"Building Applications with Modular Infrastructure"</u></a> presentations that <em>The Third Time is Not the Charm</em> - <em><u>Why is this?</u></em><br><br>First of all, there’s added cost to crypto economic providers (the operators running new state machines and runtimes). Furthermore, instead of paying some DA or Settlement fee, you have to pay for this received economic security either via some % of fees (which might not even cover the operating cost or pay enough of an APR to warrant providing economic security). The other, and less ideal possibility is that you pay some % of token incentives (but then you're adding consistent sell pressure to your native token). This is also one of the downsides of running a full-fledged app chain as a smaller application, beyond the orchestration task.&nbsp;</p><p>Launching app chains is generally reserved for larger applications that want no dependencies, are okay with the orchestration overhead and are able to pay a large set of infrastructure providers for services. Both the incentives in the shared security and app-chain model get worse, specifically for applications with LPs, who have to pay some set yield to attract liquidity providers and offset Loss-Versus-Rebalancing (LVR) to some extent (although there is some very interesting LVR research and implementation work being done by several teams, such as Sorella Labs). Take the case of Osmosis, for example, they're paying emissions to stakers and infra providers, while also paying out rewards to LPs (double dipping on emissions) - 10,21% inflation and around $10M to LPs a year. <br><br>In the shared security cases, there's also the possibility that you've opted in to provide some set amount of security (that might not be available in the long run, in the case of airdrop hunters, so retention is super important in this model as well) that you might not be able to opt out of in the case where the receiver is now losing the operator money on hardware and DevOps. <br><br>Then there's also the added slashing conditions (risk) that are done via social slashing for most of the shared security models. This results from operators and restakers being opinionated on the outcomes of the state machines they're providing security to. In the case of just inheriting data availability security, this is not the case as data availability providers are unopinionated on the data they receive, their job is just to provide fast and deterministic proofs of this data having been made available. I.e. the validators and light nodes on a DA layer like Celestia are not running full nodes on supported rollups. We make the case that experimentation, customisation and specialisation are also possible while inheriting the last bastion of all truth for blockchains - data availability, from which all state derives. You essentially just pay the (now commoditised) DA fee, execution and state storage costs - while allowing applications to take significant overhead profits without having to incentives with their native token. <br><br>However, these shared security models allow some very interesting, original and unique setups to experiment with large amounts of security. Nevertheless, these systems end up looking like singular chains/state machines as operators are needed to run opinionated runtimes for every single network they support - losing significant scalability. However, some of this is offset by the fact that you can indefinitely compound this cryptoeconomic security, at the expense of significant risk - especially in the case of large slashing events that could have large second-order effects on the pegs of the various protocols built on top. <br><br>Many applications want the power of an app chain but cannot afford the security budget or deal with the orchestration associated with it. With the extensive number of available DA, settlement, and shared security protocols, launching modular app chains is becoming readily available at a fraction of the cost. <br><br>While the execution layer in these cases is quite centralised (depending on the utilisation of a decentralised shared sequencer or not), we do expect to see small sets for some liveness protection (although client diversity here would also be interesting to see). However, in the cases of a settlement layer underneath forced exit withdrawals are possible on L1 native assets. The smaller sets of sequencers (validators) also mean a much lower hardware cost (while retaining security). This can allow for some extreme levels of specialisation (i.e. MegaETH and Eclipse). Seeing this execution layer focus on performance (both on a VM and DB level) is extremely promising since giving up performance does mean giving up certain use cases (and, as such, users).&nbsp;</p><hr><p>As we’ve alluded to throughout the article, while distributed and decentralized systems relying on consumer hardware for security and verifiability is a thing of beauty - they’re not very efficient for scalability. Although performance suffers, it can be used to build certain efficient services (such as data availability sampling), which most rollup-centric layers seem to be going down. By deriving security from these layers (specifically the last bastion of security, DA), we can optimise performance and even remove “throttles” like consensus from the layers where execution and merklelisation happen. We’re seeing this happen with rollups building with extreme optimisations and hardware requirements on top of extremely decentralized baselayers and networks from where they derive security. At the same time, they’re able to retain control, lower cost, and stay “secure” (there’s a lot of nuance here, as is hopefully clear by now.&nbsp;</p><p>For example, instead of running 1000s of highly optimised, expensive bare metal hardware - you could run a set of sequencers (for liveness) that outsource DA/Consensus to an efficient layer for a fee (rather than inflation to infrastructure providers). A good example of this is Eclipse:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/11cd7c7269c5a60c49b2608aa720624b.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFU0lEQVR4nK3T+VMTdxQA8G2nx1RpnVadoVIstVZBQAFblHPkELTlkGo4E3IZTIFErkqAMFIBARkgYOTK0FAQ7UQoNY3RGKEKaFJi6BJM2ElCsiSbsAklGMsf0Ak7kzqtTlvrzvthd+b7fZ/3/b63gMW48EKhc9jQcbGkrqKqrqL6rvi2w4ZajLq/rwReDFiCDTL5zyWcEkotjVJLy28qmJBJ0cVFxKB/CYDZoH3iWOVd792QvxeI3gh8+YFHcUhdf/0Tx2OzQfsSAFgLycfG6rg1u8sjvWnBuwoO7jgT9k3X2QmRCJyW2RHTS7iiQV5XD7e1oraksr6Udhrf2tNwUzQiFFxRyqb+L4AisE6t0qlVsBbSgeDkrVvS0dFFCJqfnUER+C/ZXwQAp2VK2ZTFuKCUTZkNWugRiJqNKAKrQYUGVP63KYK1EKyF3IWbdJBSNqXXzDlX7HrNnEohtyMmlUKu18xhi2cVchSB9Zo5WAvpNXNqUDE/O/NcwI6Y1pyra85Vh81qMS7o1CrlgwmLcWFi/M71YcHkmMRi1GGAuwg1qOhoqs/DZ9SzWfzOi1g8G7AjJqlYxCotYpUW9XIvYvXCWmjNuVrCKAgJ9L8nvYld99OATq2SioSTYxKpSGhH4GWL2Y6YngHAWshhs14Z+DbA1zch5hCnuUkivI5lsSOmWYVcOPK9u47ZpwCTDtKASizvv+2BfGK8lFlYw67QQxr3NuzSscY8fQKLceHX9c7/c5NRBJ6fncE2l5cUnauuPEkiXB3od9is96Q3FzRqrP8oAitl97GRhbUQYtBrQCUof4AiMGLQowj8XACclqkUcuxdcX/ywd1xHrc9D59OJ2QkHYooL6RXFzGqixhMGpGaebyAiMc+a1llefj08GD/YjqZSSFKhD84bNY/AZPOdVK9Zk4pm9KpVZhvWY815yrvYlvEfr+4uAPHj8Ymx0bk4pLIuGQ/X6+t3m+Gh/qnxUeR0pMykxIOR3/qud0jKHhnfHhI41m2c8UOLMEGO2JEzQaHzQprIZVCZtK55s+tGuYfOVfsve0tKYcjfX22Hty/6xQeV0jMKiRmpCZGeW3ftGePNzXzGIOcwyBn4T6PDQ/1jwwPjA0LunShwQWYDdrZXx4a1Po+LlfwXb8GVLq7hCLwyvLSb6jFuWLvbGnKz00/EhSwGQC83vMg41IKiVklFEJC7Gd0Ao5Jwq+Trigi4b+mkai4VE5jnQsoPMHwBt7aBryyE/CPev9oyMao1mrO74/tFpNh8sZPw9xO8dCgw2btu9SRT8qKCdgd4OOVlhiD5Sr/inLiWDyTmsMk5bgBBjnrNAWfnZzY0VTvAoK2+QAA8CoAvAF4fAQEegI+Rz45rH44tWwxT0slFPIX/JbzTsdKJZ3qt+WdhH1+yaHBhKTEYiqBScz23b4NWH8SI0LP0Cluo5hKwKcc4TTUuoB9m/1fB4C3AcAT2OEJeL8GbEkLSh3kcZmnaI3nao6RkhgFeT0d7ZS0VN/Nm8I+/jDKd2dabGQhKZueg0uNiwrb6xe9P5CMSzmZeTwv60R+bnpeNi4/Nz39aPwAr8sFVNJYe9/dE/NxbKRXXLR3YsCGA90N3Ub9/LXLl6Vi0T2JRHB58MaPIzPK6Zlp2fDVoab6Wn5P1xCf18vlCAb5ohHBEJ/X39stGhkWDA50cdq6OG39vZ1D/D7hyDXXf4As6mvYVRoQFItGC+gncwkZo9euOmzWZYsZC4fN6rBZl2DXmI2Jb1SVl5UxGTwut4bNqmad4ba11LBZrRcaJ+7cbm++UFVeVsNmNZ+v7+vubD5fp1Or/gAgsrBj231cEQAAAABJRU5ErkJggg==" nextheight="1097" nextwidth="1600" class="image-node embed"><p>We’re also seeing this with applications or communities that don’t want to deal with the orchestration of hardware and optimisations that rollups require (either on the SDK or sequencing level) and outsource these at the cost of some DA and sequencing cost (while retaining some control with <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://collective.flashbots.net/t/integrating-suave-with-astria-rollups/3118"><u>integrations to SUAVE</u></a>-like setups). This can be done by utilising Astria and Sovereign Labs, which can handle most of the heavy lifting while providing a very efficient setup. </p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6bacf7eb0fe15c7d49f4d67fa5a37915.png" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAbCAIAAACSpRrNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFNklEQVR4nKVVbWwTZRz/J34wJCTG8IEPmkjEMeMXBBEwgSgaeREDJvKSGcYSYwJEJWogIGaGxGQERF5kCOFFBjMZDreyMTY26DbO267r9Xpt1/W669reei9r79n1ei+7bWyjpq3U8Razkvxzee6558nvfr/f/wX0uJQPA8lIlE5+vfHItreOli6p3r9FFWIGkqefmWlAfqUKsYmxieO71r8HsDobqwAExq9JkjIYeVYATRIMeWgoypUAbATYAvARwN71xZFguLb6cs2lqkigrzAqeQaiHpeGef7Kt2vLimDTXDi6+RW+v99AsjIYVQajmiQ8q0Q5Hul0uu7ajRMnfkun04Y8ZCDZRMhSlYKdeBRAj4thv6e73X710u93GhtbbLb6mpqaS1VODCtcIgPJuT8dUYYtVRno9QXclB6XFH5Qk3iFH5S5SMakwgA0SRDZoMxFwn4/46ZElrU3NB2rOJSMxgSGyUU8MiCywcJsABLDzv56qtXW4CcdLO3+2956pfrCqcpfmprr21obGRfJ9fXFGCbk9TAuVwEkgKXpLrvdiWHJIX5MH51dVgxvACwDWAmwEC7fuDimj+SOsl6vJs2cAUvTajxuIiRzERMpy79ZBQuyNfY2wHKobak2kZKSYigcYml3IQwYN5VKiFZKHjPUyXvjbXUNP+3/0UTKwX0HOpuaRzXNUhVzWE9KCuv1FgJAdXfPXr8bNuz7rvznqjOVPtJpqYqlKqFeH+NyyVzkZt2f5/bCkR3gwe2Wqs7Uami7dQdgDsB8mP8B1d5sqYociybFmBRm/aTD3ty656uyL1fAytnQcq1qVNM1iZ8ZQB9Jlv5wBl5YeOJczeQ9S4vLlqpbqj6mj4zq5v2p+y6i65MVUF2xiia6CpFowO+fmhxpbaiNBnotVe1y2s/bzl60nbtQd6aq7nxDW627u+t6/c2piamgx/O/+jyeZuDr6VF4XuZ5H+m8cKwS1rwI8yCTSK8DFAG8CmU7totMQOGjvh7HwwziuddcI8h/0iQhG9l9eQi4QMCN4yGvh8Sx27bG7XvKikoWz3r35aKtbxaVLlry+cqm+mtcIEATRNjvmw6Q4CKs1yOywRjDMC7STzoHQmx/MMgNDIg8nxB4lqZlLgKZhpztNigczsyvxLCRSFVWHE+EYkYiZaKUJgnKYHT6aNMkwUSo1dZgu3oVu3Wr7fp1KRyi2u1HSrZWlpUd2rzl4Mcb/igv54NBL0FkelHu2gO+iT6KDPo8BkokxVgq/p/o0w0wkOx1OMJ+nxPDum7fvj81cWD1msUA7wAsehCjhs7S9EPtOneTJgjEcQaSH6gpPG5m7pgel3KjYmJs9PTOnUsBlmbKP9NoyteuS6enHHb7EwB4JuDrcehxMdfDjWm6a9K/PAwkO+92pgQh1881iVfjQ+l0eteunV2d7VOT4yNJxUSI6Oh4FCB3maVpoqODJoiQ1xNjmPy+iZCJUG5NdHSoQsxSVUvVTJQcN62Ak6Q6sXFzxERJPZHJKyeGPQEg74fIBhk31et0OjGMxLE+kgx5vSGvR+YiBpJJHDMRonrwlo6Gpta/OvGWTz/bePL04U68pe5mTaDXZSKUMfkp9ZKRPi+Rls3r7FRwh7weCsdpgjh2+NCNKzXwxTwoBngJ4DXIFFBxtoAWw4Ldy8xhnfG4nwzwNFp5iTJp2tgYctLvf78Ots2FzXNh0xxYPQs+fD7z3PRcSUVpkhO729tnAPAIGBcIkDgepf1h0hehMjHo8XOUr99B9d51cL19FI7HGOYfdiwxBaRlTBEAAAAASUVORK5CYII=" nextheight="1222" nextwidth="1456" class="image-node embed"><p>The only costs beyond this are the RPC and Archive nodes that need to be in place (but even these are being commoditised).&nbsp;</p><p>As profit margins get lower as users and applications demand lower costs, especially in the chase to support more and more users - so does the need to lower the associated costs with running infrastructure, especially if we aim not to inflate the native token indefinitely to support providers (price appreciation helps here, but there’s significant sell pressure as well)</p><p>What we’re also noticing is a focus on providing not just security in terms of the back-end, but also for front-facing developers via ecosystems/generalised rollups that see the need/want for more "secure" execution environments while tapping into hotbeds of liquidity. This is especially important with more "worry" that many larger funds have with participating in DeFi because of the inherent risks (reentry attacks etc). A good example of this is <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://movementlabs.xyz/"><u>Movement Labs</u></a>.</p><hr><p>While there are some issues around application composability (when not in a shared sequencer environment with simulations), this is not the focus of this article - and we’ll be covering these issues (and solutions) for them later on. Specifically, inter-block between apps, but even two blocks, which is beyond what is possible with market makers/solvers and intents with bridging. We’re talking about building apps that control their own environment while being atomically composable with other applications in the delta. For this, you’d need a global succinct state layer with composers. <br><br>If you’re building applications that take advantage of modular infrastructure and its powers, feel free to reach out to us. We’d love to talk!</p><hr><p></p><p><br></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
        </item>
        <item>
            <title><![CDATA[The Cross-Domain Thesis Part 3.1: Ordering]]></title>
            <link>https://paragraph.com/@Maven11Research/the-cross-domain-thesis-part-31-ordering</link>
            <guid>lP7V0qvKgRgcoMWrzQlZ</guid>
            <pubDate>Mon, 25 Mar 2024 22:12:18 GMT</pubDate>
            <description><![CDATA[In our previous two parts of the cross-domain thesis saga, we’ve primarily focused on the issues that arise technologically when you split up the sta...]]></description>
            <content:encoded><![CDATA[<p>In our previous two parts of the cross-domain thesis saga, we’ve primarily focused on the issues that arise technologically when you split up the stack and what changes are required for a cross-domain, modular world to exist. We’ve covered many developments in the works to solve problems that come naturally in a cross-domain setup. However, in the series's final (and third) part (more like a series of pieces constituting the part), we’d like to focus more on the user experience. We’d like to examine how modularity, customisation and specialisation can help create better applications. This final chapter of the series will look at the exciting and unique creations and possibilities that loom in a modular, cross-domain world for developers to create web2 UX with web3 verifiability.&nbsp;&nbsp;</p><p style="text-align: start">The reasoning behind building modular shouldn’t just be to fit into a narrative, nor just for the sake of it — but rather because it enables us to build better, more efficient or customisable applications. Many incredibly unique capabilities open up when building modular and specialised systems. Some of these are more obvious than others to the naked eye, while others are less obvious unless told. As such, we aim to provide a general overview of modular systems' powers beyond those you already know, such as scalability.&nbsp;</p><hr><p style="text-align: start">We feel that one of the powers that modularity provides a developer is the ability to build highly customisable and specialised applications that bring a better experience to the end-user. An example of this, which we’ve previously discussed on a high level, is the power of setting rules or reordering the sequence of which transactions are executed.</p><p style="text-align: start">Verifiable Sequencing Rules (hereby VSR) are one of the interesting opportunities that controlling ordering provides, especially for a developer interested in building a “fairer” trading system in terms of execution.&nbsp; Obviously, the relationship of <a target="_blank" rel="" class="dont-break-out" href="https://anthonyleezhang.github.io/pdfs/lvr.pdf"><u>Loss-Versus-Rebalancing</u></a> (LVR) for liquidity providers is slightly outside the scope of this article, so we will refrain from touching upon this too much. Keep in mind that the setup we’re going to explain is primarily for an AMM and not an order book model — although the specialisation, low cost and customisation of opcodes/gas limits (or even alt-VMs) that modularity provides could be used to build very efficient on-chain order books that derive scalability, deterministic DA and more from an efficient underlying DA layer. Furthermore, CLOBs (or even CEXs) would also benefit greatly (from a trust perspective) from utilising verifiable ordering rules catered towards their particular setup. In off-chain setups, some notion of either zero-knowledge or optimistic execution backed by crypto-economic security would obviously be needed.</p><p style="text-align: start">VSRs are especially interesting when we consider the fact that most non-informed flow (retail users) haven’t (or are unlikely to) adopt protection methods. Neither have most wallets/DEXs implemented private mempools, RPC or analogous methods. Most trades are submitted directly through front-ends (whether that is an aggregator or a DEX’s frontend, although the rise of <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/0xRainandCoffee/status/1734667865025097896"><u>intents</u></a> helps somewhat here). As a result, unless applications directly interfere with how their flow and orders are handled, the end-users are likely to be provided with less-than-ideal execution.&nbsp;</p><p style="text-align: start">The power of VSRs is evident when we think about wherein the transactional supply chain sequencing lies. It lies where transactions get ordered (or included) by a specialised actor, generally based on some auction or base fee. This ordering is incredibly important; it determines what transactions get executed and when - essentially, the one who holds the power of ordering holds the ability to extract or be paid to extract MEV, often in the form of priority gas fees (or tips).&nbsp;</p><p style="text-align: start">Because of this, it can be interesting to write rules on how sequencing should be handled to provide fairer execution of trades (in a DEX setup) to the end-user. However, you should largely refrain from such rules if you're building a generalised network (you'll end up hurting some).</p><p style="text-align: start">Additionally, because some MEV is important; arbitrage, liquidations, etc. - one idea is to have a "highway" lane at the top of the block (ToB) specifically for, perhaps, whitelisted arbitrageurs and liquidators who pay a higher fee and share some of their revenue with the protocol.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/5a05ecaca02f2fbf3df4d1ea450457c7.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAIAAACMdijuAAAACXBIWXMAAAsTAAALEwEAmpwYAAADB0lEQVR4nI1T/UtTYRQe+ENBUmk/VD84kcKQtCI1YZJowUywL0lzft19uOsc3oUOFeecbrvjXm3NUPyac6KXWcyZbBNpDccYDGY17OLlep11G23RIuhviHnrFmYmPBzec154nvc857wcEg//iY314MZ6MBTwnU4/WVnOZys0RTAHEg+/39pMxKOJeDRGRxiw6dfPn5iUjRyWmqYIz4rTMNCH6nUmI4oaYMSgRXVJwJo+z4pzl2ubpgi/d7WynF9wObdZ2MQvKwFFAK+w4ByX+6hNXnglr7SYxy8rgWQgrzC/A5InBWiKIPFwjI6YUINSAQ3BOsnDmvJrhQ13bg/BuuFBBKgXKBXQog0bHkQMA32zUxOYdRqzmhdtGBPttrmZibFFGzb21Lhsf4ZZzR73MmY1uxzPOUYEzsvJLi3mCR5Unc/idnW0E29DurbWYi63mJvZIxY+7u7KTDtRXXVv1fXC414m8fAOiTPO0BTBRJoid2My3XOV7GBjPRj0r5F4eKC3u6ujveJmWVFebkZqatap9PwL2Q21NUC9wDI++osr2S6Jhz9sbbLds8W/8XsGMTpiRGBI1mKbn5kcH7FYxi2WyVnrFGY1gyJg1DTEsIQCfhIPE+/ehAK+UMDnWXH6vS9dS/ZQwOf3ru4jQFMEM+7v374YEVipgHZIfMoyOmUZHZ8ecSzZEvGoHJQaETgRjw4PIhwOJ+PsmeNHU1KPpKQdO1LBvyEBGvJysq9eunidVxQK+PYKLMzPgiJA39eL6rSNtdWqTiVNkXY7tuRYcLscTqedpghIBjICiE7DDByoF2jVKlWnMuhfS8Q/xujIv4ziuJbskAw0oQatWtVYW61sh/SDmpGxJ3pE0w+rGNPbWiQm1LBnjAzYj5L0beP1/y2Sg1Ix1HS/8e6tar5UIaysq+jRdjEviNHbDBfLeBj83CLmr2rVKlmzSK3r1iMadX9nP6yqk9Z6X7kZi2L09iFJ998imiLstjk5KG2ViEGREBQBMrGwVSIG6gVyUIxZpw/YxQMEfgAAUPVv6FTHaQAAAABJRU5ErkJggg==" nextheight="562" nextwidth="1456" class="image-node embed"><hr><p style="text-align: start">In the paper <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/abs/2209.15569"><em><u>Credible Decentralized Exchange Design via Verifiable Sequencing Rules</u></em></a>, Matheus V.,&nbsp; X. Ferreira and David C. Parkes present a model where the sequencer of a block is constrained to a <em>set</em> execution ordering rule (and those constraints are verifiable). In the case of non-compliance with the set rules, a watcher could generate a fault-proof (or since the constraints would be mathematically verifiable, you could also imagine a ZK circuit with those constraints with a ZKP acting as a validity proof).&nbsp; The main idea is essentially to provide the end-user (trader) with an execution price guarantee. This guarantee ensures that the execution price of a trade is as good as if it were the only trade in a block (obviously, some degree of latency is involved here if we assume a Buy/Sell/Buy/Sell ordering based on first-come-first-serve). The base idea of the proposal in the paper is that these sequencing rules will limit the builder (in a PBS scenario) or the sequencer <em>only</em> to include trades in the same direction (e.g. Sell/Sell) if they’re executed at a better price than what was available at the top of the block (or if there are simply no more swaps in the other direction following them). Furthermore, if there’s a situation where you have a sell at the end of a long range of buys, then this sell would not be executed (e.g. buy, buy, buy, sell), which could indicate a searcher (or builder/sequencer) using those buys to move the price in their favour). This essentially ensures that a user is guaranteed by the protocol’s rules that they won’t be used to give a better price to someone else (i.e. a lot of MEV) or given a poor price slippage as a result of priority fees. Obviously, the downside of the rules here (in a situation where there’s either a large number more sells than buys or vice versa) is that you’re likely to be given a relatively poor price as long tail.&nbsp;</p><p style="text-align: start">Having these rules as a pure on-chain construct is nigh on impossible with a general smart contract platform, as you’re not controlling execution and ordering. At the same time, you’re also competing with many others, so trying to enforce those at the top of the block with priority fees would be needlessly expensive. One of the powers of a modular setup, where you control the aforementioned powers, is that it allows an application developer to customise how their execution environment should function. Whether that is sequencing rules, using a different virtual machine or making custom changes to existing ones (such as adding new opcodes or changing gas limits) is really up to the end developer, depending on their product.&nbsp;</p><p style="text-align: start">In the case of a rollup utilising some data availability/consensus layer, as well as a settlement layer for liquidity, a likely setup would look something like this:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/bc3b23b7782b0206f463c73c4419763f.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAVCAIAAACor3u9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAE90lEQVR4nKWUe0xTVxzHT7L9s/+2GIyPLTqcc8GIr7kMdAuZJC5mMUuMzmy+AuoARR2KIL7nfGVzBAc+JrZTkdorpeWuFmq59FJ6b1+jpaWXYksf3Lb3Re+9tRb9d7GXIaJOs918/7kn55zP7/t7HJCgYq8UF48kOaa7x/Dp2nxIddNtt9rMaJ/D5rLhAcLjsuEOzOyy4S88C14HwJDhh4JwSykHU0Dx/iJti0qlVKhbIOjWTa2mFdHrpF+GDP9HQGLMBNd2TxMMDo4+SKZ4TuTo0aQwmhRSPCfpfzngMoAbN+r0f94O+wdH4qTAUn7C43M7pcBfGP5rAUSOlgIMDfaXFS89Uv29GoJSPHf+xPHas6fULVCA8Igc/bLjrwCIHN3f69BqWvscVqupS29oEwX+8ehoqN++fc0qO4o+TqcYMsyQw+Ne/w0gspTIUpMAPrfTgZmN+nZZ4zW5Qm42mZw4EvZakwlGYCmGDEvhc/GoZHSSm6cAnor7vF6iv1/k6IlK8RxPkZ98XQRmrwCz8sD0Zfmr13NkMBYKJqhYrxWr2ldRta9CduWSy4b3IAYHZuap+Eg0wmbcjAEYcjjFszq9UdeJDnpcPYjB0m20YT0mpNNjx4+frQVTl4APCsG8L0HWspnL13jsuMWEOjBzD4LsLNlRXlZSU1V5+sdjJduKqg/sb6g9f7dFGR0cGANkkhiOhPx3YeiPq/WYoYONktIiGQykkyNHztWBt+aDxWsBmAPAzDO19SmelfLOkGHhn6xKyRFYiqVjEb9PYCmBpYDAUlLukgkGboOuyy8TDtuE9o+KHI3jeHn1Txu3lH2zY/fm0tLxlp84AQwZZjOwQYcVhW73qO6g0O1+cze4cP7nAxV7Tx49LLtyqUOt1igUz49Miud8VixCuB+lhUjI5+qzxyIhnoq7bHg3YkD0umjQL3L0OEB26KDi3Dn4Yj3S3AQuXqirqarctnVLxZ5yrRrSa1snjVh93a+93V0Rn5cfYeKZwpLBgMft8DjtNVWV321Yv2HduiMHq2VXLrXDGpGj46HAgAWL+LxJnn2SIgztUrdAzdflWo2aioaG/ARDDo8rHgk3X7vacPYMhnZN7DeeiuOYUaVSqCElotdpNa3RoH98g3T1WJtKlZE6Ujr8gGfSIptOcunkCE8NR4g+h8V0R9HkwMzjm1M8FwsFqWgoMEQkE8zj9MOXDfPTOZC6gh4OGvXdOjXSAXdp1R2/HT0NQ3C7Ru9xODMDERc52tNrs5rQTh3sxE1/YSa4TamBlQHC/WrAA56xoJa83DVLPly4PLcgN3tV3uJNK1eUFeaXblxXcd/rYsiwUd++q3jzjKlZ4Nkva8qUF5p4BpAWWdM9y0fvzs15H+RkgwXv5MyeviJ70drC/NK3p+UsnJfzQ9muLz7/DADw5htPLp2bPQsA8N6MaQCARQvm08PB13FgzZ2zaOGc7IKPCwrzSr4q2LN+ddXqgt3bvz2sbVajMILqDCsL8ovLNzTJ6wwqhV7VBDfLOqAbisaGwADxvIknRZ6oBBUzGYxqJXzi0KmDlYeP1xyTX5YZtAZ3r/NRWkjxrFSDnaXbi7duqty7q6K87JfTJw/sLb8pa5ReukkCNBmapMybGgsQfZ5e231vXzwSEFmKp8h4aEjawFNRvRZuvNxw/drvaOe9yND9AbcrQHifv4omQ38DGAIKX8/iocQAAAAASUVORK5CYII=" nextheight="941" nextwidth="1456" class="image-node embed"><p style="text-align: start">Another possible idea is that of optimal swap splitting; take the case of where you have a single pool (or maybe more); how do we swap large orders (that would cause large slippage)? Is it fair for the end-user if this trade is executed across sequential blocks (or later in the block if it fits within the VSRs)?&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/2a1151600f319613d86ea83645d11c49.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAE7ElEQVR4nJVUfUxTVxS/yzazf6Z/OLcxEcXPzQGKgMPJBMdsKl3kwwD7cMJsUGRt00ptIdqiLUypiJp0MhlfQrvaPunHo7Z9FF+l8MratYhrbfE9yh5dyowxM1m2ZPtvqdd1nTLNbk5uTnLvOb/z8TsHkIGpxyQw6SUDU36fO37TZFDR0rxje15BXh67qrq8bG9OZhaLubu8tGTHu+8Us5jcwwf3VZZXlJVUlJXUsquLWcxiFjM1JbmWXQ1i9lQIOoJ6lA7PkkGaCkF90jMRmSGLduWDhyc1+UWQcHYV5BMOO+Gw45iZcNitqB7eOGbWqfqsqB7QVAjHzFZUb0K0ZGCq6Zg4Z3MG9/DBjRvWlX1YlJqSPIYPB27d3JYFcjNBdlpMtm2JCaMAFL4HPOP2+blZGBmUmdu34jpNhYDf5zYimqMCnkzaONDTmZmxEYa2+KVFWZvS169ZJTpSn/IqkB4BZ2Wpp6XL22QrTkuTGrjPH6kFb68GFsNAZIa8E5h8stRQYiUyIhpJg0gulcC8atnVEnH9vfkIrP4t380GXq5M/FzaarA1HWzeABg7QZtsZVP94jeXg+sW3bMB/D434bB7XU6Y6b35SJQOw+cffN/NzcyeFBU0cGOuM9aALRtAyW7QJlvRyAPZ6QBaPUViADBSmgpB3e9zPyIPFaLJ4E/hH09JK8XcRYqmte3ydYqmtS2NKxu4L7M/BZq+Cz9HInGCPA1gQfmeGDUhWq/L6Z0YV7a3OEdM7jGsU6nQ9HcYtD3nWpuxIXRyYjxKh6N0GLb0fwD4fe6sTenlpXtyNmeoertVvd0Czhcnjh/7puNiYNI7R03PUdM4ZjYhWiGfk5qS/EFBnkjAfRJjYQD4L0qHccyiU/fTVKjzqwuff/aJkM8RCbhGREOTQb/PDaM2IVpFs7yrQ4ljlnjzngFgQrRRmipmMS93XYI2sPl//vH7KVmTXCp5cP9uYjRRmiIDU2dbW/Z/XAnp958Afp97aFD3ypLFFWUlqt7uRJL4fe6Bns5VK5YXs5jtracTewt5kZuzJWnZUrGATzjs/wDA2Yv/u3pFff5Mq/Jcm9fl9PvcOnU/4bDDXaJT9+vU/UcFvO6vL9pQg6q3O+7IiGhsqOGogCeXSmyowYhoTIiWJoMxgBHr0Bg+DDPFMbN3YlzI5wAAihiFcqlEp+63onqaCnldTrht3nhtmaRBFKXD3onxWDP+xn5w/y5jZz5jZ76HGKVu+wd6Oh8BGBGNFdXDUcAxC+Gw8+sOZW1KU55vt6GGy12XGkX1XpeziFEo5HOIG9eTk17flpP10d5SRbMcVuPA/n3FLOZvv/6ym/H+ju25JkTr97lVvd2PSpQ4VrEMXE4hn/MCAAM9nffmIzhmvnpF/ZBOsYWIY2YAQF0N24rqjYgGEgxusygdXrZ0CQBg+9bs1uYTXR1KSMV/Ndnrcg5+O8CvO5T+1npFs9xuQXWqPhyzzN4JTHoIuH4zMzYK+RzPwxnEMTM01Kn6CIe9roZdxCi0ovprxkGdqm8BADIwRdy4TjjscDvhmBnHzDQVCgcDsSeH3YYaPMToGD5sQw3XjIOJLDIhWg8x6nU5R6xDI9ahOMceB0gcRZoMzlHTx+ViQSP3AK+68mCFoJF7XC4+r1SUVu05c6Hl5JeSA7yqWmENZjPNUdML7qK/ACvhpoHp9Um2AAAAAElFTkSuQmCC" nextheight="879" nextwidth="1456" class="image-node embed"><p style="text-align: start">If the end-user cares about latency (could be alpha-related), then this particular user would likely not want to have his order split up into an order of sequential blocks. However, this is unlikely to be a common occurrence, and optimising for swap splitting on larger orders could lead to more efficient execution for the vast majority of users. Irrespectively, one worry is that MEV searchers could possibly be aware of these sequential trades and try to position themselves to be included before/after the aforementioned trader. However, the total value of extraction will likely be much smaller due to the bite-sized split trades over a sequence of blocks.&nbsp;</p><p style="text-align: start">Another interesting idea we've mentioned previously in posts is using Frequent Batch Auctions (FBA), championed by the legendary Eric Budish and co <a target="_blank" rel="" class="dont-break-out" href="https://academic.oup.com/qje/article/130/4/1547/1916146"><u>here</u></a>, to process transactions in a batch auction instead of serially. This is to help find coincidences of wants (CoW) and build arbitrage opportunities into the market mechanism design. This also helps to "combat" part of the latency game in continuous block building (or priority fee wars in serial blocks). Thanks to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/different_mj"><u>Michael Jordan</u></a> (DBA) for bringing this paper to our attention and for his excellent work in his preparation for moderating the <a target="_blank" rel="" class="dont-break-out" href="https://arc.net/e/3DFFC03F-5F10-4482-B789-0E1BC065FE8E"><u>Latency Roast</u></a> (highly recommended reading material).&nbsp; Implementing this as part of the fork-choice and sequencing rules for a rollup is also an interesting setup that developers can use, and we've seen it gain significant traction over the past year, especially by <a target="_blank" rel="" class="dont-break-out" href="https://penumbra.zone/"><u>Penumbra</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://cow.fi/"><u>CoWSwap</u></a> but also by many others (such as this <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/pdf/2307.02074.pdf"><u>paper</u></a> by Andrea Canidio and Robin Fritsch). A possible setup for this could look something like this:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/bea161e781835c2c3a357fa40afe1d18.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEX0lEQVR4nK2VXUzbZhSGs+6mUrdJbS/GVFHoirYLtCsmtZu2skkTDRdUzUppS2nXgSCEQcSAsG79gfBPSxXSpqQsbSgxGPJ5XrCdRiSAhRJHKU2IwXX+HO0zLJVIdjGNm+12CmaBoe5ibNKRLfm1z3Pec74jyxKxyPZIipDzed9/L/8btZr1MDukkH+hqLDwaqOaAtakCHeojbVK5eUKk34Q8lxGlSVFuP1V2m7HEUtjrXKwt8eBYXYAIM9lJAJFFcVyVeWXFqPRgWECy0pSkHE7MExdXX2q6OTtDu00jgcZ9yaA9TBCMCCVEGTcXpdL19t1rqREekJTJE2RUu0ODAsy7ktnPndgWEoUpaRSfThiScQiba2aJlVtIhaBPIcjFqlumdfl4nxeKZ3X5Qz5FwY6O49mZ0+aHyVF6KNngWVUCAYkN6yHOZqd3aRShfwLQjAgNSopQgpYE7HIpdLSE8ePOTBsA4CswbgEcEp2tgPy8/IIdCzdFoo06Qdpu33SbCbQMc7nfScnp/v6NSEYYD0MCSbWoJABVFWUFxUW/gWwrEEB8pxsx3i9LmdbqybrwH4CRVMriUWGeebx/LG+LiyzDgzjfN6D+/Y2qVSpldU4x80QREoUMy26oDidd/iw1+V6EY/bAUitJFKiuAWQ4pl7nrBaLUbj7e7OsouK69eaDYYB47AuthxcZJh51zSOWB4a9OVflLa0NAzd1+n0/WHWz3oY94zTDsA0jjc0KGtUV0wP7hmHdQQ+mT5FXpcTRyxPgNU1ZRvq6e5r1dAUCUbN/X0dR3IPnT1TMqjrJbEJQ4e2q6WZpkgKWPv7tEdyD12+WNbb246Njz6ZQL+rqSHQMZoiDXcHTso/VZySE7bJGYct7UBgWRxBpnHcDkD/t1fry85RwEqgY3NT5I+jI1OWEcaRrq5Nrb5RW2sHIC3ZbASCWE3DMzZiGscnzY/U58+PDxvtAMxNkXM2m30CSa0kkiLcbBHkuaWn6bO0EgmtRiMh/0IiFrGBcXTYsOSmRT4EeW41GhGWWchzAssKLBtb9PvnnAKbfgJ5Ls6lr1IIwYB/zpnOHA1vApIirK+/MtLXMzCgHbp58/HjBzfqau7e6f664mx08ekLQUgbDQamcTwzLfh8ack9L0mQ5yhgzaxkIhpectObiybdRD6kaVAB0/e3utq7WjVG/Z1mZfUPKNKhUf/ELWay+OhZkQ9tA9DbpX8EQJ4z3zPUVVb2a7War+rVSuWttvaiwk/qqqpwBPk5uplRMrp15KJh+Hzp5dIG/m+AcCCw/kvSR88qiuUXFKc/+/gjAh0jAe5nfDu+/Lexcw/WYDwpwrTxaBiMT97XG2OL/pB/Ycv+fwRAnkuJosVofO0VmaJY/sarsqwD+08cP4Y+NO3OyssBOGLJeSvrg4KC1/fsESPh33/7ddeN2gmQxkUBa35e3sF9e999O7eqovzDggJpM/4fgOQgO+tNRbF84w/hpCly1zP4E89wMzcCTp4eAAAAAElFTkSuQmCC" nextheight="863" nextwidth="1456" class="image-node embed"><p style="text-align: start">In this setup, there are no first-come-first-serve nor priority gas fee wars, but rather an end-of-block batch auction out of the accumulative orders during the time between each block.&nbsp;</p><p style="text-align: start">Generally, in a world where much of the trading has moved to non-custodial “on-chain” venues, an FBA venue is likely one of the more efficient ways for “true” price discovery, depending on block times. Utilising FBA also means that since all block orders are batched up and aren’t revealed until the auction has concluded (assuming some encrypted setup), front-running gets reduced considerably. The uniform settlement price is key here (in terms of providing "fair" execution) since there's no point in reordering trades (if you follow the rules set by the protocols, i.e. bond/stake is important).&nbsp;</p><p style="text-align: start">Something also interesting to point out is that even back in 2018, a setup akin to what we just presented was talked about on the <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Ethresear.ch">Ethresear.ch</a> forums (see <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/batch-auctions-with-uniform-clearing-price-on-plasma/2554"><u>here</u></a>). Again, Gnosis was before their time (and have generally been very involved with most of the active research in the Ethereum community). In the post, they refer to<a target="_blank" rel="" class="dont-break-out" href="https://github.com/gnosis/dex-research/releases/tag/v0.1.0"><u> two papers</u></a>; these present a batch auction mechanism on Plasma (sort of the prequels to modern-day rollups) where each batch accepts orders to buy ERC20 tokens for other ERC20s at some maximum limit price. These orders are collected over a time interval (as pointed out earlier) and provide a uniform settlement price (USP) on all token pairs. The general idea behind the model is that it would help eliminate much of the front-running evident in popular AMMs.</p><hr><p style="text-align: start">Another important thing to note is that in these setups, the sequencer(s) will likely need some incentivisation to execute (and enforce) these rules mentioned above. This is often overlooked and handwaved away, but much of the infrastructure of blockchain networks are run by professional companies with completely different cost-basis than a regular home-staker. Incentivisation is, in general, an essential part of secure infrastructure implementations. In the case of incentives aligning with the rules enforced, they (sequencers/builders) are also much more likely to make a greater effort (e.g. specialise more). This means these setups should also have an active market (i.e. be decentralised). Obviously, these sorts of markets are centralising in the sense that the cost of capital to specialise is likely to be high. As such, the smartest (and richest) will likely integrate and specialise to extract as much value as possible. Here, the possibility of exclusive order flow to some actors (as alluded to earlier in the 2nd diagram) is also a possible arrow in the knee, causing an increase in centralisation if block bids are based on the highest fee/best solution, which equals winning the right to propose. A general baseline fee may be enough, but it doesn’t really push ordering actors toward specialisation or improvements. As such, you might want to introduce some notion of satisfaction of a trader’s outcome with an incentive mechanism that fits with your particular case.&nbsp;</p><hr><p style="text-align: start">This is clear to most, but it is still relevant to mention when talking about ordering on a rollup level. If you're able to control ordering (as alluded to earlier), it allows for much easier "extraction" (monetisation arguably a better word)&nbsp; of value as a protocol. This is because you control the power to reorder transactions, usually based on priority fees on most L1s (MEV-boost-esque setups). This provides you with a priority fee paid by sophisticated actors looking to extract value somewhere on the chain. These actors are usually willing to pay quite a hefty sum (up until it doesn't provide value anymore) to be able to be the first to extract the said value. However, most current rollups are primarily first-come-first-serve. Most MEV extraction happens via latency wars (and spamming), which puts severe strain on the rollup infrastructure. It also leaves out significant value to be captured. Because of the aforementioned reasons, we're likely to see more and more rollups start to implement ordering structures that have some notion of priority fees (such as <a target="_blank" rel="" class="dont-break-out" href="https://medium.com/offchainlabs/time-boost-a-new-transaction-ordering-policy-for-arbitrum-5b3066382d62"><u>Arbitrum's Time Boost</u></a>).&nbsp;</p><p style="text-align: start">Another example we like to use is the Uniswap one. Currently, Uniswap as a protocol "creates" a large amount of inefficiencies. These inefficiencies get exploited by actors looking to extract MEV (arbitrage, at the expense of liquidity providers). At the same time, these actors pay large sums for the right to extract this value, but none of it lands in the hands of the Uniswap protocol, nor does it land in the hands of its token holders. Rather, a large position of this extracted value is paid as priority fees to Ethereum proposers (validators) via MEV-Boost for the right to be included at some point in a block that allows for the value to be captured. So, while a large amount of MEV Uniswap flows and ebbs through Uniswap contracts, none of it gets captured by it.&nbsp;</p><p style="text-align: start">In a world where Uniswap has the control of ordering within the protocol (and the ability to extract priority fees from searchers), it can monetise on these inefficiencies - perhaps even pay out some of these profits to token holders, liquidity providers or others. This world looks more and more likely with a move towards off-chain execution (and Ethereum as a settlement layer) with changes to Uniswap, such as UniswapX and more coming to life.</p><p style="text-align: start">If we assume some PBS setup for a rollup, the flow and monetisation areas look somewhat like this:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/d45e94cc5879129b9a7fb8a7ca1e276d.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAICAIAAAAX52r4AAAACXBIWXMAAAsTAAALEwEAmpwYAAACcUlEQVR4nG1RT0gUYRT/OtQ9KCzKIOjSyQ4hEkZ66bBqdbCDIUGIbKfSMlBBKQt2+4MaGLhpbTrW6i7Tzuoyujvhyv5pddbRcZu+sdlvvtlvXP2WFrxEnWMcWEJ7/C7v/fi9937vgXUxOdDd6Bl+sIWQiTQEFVlMm0gzkUYJ9jETN280dT/smGG80XBITMVtCquKibSiaWxIy67Xz16NPOf5oJRJUYItYR7RvNXNRBpILs63tVT2dzXKGQnKq7EI7/WMIqggqFCChfnw0NDw9EwglUjEInw0HKIEb+d1SvCmkhVTcVWRv8QXoku8pmZlMW0vt768ur68qkhr1oBMXBBCH1PCrBSPqBsZE2lQlqAsKbKkbkjj7ycBqAAA1Dff+boksNO+NTF960pdm8PBsYEPbz2DIy/A+cPgGHC0Nw253H7f5KB7GOxFc0Pb7s8C0GGW5FQEFaxasH3t3QpSojPMJ3D6AjhZ1dTipEQ3cj82lWzfXWdPezvBuaJpBOf8FZfOHDp3xNnr3MYGzSNuhjtxtAqA4/2P3NYASjAlluVyaxNppZ0tSnD5H6W91KagLPX2dI+PeRC0tqEEF02jaBrbum6nsQj/0vU0sShEwyEoSyCxKNReruvs6ERQiUV4KEuymHY/7uODnxfmuHCQLei5srmCnoOy1HX/nn+K+cerYmjQ0CBWYWlny8dM1NZUX29w1FRfdA08ASvJ5KnKs62tt22xmIqHg+y1q/Vez5tNJWtolmYf/vz+tVsqHqyXYbO7pSIlGPCznNczOvlubCUZpwQvRRf8Uww77ePYAMcGtO/Zgq7tA4LfdA0erP8XfwE1iy3Nxzyo5gAAAABJRU5ErkJggg==" nextheight="379" nextwidth="1456" class="image-node embed"><p style="text-align: start">From this, we can extrapolate sequencer/proposer on a rollup monetisation as a function of:</p><p style="text-align: start">Issuance (PoS)+SumOfFees(+priority)-cost of DA, state pub, storage</p><hr><p style="text-align: start">A great way to see how much value (especially arbitrage) is extracted currently on Ethereum can be found on <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Mevboost.pics"><u>Mevboost.pics</u></a>, and it gives a great overview of how much value is actually extractable from the inefficiencies created.&nbsp;</p><p style="text-align: start">Furthermore, the separation of priority fee gas wars to off-chain constructs allows for siloing MEV extraction to execution environments - helping to contain supply chain disruption. However, considering the fact that if leader election happens on the rollups (and sequencers control inclusion), most (if not all) MEV will be extracted on the rollup - leaving little to the underlying constructs unless priority fees for DA layer inclusion, settlement layer economies of scale from liquidity consolidation or other.</p><p style="text-align: start">Something that might also be worth clarifying is that many of these constructions could function as just pure off-chain constructs, without any verifying bridge or as powerful security guarantees. However, you're obviously making some trade-offs there. We're starting to see more of these pop up, both existing and in stealth. I guess a point to make is that a modular setup doesn't necessarily mean being a rollup.</p><hr><p style="text-align: start">The ordering rules described above represent one example where fine-tuning infrastructure can greatly benefit an application built on top. In the next sections of part 3, we aim to provide more examples of these fine-tunings. And as always, If you're a builder working on applications that utilise, in this particular case, ordering to your advantage - we would love to talk to you.</p><p style="text-align: start">If you're interested in reading more about the relationship of MEV in modular setups, we recommend our Modular MEV series - <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/modular-mev-part-1the-introduction"><u>p1</u></a> &amp; <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/modular-mev-part-2-finality-actors"><u>p2</u></a>.</p><hr><p style="text-align: start">Thanks to Quintus (Flashbots), Mike Neuder (EF), the CoWSwap team and many others who’ve been pivotal in shaping our views.</p><p style="text-align: start">Thanks to Mathijs van Esch (M11), Dougie de Luca (Figment Cap) and Alex Beckett for discussion or review leading to the release of this article.</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>cross-domain</category>
            <category>ordering</category>
            <category>modularity</category>
            <category>specialisation</category>
            <category>customisation</category>
        </item>
        <item>
            <title><![CDATA[The Cross-Domain Thesis Part 2: Storage Proofs, Computation, and Bloat]]></title>
            <link>https://paragraph.com/@Maven11Research/the-cross-domain-thesis-part-2-storage-proofs,-computation,-and-bloat</link>
            <guid>gEhiv7SCqtOtIjLaq9l7</guid>
            <pubDate>Mon, 25 Mar 2024 22:10:42 GMT</pubDate>
            <description><![CDATA[A continued and developing overview of the technical issues that loom in a modular world, and how to fix them.]]></description>
            <content:encoded><![CDATA[<p>As we laid out in the first part of the <a target="_blank" rel="" class="dont-break-out" href="https://maven11.mirror.xyz/e2pIdHzlaBi6m5GhsRGK0g5DyjgCVuU4lE614XmES5s"><u>Cross-Domain thesis</u></a>, we’re in the early stages of a move towards a world of many chains and rollups. Some of these chains might be application-specific, some as singular chains, some as rollups and others using a shared data availability layer. However, to realise such a world, there are several problems that are yet to be solved. Some that lower trust assumptions and security risks in the systems that we built, others that increase the user experience. This article will aim to cover what, we believe, are some of the prominent developments that will play an eminent role in a cross-domain future.&nbsp;</p><p style="text-align: start">A modular world built on the least amount of trust in centralised actors is the world we’d like to live in. In a world of hundreds, if not thousands of rollups, application-specific chains and much more, trust-minimised state interoperability is vital for rollups, applications and chains to function. Some of this is minimised by sharing a DA layer, however, that doesn’t solve verifying that the specific execution or settlement layer has executed data correctly. As such, something that is likely to take a premier role in handling oracle and data computation problems is likely to be storage (or state) proofs. The ability to access and do computation on fragmented on-chain state is an essential component of building expressive cross-domain applications.</p><div class="relative header-and-anchor"><h2 id="h-a-global-state"><strong>A Global State</strong></h2></div><p style="text-align: start">In the current modular world, state is fragmented across dozens of app-chains, L1s and rollups. Some with quicker block times than others, however, all with rapid state bloat and increasing size and complexity of data structures. Applications across these domains aren’t able to verifiably search, compute and query on this data efficiently on neither current nor historical state.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/70e2e6dc02f07cd241325207cd7f39c2.jpg" class="image-node embed"><figcaption htmlattributes="[object Object]" class="hide-figcaption"></figcaption></figure><p style="text-align: start">While current rollups do post some information to Ethereum, it does not keep a global state view of all rollups (that wouldn’t be scalable in current form either). As a result of this, rollups have fragmented state in-between them, building cross-rollup applications is troublesome. Each rollup keeps only its view of their state, while this state can be recomputed from the available information on Ethereum (pre-4844/4444) forever, it doesn’t provide instant/trustless access to this historical state information. Storage proofs help “solve” some of these issues, while allowing for computation to be done on this data more efficiently off-chain.</p><p style="text-align: start">Storage proofs are proofs of validity of a certain state stored on-chain, or having been made available at some slot (e.g. with pruning of EIP4844 blob data, a hash would in the EL would point to some off-chain state). This was previously proven either via oracles, but also by running your own archival nodes (or requesting that data); however, the proofs can also be used in computation (off-chain) on on-chain data much more efficiently than previously. These are primarily proven with a validity proof (nothing zero-knowledge about this), and various optimisations and performance improvements for specifically storage proofs and computing on those have been made over the last year. We’ve also seen the rise of coprocessors for on-chain data, as well as <a target="_blank" rel="" class="dont-break-out" href="https://medium.com/@danieldkang/bridging-the-gap-how-zk-snarks-bring-transparency-to-private-ml-models-with-zkml-e0e59708c2fc"><u>zkML</u></a> for off-to-on-chain data.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/99223a135de247575b4bfd1eaa76f72d.jpg" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Simplified Representation of a Storage Proof</figcaption></figure><p style="text-align: justify">What happens when you try to create separate deployments, and not “true” cross-chain applications is the fact that liquidity fragmentation becomes prevalent, and if you’re a lending protocol you have to keep things in mind things such as Loan-To-Value (LTV). The LTV might need to be considerably higher because of the oracle problem when you’re dealing with cross-chain liquidity pools, and the difference in liquidity for certain deployments. What storage proofs (and trust-minimised oracles) can help with to some extent is to make cross-chain applications go from silos to granaries, and ushering in a collapse of singularity. Beyond that, storage proofs also provide ways for application developers to be more expressive with their applications, without needing to make concessions on trust assumptions.</p><p style="text-align: start">The simplest way to explain storage proofs is that they prove an opening of an <em>existing </em>commitment. This opening (root) is a proof of some state existing on some network. Another type of proof that will likely see use in cross-domain cases (and already does in many cross-domain messaging protocols) is light client proofs, instead of proving state changes (execution) you prove validator signatures (consensus) that have signed some block (and trust the received end-state). This means that storage, execution, and consensus proofs are not one and the same. When we refer to storage proofs, we primarily mean proof of some state being stored in some tree on-chain, while consensus proofs refer to some proof of validator signatures on some block.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/db1ac45ad50d788364dcfd99e5686509.jpg" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Light Client (e.g. in Tendermint) versus Storage Proof at x block</figcaption></figure><p style="text-align: start">Keep in mind that consensus proofs become harder and harder the higher the validator count of a network becomes. Especially if we want to prove the entirety of the set. Things that can help solve this are things like BLS aggregation, and ZKPs will likely have a large part to play as well. Although, in single threaded proof systems (most), the public key aggregation scales linearly with the number of validators. <em>The stage is set, but will our hero deign to play their part?</em></p><hr><p style="text-align: start">In any blockchain, if we know that a series of blocks leads to some root we can prove the existence of these, as well as different trees within those blocks. For example, we can prove the account storage tree refers to some account state’s storage root within the world state tree of a specific chain. We can also prove the receipts, or even specific transactions within the transaction tries.&nbsp;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6135f788c33f36cfb631ae7fdb776073.png" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Simplified Representation of the different trees’ roots found in a block header</figcaption></figure><p style="text-align: start">These proofs can also be aggregated into a specific tree structure optimized for storage proofs, such as Verkle trees, Merkle Tree Mountains Ranges (MMRs) and more. We can then take the root of that tree and post it on-chain for verification. There are some novel ways to make the updating of these trees and proofs more efficient, one of them being Recproofs, which we’ll cover in a bit.&nbsp;</p><p style="text-align: start">What’s important to note here (in Ethereum) is that the root (block header) refers to state (e.g. <a target="_blank" rel="" class="dont-break-out" href="https://ethereum.org/en/developers/docs/data-structures-and-encoding/patricia-merkle-trie/"><u>Patricia-Merkle</u></a>), and the beacon root (which is separate, and based on SHA256/SSZ versus Keccak/RLP) proves validator signatures on that block. And that if a hash of some state is included in the root, we can be sure it's in the state tree. The separate beacon root (in Ethereum) is currently not accessible within the EVM (execution layer), but <a target="_blank" rel="" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-4788"><u>EIP-4788</u></a> plans to change this, to allow for consensus layer roots to be exposed within the EVM for trust-minimised access to them.</p><p style="text-align: start">So how do we efficiently store this data, so we can refer/include it more efficiently? One method is using <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/88304566/merkle-tree-mountain-ranges-mmr"><u>Merkle Tree Mountain Ranges</u></a> (MMRs), which several projects use since it’s a relatively efficient data structure for large logs of data that is easily accessible without providing the entire tree.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/eca7f0d3a8832034646c36f94f25ee9c.png" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Simplified Representation of a Merkle Tree Mountain Range with several peaks</figcaption></figure><p style="text-align: start">It is constructed in such a way that it continually tries to maintain the largest possible consistent single binary tree (meaning that each node has at most two child nodes), which can result in the tree structure having multiple “peaks” (hence the mountain). When the root (top) nodes of an MMR are needed, the peaks of the individual trees must be batched together to compute the root hash of the entire MMR. With the MMR, you don’t post the entire MMR on-chain, but instead can verify a validity proof (of the MMR root) on-chain that verifies the correct existence of that MMR.</p><p style="text-align: start">Another method is that of transformation. For example, you can transform a Merkle tree into a Verkle tree and prove a path in the Verkle tree with an efficient vector commitment. Read more here, <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/75212553/verkle-trees"><u>Verkle Trees</u></a> &amp; <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/75212553/verkle-trees"><u>Blockchain Commitments</u></a>.</p><p style="text-align: start">Use-cases for state proofs are quite broad, and there are many areas where they could be of use beyond just “replacing” oracles for on-chain state. Such as;&nbsp;</p><ul><li><p>Storage proofs within lazy shared sequencers for rollup nodes to proof state storage/execution to others</p></li><li><p>Storage proofs in state committees</p></li><li><p>Storage proofs in zk light clients</p></li><li><p>Storage proofs in providing pricing/data</p></li><li><p>Storage proofs for proving accessibility to partake in airdrops and public goods funding&nbsp;</p></li><li><p>Storage proof to prove block header was sent to destination chain in bridging - telepathy, polyhedra/zkbridge</p></li><li><p>State proofs for data equivalence transformations (we’ll cover this more in-depth)</p></li></ul><p style="text-align: start">Notable players for storage proofs include <a target="_blank" rel="" class="dont-break-out" href="https://www.lagrange.dev/"><u>Lagrange</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://www.axiom.xyz/"><u>Axiom</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://www.herodotus.dev/"><u>Herodotus</u></a>, but there are also various other implementations of light client protocols (e.g. <a target="_blank" rel="" class="dont-break-out" href="https://www.succinct.xyz/"><u>Succinct</u></a>) and storage proofs. As well as bridging protocols that utilize derivatives of them.</p><hr><p style="text-align: start">While storage proofs enable applications to access specific historical storage in a trust-minimised manner and much more efficiently than running your own archival/full node, it doesn’t provide any efficient computation or queries on the fetched data. They’re standalone, great for proving specific historical data, but are highly constrained in what can be shown within that and the computation on that data isn’t particularly efficient.</p><p style="text-align: start">So what if I am in a situation where I’d like to ask more than just what account owned what, what was the price of ETH-USDC at x block? What if I want a TWAP over several blocks, what if I’d like to analyse the volatility of some asset pool over several blocks? This is where coprocessors, Recproofs and Zero-Knowledge MapReduce (ZKMR) comes in.</p><p style="text-align: start">A coprocessor (popularized by <a target="_blank" rel="" class="dont-break-out" href="https://www.axiom.xyz/"><u>Axiom</u></a>) in simple terms is an off-chain protocol that functions akin to an extension of the on-chain virtual machine (VM). A developer could submit a query for some state that they’d like (via storage proofs) and then have this off-chain mechanism perform some requested compute on this verified data, which could then be sent back on-chain. This is primarily useful for on-chain computations that are either impossible, highly expensive (and as such impractical) or even beyond the current gas limits. While this computation is likely to be tailored for custom-built circuits, there’s also the possibility of running an extension of the say the EVM off-chain (essentially a rollup but without the entire state, sequencer, mempool part), basically a rollup that’s not a rollup. We like to call these VM-extensions, as they essentially operate as an extension of the native VM of the underlying layer, while proving computation done off-chain on on-chain data fetched “trustlessly” from the layer underneath. Keep in mind that these constructs are all working with asynchronous execution contra the underlying chain’s native VM.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/96a803d4f61a3ad560572919ca5cd326.jpg" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Off-chain computation (VM-Extension, Coprocessor etc)</figcaption></figure><p style="text-align: start">Examples of constructs that could function this way are <a target="_blank" rel="" class="dont-break-out" href="https://www.risczero.com/news/zeth-release"><u>Zeth</u></a> (by Risc Zero), <a target="_blank" rel="" class="dont-break-out" href="https://www.zama.ai/fhevm"><u>fhEVM</u></a> and others. These are likely to be stateless constructs to begin with. However, there’s undoubtedly also a future where you might want to do stateful things – meaning things such as a stateful <a target="_blank" rel="" class="dont-break-out" href="https://dev.risczero.com/bonsai"><u>Bonsai</u></a>, or a merge of VM or computational proofs with storage/state proofs.</p><p style="text-align: start"><em>Summarisation of the differences between different types of proofs:</em></p><ul><li><p><strong>Storage Proof:</strong> prove an opening (root) of an <em>existing </em>commitment. This opening is a proof of some state existing on some network.</p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://github.com/privacy-scaling-explorations/zkevm-specs/blob/master/specs/state-proof.md"><strong><u>State proof</u></strong></a><strong>:</strong> State/memory/stack ops have been performed correctly. This does not check if the correct location has been read/written.&nbsp;</p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://github.com/privacy-scaling-explorations/zkevm-specs/blob/master/specs/evm-proof.md"><strong><u>VM proof</u></strong></a><strong>:</strong> This checks that the correct opcode is called at the correct time. It checks the validity of these opcodes and confirms that each of these opcodes and the state proof both performed the correct operations</p></li></ul><p style="text-align: start">However, there are some limitations to some of the computations that can be done. So what if we’re looking to do computations and analysis more akin to the ones we see in large traditional web2 companies, such as Uber, for example. These are things like SQL, MapReduce and Spark/RDD. One proposal for this (beyond the VM-extension/coprocessors covered earlier) is from <a target="_blank" rel="" class="dont-break-out" href="https://www.lagrange.dev/"><u>Lagrange</u></a>.</p><div class="relative header-and-anchor"><h2 id="h-computation-on-storage-proofs">Computation on Storage Proofs</h2></div><div class="relative header-and-anchor"><h3 id="h-zero-knowledge-mapreduce-zkmr"><strong>Zero-Knowledge MapReduce (ZKMR)</strong></h3></div><p style="text-align: start">A ZKMR proof is essentially a dataframe (essentially a table-like data structure) of which you could prove a range of blocks (and their specific memory slots) with the caveat of added computation on that data. This could for example be the range of liquidity that was averaged over a set period of blocks. The proof itself is just a validity proof that verifies the results of a set group of computation that was performed on a specific dataframe (referred by the specific block headers to each dataframe). This means that a proof not only has to prove the existence of the underlying data (a simple storage proof), but also the result of the computation ran on that state, in one. The type of computation that you can run is quite flexible. The output proof you can verify as you’d usually do with any validity proof. This means that you can now prove a batch of storage, as well as computation done on that storage.&nbsp;</p><p style="text-align: start">You essentially need 4 things:</p><ul><li><p>A blockheader(s) from a chain.&nbsp;</p></li><li><p>A specified range of block numbers and storage slots.&nbsp;</p></li><li><p>A parallelizable computation (e.g., SQL, MapReduce or Spark/RDD).&nbsp;</p></li><li><p>A verification contract deployed on the destination chain</p></li></ul><p style="text-align: start">This verification contract could be on any chain you wish, as long as it supports the verification of the proof scheme in question. This also means that cross-chain messaging protocols can relay them, and increase the expressivity of how state is being used between domains.</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/741c55d3290df2237db203ebc9096973.png" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Simplified Representation of a ZK-MapReduce computation of a batch of storage proofs from several chains</figcaption></figure><p style="text-align: start">As such, you can generate and prove large, range batch storage proof inclusion alongside data-parallel computation. This is done via vector commitments (<a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/75212553/verkle-trees"><u>something we’ve elaborated on previously</u></a>), which makes it easy to prove distributed computation (in particular distributed programming models like SQL and MapReduce, hence the name).&nbsp;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/efe0ee86a8fe45fb7da25446de999118.png" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">MapReduce-style computation, in this case on liquidity/TVL of 3 sets of assets on 3 chains</figcaption></figure><p style="text-align: start">Another property gained is the ability to merge storage proofs from different chains, run some computation on those storage proofs (say the liquidity value over a period of blocks in Eth-USDC on several rollups), merge those computations to get a mean price and verify this output as a single validity proof on-chain. With this composability, they virtually gain the ability to act like a cross-chain coprocessor for messaging protocols.</p><p style="text-align: start">However, while you now have very efficient properties, the cost of recomputing these models on only slightly changing data (over and over) is costly. One solution to this problem is to have updatable proofs that can be recomposed, updated and merged. A solution to this is that of Recproofs.</p><div class="relative header-and-anchor"><h3 id="h-recproofs"><strong>Recproofs</strong>&nbsp;</h3></div><p style="text-align: start">Recproofs are a Merkle-tree based vector commitment scheme that computes batch proofs for a subset (not the entire group) of leaves within a Merkle tree using recursive SNARKs. However, with recursive snarks, in the case of where the verifier (within the recursive circuit) is larger than the circuit itself, it wouldn’t be particularly effective. Although, we’re dealing with very large sets here, and it’s therefore less of a concern. Another idea that is floating around, is also the idea of utilising folding schemes here as well. So instead of verifying proofs within the circuit, you fold many proofs into new proofs. Checking the folding is easier than verifying each proof, and then at the end you could perform the expensive verification. However, in a distributed (or horizontally scaled) proving system, how to communicate effectively at scale is still an <a target="_blank" rel="" class="dont-break-out" href="https://www.youtube.com/watch?v=wkIBN2CGJdc&amp;list=PLj80z0cJm8QFnY6VLVa84nr-21DNvjWH7&amp;index=6"><u>open question</u></a>. Furthermore, the need to store witnesses for folding schemes to function, increases storage requirements considerably. However, it allows gaining a decrease in proving time. <em>As we like to say, there are trade-offs everywhere.</em></p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/5f6f6c58bc9481e149820c4d70e6d413.png" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">Simple Merkle Tree Structure and a Checkpointed Recursive Snark Construction (you could also recursively proof each proof instead of a checkpoint, checkpointing is arguably more valuable in scaling solutions - e.g. Starknet uses such as setup)</figcaption></figure><p style="text-align: start">In the current setup in Recproofs (with recursive snarks) it folds the computation of the subset hash into the computation of the Merkle tree verification process. This is done through canonical hashing (divide, hash, combine, repeat for a single shorter hash root value that represents the entire set). This allows for updates of batch proofs in logarithmic time (computation doesn’t grow linearly with the input size itself, essentially the performance remains efficient even with an input size increase) whenever a subset of leaves in the tree undergoes a change. The data structure is then maintained that stores previously computed recursive proofs to facilitate updates.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/cf9b033fad2f7cbb9be52d39962f331c.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAANCAIAAABHKvtLAAAACXBIWXMAAAsTAAALEwEAmpwYAAADw0lEQVR4nHWUYUxbVRTH7xc/uGj8aMqmZGEsxkSiGRsbdWOCyRSIWhlZGF3KGjLpZDiqa4XOQBkOXjWMjkl1L8BcGXQtbWm57fYe7RvQ91IHhaf1td3es72wFtsOY9QPfjbNW5pmw+T34Sbnf87/nntOLkjx/LNkEaJmXadksg6l0oLj22q2hXQ4NB2dX3/Vd+lirxEzjGAYyKBEvmheJ4TDTZVSqaSoZndJ1SvFZqOxMPp/IC4CbfZrA6dtY4opU5MF121EeQCt1h6tdgQz9Gi1rtu3RSnLMA37ymt2lxwr3SuVFA1361AsFg2FCstlUCKLUJ4VaoEhyenxie+wc1b83OT3be6poU0hDizjY72az6/066/064OUT2xleHDw9R07pJIiqaTozRdeGu7WCeEwBSFDkk8MBOH+EkVT8zQ1H1zwOa3T5Kwzi9DfjzN/JB9nEplMIpOOJ1M8D84q5KcbP1I2ypo/eH/0G0N0dQ1arRSE+OUBTK0e6erC1Grmzh3xmizDrNFL9h/NGs1n9V0N735RV91ZW91Ze7jz2Ce9bWEm6J1xuG8ZvJY+j0V/b24i18FZhby9pbm9pVnZKDN9i9nNt1rlcoYk//3rz/ByMOifT0R/LRwA4iKbQvyG+frztcVgFwBvPJejFFR/+h7tJabHxg09DQO6yj5NuXn0wu+/IaBWnVE2ylSKJsXxD2+MXluAXpogsgj1D17d+Vr5i5I9FUfrwssrha/vn3Wr1e3vaOreapXuV1XtV1WVnZGe/FIeW17NIrT1KJ2OJ9Px5KaQWx/ABmi/00nNuUmHgyaI3IQDNG40AkkZKD4ASt8GL5dpL15OcOFoKMQGaApCnmXv2u3YoN7ng25o83jsExM/QOdMdn0jxfNLXuuiZ2oRTj4IBVOCAMSpitAEEQ2F/tnaMuN4zmCPFJRUgl37zl/o/SWwRBMEG6DFJu7a7T8HmOx6clOIi7AMQ0F4Sdc9itXiQzVD+grXJLb1KJ0zKHxfCsIUzycfxnYe/hi8egDsPQKKK66OXM9fgmdZUZNFKIMS4rKKKYiL8Cz7k38u6HMFfa4Hq/efdFAIz7Kkw4G4yEqAnp1xuu1OYs6TD1EQ0gSBuAhNEOLZ73R6bTaWYUT7nPH6RnY9mV1PpgQhN4NnPwkxn18LJR/GRNgAzZAkyzCIi4iF2hSKo4cOnZTJWuXyIwcPnlepbppMuNGIuMhTBQHiItvCkKTf7b4Hod/tZkgyurxSGG05cULb0XG8vv6mycSQ5CKEFITQan1KhrjIfwXDVo6YE9bZAAAAAElFTkSuQmCC" nextheight="610" nextwidth="1456" class="image-node embed"><div class="relative header-and-anchor"><h3 id="h-updateable-and-partial-proofs-via-recproofs"><strong>Updateable and Partial Proofs via Recproofs</strong></h3></div><p style="text-align: start">This is really helpful for creating proofs in zkMapReduce. It lets someone lock in a memory, prove stuff about part of it, and easily update the proof if things change. In simple words, it minimizes proving time for generating new proofs over large amounts of data, while having proving scale through composition of prior proofs and not recomputation. Something particularly convenient when there is a need to compute and maintain a proof over a dynamic stream of blocks, or other continuously changing data. This could also be potentially useful for things like BLS signature aggregation, among other things.</p><p style="text-align: start"><em>If you’d like to dig much deeper into Recproofs, we recommend the original paper </em><a target="_blank" rel="" class="dont-break-out" href="https://uploads-ssl.webflow.com/6460ebf2b6ff254688bebf1c/64e4dd54d9198fde8d58ef44_main.pdf"><em><u>here</u></em></a></p><p style="text-align: start">Another possible interesting use-case of the above-mentioned implementations from Lagrange is that of proving data root equivalence for structures that aren’t necessarily ZK-friendly (ZK-friendly data structure mimicking a non-ZK-friendly structure). This could particularly be interesting in the case of data blobs on DA layers (or for ZK rollups). If you’re interested in this, we highly recommend checking out <a target="_blank" rel="" class="dont-break-out" href="https://www.youtube.com/live/WYH7n4M016A?si=QG323No_92lqcGdt&amp;t=6306"><u>this section from a talk</u></a> by Ismael Khoffi hinting at the possibility and <a target="_blank" rel="" class="dont-break-out" href="https://www.youtube.com/watch?v=NCLuU-NS3IU"><u>this talk</u></a> by Nick White that outlines further ZK-enabled improvements to something like Celestia. Here, the Recproofs are specifically appealing, because of the steady stream of constant updates that such layers handle. There’s also a small section in the Recproofs paper on digest translation which covers this slightly. Another fascinating application of this is the possible idea of <a target="_blank" rel="" class="dont-break-out" href="https://forum.celestia.org/t/achieving-base-layer-functionality-escape-velocity-without-on-chain-smart-contracts-using-sovereign-zk-rollups/958"><u>escape velocity</u></a> for state-minimal layers by using ZK Rollup bridges w/ data equivalence.&nbsp;</p><hr><div class="relative header-and-anchor"><h2 id="h-periander"><strong>Periander</strong></h2></div><p style="text-align: start">We believe in a not-so-distant future where most on-chain data is referred to and verified via storage proofs in a trust-minimised manner – with a varying degree of implementation that may either be decentralized and trust-minimised, or centralized, but “trustless”. This doesn’t necessarily mean a Nekromanteion “death of oracles”, but rather a proliferation and use of validity proofs to minimize trust in oracle networks for on-chain data. After all, it’s a rather remarkable paradox that we even have trusted oracles for on-chain state.&nbsp;</p><p style="text-align: start">For data that isn’t on-chain, then oracles as we know them are still incredibly useful (or problematic if we consider real-world applications that aren't taking a price from something that can be provided from some network that has economic security, mathematically proven data and slashing criteria). Something that is also interesting to explore for some of these use-cases, where we can mathematically prove something is that of <a target="_blank" rel="" class="dont-break-out" href="https://blog.chain.link/interactive-zero-knowledge-proofs/"><u>interactive zk-proofs</u></a> as oracles —, however, actual live-in-production usage of these remains very limited because of several factors, such as cost.&nbsp;</p><hr><div class="relative header-and-anchor"><h3 id="h-bridging-and-trustless-oracles"><strong>Bridging and Trustless Oracles</strong></h3></div><p style="text-align: start">Within bridging, storage proofs (as outlined earlier) also have the possibility of playing a significant role. It already does this to some extent by increasing the security within existing cross-chain messaging protocols, by being able to prove that a specific block header/message has been sent to the receiving chain (and as such stored).</p><p style="text-align: start">However, there’s also another important factor to keep in mind when you’re dealing with bridging assets/state. This is one that’s specifically going to see use in sovereign chains that have different <a target="_blank" rel="" class="dont-break-out" href="https://www.paradigm.xyz/2021/07/ethereum-reorgs-after-the-merge#what-is-the-fork-choice-rule-and-why-is-it-important"><u>fork choice rules</u></a>.&nbsp;</p><p style="text-align: start">To be absolutely certain that a cross-chain message has been handled correctly, we both need to verify the state validity of a chain, and it’s fork choice. Storage proofs solve the first part, by proving that some state is stored in a slot. However, since we can only have a single canonical block in blockchains, we need to be certain of a specific block being canonical (since there could technically, depending on the chain, be several valid blocks – hence reorgs). For this to be verified, we need to have certainty (or a proof) of block data having been finalized on the DA layer. Here we can either run light nodes (or full) on a specific DA layer for guarantees or fetch the data ourselves from a DA layer’s data equivalent structure (e.g. a ZK-friendly data structure like the Lagrange example). Although, in the case of a chain connecting to another chain with a different DA layer where the latter chain is not running light nodes on the formers DA layer, we would still need guarantees. Here you could have a relayer set whose job it is to relay validator signatures on DA blocks to the chain in question.</p><p style="text-align: start">Block header bridges are a natural extension of storage proofs since the block header (the root which is the storage proof) proves the existence of particular information pertaining to the block(s) in question, and are likely to become the standard for bridging tokens. These proofs are not limited to just token bridging, however, but can also be extended beyond that. Here is an example of how this could look for a varying degree of needed structures;</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/133b0fce3d96548ac4287b2fa46595fa.png" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">A similar construction can be explored here: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ethresear.ch/t/hashi-a-principled-approach-to-bridges/14725">https://ethresear.ch/t/hashi-a-principled-approach-to-bridges/14725</a></figcaption></figure><p style="text-align: start">Only in the case of conflicting reports, would you need consensus to resolve it, if you want this to work in a permissionless manner w/ some set of participating actors. However, if the token in question is on a chain while the network is off-chain, you run into the ever daring social slashing (hard to solve when protocol parameters control funds on a different protocol not following the same rules). On the other hand, there are also optimistic execution protocols, in which third parties have taken on inventory risks to handle bridging much faster. These approaches are nice, but infer a lot more associated risk. These would still, arguably, want to provide higher degrees of “finality” to said messages, and could also make use of similar solutions.</p><div class="relative header-and-anchor"><h3 id="h-oracles"><em>Oracles</em></h3></div><p style="text-align: start">Another use case is that of repurposed oracles, of which validity proofs can help decrease the reliance on trusted third parties to some extent. For example, existing staking pools, or even re-staking participants could help provide extended value to networks for providing needed (oracle) information they already hold (since they are active participants in the chain) with rather impressive cryptoeconomic security. Beyond that, the fact of the matter is that as users and validators chase the highest yields possible, so do we get more and more variations and representations of staked tokens. These tokens are often used in defi (such as in lending) and often rely on trusted oracles, which poses significant risks to the underlying protocol (and this is before going into things like re-staking, social slashing and even the entire economical problem of this). We are reliant on the aforementioned trusted oracles for data, which can effectively affect the health of the underlying protocol. As such, having the absolute highest degree of security is vital. An example of how these native repurposed oracles could look is seen below (keep in mind this is for on-chain price discovery post blocks in the pricing case, of some on-chain AMM);</p><figure float="none" data-type="figure" class="img-center" style="max-width: null;"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/9c9baf04080141294fdcae31762edd73.jpg" class="image-node embed"><figcaption htmlattributes="[object Object]" class="">A similar construction can be found here: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://blog.lido.fi/grants-exploration-zkproof-trustless-oracles/">https://blog.lido.fi/grants-exploration-zkproof-trustless-oracles/</a></figcaption></figure><p style="text-align: start">In this setup, the block hash contract receives reports from the repurposed oracle, performs checks and verifies a validity proof testifying to the validity of said reports. This can then be retrieved. The oracles (extended off-chain mechanism “secured” by restaking/validator pools for example) computes the needed data, and sends associated data needed for proving to the prover(s). The prover exists to replicate the needed computation, proving off-chain that mathematically what was given by the oracle is correct, and then sends a proof for verification on-chain, that can be cross-referenced.</p><p style="text-align: start">Examples of these kinds of “validators as oracle” can be seen in the Cosmos ecosystem already, namely in <a target="_blank" rel="" class="dont-break-out" href="https://docs.sei.io/advanced/native-oracle"><u>Sei</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://pkg.go.dev/github.com/umee-network/umee/v5/x/oracle#section-readme"><u>Umee</u></a>. However, the relatively low active validator set (and delegation) of Cosmos chains in particular, makes the needed number of validators for collusion significantly lower. Although, it does tie in an important aspect (oracles) with the cryptoeconomic and consensus security of the network.</p><div class="relative header-and-anchor"><h3 id="h-state-bloat-and-optimisation">State Bloat and Optimisation</h3></div><p style="text-align: start">The growing issue of state bloat still limpers, and while storage proofs can help with verifying state on-chain (or off-chain) it doesn’t solve the fact that state still needs to be stored. While you can offset state storage to some other network, group of nodes or archival nodes, it still needs to be stored some way. The statelessness that Verkle trees, MMRs and storage proofs help with is only for active consensus/execution nodes, but bearing the substantial weight of state storage is still needed. However, in a case where we have specific state nodes (that would arguably be massive, quite costly to run, and as such, likely to be low in numbers), we can still rely on honest minority assumptions – since as long as a single actor is honest, we can be assured that we can reconstruct the state.&nbsp;Constructs like the <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/abs/2111.12323"><u>one presented by Joachim Neu and Co</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/ethstorage-scaling-ethereum-storage-via-l2-and-da/14223"><u>ETHStorage</u></a> and others are also interesting.</p><p style="text-align: start">Generally speaking, we are of the opinion and belief that the only way blockchains scale to a global level is if we have delegation, specialisation, and optimisation within specific node types – while giving light clients an ability to be expressive. This extends to the idea that active (high functioning) clients that participate in active actions within a blockchain (such as execution and consensus) should be as optimised for their specific purpose as possible. This could be that execution clients should hold less state, for example, or consensus/data availability should be delegated to light clients (and in the consensus case, to minimal-state bearing consensus clients). In that case, the state should be delegated to archival nodes, state rent constructs or similar while vector commitments within Verkle trees are stored to refer to correctness. Where storage proofs help here is for smart contracts to “trustlessly” verify the existence of some state on one of those honest minority storage nodes (preferably enshrined).&nbsp;</p><p style="text-align: start">Essentially, an efficient blockchain is very much like a well-structured and organized company. Wherein different parts of the organisation specialises in certain tasks and operations, but where there is verification of each other's output.</p><p style="text-align: start">_______________</p><p style="text-align: start">Thanks to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/MathijsvEsch"><u>Mathijs van Esch</u></a> (M11), <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/Ismael_H_R"><u>Ismael H-R</u></a> (Lagrange), <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/DougieDeLuca"><u>Dougie DeLuca</u></a> (Figment), <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/cryptobelix"><u>Pim Swart</u></a> (M11), <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/BreakeyLachlan"><u>Lachlan</u></a> (Kosmos), <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/devloper_xyz"><u>Tracy</u></a> (Pluto), <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/0xtaetaehoho"><u>Terry</u></a> (1kx) and <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/ballsyalchemist"><u>Yuki</u></a> (Fenbushi) for discussions or review leading up to the writing of this article.</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>zero-knowledge</category>
            <category>modularity</category>
            <category>cross-domain</category>
            <category>storage proofs</category>
        </item>
        <item>
            <title><![CDATA[The Cross-Domain Thesis Part 1: Setting The Stage]]></title>
            <link>https://paragraph.com/@Maven11Research/the-cross-domain-thesis-part-1-setting-the-stage</link>
            <guid>991ItCPHlNKyAwRXRTHk</guid>
            <pubDate>Mon, 25 Mar 2024 22:08:44 GMT</pubDate>
            <description><![CDATA[As the blockchain ecosystem expands with new additions of rollups and app-chains each month, liquidity becomes increasingly fragmented. Yields are sc...]]></description>
            <content:encoded><![CDATA[<p>As the blockchain ecosystem expands with new additions of rollups and app-chains each month, liquidity becomes increasingly fragmented. Yields are scattered, users dispersed. Because of this, one thing has become evident: aggregation&nbsp;is and will increasingly become more imperative. There are many projects striving to improve these issues, but they encounter various challenges that can be addressed through better infrastructure, trust-minimisation, interoperability, and language expression. These challenges encompass persistent oracle issues, liquidity fragmentation, compatibility with different virtual machines (and building for them), collateral management, non-conditional transactions and the need for simplified yet customisable transaction mechanisms.</p><p>The past few months have showcased an increase in announcements of app-chains and rollups, often utilising shared or derived security from existing protocols. Here, the rollup part is specifically important to note as well, the increase in rollups plays into the cross-domain thesis – especially as long as there’s no inherently chosen global state, transport layer or in-protocol bridging/messaging system yet. This means that the rollups, while able to utilise liquidity and derive part of the censorship resistance from the underlying layer (depending on the security and trust assumptions on the rollup/smart contracts side) are still quite limited in cross-rollup communication. Essentially, they act like siloed expansions of Ethereum liquidity, and are more like singular chains that run into the same communication problems as others before them. Bar Shared Sequencing setups that will likely alleviate some of these issues for sets of rollups, most existent and many future rollups will run into these communication concerns. The underlying layer’s finality, congestion, and throughput are also limiting factors here. E.g. if I as a user of rollup A want to make a “trustless” transfer to rollup B (without going through a trusted third-party bridge that brings additional risk). I would have to either wait for the probabilistic finality of a ZKP to be verified after some set of supermajority epochs, or wait for the challenge period (in the case of an optimistic rollup) to have ended before I can move my funds to the bridge contract of rollup B. These issues are easier to solve in the case of deterministic finality, as long as the two rollups are sharing a transport layer and can verify the state machine of each other – either via a light node or full node verifying block headers or state that proofs inclusion on the underlying layer. In the former example, utilising the underlying layer’s economic security to guarantee inclusion (if all data is available) to the rollups is also a likely relatively “strong” guarantee that a bridge transfer can happen.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4eeb62de6e2ace905dec615e3abdb806.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD1UlEQVR4nJ2TX0xbdRTHf/HNFx58Ilk2I2qyBx0vxmxTl8gUWcbDpA4loiFLWEKyuMgDG1NcMlxICJmLhiVYpZSW3va2t7fctpd2/cuF/uFeYNzSlrWFXtbb0ku7XqAtrVKXmXJj7YMxdMknv5yc3/nlm+855wf202mBAs8L7KfL5LiUy2rVTEwQJpPLao3QdCm/V+CfVpWljwKoRJFw0BfwES4CfNUMupoavryoHZcYEIQkCOjB6KsfXQBtV0Brh1gG+Wnfmm+1ZoHE5gbtX3G6naC3AzTWg7cb5o04YTFDEgntdLx06h1Q/xoQdclhDUVSftpXs0DFe5HPrliJRZMlQtMuq9Vlte4kk0a5bBbVHHZJKMvULCCQ47b3trk/9vM8x6FKpQ3H52w2qVicfBJ7flDaSSYrZS8oUOD55OPH6qGhie++bznVWA/AG3V1N9rbx3p7MbH4z72Kg7KJqvhfW5UVEE6Q5TiB/XQ6y3GlfJ40GK6ePXvtfFNLw+tn6l5pPXny247L/aK2+z09W9FoPBxJMUyKYTIsywTWooFAPBRKMcxWeD3DsjvJpHCVjjKxYHA3kQDVa5fluGfFIoFhJ+pevvjxuY7mpmMAiN4709P9dU+7qGxCg2AaZFqlhiSTjhkTJJXhqA7TIDiq00wpcFTnmDHD8inNlMIxY1pyeeKhELAbDE6TyefxCDKlfJ7AsM7Tp682ffhNyyd3Pm27dfmzzpbmzg/el9y+zW9tpaObKYaJhyNPWTYejmRYNrX5pMyhLcFNPBTKsKzQNDA59uvI4ODgwIDNYEAVChxB4pHIxspKIhBw6vVfXLoU9HpJizXo9aYY5ojLczieTI7bznHb5RYJ2d1EYjeRyHJcpWnM2trzg4NnxWIpn6/p9/7HFglDrsQFnveT5J3+/oG+vmvd3X3Xr/tJUriqrnyRj1bK7/1VyDGrq2l2c93nW3A4LNPTlQlVU7ODME3bH9pRzDI6Jnmr8d05m2PZ7aZcLoqYJ4m5ebvdbXd4Z2fpBfKR2xMLBo+oURYo8HyEptUq+M3WKwDUA3AMgAZRd6/Z/BDWYjCCSWSQVKGSKmAZBKsPMxpIWYODAs+HaVqlUt+8N37iQtfxc23Hz38+PCr58e7QzVs/DI/8ZHfOLT3yeallL7Xs8lAucgmGlNlkogaBDZ//N4nM46W83gWSWiSpRbPNee/n0bvDI/d/eYBMG3GzHbc4/sFpxAxHnDbgYywfY9PrUQOqM2IYptVpYUQlV8BySI/q9FpUAyknfx+XSaQwpESUKhzT67VogKKyHCe8/X/+BhE+cOzIx1sRAAAAAElFTkSuQmCC" nextheight="803" nextwidth="1456" class="image-node embed"><p>Many of these assumptions also assume that the token standard of the connected chains and rollups is universal (e.g. IBC w/ CW20 from the <a target="_blank" rel="" class="dont-break-out" href="https://docs.cosmos.network/main/modules/bank"><u>bank module</u></a> of chain A to the bank module of chain B or fungible ERC-20 tokens moving from deposit contract to deposit contract on the same underlying settlement layer).&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/b7a8b580a0857e1404ac3560c6a34c1b.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAIAAAAUMWhjAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFaklEQVR4nK1VC0xTZxS+LnHRuDizxaHVqCkKc9Oh84EGJegeyBjTobApoAxK5VneFOoKFRiKMhHrRKCl1QKClrAQ5mQNzDWtMi592msrDxHRchW4tty2177sQu/SIauoicmXmz//vTnfOd8537mAcfTRDEBhrboHHFbfHlbfHoKgjrZWjUw60tcnF4uGIAgCwZGBPnVPzxAEYci42wjAzNGR+4PnTpVlp6QUUHP4vIvkg1FnS0v5XO71368W0nKjwvYV0Wj51GzhH+0YMo7CWhTWvioBCmvlYpGqq6tPqVBLpRqZVAV237sN9ctlaqn0jkKhkUn7lAoV2N1/69bk264uuVg0qFJOK2WmCl5UtfF1vp+J4I0AcCcOjKvpPMAvxTRhp8INAQrDNpPeYTM5bNgzM2pBR51ArIYnT3VjFnT8qW7MZtI9M6M2kw4/uOJiyLgdM+KwGiYcdhuGIACGjGMIgsOs19lNhiZWU1ZCUfrhI9SkIkYmk5HJzE48mhCdQSHRM+OPHs0upyYUp8TQinOZpwprK0+wn4w8wCMOQRCfy73W3NzR1vrn1d8Kabk3OzuAIQhSdXVBIKiRSdU9PRpp15d+CYs8Ns96652FC738N6bt8M14exYBAIAF87ziSDmf+UfPn+1NXLl26eKtARvTAnwpHW1t6h6wkc2+2dlxrbn5bGkpr6pSJGivLi9X3BBPEoQGB+dQUk8WFjJyqFcusuO+LyYs8gvY/o3vht1hgQX7AguWEDYAgMfKZTvDwvd7eW5ZRtiw2dd/rXfgga8Kg7ZnNbC511qaRYJJK9gxo8NidlgwDEEcFvO/Epn1OrNeZzVMWA2GZ2Z0f0j6bGDZkiUr5s9ZvtM3Y6tPrMcH7wMAQCT4+G3Zu5yw5SNv/8DAUK8VO4K2UQM2k1WgxGG3mPW6ae19rsn4rf7hQwwZvyOTtTbwL3N4vCpWI6uumJae8sPHIV/MzYjfeeYnJjUpi1VxrvLkmRbe5c7W9oFbkNUwgbcQ78TLjYYhiNUwYTcZHBaTzYQ6LOYH/QO/Nl2erN1mfnT/7qXamjZ+Y3sL/xKnhldzvoHFbmSz62pq2Ewmr6p62l5ybzRXpWandOoekM/lWA0T+ofDKAxDICgVCiEQ7Fcq+5VK/ACBoOKGWHFDjNwffI1lFxocnJGUhI8dhiC4rK6xdmLM+fxv1l9lF8E4UFgrErQ7E5RJRH9hyBj6eAS/n9pMVzavtCpMyOjUBO0Y5rBYhtVqkUBgNRiMo8+9xRDktXcRCsMahUQl61bLQbUchOTgvV5I1Clo4nFGBns1ColGIelVylx4UeJuCWAM0Z2vY4azSDF1KdFORNbG76mIOlBDCq8mRdbGR11IjK2n4CDVp+05e7Cez8GQJ67B//8/5zkCw6OxsroTKX8z8rpL8iTHf5SfTLue703xmx/uNWffqoVRa76ujCxSn8mTHM+TlNKlJ0iCHE4Ly2G1m5BRFNbiPsBt4YYAhbVWo6mceYwY7rOetI0Y7oPjw0ObiPt9CHtXLw5d/W6w57ygFXM/X7ogiEiMWLcq8tMjR7Lqq6v7lcoWHi8vPS0xNqasuIielXVXpcLHabpEP1cf+45DOnQhaTczKuR0RMjpiJUxGz1jNn1C2e4Zs2krfdeu8vBdZWEhzIiIi/GhVdGc+vOPe/uRB/dQWAuBIO6JkYE+l1DTCcq4pWGticnC/GQhHYcHeR0QRvQgr38vdo0HeV2yMJ8iLkgW0inC/G+vxP3SUGEzPnWO71R/uHcyjCGIHBQzKvPzKnITGQlkOjmORkorSU0vTU8tSUkrSY2nk8l0cjydnMA4nFmWQT2dI7oucBnQ7RT9A3Za48PoX/2kAAAAAElFTkSuQmCC" nextheight="1087" nextwidth="1456" class="image-node embed"><p>Although what's important to note is that in IBC’s current form, token routes are path-dependent. This means that currently tokens that have taken a different path to a certain end-state are non-fungible and aren’t able to be used in the same pool, for example. The path that the tokens have taken via IBC is encoded in their denomination (denoms, read more <a target="_blank" rel="" class="dont-break-out" href="https://tutorials.cosmos.network/tutorials/6-ibc-dev/"><u>here</u></a>). Which uses SHA256 to have a fixed length output, although it does mean that the ICS-20 module in IBC has to keep a mapping of all IBC denoms since it can’t compute the input, to look up the path and denom. The reason for this is entirely security-based (since tokens with different paths have different security guarantees); however, it does make it rather inconvenient for end-users and applications that are trying to do various cross-domain interactions – since tokens (at least in a world with DEXs beyond Osmosis in interchain) are likely to have moved around considerably. These would be unable to be deposited into the same pool (different denom, “same” token), and the user (maybe being unaware of this) would be perplexed – not a great user experience.&nbsp;</p><div class="relative header-and-anchor"><h4 id="h-path-unwinding-packet-forward-middleware-and-relayers">Path Unwinding, Packet-Forward Middleware and Relayers</h4></div><p>There’s an upcoming change for this, called path unwinding, which will help alleviate some of these issues. Path unwinding is essentially just a way to solve the non-native denom issues, by having them be sent back to their native chains before going to the final destination – this does add some inherent latency into the system, though. However, in the case of several hops from various chains to get to the tokens end-state, it does significantly lower hops, by bridging straight to its native chain, and then to its end destinations (in case of a situation where you’d previously need the same winding path for fungibility).</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0d37b23360981c8f0fa409130e80f6fe.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="1361" nextwidth="1456" class="image-node embed"><p>Another way this is being solved concurrently is via <a target="_blank" rel="" class="dont-break-out" href="https://github.com/strangelove-ventures/packet-forward-middleware"><u>Packet Forward Middleware</u></a>. Which is a middleware module built for IBC. This essentially means that a chain can utilise this module to route incoming IBC packets from different chains through the source chain first, so get the same denomination so that all tokens are fungible. This is particularly an issue as the number of chains increase by the month, meaning an increase in the number of archival nodes and relayers that must be run for each counterparty chain. The forwarding middleware also helps and ties into multi-hop IBC transactions (e.g. hopping through numerous chains to end up at the destination with the same denom as tokens of the same type). Essentially, by routing through the same chain, we can uphold the same denominations. It also means that the multiple chains that might be involved now becomes a single transaction, instead of a user going from interface A, to B, to C and so on.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/198ed37ea6efd4b4022b67a234ade9d3.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAADLUlEQVR4nI2TzY/bRBjGR+KC6I0D9FqpHLiCEBI9IO0BxD8AJ+5wLVJVcWPPVOVj6d5apBWgNrtUoulStNqlSbcJm6yTOOvxuHFm7B17/DF2xh6nSUOotCj2sgq7QcJ6DvbIM793nvd5gfT9eWWcu7p+f339wd2790qlX27fLq9vlNbW7t25U1pbu3XjRnl9I2VsyCPpB6f2LhSQvp8yljJ2sjSWMuM8h4XSZxkPi88CHxPMTTMwtBj3/y8g43wkRMZ5xnnKmL69PbDt/NDgnzKPX4Z8kDAdVr6yOo8EJTmen2gxIOPcrFYPymWzWg0Q2rhyZQmApZdfibCRyxQUC4oj3OMmGqfhhRfBawC07n+0v6t06o+blQpSlHatRiHMOBeOM2/GMcBuNnsPH7JudyREeXkZ5E9gaIGh+brKTSQoSZiTMGcyzJbePP/2BQB//8yC2Os/oRC6CFkQRphI3/9rMpkMh/OMf1lUuLH7c8noKIFFD9GT/FcWYTO/CkkZ+3MkhdNNmT/k0bw/KWNjKb+4evX71dWREMJx/qvJQTKIPBcX6516/cebt7Cmx5QmjOZGGVkQn/U6Zez5dAoAeP3ixbGURrtdgGeAU4qpRYkhHOfo6OjVF84BAH59sOUilBcRRNjkpnE2oyljIxGjvX0KdRchU1Wt3L15QBGVIHJt1zL5IRlLufrtytJ7H6x8s+IiFFMq/WBgkwj3FgG8jHOyp5CW2q7Vdre2kKLMA5hv913c44dWEnoDj3HHEh51Edre3Gw+qoaWxXr9mDrc1BN27O9CxinNUpS3K0Soo8OW3Tdqj3f6mjbkceRYJlR7BwdYgxGxnopk+kwmLk6ZV7TtlBbPAel2iaYRTXMRYnpPI61ZSM+B6TOZMm8WIdcObTIZpjevXX/jrXf3W3Ak4qdxfLbYhbMGjHbbaLe7e3tas2EdwN/qm5cuv//h8seBaxU3KyL4fDop5uOlT75Df+zWd3Zgo9Gp12GjUQxao1LhlC62SPpBylgWzvosHEfrKQQjYbvCcU6Uhf7lL38A73z6+dc/eQbU9xUbQgtC0u3aEJqqaqrqwLbntxT6G6DkakBOCWrgAAAAAElFTkSuQmCC" nextheight="632" nextwidth="1456" class="image-node embed"><p>It also mirrors the way data packets are traditionally routed across the internet to reach destinations, in this case by having the native source chain as the router that glues together the rest of the connections (and as such deriving security from the source chain path). The Packet-Forward-Middleware acts as the gateway out of a network (router interface connected to a local network in traditional terms).</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/c7b27dbdedd11e19ac45d69221ab9a57.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAADeklEQVR4nIVTT2gTWRgfL4KXjdCDsjdhMUI9eKmyKixeRehS0L3owVNR1O4qdKF4UfHkPyRbixt2i+SggqU2rWg2pkps62yTqGlj0iSTNiYzbWby+mZeOn0z782kkfljDFF0eIeZ732/7/d9v+83DJHht4+4WODmkqVMJj+XLGbS5WxWyOcybxNoWaBI+S6cIRC456sZ0IrrQLJzqm4adONuQhvWjrgQGTKmhg2sGlj9KoFuVzc1/OUVRTJFkCJkYVs4KEJEhgZWnRdmnmXj01O5twnnu62XqfB/05Php6MjbXGKUKXAsZORyMR4in1tqDWncYrQPMsmotHnwSDieYoUZujWzdDj0U6vdymVMrCd5zai4Ko4eOOa3+f7cdv2SoFzq9gEpobj0ZePAoH+vr5DBw9umIajianhgP/v0Fhwt3fXw3vDjcYGMxIIHO3u7vTuLGcXPpewqxhqLTw2dra397eeHlAqto2Iq6Lf5+s5cuTUyZN1ShwCQ63Ns2xf74kDe7uCDx7Uic6srayslgvp2BMdAFtW1OoNU8OlXL5OabthbDVwDXGp1IZptLZlatpsNAgrvMBxApdlIM8TGb6Pxa5fvZKe/R/yJVwVHUENrKbfJPp/PxcNPfusXotKkYnxgQvnuWSyuQNDrWXjsYv9f4aDQccajLPxmUj40sDA/eHhNamKBN5Qa7rtBzYSGR4amhh55FhFB5JRc0fUgRR6PPrP4F/xV1FTwzqQMJAoUlKz8X/v3LEgNivTFBQtC8XM3HLutYFxObugKUqlwIFSseloAkGd6KBcWgcS5Hkht4CWBWtcZ2EYG5q2YZorhXmpmG+u0yWgSLYmUiAWC8e6uzczzIG9+1SpYuXJMpFlHUiNuun3+To8W3/asYNLJk0NU6QY6jqRYZ2Sqcnnv+zff/zosUQ0qEPRRjl/si1FpcC9Y2fSbxJS8UPHDx7GfqYjYQxWl1Iz+XcvpOIHAsGezk7n6trlywSCpfRcJhYS8jmKlJ+7upwrv2+w0Wi4k30isNRIsuz7WEwqLV44e6bDs/XXw4d1IOkA4OoKlgQsSnVK7t6+1eHx7PZ6+YUMRUgHIixlIG/t7I/TpxmG2bJpUzz60hLjk6+aEimOQS3zyXJiekpfX7f1AUSWXY9CUKdELC6trVoGc0o0UVStvZgYT8VmW6sTGX4Eeohn2bBH1NYAAAAASUVORK5CYII=" nextheight="624" nextwidth="1456" class="image-node embed"><p>&nbsp;If the destination is directly connected to the same router, the packet is forwarded directly to that. If the destination network is not directly connected, the packet is forwarded on to a second router that is the next-hop router.&nbsp;</p><p>If you go to Osmosis today, a good example of how this currently works is that if you want to reach dYdX with your axlUSDC (that’s on Osmosis), you’d have to transfer from Osmosis to Axelar, and then off to dYdX (unless all flows through Osmosis). However, with packet-forwarding-middleware, you can now do this in a single transaction. This is supported by the new memo-field in ICS-20 token transfers, which adds extra information to transfers (denom, ticker, action etc). This plays into the middleware design, since it can now route packets correctly:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/37965acb5abc9158e6a9e91687954463.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAACFElEQVR4nKWSwWvTUBzH+x/koLg8LysJyEoPYytBhJEaC7U1UpGmMnBplOK0G25djmKSgYIMQVZWT26NqAftPL8J3vIHvNRdsr16GdbMg7quj+6ywROJjm3gwfR7+/4O7/N73+8v4rpNjPGb16+KxVs3J4qynCuXpwqFcU0raVqpUBhfWHi6WK3Was8hhIvVqm3bdybvmqZlmtaDh4ZpWrOVyovlZdt+WZmbW1v7QI8r4nkexrheW6o9W7p6RblwPpmTCykpe1ubvKFMpKRs9nLOcRwaVhGMse/7ganXV1iW1XVdFEVVVePxeCaTMQxDEIS37xqU0v2Dg/8GIIQwxoGBEHIcZ5qWruuCIExPTc/MzowmEhjj9tZWyB+4btP3fUIIpVTXdYZhDMM4ferM6up7Sin5q5bnhQQghDY3N+r1lQGWHWDZ0URiMBodHhnheV4QhH7SP9bBXq+30+l8hFDLK48tazAaBQDwPM9xnCiKQ7EYAABCGAbgOM5hB3u93s/vP7rdXTElp+Xr3e6uJEkAnD0aY18lByKEjF2S07Ky0+mIoggA6OtMbdtGCJ2YXiuoY1KWEKKqKsMwrtvsC9BqfT46IoSUypW0rMw/ejJvWUOxWD6vhAc0Go0TEVFKo+eG793XKaUAgGTyYugCfgMghF/a7cAghIKHvA28vf0tmKx/Wg+9/p+IDg/J97+G3vRfgF86HWE9qgSgBAAAAABJRU5ErkJggg==" nextheight="460" nextwidth="1009" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://github.com/cosmos/ibc-go/pull/2595"><u>IBC-Go</u></a></p><p>This, of course, adds extra strain on already heavily utilised <a target="_blank" rel="" class="dont-break-out" href="https://tutorials.cosmos.network/academy/2-cosmos-concepts/13-relayer-intro.html"><u>IBC relayers</u></a>, which is also why relayer incentivisation and fees are an important topic (and not just limited to the Cosmos ecosystem, but the broader modular and cross-domain world as well). Currently, relayers are relying on compensation from delegations to their validator nodes (relayers are primarily run by validator providers). ICS-29 is a way to help solve this. However, with incentivisation, also comes the importance of censorship resistance, and avoiding profit-seekers to go against the protocols to extract rent. This means that relays must adhere to certain rules through incentivisation, such as;</p><p>1. Timely delivery of packets&nbsp;</p><p>2. Relaying acknowledgements&nbsp;</p><p>3. Timeouts, if packets have expired before delivery, without needing a restart of channels&nbsp;</p><p>4. Exposed relayer addresses to IBC modules, so they can be incentivized.&nbsp;</p><p>There would likely be three fees involved in the packet relaying, which are distributed to forwarding and reverse relayers (receive and acknowledge);&nbsp;</p><ol><li><p>ReceiveFee</p></li><li><p>AcknowledgmentFee</p></li><li><p>TimeoutFee (in the case of timeout of non-delivered packet)</p></li></ol><p>Generally, what relayer incentivisation enables is the ability to get more market participants to be involved in cross-domain message passing. However, another view is that less popular routes would need to be subsidised (or possibly shut down), since you’re creating a market for incentivisation of popular routes. Although, you could also view this as the user base expressing their preferences in the form of fees – a form of intent if you may.</p><p>This would hopefully increase the decentralization and censorship resistance while providing a more efficient market for cross-chain message passing. A much-needed change in terms of how relaying is currently handled (while great, it is not very efficient for the existing market participants, nor is it sustainable for most) so that IBC can scale beyond its current size. Furthermore, it also brings transparency to the relayer market. However, what incentivisation and revenue does mean is that it likely leads to the fastest and most efficient (and geographically best located) relayers to accrue the most value from fees. Some ideas of potential solutions to this have been proposed, such as voting mechanisms for a small subset of relayers to be selected for specified time intervals for certain channels, giving more relayers a chance to participate. If you’re interested in reading more about relayer incentivisation related to IBC, have a look at this <a target="_blank" rel="" class="dont-break-out" href="https://medium.com/the-interchain-foundation/moving-relayer-incentives-on-chain-fee-middleware-fee-grant-and-budget-modules-b6a13eced375"><u>link</u></a>.</p><p>A current list of large, active IBC relayers, can be seen here:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6eb119ba12c781deb2803ee74bfaeb87.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEIklEQVR4nG1Uz28bRRT2P4ACl4gDikDACQ6AioSQkKASXKtW9FIq7gih9tQLJ8IhiTi5VHKhVE6VsIlKxpGaJSJe26qyG9W7K6LVOM5q1lEzdqN4dyOcWSrvD0vZV3nHmRja0R6+mXmz33vve+/lAMCyrPytWzOzs4/39wHAMIx8Pj8zO4sxJoRkeIYQgjHO5/M/37wpSVIcJ5IkTU9P5/P5QqHguq4sy3Nzc4VC4fi496j+aC5bnufnTtL092Lx+xs3HqzJlFIAIIQoioJQCeMGpVSW1xFCjtOilFYq1Qdra7K8zlhgGAZCJUmSECq5rosxziyHmBAiSUsIIcbYkOCDVyencrnVP/+y/t6G08UYa7c7HBNCODcAbJTL91dWxPlvd+9KkhRFEQC4ritJkuu6/OqPFRRFUQ4APvn04vvnPt/ff9zpHMRxwr9+GHqez7HjtNrtDscYN0zT5Piw27Usa2tri7EgjpNer2cYhsC2bYdhRjAx+U4uN7m9XXec1iAZ8C+KooMnB4NkAAAY473WHj+vVWuKonC819pTVVWW5SP/CACO/COBD54cIFQaRXD5y0tfXbmsaVuO0xIReJ4vthg3BFZVVVGUOE4GycBxWvdXVjbKZe615/mrpaEGmU+NSqU6Ivhh+sdr165zSQUBY4FIS7vdEenatXcNwxDnqqqapskJGAvqut7r9QCg3e5omjYimJ376dvvrsuyXKlUAeAkTU/S9LDbdZzWSZoCQF3XbdvmwtZ1HaESP7dtu1icv337l37YB4DDbhch1A/DU1zqh+GQ4OrX31y4ePX4+J/Dbjc6XYwx13U5brc7AlNKMcYc8+rEGDPGsieBbduMMYA0u2rwCNJctlp7zSB4KlLEI4jjBABM0xS4ruu80bgGC4sLkiSJBMqyzIvbNM3lpeVRiqZee31i4pWsVxvjIgsNKKUcA0Bzp1mr1kT5yvJ6pVLlGsRxomma5/kA4Hm+YRgjAh7Brt20LAsABMFht/s/Al5RDzc3BcFGuTxOUNd1QaBp2lCDIHgahr3dpj4/v0gIGe9k0b2maYor0zQRKnF85PvF4jxC6N8gAIBBkjzc3Mw0GHb1Rrk8ikBV1dUSwhhTSl8oMqX0hSIzxsZFjqJIYM/zudlZinaa26Z5Nov4vyBbmqaJCCily0vLvExd1703f+/Or3e41wCgKAp/tdNonM2i819c+PDjz3zPFUNG9Fr8XKN5nk8IETZ8jI9bctzcaRJC/hOBQ3YXFhfHI+BND9ksEtFQSmvVYT8KlxEaesq32bAb9gFCSJblUR+88fZHL738lmUZjtMaJxCBE0IEWRRFtWrt1CrFGKuqKggopfxVPwxFmabvvnd+6s1z2mbNNLefF5lPLsdpiXNFUYSZYRjZsBuJLFzxPD8rX/YMEQELjqKe8DAAAAAASUVORK5CYII=" nextheight="853" nextwidth="1456" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://ibc.iobscan.io/relayers"><u>iobscan</u></a></p><p>What has probably been clear, if you’re an active cross-domain user, is that, largely (bar a few newer applications) the UX has been less than stellar. The new developments happening here are arguably going to get us closer to that seamless experience so many are working towards.&nbsp;</p><hr><p>Taking a step back, and looking a year backwards towards our large modular focused piece, <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-modular-world"><u>The Modular World</u></a>, it is interesting to see just how far the modular thesis has developed. The original piece had a diagram that showed our idea of how a modular ecosystem could eventually look. It’s safe to say that we’ve already gone far beyond that.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4330e73d32019d5cb7c8d216b089cdf2.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAPCAIAAAAK4lpAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD4UlEQVR4nI1TbUwcRRhe4O729paZ3b2Z/Zq9vb3b2707KVqvpVCgTaEIAgeBkNrUpE2UarGxGBG0QRFJbLUJWmkxxaYa0hCDNmCVoGBoae0f+qtVo8RE/9SPRE2DMaZNmmjG3FEJoRB582Qy82TyPu+88z6MuI6QsnEvL0ABggxW8AAAXdf7B4ae7+5j1k66mFcURZHneY7jIAAr7gRxUNWRrKPFa5IkoWwAAAgxPp6cPT54Zk0BAAU/n6lNkoKbi0srH6q1Yw4EYFFTkkS/D5Q0xHsupJ89V12wycFBxXWddDpdWlqqKIrjuhNTX5w8Nby6AIQC0dH9cQ0hkJfDVFVX7dt/cGNqc47HA4VMpQIEAEAzRpIlZrzIUDUZQogQIgbBGAMAVFU73N335IH2lQIIBTVZZvJyh/Y+Qed/v3r0g2Mf0t435iMRyx9gd9yXjGmKj/MraghCSHSiyyE2Jz/gA5n/gJDjOJDtJEJoa/m2VKqIQSiIkYhRJjUE0OvxcCzLePMeL29YODJ2ovVo75k/Dr44k0zE6lqeaSouS1fvLt7+SE26DQDeMEJh23RSWnSjomhBjBXbti3LghCapjn2yYU3T5xmclnAeADjhYyXNwzS3FDfWPdwJGJ7WJ8PBHycV/TnoHyfJsvESe3dXlVetL2lsmH3liIWAhVp4QK5a3Jnx2TFA5W2JocKCzckEglFUWw7Nj5xsX/gFPPoNuuVFru7OVaX0u1YbM+hl1ue7nswkUAbYs3TxxsnXmucOLZr9q3Ivqa2MjzTu2Xs8NaPOgsbSwwgyaqiKIocS0ZIWEU4CADgeX5xJYZx7vxM/8Bp5u/BTvrNWfr96NRTdRV72rre/+rA8LVDPW8Lm9yOW1PP3Z7tuDXbeefTwq7HBpvMO6O1CyPphZM79u/UISIKRoSQrBugAIUlx0AIMcYNjc0VldXMlfYOOjxK3zn7Ulm50/LC6/O0c47WdE/geKh+7EjNSE/NSE/6/KvGrtrWcnW0s+i99uJ3W536YlNEWtg03bibmdvVXOjzeVmWZdgAlx8UAyLk8nnAsRLvVcQAz+ZCAATWrwqiJgUF1i/wPMsDxssDAedxIsKqZZkY47VstPQaRteI6yRjUTdEwgaJRqNx1y0wSNQMRQmxonbccZKEWGYoGg5FzJDlOgnLtGzbVlUVQij+XzDjA38uXKY3pulPn9/Fz/9tlo4/Tt/FjWn620V6bZxGIpHsvK/SmpUCcyOUfkfpdUq/XIYfKP2F0m/v4a9nyF9nKcZKtvx1CHw29M/tq/TmJbpweRmuZLGcyeLmJfrXHP16nGKM1ynwL481ZZnY3eGWAAAAAElFTkSuQmCC" nextheight="702" nextwidth="1456" class="image-node embed"><p>Here’s an updated version of that, that also shows how the Ethereum ecosystem has developed, and how many rollup SDKs and as-as-service providers that have popped up since then.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/2f826a9db0c4e3e55b669b0625a14718.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEI0lEQVR4nH1Uf0wbVRy//9Qs/uOCiRKNaVCzSbawiTgRMtqFLUiyH5IZJsmmkmW4H+KUZTNlMGBY0sGySYsCsyOd/KisR+EGlK690vbkatOuwJ0t1+N69l7ptcfOtsQs/mfaA+aPbMn3j/c+773v573v5/N9kAgi2QAiiKT4mDQVWHYDj2TweFxa2tzw/+ACpK5Hq9N2azo7u691aDo7B/v7BJaBsstsIkwLLOOedcYYOslHk3x08+SjpOiYnFjEfhFBRNomgn/Rb9yJ4QLkyhLNkUGODGYGAVIEEWjn/urc9yplJYfeKDuSU1D2yp6Kl/Z8IFN85MU9a6u83YpuLdz/wo7SbfIjeWVVObvkeWWHa883pfiVjVc+JksnRLVOpextbNG1tvW1pOMJEbCQw2KdNE3gLsxls7tsdrvVPjNtcdns9cp2RXUdQy58+dV5o+FnDLVbpqcxFHXabB4M26xVKh6Xyhtc8EWWfvthWPN2ReFbe/PVum/XEn+k4wI0dKtfo1YNaLph/W1Yf3uwt0ejVmnUKrvFMgGPk27P+E/DY3eGpgzG+/CEvqfPdGd4xmhK8bEkHxVYpqurg/C60wnxVHvdu5+UxkLcmeO1lYpyPhRt7W4+ozoLVe4rlRcVFO/Kz3v5RXlRweHyvQdKikp27/h11v6nGCsvroGgN5+DCiFIBkGvPgvtfgYq2AK9YxoyLnm9KIJsqXjtYkdDjGJ+1GtbbjTbnVND43r43vCp9rqmm8r66/XQrRvXupqVqm8a6mqqrzR80dWs7Gq+1KNuB1Twr7WHp09c3i47WJRfnZuzb+vzxdtlB/Nlh3a+/uHMGCICVmAZm+Pe4gP36u+g6bry/c8VFzq/Ptp6TKVtO9524iGIpuOrkMAylN+37PfzNMUFSC5ALj/w8TS9IR0rJRIBy9MUQy4ILJMIZ5y2LmxGSZDko6tcGNCBFWq5qeNy7tFt46OjWXnYjE0lxXia5mkq6w3A01R2zIggEiYXl7zeCEHwdMZ5XICU8CcEMBnv6oZ6jQaDhEh9EJnHMJ6mRAAIl3nebhIBiIWCS16v3+XKZl8cvasfg0dYgqT8Pr/LJdEILLN5j8ddycfScUGy1jqBVCUCx1EESYTpRJhCDIYYQwMq6HHMOsxTVxsbxRgncMzVRiWKICKI+JxOZGKyr29gZASes8/+szH/0xzrBDxN6Xq0B+RyAsdBKPRxVdUMDFN+H4ogA99rT9d+9igpCizzac2xwf5+gWUIHCdwvEKhsIyNUX7fkyu2QUDguM/p7P/upsM8leJjKIKgCELguOu+ec5qPXvyJDw4CEKhC+fOETgusMw8hs1j2JWLlxxmM0tkvoSnEUhP3qzSDAxL2Um3e85q5QKkxzErIQ7zFIogHhRlCTLFx7I+edoPKILI35lO25ZrOthUAAAAAElFTkSuQmCC" nextheight="626" nextwidth="1456" class="image-node embed"><hr><div class="relative header-and-anchor"><h4 id="h-raas-sdks-and-cross-chain-applications">RaaS, SDKs and Cross-Chain Applications</h4></div><p>While the modular and cross-domain thesis remains clearer than ever, many issues still loom. Questions still lie unanswered regarding the profitability of many of the rollup service providers, even more so than for SDKs. Some issues arise in the sense that the cost of hardware and DevOps might outweigh the profits from less transactional heavy and utilised rollups. If the case is that the developer(s) utilising the rollup isn’t paying for bandwidth, hardware cost and an overhead, the service provider might quickly run into issues. Otherwise, you’re forced to incentivise by giving away tokens, which if they have to be sold for the project to keep running, leads to a poorer security budget and unhappy token holders. For a more in-depth discussion on security budget, we refer to our modular MEV pieces – <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/modular-mev-part-1the-introduction"><u>part 1</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/modular-mev-part-2-finality-actors"><u>part 2</u></a>.</p><p>However, in the case of the providers running key infrastructure within their stacks, and those rollups seeing a lot of traction – there’s clearly a lot of value to be captured. This value to be captured might also see well established infrastructure providers that are already running validators and nodes in other ecosystems start to want a piece of the pie. This could come from them running sequencers, relayers and more within these stacks – which could help decentralize parts of the hardware, and more importantly provide liveness and censorship resistance, instead of relying on a single team to run everything. Beyond that, it’s also clear that to get those applications that are extremely valuable as an infrastructure provider or service provider to onboard, it’s going to be largely a BD game to a big extent. Although, we’ve seen decentralization and technology win out before. However, in this case, the customers are unlikely to care as much about the underlying infrastructure, as long as they feel properly serviced. What this all means, is that we’re likely to see a ton of new rollups, both singular, but also as (app-specific) L3s.&nbsp;</p><p>Carving out a specific niche, or targeting a specific sector, might also be a way for RaaS providers to gain significant traction. SDKs are less clear in terms of how to be monetised, although they’re very popular in building out homogenous ecosystems – as we’ve seen before. Although, if you don’t run key infrastructure within those stacks, monetisation can be difficult to attain. This is the same reason that MEV-software is hard to monetise, unless you run key parts of the infrastructure of a protocol using the software, which enable you to monetise. Selling software is, at this nascent stage, hardly scalable and is also a limiting factor in enabling researching, testing and experimentation. A good example of this is with the loss of Nvidia’s CUDA (Machine Learning Software Development Framework) monopoly, and TensorFlow’s loss to PyTorch (ex-Meta) and OpenAI’s Triton; the disruptive nature of open-source software (and non-limited to specific underlying infrastructure or hardware) and its ability to iterate faster and gain network effects much quicker than closed-source software is a key differentiating factor. The general usability and flexibility (or preference expression, <em>nudge nudge</em>) of a language far outweighs exclusivity. If you’re developing a domain-specific language (DSL), there are good reasons why you would open-source it, make it available for research, usage, and optimisation from fellow researchers and developers – it arguably increases the chances of it taking off. However, the monetisation becomes increasingly difficult, unless you either own the stack on which the language is used, or if you run key parts of the infrastructure. If you’re interested in reading the entire saga, I would highly recommend this <a target="_blank" rel="" class="dont-break-out" href="https://www.semianalysis.com/p/nvidiaopenaitritonpytorch"><u>article </u></a>(Thanks, <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/different_mj"><u>MJ</u></a>!).&nbsp;</p><p>There’s also a high likelihood that to attract the first rollup customers, RaaS providers might have to bear initial cost or even “pay” to attract the applications that we view as “killer-apps”, e.g. those that can bring in a large number of users or liquidity. This can be a daunting task for providers that may have a smaller war chest than others. This “race-to-the-bottom” becomes clearer once you see the considerable number of providers that have already popped up, there’s a real chance the competition gets very tough in attracting the applications that they all want. There’s also a chance, that for some, the cost of DevOps and hardware may outweigh the profit margins of less popular applications (in case of application-specific versus general), a <a target="_blank" rel="" class="dont-break-out" href="https://docs.google.com/document/d/1D2RAVcxyFqUQvD8Gm5WH-qSoeyzIzVl9xiHTpVuFVxo/edit?pli=1"><u>good post</u></a> on this was recently made public by the <a target="_blank" rel="" class="dont-break-out" href="https://chorus.one/"><u>Chorus One</u></a> team.</p><p>A likely future in the coming year is a Cambrian explosion of application-specific rollups and general smart contract chains, but with “easier access” to liquidity – just as we’ve had numerous more “fragmented” application-specific chains in the Cosmos ecosystem. Which, despite how incredible IBC and its standards are, still feels quite fragmented from a UX perspective – although there are many projects working on solutions here – such as Squid, Catalyst, Socket, <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Li.Fi">Li.Fi</a>, Connext and many others. As we covered earlier, the interchain ecosystem itself is also working on in-protocol features to solve many of the UX problems currently faced by them. Some applications start to look like actual native cross-chain applications, that require no synchronisation between operations, and allow for asynchronous access. Underneath is an example of Catalyst’s architecture:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/8cb71f6665d1c0286f7231b56120fe0e.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC9klEQVR4nK2T30tTYRjH34vuw6tuwyLC/oCCflxIUd1WdxkFUSihqVjpJHUK/gJFxNS8cCwSYzWEOebUKaPUdHNzm2c757xnx23HnR/bjvOcdrazGnOxHZlmXRgIn4sHnu/zvHyf531AVhKPQ5qPrlqtg729KwsLGSF+zKqsJIJj6nCnM86EBZZmCei12XJy6oQf8G04GWTTv7KS5qOI3X7yDrw2G4vjLI7TGIY61k/egcQxFIpazWbC45E45j8cZIR4kSO5jCAUyUpiTpbDEBaCVDYhHPBX0/1uhSzIyfIhDozvSVJOVkjm5KTSl6eCSjYvTv/cp1CVk1MK+Tj9qwgIuV2kwx52uWgfwlNBgaUFluYDW7uhIOJ0WxaXjMZZk8kS8PkkjrFZrSwBJY5BnKtGk948N7W8thDAkN1QkIMwRvpjpJ8PBt3fTWuLuo1vU8jqDGiveKhpaCgB4DQAW5ue+S86k1Y7rdEE3M6Ss2UAgDMP6kH54+6e/kWdTtPX93FwYMU0W9Nefbfr/vX62wCAyppn6Jrt89h73dCQQavFHGslp8CFUkDjbeZPT8BQXa2uo+Nq6bkbZZcElqZQlMYwwuOJhwJ37j0C5y/frFRfqXhlnJ6JBUjU4QhDfGcrODb5rnL4xdPe56XlFzUfxsRtOgzxGBUIQ5wlYF3VrdfV1+zzbw0TtYDz+7dRNMHQaT56eM8ZIa7MVOIYgaWzCeEHzXgdjvyPisUyQlxk2YImuSdJxcUqHXKylE0Iybwsv+SD5aQiXIKhFYrq9O6uZ92DuRHSi5NeDHUjhBd1210BH0xFIiJFiRSllEgMI1IhkQqlIpF/3EEqwvEEjBFYjMB4An41GvUazcTIiGVKb7PMLUzpZ3STes34osHAYHnHOyQZhTAK4Q5J7pAkByGNocpjhyfxx6EV3eRkeXx4pE3VrFap1CpVl7q1v7vrZVVVS1Njf2dXX2dnR3Nzy5tG7ejoQE93S1NjZ1vrssWyZJkXWPrIkf8G6xB8LUsounYAAAAASUVORK5CYII=" nextheight="639" nextwidth="1456" class="image-node embed"><p>In Catalyst, Unit of Liquidity serves as the intermediary for market makers (pools), facilitating asset matching. Here, the trade intermediate is redefined not as an asset itself, but as the trade cost (Units). To simplify implementation and enable cross-chain swaps, Units can be abstracted as a numerical value, enabling existing message relayers to facilitate the process.</p><p>To leverage existing cross-chain messaging layers and streamline cross-chain swaps, a function can be devised. In a pool of assets, each asset is linked to a decreasing, non-negative marginal price function: describing how the price of the asset changes as a certain variable (<em>changeable</em> <em>unknown number, </em>typically a letter, you’ll probably remember these from maths class<em>)</em>. Decreasing means that as the variable increases, the price of the asset tends to decrease. Non-negative, meaning that the prices are either zero or positive. The trade cost, represented in Units, is calculated from the integral (consider it to be an area) of the price function. The integral represents the area under the curve of the price function, and it gives us a measure of the total value or cost of trading that asset. From this, you can calculate how the price changes regarding the variable.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/17aabda365d61c7fb05f366d1aca9032.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAPCAIAAAAK4lpAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC0klEQVR4nK2UbUhTURiAD/SjflQglWYYxPwitMyvRFK0UYFFUVI/BGWIDj9A80dIKgqpIKE/nGEqM5RtuY28CVddzbXN1nKDOdt0X+3Dre2esYk7Lckw/FHMa5sMHROCh8PL4b33Oed933uB125DkFhWKrSf5QgSXrvt/wJ2BBBjs3AeF0HotpiiecwdXVpIgPO40QsQJEiCcQTx4W4geYt1tbV2tbVWV5TfvXmjuqK8t7OzlkZraWxoaWzoaH7SVFtTV0n7ql4KCdwWE4JEZIE7kAPFfJ5GKtk5r9Vp0LktJrfF5DTogvG+lwA+wvln+/fM5JtpPh9BeFBNjEqFYHycrIZ5WXOIJj972lxXSWMOMGTv30UQCMbGLOpFBKFMJMotKTsocx+Bal6C87hTHI5cKESQcFsse/HarT7CqZFKPmIYgtDvcVFyqCCv1Ed8i1aAILG14VdIxHKhcBOt//R5/R7C73H5PS7ymAjCOQ7HZTRubSDm0DAAyQml9V67NfIQBztBThGhFIn0iwqVVNzV/bzkIe1CNjWbev/VMPO7xynmvTYoF7Z//ZifmQGpxeBcbtKDegThmsMRBEG4idbDVpKQgJJZCE5fAifTwZlMEJ8DzmaD4+lHU/LjjsT0vxi5V0YHCVdBYhE4nx9/hy6Tz5p0S1a91qrXOsx6ATY5wugn1w84jrFZU2w2zuMKsMmAwEc4ZzEs8OrkYpD0j8QikHIdxGUFZMcughNpgFIY2D+VEVNSJZVN2wzLq8aVVeMKtJmm+fym2hqMzRrs650YZTIHGBOjzPGhlxibtSuYw3GQdA3EZ4HYyyA2Y5eUYpB2C1y5DVKpILEQUAoCOwl5BY/qEXSHlWhrw39giXawWjXqL7J57SeZQblgVqvMahWjp7unvb2JXuU0rECzcS9hTQ52lQz2EhSE/jAkaw7HYF9fT0fHYzrdadBF/2WFjelf8BI8hii+89YAAAAASUVORK5CYII=" nextheight="664" nextwidth="1456" class="image-node embed"><p>By utilizing Units as an intermediate between pools on various chains, swaps can be computed solely based on a chain’s local state, eliminating the need for state synchronisation. As such, you can ensure that liquidity can be accessed asynchronously on each chain, guaranteeing liquidity availability regardless of the timing or sequence of interactions with the involved chains.</p><p>Some applications likely to make use of the various native cross-chain applications are what have been dubbed (or described) as “frontends of blockchains” such as <a target="_blank" rel="" class="dont-break-out" href="https://www.ondora.xyz/"><u>Dora</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://www.fortytwo.money/"><u>FortyTwo</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://zapper.xyz/"><u>Zapper</u></a> over the past years. Who aim to provide a singular front-end that interacts with various protocols, applications and middleware but through a singular UX. These types of products are likely to see increases in users, as the amount of cross-domain interactions increases.&nbsp; Intents will also play a prominent role here, as you’ll find out later on in the series.</p><p>Regardless of the aforementioned issues, it’s been refreshing to see so many new announcements from old and new applications, as well as infrastructure projects building out new and exciting use-cases in modular fashion. From everything to application-specific rollups, app-chains, general L3s, sovereign rollups, RaaS’s, SDKs and interpreters.</p><p>Many of the projects mentioned are also interesting in the sense that they’re servicing the entirety of the modular ecosystem, by offering various customisation options and solutions. You want a rollup using Celestia for DA and Ethereum for Settlement? Go for it. Do you want an Ethereum rollup? Go for it. Do you want a Sovereign Rollup on Celestia? Go for it. Do you want a rollup on a sovereign settlement layer? Go for it. This showcases a unique selling point of modularism, in that everything is possible if you can build it. Build whatever.</p><hr><div class="relative header-and-anchor"><h4 id="h-eip-4844-proto-danksharding">EIP-4844 (Proto-Danksharding)</h4></div><p>As we mentioned at the start, one of the issues that continue to plague the rollup or cross-domain world remains scalability. This is a result of the demand of rollups for blockspace on the underlying layer. The Ethereum community has been at the forefront of rollup development and consequently is also developing solutions specifically catered to rollup developers and users. The most notable effort made is EIP-4844, which focuses on lowering the cost (and increasing the amount) of transaction data rollups can post to Ethereum. This is an indicator that the largest crypto ecosystem, the Ethereum one, is moving towards a modular, cross-domain world. Tons of devs are working tirelessly daily, to ensure that EIP-4844 comes out in a timely manner. However, there are still issues that need to be ironed out, as well as trade-offs and centralization concerns that need to be addressed and considered. As such, we do feel like it warrants covering <a target="_blank" rel="" class="dont-break-out" href="https://github.com/ethereum/EIPs/blob/master/EIPS/eip-4844.md"><u>EIP-4844</u></a>, both its positives and negatives for Ethereum as the stalwart of decentralization. The rollup centric roadmap further exemplifies the move to a modular cross-domain world, as seen below:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/fdfe47756c6ee70783fcd684f4c971e9.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="1362" nextwidth="1190" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/VitalikButerin/status/1609209529706872833/photo/1"><u>Vitalik Buterin</u></a></p><p>You can also check out <a target="_blank" rel="" class="dont-break-out" href="https://ethereum-magicians.org/t/a-rollup-centric-ethereum-roadmap/4698"><u>Vitalik’s post from 2020</u></a> that showcases the move towards accommodating rollups within the core infrastructure of Ethereum itself.</p><p>EIP-4844 (or proto-danksharding) is an upcoming change for the Ethereum protocol that aims to create a separate gas market and gas type for rollups to post their call_data (now blob_gas), which is what they use to send their transactions data on-chain to Ethereum itself. We also refer to this data as “blobs”, which will be gossiped around the consensus layer nodes and persist slightly longer than it takes for rollups to achieve “finality”.&nbsp;</p><p>It is set to bring lower fees to rollups (and their users) by increasing the amount of transaction data that rollups can post by a considerable margin. This means lowering the cost of accessing Ethereum liquidity on rollup blockspace, and making new and exciting use-cases possible. This is highly likely to result in an increase in rollup users and applications that might see this as the perfect time to move (or expand) to a rollup.&nbsp;</p><p>Beyond that, it is also built in a manner that makes it future-proof (something that’s critical with how many upgrades Ethereum goes through and has gone through). Blobs persist in beacon nodes (consensus layer) rather than the execution layer.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/be6f102d43122d997a2c5bd535bcb2bc.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFQ0lEQVR4nF3U/U9aVxgH8LMtaZOlW5r9sq4zy7a+zXbZi9EsrtapXa2tXbEqda1aFdSIBRUQAYugUkBerrxdLlwuiBUQuHC5cOEiSCXFQTRp19WlJkuarfs3+MnFWju35JMnJzlPzjc5T84BO6XSn8+f55OJh2Q05vcGXE631YxCBhTS2/cFMNSHOh44kD0em9WHIgEMRSH9wTY7pHdbTSEXlsID2SjxYmtrp1QCL7e3EZ2a8rtCGBxwWnyI0QtDSwdgelVrU8NgJ1Mh4EpHhtTScdOsbILD7mMyXPPaRXh+H/TKvN9uCjrhpH9hZoL/ZH0dZKNExI3kqXBxhSykyF9SZGElXliJbz5MFlLkxsPEWix0t7fzbm9nL7Ol88ZV4VCfaXaqh8m4xWjKBjzPsvEnK8TT1diexynicYooJCIFOrYEQ2kCfx2QjfgV3CFIMLIwfc8hk8CScfMEH5FJFmamHEr5Rpr6NUdvpGMbaWojTeWp8LN8JuxGhQotd9rCEqnYfPmdu+IuzsSwVM2TKiGNqkgTXsS4ubYKQi4s5sM0o9zhmgu2nj4ne+CVfnyMP/0Tw/DzbX59g7Cn8xGFp0NLmbA3E/Zmo8srAffZhlZwfeJDLgzYELg+foilLxtFwTU+6NOCxgEXDIecllycBIs22AGpLTxub2XVV++9/zkA5YcPn3n7reaTp9vOnisD4MqnJ2Z6uldw/97pmbAvRwYxvaqCrQAnasGxb8Gp+l1l34HqDvDBOQCOgMvcWT0cRufTRHg3wDI3jQoFpFgivdJs7O5e4HCM3d0Ii42w2AscTlggRMb5f21tFuhogY7u3U/IaW2UuWrV4UrJ4jcirGrSW60IVE16G3XRNpg+NeHhjElJlyURDOwGwDqlWywiROLuikplW/vyKL/lTDmvrn60rmHg+/PcmrrBxh/fAcA4K4M103bdfc2k8KOjR47fFIHLHFDXB87fBq0ToLrjaPfMiWHTx733PxpxsocFcY+NCuwHYEIBJZNTsqkgX2Bn91OyqVWNdlWjTatUj8yWtsoqAMDU6LBCwFWK+bzeLgBANd9Spw63wXS7PdXhzDAsCQacLBvQghbBZ+MLXJE8ipmT+KsAi0aBCQXqG+3CS5cScoW6nTl5pZlXV/96UVOLjPP//v1xkSY30lSBjj7LZ1K4t0YIv9tz/5MBw5djjmMsVdWk9wZMnxy2fsGDK+T+e0o9gZpoHAcemxXWKRelUtnV5tbyc6RYom5n6jtuzTJavFzefFeXk91vGuPRuPfAkAN2g/b0gArcnARM8XGW5lCHrEKEMSyJmulA0xzxtdw/rtAQqHl3yChkCLoQxQCLV1PLr28IC4SkWJJSKlfndLtVo6VkU1oeJxcPZSP+fYEs7vmhR3TRQl1HUk1m6pqNvgiRFyGybo64ZIqXDxm0ylkcs2ajBIh4PBE3EnTCHMY1qL9fx+qTtLVJmK2ym0wdq886zNFwBkMYnCOD/wZEl/MU7tCrmtq6O7iyy3dGLzCH6ju51wal7QJtM1skl0o3UtEleH49SQEq4Iu4kY00lYvja7HQnhyFv5FPRvIUniODB61FA0Wa3EyGi/FgMb68TvoPypOhAh31Icbdh/ZbsSjnjyT87lRwKRX0pIIeennhjdiik/Q4Im4k4kZCGPw/uAvBXQjhQclFLLnsSS576OCDPUn/AqyZfbG1BXZKpZfb27l4LEPgMb835MJ8KOK2mu2Q3qbT2gw6O2Sw737LBsxixKzm/7AY93YRg8Fm0GEWow91xHxLGSIS8y398fTpTqn0D/xSNWXfZ5i3AAAAAElFTkSuQmCC" nextheight="685" nextwidth="1371" class="image-node embed"><p>For example, blobs are stored in say Prysm/Lighthouse and not Geth/Besu. This separation allows the execution layer to focus on other initiatives in parallel, while future danksharding work can be done by making changes specifically to the consensus nodes. It’s a unique modular approach that allows for fine-tuning over the years, which is very cool.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/b45f5332bb7f06757cb23d73ae2db60d.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEPUlEQVR4nJWUfUwbZRzHH/9aTPQP40tQQhbRZDozNCHxZWZmM/Gv/WHiEmJ0viwTly3TZZkwlvBSxovERJDYAdJCJx10NigFi5N1tIy3O+5617vrPfccvaO0lGuhsMIcoqOlZ9pjtcOZ6Te/XJ7k+T2/z/P93ZMfUFV1M5lU/4Pi8fi2xX0Vi8VA5sD6+npjY1NFZWVVla6lpbXkTEnxJ8WjY+OZhGxAIp6SqqoOh6O09GxVdXVVla62rvbY8RM/WK2qqibSuxlAYjOZjMfjCKFJDMNx3MtDjueHnc55JZza0uJugFYiEg5jaRE4IUB4feS6AGFmdykaBX8mEiA3/2BpeZmp+0zH92dNli86e04busrSi1OtppbhSb0Lv8L7EvG4dg9VVSs/Pvrao09VfXCk5FDRuaL3aj46WnH4w7KiwzVHik2689+VVbSUnjPXN8gIgfXbG5ZrE052GkN+LhThQhFmdo6fV/h5RVsEVm/6V1YXVm9pl9JEE8TI8DBJkgG//8bS0kosFgkGvRMYjxMBCEMIhRBSJCkSDoPwHDTUv9JWU6jXFV7pecfZe1KZk/0ikqEgQ8HHQ8RykKLnZwOZt7CZTBY++FgOAA8B8BIAB3Y88SIAx994KxSJQA4KUNBC8kmKEgaLilj+WX596e5m3au6UzudfeU+SWRpmiapTBAYLvskDaD52F+wBwCwE4B8AA7tKTy278BXJz/nWY7CcZog00FAzqsoClgOo4665zrqnm+rfsZQm4tda5dkmaGIO3kkTZDEJJYBaN+8g/vAIwAAsPfTd2N/rC2vx0IL825sKusUwbNcCoCzFHg4lXr6vM4fini9tIi4lIN/AWjK3VsAdj3Z3zdAkG6Ph+RZctud7gY8/fj+999u+LaJommfBCUJelmWpT2ZoAky4J/NdvDsmy/nvF5gs9ud4+NQgJIkTIv8tiNIQCmAAxvZsTuPoVmb3T6KYYLAIcRuc+DG8FlJ1kprzxTsynnghbxfhoaGXC6GYxBieZ5L/bCt/CmapLweNgXwzwX0BoPlpx97bTaconyScE8Hs/JMpkW3Nzbsg4N9AwOtncZRHJ+ZlYMB35xfFBhW5KGMEM8wxCS21aJQJHyhw3jp8uVem83NspIkzMgoDWDuhCe7RZqJUCSsRBenKHe70Xip23yxq6fpQrfZ0m+xWJu+aeu3/ayE5hcjC9FoFMRiKyZzd7fVOuhwTJKk10tD3sPSVPaTcGe1KHsoRaNRl8tFkuTo2ITDOUaQ7pExwjaEIymoqsmtWbSwuKg3GMxW6ziOM5CXJOiXBdHL8QzDuSnOnWorMT7hE9A/AfdVCrCZTEaXb/x69Wq70djU3Nyov/i13tzQ2Pllo6nLYm9r6zQaOiiKWru1ds9xnRm0aWlDNjXr/gZkUoPBOZ6HSJyGUEDitCj6MFrEaPHmb79vq/u/HPwFeSUU+JIGiegAAAAASUVORK5CYII=" nextheight="598" nextwidth="1147" class="image-node embed"><p>Overview of popular Consensus/Execution clients. Not listed are others such as Reth and planned Elixir (DSL) built nodes. Source: <a target="_blank" rel="" class="dont-break-out" href="https://clientdiversity.org/#distribution"><u>ClientDiversity</u></a></p><p>If you’ve paid attention to the <a target="_blank" rel="" class="dont-break-out" href="https://ceremony.ethereum.org/"><u>trusted ceremony</u></a> that has been going on over the past few months, that is also related to EIP-4844 and data blobs. You might even have participated in the <a target="_blank" rel="" class="dont-break-out" href="https://github.com/ethereum/kzg-ceremony#client-implementations"><u>ceremony </u></a>(if you were able to get through the queue ;)). This ceremony was to provide a trusted setup for the KZG commitments (we’ll cover these in a bit). The trusted setup was to generate a data set that can be utilized each time a KZG commitment is executed. The generation of this data set involves using certain secret information. The “trust” aspect arises from the fact that a person or group of individuals is responsible for generating these secrets, using them to create the data set, publishing the data set, and then ensuring that the secrets are forgotten.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/2b352834fe897c102ab3e8bc87f12bde.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAADdklEQVR4nK1UWUwTURR9xi9jjB8uHypiKotUcalRo0BEDIhRKHFPEWqUSkuQtipLrSJSQqlJXYCoEYgLKG6EOFYojiBpJK1WG1PHzshQOp3OG6HYcUlM/DRlYlOVxGqY3Exe8u6757xzz7uAJclWpKWurdY20Oen6FGPe3ID3Otu3VS5XVSSomgspl0YB5lJBmgzXVt3LG1VUfKOqr2ZqRtHPW6WJPi9CcE4yPwTCcCSREP7OV2b7gmKeN6+g4M47cJwh30Yc/pw/I/q8HlPjw1FOQhHPUMRAQQZsSNjXmb8jDvAeEN7Q28cfPjwICoHGRTpVBZIlQXSpwgSIQbAbdaG0qPnVSX2XvT7188hfUISsSQRYLzXL1/enJRUU3HMWK2pO1VWcigPRTo5CMPzJwa4pCnPiomLBUAtFt+9cY2vGArahbEkwXMvKzpsrNbMnTZlX3Zmo76q+EAuinR+4z6GWsJByK/9FBVgvHyAljNndgqFmdGCErFYLZdzkOFJhf4sScRGLyzM27NtU/LKJYKoOTPnz5qRm7NNV3FULZPW6/VOm5V2YXAQtzw2TY8XgnkLQUoaiE8E0YvTJfuDTb7fUN9q0Ptw/ANNaVWqgrw8pUym057QaU8UHpD2m0xIe2up4qBQEDV/1ozVCXEr4gRCQdTapfGJsYvWi5bfbm629/c5bdayIgUI/2bPE0llIMB4XRiG9ln49jptVqdtwGLutvf3WczdXR0PWJJQyQsV+blapWLHlrScjFSJeKtMsjsnI9VQqfkyOhJS5vvXT003b8qOl1bUGdSnq47X6k1dZoD29M5Ol4LV2XuLK188feKnKF53H44PY05eJRuKNtVfXB4bs0G0LCN5bXrSGlFCjDxfEnJBuC/GuwI5CAMMHeyBpvYSWLAeTBWAxSm7srI5yAxjTl56/gw7vkDutHd1dNxpuapVKnTlqqvnzvK2/s1FLEn+DOLDMBl0kfX5QEKOAqRKVNUXvnEf/RQVlk0QjlfvXzvGH0GQFEuSV4yGK0ZDeNpfbBpgvG7snd3q4NiR8NL8E2N/ITj0P6PCT9EezP6yt/H1s1v81SYq7Q7H/uvj+m0WkY9vHWkyptxvzpLnp5+trgkwkzm0AUsS5ruFNeWJhpOJ/Y8ujtFshFMsUoAxyvfG8tB8T/3sYQ0cdEXevQgBfgDa1xis6ajfmAAAAABJRU5ErkJggg==" nextheight="823" nextwidth="1456" class="image-node embed"><p>The purpose of a trusted setup ceremony is to establish a foundation of trust in the generated data set (an essential part). This was done by, so far, involving 113,299 contributions to the recursive secret in the process, this means not a single participant possesses all the secret information required to compromise the security. The number of contributors to this trusted setup makes it the largest in history.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/d065b5c05de8fa28db77ceb3878589a6.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAICAIAAAAX52r4AAAACXBIWXMAAAsTAAALEwEAmpwYAAACn0lEQVR4nFWS4UtTURjGz4foWx9DlEQiTUgtSSUHZkxbzs2JSZvaFOd0A0UzsQxHIE4XKE2wTD9MR4g0Feeau8hmem+OrWmXzXPH7pl5tx1kTBEWGPQHhF4zgx/nw8Pz8rw87wEYsacg0m73fnFyDLRbLHaLZcfj3v5Kzk2bMGI5Bob9NEaIWPi0umjBCHFMgGMgRqyPIs2Tkxih6ffvoM+7x0DKRXhIF+UinCtWepMCXpeLIhyMxz0wbGzq0pGOlYzU1PKSkoDXM6XXm94Y+ACM2BgK6Q1vB4ZGYyj4V0Tm0RFDVydFOCjCQW+QNSpZuupOprrgZmtRdqfgYbMITI0Zu7XamXEjuCsBV3Jv5+SSdrtzebmqrEyYkibKuF4trqAIx2fLnLi0FGQJQVpRSWHhus22al1qUTZUZmYJU9IuAzCiH1TL6wAAIPXkAQBcfV5wrSobcAzkGJg8TGg07RUyefIwEfbToS0fx8AWqfRVa+tRfD/sp6HPG/Z/l8pV6vYXidjeuWekr69DcTIVord/BKBEJQE5ABReOiEf3JLlnwVgxHpcqwMve7q1mnWbjWPgAY6aPkw0KhT6/v4dj5tj4FF8f2x4sFleO6TTUQTBV0QsLXW0tXVrNfPmmQMc9ZJrpo8Tswum2QXThMnoXLGC8wPaFxefyp/Iq2UU4eBb3rBZ62WSFmUDvyzHwCjL6np7H1dW0psUx8BIMAi/uccNg+IHwnmzOYZCkWAQh3cjQTYSZHF4FyN0FnAU368pFtSVCX//OuaVAxzNE4hEVYrkYeLcIy8vb5JK+dJ4T12jOuVG3vHPJL/BKYELwH8VPZNVv1Y28t/jFH/6o6b79V0x9mwSI1Z5T9ApkcS5PV6JsVDc3AOKa8P+rQsB//EH7IrfpJ7GNFcAAAAASUVORK5CYII=" nextheight="389" nextwidth="1456" class="image-node embed"><p>This distributed approach means that the protocol remains secure even if some participants turn out to be malicious or compromised. Because you can arguably never get all 113K to become malicious, plus they might have forgotten their secret, or even randomized it completely (some very cool contributions, Anoma has also done something similar with their <a target="_blank" rel="" class="dont-break-out" href="https://namada.net/trusted-setup"><u>trusted setup for Namada</u></a>).</p><p><a target="_blank" rel="" class="dont-break-out" href="https://www.iacr.org/archive/asiacrypt2010/6477178/6477178.pdf"><u>Kate-Zaverucha-Goldberg</u></a> (KZG) commitments are a way to allow for succinct commits to data and proving values at specific points. It is a great way to prove values for data blobs, since the prover cannot change the polynomial they are working with. They can also only provide one valid proof for each polynomial, which will be accepted (or not, if not true) by the verifier. While the commitments take some time to compute, they can be verified in batches to accelerate verifying (and cheaper). The reasoning behind using KZG instead of just hashing is to future-proof it, and to keep the proof size constant. It also fits into the eventual data-recovery part of DAS (for danksharding). Same as what Avail uses, Celestia instead uses a fraud proof model.&nbsp;</p><p>As mentioned before, the consensus layer nodes of Ethereum have to verify the new blob data, in the form of a <strong>sidecar </strong>(read how Prysm plans to accommodate this <a target="_blank" rel="" class="dont-break-out" href="https://hackmd.io/@prysmaticlabs/Byquzj-R5"><u>here</u></a>). A sidecar in blockchain sense is an extra piece of software that is run in addition to the normal validator software (E.g. MEV-Boost). This sidecar batch verifies signed blobs and stores them (not in normal block bodies, but rather separately from a normal block). These blobs are quite large (target for each blob is around 125kb). This data is non-accessible to EVM execution, and can only be viewed by the EVM, not ran.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/03123109f0db85e9cd787f5444d1230b.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAADkUlEQVR4nK2UX0xbVRzHT3jQxMQHzeKTUxcTqUtMVLIliHEQWagUt2m2AoNBaafDkTtHJ1QyUhuZhZDJLNSslWFXsOufpVMaQgTWKxkwaoUG8Xb32ttzDrvc47noXdCNZK9muwkiq76Mk/NwcnJ+v885v/P9/kDsUuBrtzs1dY0imJlPZuaTcuYGRSIRhS2ZIHYp0OWw//TDRGubA2zflVd08JHCA6PffkcRlPj0FgBUIv9ByNqqeuSYFYAnQd4LADwTGAr+pSoqkbcAIPFp7aZz16YHfIE+94Wurh7HB40vb3vqrK2VIviwgPUVRXBFgiq5mWCvPgfujVJdPkVZieceplb/AIgoLPP8EsepRB70ek43HYe/pOXMEl7MKHhJFvktAGgTc4t31+5UlOmP1pReuXiq11kZC7rXGQrGCsYUQZXIKpE31ZAiqB1QiaxgnBtAREEW+WVBbKx/uuodcOQQ6OusXFkiEs9RBK9PjMdHRqbGxmLh0Ej0MpdMrDMogj+y7Ej0cjw2HAuHIn6fuJD6T8BvWTR4/uR7tc8yFl1Hm1nByxJ/r3oXPecNe/f2dTrPdXza/Yl9Nj5OREFTioLxcCj47ltlnfZ2v+fLoa+8XDKRA6CdpghOT8QnR8fFFBcY8GUXF4goyiLvdrlMJnOl0eg84xz0+adY9vYtlSJIEby7dqfb6dTpXjToDdZma21Nnc/jzQFQMF5dobMsOzfJUpSlKJuamYr4/SqR5ycnT3xoPfGR7dXdhW+8WdbInNTl6/p7Xb/Op4TUXLu1ecfz+fcFCEDe4+DRJyoM+zcDKIIRv7+/1zUTH1MwXheo54tzFEEuOdtud7TYTvd7B7Q8JcUl/b0uiU9jbrHd2rzzpVeKist2vbZnT2l5if5Aefm+fwG0OrYwTYUFBV0Ou7iQ0hqGgvFM/GrE78v8vPB+Xf3O1wtB/nYAQHXNYRnC1RWqha/9udrT3a3XG6qMVZYGy76Kt/vOfp4D4PjYtl+vbzKbN/qLInE4FIx+M8TUN+wuKQI7tj1WXJBMTG98JREFdIMzH67uaLMxFvMxU52CcY4/mGXjjQ2mWDi8KVi5L/Dbt9QWhuk41Xq8tr7nszMbfUARFFJzTUctdUZjC8PEwiGJT+eWqWalB9Wl2dBUXVV76GDQd+H7aHRTF5H4NJdMXJ8YlzKC1itzA/6/+YxGIoNe7+/STc2rD8pE29eS/A1fgbqbI3ErcgAAAABJRU5ErkJggg==" nextheight="753" nextwidth="1456" class="image-node embed"><p>For rollups, the way blobs transactions fit in doesn’t change much. Instead of putting L2 block data into transaction calldata, they just put the data in blobs for the consensus layer sidecars. The guarantees of availability stay the same, but instead of from the EVM itself, it comes from the consensus layer of Ethereum. For Optimistic rollups in the case of fraud (and needing a fraud proof) the proof submission will require the full contents of the fraudulent blob to be submitted as part of calldata. It will then use the blob verification function to verify the data against the previous hash that was submitted, and then perform the fraud proof verification (IVG or similar) on that data, as is done today. This happens on the execution layer side with hashes (instead of KZG) to ensure future-proofing that act as references to the consensus layer blobs. The blob versioned hashes in the execution layer and blob KZGs in the consensus layer can be cross-referenced between each other.</p><p>For ZK (validity) rollups, this works slightly differently. Scroll has an <a target="_blank" rel="" class="dont-break-out" href="https://scroll.io/blog/kzg"><u>excellent post</u></a> on how things changes post-EIP-4844, but we’ll do our best to summarize it here as well:</p><p>In Scroll’s case, they post 3 separate commitments to Ethereum itself;&nbsp;</p><ol><li><p>The list (block) of executed transactions on the L2 – This<strong><em> is posted as a data blob&nbsp;</em></strong></p></li><li><p>State root</p></li><li><p>A proof of the state root being valid</p></li></ol><p>Posting the list of executed transactions as a data blob makes sure that the data is available (data availability) so the verifier contract has access to the commitment (or hash) of it. The state root is derived from the list, since it causes the state root change. The validity proof that is posted also contains its own KZG commitment that shows it represents the correct list of executed transactions and that computation has been done correctly off-chain. The two separate commitments are checked versus each other to prove that they represent the same thing – called a <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/easy-proof-of-equivalence-between-multiple-polynomial-commitment-schemes-to-the-same-data/8188"><u>Proof of Equivalence</u></a>. Another route to prove that the data blob is correct is using a proof that points to the correct data and a proof of that data. But doing so for all blobs would be needlessly expensive.</p><p>Clients have previously needed to (<a target="_blank" rel="" class="dont-break-out" href="https://etherscan.io/chart/blocksize"><u>on average lately in 2023</u></a>) download around 0.1MB in block data (per block). However, this would obviously increase if rollup traction increases (and more calldata is sent). With EIP-4844 the average block size would increase to around 1MB (quite a significant increase) to allow for blobs to be downloaded and propagated, although keep in mind that most of this is temporary data that eventually will be pruned (as we’ll get into later).&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/ac8c2d87644345d313d24a2a1144bcb1.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEBklEQVR4nJ1UbUhbVxg+0EJFxHZepr2VOTQmMZqEwmrssmyzQU0KUX9oZHEGS2hLOpiDjfVXxphxPwbbfglrymrTrVy3QZS1MaW7030kOpdrwFzXxmsUb6ySq2wxMszVUXPGuSeLDvbR9vASznl48jzPe97DBRBClmUpivL7/TRN37p9+8oVzw2v1+cb8fl8FEVxHAcfc4miCCGkaZplWQAh9Pv9nZ2d9h57X1+fy+V6f2Dgqsdzbej6Da/3qsfDMMyTGfj9/nA4jAw4jnO7B/r7+10uF0UNBwIBWlo8zz+u9F42u7Ozi/d4gwwmQyGKoj6/ebPLZr8TuJtPLYridiYjPtr6Y3c3kVjxjdz6yvf1bJS9S094Pv0snd5CBoIgxGKxRxQSJdd/NMbgXjaLj7gPZAAhgv63/Z2d3XzlLwRvft9G4pkMEuGWEmvJjamZaGQuljMQhCTLsv+d9+Hew/nF5ekIOx1h3R97PN4vU5vpfOrRsW8/GLx+tvs152V3U9cF68W3TLZLFQ3mteQGMhBFMZ3eOjgoHG0vm+WWEnl8aib63NluS+/roLDymPbM4NAwv5qEEPrGJsp1piKVAZQogEwHSPUx7RlAqgGpZu/HgSiK4fD0L3Nz25lM9N79fGoIs9MR9mSzdXgk4LzsvkaNKl5sk/6myf9qm6wX3u4/2WwFhZWgWAZIdUGN4XD16cPVpwGhACe0yIDneZqmIYRvvvthRYOZW0rwq8nBoS/e++gTbZMVyHQFNQbwlBwnKqgxoKSlKlR/5T2k1KNNYSUg1VgdcQgFIDXsvQUgCEIwGPzpZ4Y81QwIpcl2qVxnkuJogEyHskjSoESOVDBCKJEBocRHiaPBBpiDilACQuEbm0AdBIPBTEZ8RmeSEklUQrHfLKlBcmW1WO6I/PlcB4QSEw4a4GOO83TNaOA7NIN4PP4NPV7RYAakBrGLqvJ5gXQJOA6oqj+QTqp9zr93gF/I+q+/IYMT2pwBofhbulIVMniyDiCEm5upie9/rDa05kZKKEBZbUGNAReoqkfRymoPKfU5BE9FmnkOkelQ01X1+wipBsdrcwYQwrXkRnHdS+hhHK8DR55FVaqSSHUILJShsZcoEFKqAkflqArRu0RXQarRMwPloOgAclQOimX7V7S8zJ974x1Dq91sc+pMXXpLT4v1vLHDYbY59ZZXjR2OUy1Ws835gqW7xXpeb+kxdjj0lh6zzWm2OY0djsb23rqX2xrbexvbe9vO9Rk7HC2vXDS02n+YYnIG+FsUYRiO4+LxeGQmIghChGHW1zdmmHA6vTUZCq0+WI1GZxcW4vPzMY7jeJ6PRmcfrKxMhkKpVGpifFwQBJZl0+mtCMPwPL8YXxQE4U/wvb+5mmViPQAAAABJRU5ErkJggg==" nextheight="573" nextwidth="1005" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://etherscan.io/chart/blocksize"><u>Etherscan</u></a></p><p>The unique part of the blob (blob_gas) is that it doesn’t compete with the gas usage of native Ethereum transactions, but rather creates its own gas market. As such, the supply/demand of normal gas does not affect blobs. There are also a few changes that have to be made on the block building side (primarily off-chain with MEV-Boost) to be compatible with EIP-4844. Block builders need to be able to accept KZGs and put them into consensus layer blocks, in the sidecar (however, the building logic is not required for all clients).</p><p>The amount of data that will be posted is a large increase to what is currently being posted, which also means that with EIP4844 must come <a target="_blank" rel="" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-4444"><u>EIP4444</u></a> and data pruning on the consensus layer.&nbsp;</p><p>If we consider the around 3 or 6*128kb per block (3-4x) increase in size per slot, then the already rather high total storage capacity required for node chain syncs (and archival nodes) become quite significant. As such, data pruning is needed to ensure that Ethereum stays decentralized, and that most people can run a node (if they so desire). What EIP-4444 brings to the table is proposal that clients can prune (e.g. “delete”) data that is “old”. The exact timing isn’t set in stone, but likely somewhere from a month. Do note that this is for the execution clients. For the consensus layer, because of the way rollups currently work, consensus clients could delete the blob data after a set amount of time has passed – this should, of course, be longer than the challenge period of Optimistic rollups (likely 18 days). The data blob deletion is needed immediately as EIP-4844 comes online; otherwise data storage is quickly going to become a problem and could significantly increase hardware cost/devops and the decentralization of the network. For the future, state expiry is also needed for other changes to Ethereum, such as danksharding and so on. So building this into the protocol early, and preparing for the future, is a good idea regardless (Celestia is also exploring similar <a target="_blank" rel="" class="dont-break-out" href="https://github.com/celestiaorg/celestia-node/discussions/2034"><u>pruning</u></a>).&nbsp;</p><p>One worry that this does bring is the possibility of an increase in archival node centralization, since the cost of running these (archival nodes are already storing north of 10 TB of data) becomes increasingly hard with such a large increase in posted data. Archival nodes and indexers are still needed for various applications that utilise Ethereum, and its rollups. One worry here is that the number of applications that utilise rollup data is likely to be smaller, than the number of people using base Ethereum data, but the amount of data that needs to be stored increases tenfold for rollups. This could lead to a situation where, for most, running an API service that rollup application developers can pay for to access old rollup transaction data might not cover the costs of running such a service. This could lead to a situation where it might only be worth it for large RPC and API companies (and rollups themselves) to offer such a service, making the entire historical data of the chain (beyond block headers) extremely centralized. The same worries could also be applicable for indexers, who, because of the now large increase in data, might be forced to run only the fast node software (leading to a loss of client diversity for indexing). Archival and Indexer centralization is a worry that definitely could use some attention, and how this changes post EIP-4844. One interesting paper that looks into possible trust-minimized and scalable storage solutions for rollups is that of Information Dispersal with Provable Retrievability for Rollups by <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Nazirkhanova%2C+K"><u>Kamilla Nazirkhanova</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Neu%2C+J"><u>Joachim Neu</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Tse%2C+D"><u>David Tse</u></a>.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/5e17165721f3bab01a2ca53c83352897.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="496" nextwidth="490" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/abs/2111.12323"><u>Information Dispersal with Provable Retrievability for Rollups</u></a> by <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Nazirkhanova%2C+K"><u>Kamilla Nazirkhanova</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Neu%2C+J"><u>Joachim Neu</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/search/cs?searchtype=author&amp;query=Tse%2C+D"><u>David Tse</u></a></p><p>Essentially, a storage and communication protocol using linear erasure-correcting codes and vector commitments with random sampling (“Data Availability” Sampling) to ensure provable data retrievability of rollup data in a trust-minimised and scalable manner. However, what is important to note here still, is that historical storage has a lower trust model, since you only need a subset of the data storers to be honest actors. If you need a primer on the difference between data availability and data retrievability, then this <a target="_blank" rel="" class="dont-break-out" href="https://hackmd.io/@alexbeckett/a-brief-data-availability-and-retrievability-faq"><u>post</u></a> by the great <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/likebeckett"><u>Alex Beckett</u></a> is perfect.&nbsp;</p><p>Something that is also interesting to consider is the way Verkle trees might help alleviate some of the state bloat that Ethereum and many others are plagued by. We’ve previously covered Verkle trees in <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/75212553/verkle-trees"><u>Beyond IBC</u></a> and our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/88304566/verkle-tree-integrations"><u>blockchain commitments article</u></a>, and essentially, one of the properties that Verkle trees allow for is the idea of statelessness (to varying degrees). Statelessness is the concept of allowing nodes to disregard state they have no interest in (<a target="_blank" rel="" class="dont-break-out" href="https://github.com/tvanepps/EthereumDiscordGuidebook/blob/main/state-expiry/README.md"><u>read more</u></a>). One instance could be that state not updated over a year could be disregarded by a node. However, this state will remain revivable at a later time via polynomial commitments.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/ab30876c66dd66006bff7802a9b88a7b.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAXCAIAAADlZ9q2AAAACXBIWXMAAAsTAAALEwEAmpwYAAAFgUlEQVR4nIWVf0wTZxjH3y3bsr/mL4bTsUnMdGKWbEFmptMlmzE6IxiT8RvRDMFxAtN2wNpAGTgFwVWUgsXWIUMPrZZDOKhQbq0ttYLS0KQtw1Y9yyF9e6X0Tgh1JstSb+kqYyV5/3rf9/t8nvf7PPcc8FJU+OVyOHgIkrRnT3V5eVFBQVFBwYHUVCGfn5edvT8lhYcgWRkZ93Q6BsJ55WBBwKjJ1NnaiqGoBscxFMVQVN3ersFxXKHAULSztRVXKKwDA/8nXxjAQBi6/AzrZ56ykA7dDCN/CdB6rbtF0aVsV9c3Xe9WabtVWmW7+hrW20f0eyknTZI0Sd7WENrfe5yjI16K4nbC5/cvwEM61Wp9ewfReq1b2a5Wq/Utii4vRU0GTp0cYMw6smxzFIgEpySVrNu7YPQwFgXCeUinl6L6iP7BQbN3wjXr8876fPWN4ojoZYO39QyEQUAY0vwABsJZn++FAw/VPdrS8hpZvbRWLMFQtK+tnejAWxobSYuVixtSiUBaCwC4G+bBO2drqk5XnZBLJKhc9kutNLfwmKRePtyv91LOaQ99T6drOncOlcuNBKHBcUVzs5Eg5i34SwAGwmkP7Wdm4uI3AgDySxE/89RLUSx002Pjofpg1pTdPtzfb9Lrq0SlWWnJljt35jBeAowMDXUorrQ0ni/68fv4fbsapXWhRodv4qLD30W+DorzDv/17JnL4ZgLYCDEFQq5RGIkCOvAAAs9LPQQHZ3e8Sfh2zzIIG7cyEhMPCkSGQli1ucLqgIAD+nsxbBmqZQ74LJmIDQSxG+yRsY1ESY6TZIaHJfV1TVLpQ+sVgZCVC6X1dWRFus/ABbSF87ULn0V7P7qi1AZCz28n/IBABsSNk6Nu158CnMTHxkaSty9M+I1gKGXns/McPvk6Oi6VVFx6z+8q7vFQAgYCIf79Qk7tleJSkIcd06NT+h0vdEbV5+SnJgan/8RlN1eerQgekWkBseDWspuz0lP+XLTp3d1t1joDgDG7t/vVCo7lcpQuxnXhJ9hs1P3WQeH/pxm5wV4SCcL6SO5uYMvpik3ORgIu5TKqxcvUnZ7wCKaJFG53GYaahCLdT09QQZNki0ymfJyyyWZrLtN6XI8+K/7fobV4HiXUqlqa6Psdk7L9YvZaFRhmJ9hQVFe7gcrI39ADsVER+3cupkbvCx0ZyUnrlz0Jo625pXngbdAen6Kn5kJnQ2zPt/RQ1nvRSwuLyrcEvtxcvwu0hIo8o6tn8fGrEEOZC55FZQV8oCsrnbt+++eEAoPJH2TsH0bV30GwuoyUVTEEoNKdeFiPYgC1eJjLPSEAhgIhUfyY2PWHExLXrcqKm1vPNf+Sbu/jlu/Nm1vws6tm6pFJWCSGj9Tc8qo1Wp7e89LJMEOgc4xcVU145qYGneV8ASPrX/M6VcGQu3NmzwEGdTpkIMHm6VSrsWbzkm/TU1TtbVlJCYaCQJkpSUDABpqTm6IWbfoFWDSB8ZkwKK05FXvvK3txPmCAgBARlbS85nZ0Bf4GXZLXCwAQMQ/Gr1i+eqVyzmLPvvko6hli7PTU5e+ARK2bwuEFh4p0OD46WMVjafFpMXGJfKzoDgnI91sMKi6sCxkP37jOgvdXOLBF5gNhv6e3kc2m9lgCP41R02mRzYbZbeTFqvL4QDTHtrndk0+GWNpt8/tcj1++MBiJi3WSW7GkeR90zALaQ8ZGMVmg8Gk17scDtJiHTWZuIKRFhtNkqTFah0Y4PYf2WzcHcpuBxrtTenlOnUfjnVdabp6/mpHy69SyXFhiZDP5yFIhUBQVlxcmJ9/vFSEoWhOZmZOZubZysqy4mJRYWGDWFwhEAj5/Aax+HipqKy46KRIlJOZWSkSVQgEPATBUPRvxt98R6mrRtEAAAAASUVORK5CYII=" nextheight="1056" nextwidth="1456" class="image-node embed"><p>This would vastly reduce the resource requirements for nodes. Verkle Trees are a critical component of this because they enable smaller proof sizes, which makes statelessness (either weak or full) feasible. These advantages are a result of the parent node being an offshoot of vector commitments rather than hashing functions. However, this comes at the cost of compute efficiency, as mentioned in one of our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/75212553/verkle-trees"><u>previous articles</u></a>.</p><p>Another significant thing to consider is the fact that the consensus layer nodes now need to gossip and propagate around an increase in the block size data in the sidecar, which will put additional strain on the p2p network. There are various ideas about how to best approach this by having less hardware intensive nodes not download the entire data, if you want to stay up to date, I recommend reading the <a target="_blank" rel="" class="dont-break-out" href="https://github.com/tvanepps/EthereumDiscordGuidebook"><u>Eth R&amp;D discord</u></a>.&nbsp;</p><p>The target currently for the number of blobs to have in each Ethereum slot (12s) is 3, with the max being 6 (up from 2/4 previously). If there’s &gt;3 blobs in a block, then the blob_gas cost will increase. If it has less than the target blobs, then it will decrease. To make the calculations more efficient, this is dependent on the previous header and excess blob_gas from those – avoiding having to download all txs in that blob. Empty blobs are “banned” since they would still need to be gossiped to avoid breaking the protocol, and also to avoid DDoS. Blobs are priced dynamically similar to EIP1599. +12.5% price increase for max blobs. -12.5% for 0 blobs.</p><p>Another worry is that stakers with bandwidth or hardware limitations (likely to be home stakers, the “bastion” of decentralisation) will face issues. The upload and download requirements might force some to be unable to participate in consensus effectively, if they aren’t able to upload/download quick enough (or store that data).</p><p>In terms of the fee market, we now have two separate fee markets for Ethereum blocks – the general normal gas fee with block gas limits and blob transactions (and their limits). Block builders will now have to avoid hitting both limits. Block building is generally moving towards “super-builders” and are highly specialized and can run very complex computations, so not many changes here. Regardless, the most significant increase from specialization from block builders is from MEV. Would again recommend <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/nero_eth"><u>Toni Wahrstätter’s</u></a> <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Mevboost.pics"><u>Mevboost.pics</u></a> for an in-depth look into MEV in Ethereum (and MEV-Boost).</p><p>Some “smaller” rollups are likely not going to be able to fill up a single blob, which might mean a waste of possible “blob space”. Aggregating blobs across rollups is difficult, as it now becomes an oracle problem&nbsp; (unless the power is given to the Ethereum validators to aggregate).&nbsp; One thing that is sure, is that there’s going to be a lot of added complexity. However, despite that, the verdict is apparent - it’s arguably going to be a positive force for a rollup-centric future on Ethereum. The added complexity is likely to be addressed on the go, and also emphasizes that the validator set is likely to be lowered over time via different routes - something we would also need for single slot finality among other things. This will eventually make Ethereum as a settlement layer much more efficient, and lead to better experiences for cross-domain rollup activities.</p><p>While EIP-4844 might have an effect on the efficiency of DA finality for rollups on Ethereum, it is unlikely that it will have any real effect, for now, on perceived finality from the view of the verifying bridge. Ethereum blockspace is still highly contested and, therefore, valuable. Verifying validity proofs is still expensive, playing an interactive fraud proof game or posting a large fraud proofs and rolling back is still expensive on-chain. If you’re interested in rollup finality, I recommend <a target="_blank" rel="" class="dont-break-out" href="https://www.youtube.com/watch?v=FAe3qJTm1KI"><u>watching </u></a>or <a target="_blank" rel="" class="dont-break-out" href="https://docs.google.com/presentation/d/1CDZbrkhr0jNB2u97Ry7GDEAeJEGpTq9X/edit?usp=sharing&amp;ouid=104923354700709688406&amp;rtpof=true&amp;sd=true"><u>reading</u></a> my presentation on The Semantics of Rollup Finality.</p><p>There are still some open questions being worked on regarding EIP-4844, such as;</p><ul><li><p>Archival nodes/indexer specs (indexers may have to run reth to get state difference in a timely manner?)</p></li><li><p>Treating state bloat</p></li><li><p>Network stability for different clients and <a target="_blank" rel="" class="dont-break-out" href="https://github.com/ethereum/consensus-specs/issues/3180"><u>blob gossiping</u></a></p></li><li><p>Fee market with an increase in rollups</p></li><li><p>Decentralized sequencing networks fee fighting for blobs (blob auctions?)&nbsp;</p></li><li><p>Async off-chain communication between rollups for when to post blobs because of limits per block, or pending in mempool?</p></li></ul><p><em>If you want an overview of progression and readiness, we recommend the checklist found </em><a target="_blank" rel="" class="dont-break-out" href="https://github.com/ethereum/pm/blob/master/Breakout-Room/4844-readiness-checklist.md"><em><u>here</u></em></a><em>.&nbsp;</em></p><p><em>A fee market analysis can be found </em><a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/eip-4844-fee-market-analysis/15078"><em><u>here</u></em></a><em>. The exact specification for the blob transaction pool is yet to be decided on, but there’s some great writing on consideration to be considered </em><a target="_blank" rel="" class="dont-break-out" href="https://hackmd.io/aVek93y-QmSv1mz2Agc9iQ"><em><u>here</u></em></a><em>.&nbsp;</em></p><p><em>EIP-4844 will likely arrive with the </em><a target="_blank" rel="" class="dont-break-out" href="https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/cancun.md"><em><u>Cancun upgrade</u></em></a><em>. A testnet explorer for blobs can be found </em><a target="_blank" rel="" class="dont-break-out" href="https://blobscan.com/"><em><u>here</u></em></a>.</p><hr><p>As we’ve covered previously, there are still significant centralization concerns and trust issues within the way rollups operate today. Two of the issues are that of multisigs and smart contract risks.</p><p>What about if we forego the smart contracts, and instead trust social consensus and nodes in the system? Although, keep in mind that proper incentivisation and mechanism design is still incredibly important.</p><p>Instead of having smart contracts operate as light node, you could instead run light nodes on the underlying layer and utilise Namespace Merkle Trees (NMTs), which we’ve previously covered slightly in the <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/from-linked-lists-to-namespace-merkle"><u>Data Structures in Blockchain Commitments</u></a> article back in January. However, we do feel like it warrants a closer look at, to explain exactly why it is important.&nbsp;</p><p>Namespace Merkle Trees (NMT) are a data structure that is used to organize and verify large collections of data on a blockchain (specifically designed for Celestia). One of the key benefits of NMTs is their ability to organize data into a hierarchical structure, wherein you can efficiently verify individual or separate pieces of data that an application requests. As a user, you only need to retrieve the corresponding leaf node and its parent nodes, rather than the entire dataset. Every chain (“rollup”) on top of a DA layer using NMTs has its namespace, for which its data is merkelized and sorted. The final result is one short Merkle root, where each rollup has its own subtree (namespace) that it can pull and watch data from. This is especially relevant for blockchains with potentially more blockspace per block (while enabling light clients to be first-class citizens through DAS) as it allows you to pull data without having to pull the entire block.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/46540f96294f03102081a11760204a56.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAaCAIAAABZ+cloAAAACXBIWXMAAAsTAAALEwEAmpwYAAAGJklEQVR4nJWUfVDSZxzAf3W71m69rGu9ybKdlmlq6z16nVYa+ZJmil5KoiakyTR0DjNBQCVeFERJRQ1TyrSQfC11/jL2W5qKohFzeoZTSBODk8PuqnXt7Hehay2N+/zx3I/nvp/n+b48wMTo6Cd4plb3dioMGu2g8o9narVJNzYxOmrS6eQyWWlhYYVYDDU0tIIgDFhb21hZWXWjbGYE4P9CGzSayXF998NWH7dDJ465HHVG/hQePqhU9SsU44ODYG0tNzWVQ6eLcnOFPF55UVE2k1nA51eIxdlMpkGjmUVg0GhMOp2yrQ0XtMnfC/BxBxYDUz+1Ujm1YURr0uleGo0vjUaTTmcG/vLSaJzDDUY0k+MTAiZBxLMU8eyhOk97C+CYE8Kk0xk0mlmZi0A7Oa6X3SmTiGLv11zaZA2cxzu/P+kYvPh08WavAex48dz09vVbYWZu14MOk06n7uxUd3X1QlBfayucRnNKPzj4HATvHHrNkF4zNDY0aHg6PDGifQSCUFk5VFb+QCIZ6unRqlRjAwNwX8HZ+0zBO0w6Hdw5cBnhxd8vXsDHhx29ENRZV/fSaPyvY3bBxOiotr+/X6GQ1VTKaqq6IVm1uPhX6a0mqQSsksKJ6m99yA3HSdgcc8Y+T/D0zz55MyhvBpUtLd2QrL+rUwHJejs6FJBs+LFyqjZdXUIisYRC0apU5nvDV5yT4Jla3X6vSSLKB6UVv9XVqNrbmqsr5c0gKK2QN4OT4/peCCpLTWUEYbIiIh5IJPevX2+vrobKyh+B4FxT9LCxviiT2yeXq5U9v9+pbb/X1NJ4V9XeBjeuVqVqvX37gUTSWVc30tc3NjAAY9Bo5iRQK5VqZc/w48dPuhV9cnlve/sUHR1PuhUzEwIP9keKPOtkagcGDCNPZ/aVeT2nSZ4c15tfkldG00wmx/Vv37wpLylRtLa+ffXa/Np8ABzBzL8EzweHwJoasOp2fYVEek1cWlj4ngKYlsb6Pdu2/EKIaqqqvCYUlheJ4A0VxVel4uLqsht1kptNNdXNd+9A9fWyulqooWGmA7jC5xFxweSYSNI5XBw+hIgLJuKCY8Iw0WGYhCh8dBjm2EHkqm+WWHy7NMzfh3TuDLwhKhSD8fM7gzl1FouJDQk6fzrgPMY/mUhIJhIiggLkMpnZAaRTyYI0ioBBFTCoOQyqkJ0iYNDyWPRSIR+5bfO+bQ5xeCzpHC4+MizA46jdequcSzQhO0XITiESCIdRx+OjCfFBaFLwqWRcSBb1opCdwiGTbl4VTY7r4WIAlNgYQRqFT0+C4dESs+hkHi0pwAO108HWzXl/IfdSdhqlOCsd6+ttZ2WJC/QTslMuMyi40JDlG7Zgfd2ddmw+7rS3JCeDR0sSMKjUWEJ+Rob52QDiInDm6Hx6UiGXwbhAXLV4IXKrQwEnFQCA6LDTUlGO40ZrK8TqW1cEAADE4bGlQl6oTyDa1fe05+lAt1NY70Af5xPRWHwei55MJFxmMacF8ZF4Li3BLHDavesk6rA1wiLU39dp904P5wPeKBcs2sdxg9VuR3u0B8re2soaYRHs65X284Vw3+DQk5hgr0C0qx/WGwPf4CMCDpnEp0/9hw/0/RIAsGjPdYiV7i4H7G3Wubvs/8Fu/Uabtbu22C6aD9hYWQAAYPP9mkXzAQoxIoeZnMOi5rFo+en0PBYVDkKNJeSmc2YKznLIpOw0Cpd8wW4nYt5qYNk6YN4KYIklsNwSWGH/9RLrL5baLVhoAVgiVwMLgGUOX61YO++7nStsbNewkxK4yRd5tCQYs6CAnzktSIyOgovMIZMcbNYhVi62RqzcamsdgvYiEcIP7nDYuHY10t7mCHJ7Bi0xEoM+hNy+x9F2l8NGtx+R2SnkmfWDBTxaovSaeLqLUhLiY8KCuMkJzMS4hCg86RyOFBEWHhKE8vI8ewZ7xB21Zf++7fv2+vt5e3h77jhy6ADKdb/rIW8fT2e3oydP+XPIpHTKNMzEuEhMQE9Ly/QcPG5ru8LnwRRfzoYRZWfmZ3ELMjPys3i5fK6Qzy3I5Obz0rPT2YIMtiCDU5DJ5bGYfBYrn5s+EwGTIRbmPf9r+PngEMw/Ut67HctjozsAAAAASUVORK5CYII=" nextheight="1165" nextwidth="1456" class="image-node embed"><p>Nodes in the NMT are ordered by namespace IDs and the hash function modified so that every node in the tree includes the range of namespaces of all its child nodes. If an application or rollup requests data for a specific namespace, the DA layer then supplies datasets for the specific data relevant to that application as a result of its unique namespace ID and provided nodes in the tree. This allows us to check that the provided data has been made available in DA layer blocks, hence the name Data Availability (DA). NMTs can be seen as a way to allow verifiable queries of blockchain data for specific applications efficiently. If you’re interested in learning the background of NMTs, we highly recommend this <a target="_blank" rel="" class="dont-break-out" href="https://forum.celestia.org/t/demystifying-namespace-merkle-tree-nmt-exploring-soundness-analysis-and-unveiling-partial-absence-non-inclusion-proofs/998"><u>article</u></a>.</p><p>Rollup nodes can then have a fork-choice rule embedded in them that includes transactions sent to the namespace on the DA layer related to the rollup every N blocks – enabling force inclusion (forced inbox). The way Ethereum rollup smart contracts work is essentially just like a light client, which in this case is a light node that can verify data from NMTs.&nbsp;</p><hr><p>Whatever road is chosen, it’s clear that many ecosystems are trying to solve similar problems, in different ways – but most leading to cross-domain. There are others trying to solve everything within a single network, which is also a valid way – but does hinder you in some.&nbsp;</p><p>Even though the blockchain world is slowly moving towards a cross-domain one; there are still many issues to be solved. Some of these issues are easier to solve than others, some alleviated by shared DA, others needing a succinct global state base layer. In part two of the cross-domain thesis, we aim to cover some of the innovations that will help create a more trust-minimised world and others that will help alleviate many of the user experience concerns of our time.</p><p>We have intent to go deep.</p><p>Part two will cover; state/storage proofs, VM extensions, intents, optimal cross-domain trading and much more.</p><hr><p><em>Thanks to Mathijs van Esch (Maven11), Pim Swart (Maven11), Dougie De Luca (Figment Cap), Jim Parillo (Figment Cap), Dmitriy (1kx), William (Volt) and Walt for review or discussions leading to the release of this article. Writer can be found at: 0xrainandcoffee</em></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>modularity</category>
            <category>cross-domain</category>
        </item>
        <item>
            <title><![CDATA[The Shared Sequencer]]></title>
            <link>https://paragraph.com/@Maven11Research/the-shared-sequencer</link>
            <guid>hPBRP8ZILwzC8W2XpBmE</guid>
            <pubDate>Mon, 25 Mar 2024 22:07:25 GMT</pubDate>
            <description><![CDATA[An SoK on Shared Sequencing, Aggregation Theory and Vertical Integrations]]></description>
            <content:encoded><![CDATA[<p>Imagine a world where rollups out of the box could achieve high levels of censorship resistance, ease of deployment, interoperability, <em>fast </em>finality, liveness, and MEV democratization. This may seem like a lofty goal, but with the arrival of shared sequencers, such a world may be within reach. However, not all rollups are created equal, which leads us to questions about how rewards and MEV should be distributed on shared sequencer networks. In this article, we will explore the properties that make shared sequencer networks achievable and what attributes can be achieved.</p><p style="text-align: start">Shared Sequencer Networks has primarily been covered by <a target="_blank" rel="" class="dont-break-out" href="https://www.alexbeckett.xyz/"><u>Alex Beckett</u></a>, and later more in-depth by <a target="_blank" rel="" class="dont-break-out" href="https://forum.celestia.org/t/sharing-a-sequencer-set-by-separating-execution-from-aggregation/702"><u>Evan Forbes</u></a> from Celestia and the <a target="_blank" rel="" class="dont-break-out" href="https://www.espressosys.com/"><u>Espresso Systems</u></a> team (as well as <a target="_blank" rel="" class="dont-break-out" href="https://docs.theradius.xyz/overview/about-radius"><u>Radius</u></a>), alongside the new incredible <a target="_blank" rel="" class="dont-break-out" href="https://dba.mirror.xyz/NTg5FSq1o_YiL_KJrKBOsOkyeiNUPobvZUrLBGceagg"><u>pieces</u></a> by Jon Charbonneau. Josh, Jordan, and their team at <a target="_blank" rel="" class="dont-break-out" href="https://www.astria.org/"><u>Astria</u></a> are building the first Shared Sequencer Network in production. Astria’s Shared Sequencer Network is a modular blockchain that aggregates and orders transactions for rollups, without performing the execution of said transactions.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0a694079e46492d6c0ba26d3657ee1b9.png" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAaCAIAAABZ+cloAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEeElEQVR4nK1VW0wcVRj+E2OMlwef6pNPLdjqg2AFA8HURK0JDwZDubQ0pjHSQClRilFphSomTeq9gZBWrFSkIRAutuAGwqWALF3ZrsB2l90dhtllZ3b2zDA7OzuzszuzA8EsEzfcwdDkezzn//7/+/7zHQiz7F4gcxyFYfNW6x7PJwB7OSQhpEUijddvXPv2OzUsSQg9SoIQTcscx5GejpaWieF7UUF4NAQioiWEJIRkjvc6nVNjYyGGUcT/V30LApnjdKiSGgmENEWcGO2fnjCurKwoohii6f164Mcw0uVC+Nz97qsL04ahzsmSvCt+DG8rOz/Z2qqGw/ud4J/xcePQsHl0qK4U/rp9pvZC55PPFLtMlnJ4rq3yE01VBYrar0RRgZe5gIRQgKSMwwPDhrsUhhlHRoYMBj+GyRy3LwLd2FVv406QLheNzUkIhWg6RMdt368HaxCv5Zya2mPRRGcbzm9JgETkE5GP93lnTPf3osl/u8fKHBsVhHUEm5iRzAVjcmxZW6bctHF4VOYWd63OEoRzembe4SYcuM08uXYISCy+zHFx6QOC62/Dl2eTqz5IvlJ2aLD9WkyOrcq1uN0oEkK812fs6677NKXn5uezlmkR0TIX0K+A2263mkyW8XGrycQSuCqp7T/kH38C3noWsg/A+y9Df/OlEOJZYj5AkkGfb63KelthFmlRra/h2O9l0HgO0LxN8DOkc5ZxEwjHoaejo725ub25+U5bm2V87J6hr7+rpfg4FB2EklQ4cxAuFwKPpIB7nl/wIhz3YxjCcYTjDEEESJIlCITP4TbM1F1b/yG01R7gfSTvJ5vqbw39YcBmLOBxOBa9XkUUo4Kgt6NKEdLlulXz0jel8GM5jN2+EAmEJda/WZmgz8cveAMkNdzbyy3Q5JwN4Z5YRPjpi3aA3KeeLvfYXXEPEkum3xRRPHCW1CWe4X1ef0xWtttUCaGoIHgcDkNX1+TY2C+Xv+puahYD3tITdQDHAPJMA6bt3gES/VSQ9FhN45t7X7s/FIbNGI0xRWktPlsAUAXPB70exrNwseR6e2OfIvI7/QcSQnazebvl0atbTaYwy2qqeuPd93IASuBxenZWEYWlmKiGgxJitiWQEMN7qYeTkxJiQ5Rfh4SYVcSDBOG4w2JJkCEc76qusfb3K6IoISTSSELMTlGhhoWoHHz44MFSTNaUUCySgKCGQwxBuO32DQMta5peffcskjnGfMf429dNBTn5PfV3/6zrMdT3GBp6B37tG7zZP9I5uOBcV13Hlmm4OU0ZReRto5YsOJUEWQCPHYZ30qEwDQrSID8VclMgNxNyPQ6n/vJ3jal1WbSqnV8ReXOvMQ1OZMDpVMhJglcPw9uHIP0FeCMDTqVB/utw2jYRN19veWdAVBDWQuZ4TYnMGmcy4eRROPkK5CXDmy9CdhJkHIHsdChKgfwsKCLsDi0SifD8huubsXECHTzpvVr4fdmRzz46WlWRVv1x2sXKjJqK1y5VZFZXZtQ0nPs55Kd27V2f4F8JpzB/EopsuwAAAABJRU5ErkJggg==" nextheight="1168" nextwidth="1456" class="image-node embed"><p style="text-align: start">In the Astria setup, sequencers send the ordered blocks to the DA layer, and also to the rollup nodes. Rollups get a soft finality guarantee from the sequencers, and the hard finality guarantee from the DA layer (after the block is finalized), whereafter they will execute transactions valid to them.</p><p style="text-align: start">A shared sequencer network is essentially a rollup-agnostic set of sequencers that, as the name implies, can serve a cluster of different rollups. This has various trade-offs and attributes, which we'll get into later. First off, we must describe the properties that are most important for a sequencer (or set of sequencers) to uphold. In a rollup, the sequencer or sequencer set has a primary requirement of censorship resistance or liveness (some of which is inherited from the base layer, alongside security). This means that a valid transaction submitted to the sequencer must be included in the chain within a finite amount of time (timeout parameter). The shared sequencer set only needs to ensure that transactions are included in a block (i.e. crLists).&nbsp;&nbsp;</p><p style="text-align: start">Achieving both censorship resistance and liveness is quite difficult, as outlined in our Modular MEV part 2. In consensus algorithms like Tendermint, you’re ensured recovery after an attack. However, you lose out on liveness in the advent of an attack. Essentially, requiring all other sequencers to sign off on a block, instead of picking a bespoke leader, might not be the best option. While this increases censorship resistance, it’s at the cost of “centralization”, and MEV extraction to a singular leader. Another sequencing mechanic that could be used, could be something akin to Multiplicity from Duality. Which is their gadget for non-leader nodes (or sequencers) to include additional transactions into a block. Overall, post-attack censorship resistance and liveness is difficult to achieve in most consensus protocols.</p><p style="text-align: start">Another possible consensus algorithm, that could be used, could be something like<a target="_blank" rel="" class="dont-break-out" href="https://eprint.iacr.org/2023/397.pdf"><u> HotStuff 2</u></a>, which ensures liveness during attacks.</p><p style="text-align: start">What it allows for is to avoid having to wait for the maximal network delay (timeout) before picking a new leader, in case of censorship or non-signing. The reason it might be an interesting consensus algorithm for decentralized sequencer sets is that it addresses the issue of liveness in consensus without adding an extra phase. If a leader knows the highest lock (the highest number of actors that agree on a specific output) and can convince honest parties, the issue is solved. If not, honest leaders after a specific point can drive progress responsively, aiding the next leader. For example, Hotstuff nodes do not need to confirm the switching message before notifying a new leader, instead it can directly switch to the new view and notify the new leader.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7b391c2a21ca894ca92039a904181a4a.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAADl0lEQVR4nJWVXU/bVhjHvYlNMK1jtAXRbtI+R/slpm5TC91STbvrFCS2Vlu5qKZdQSOFMBpUaIicxDMZhgDOixEJjq3IUYDSxE6KSZw4bs+cOEviYBQRJK6mYBEhJpFMenR0nv85Pr/zvNiGajJoaxVJDPv9MYZhaDrs99cKBU1RNKWoKcWaDM7mypnbHFsGdQKoyaAqy9PGkWnjCMhmSzlBYFmQ5ks5oZQT+N1XhWxGYNl8KlmRRJDmK5LYwrcH/CPmTo4b09//cBuCbkPQzI8PM3t7f0xMrCCulxYL6fe9mDQvuRyw1frSYnHb7c65WXwBBWle5DhNKXYKGL83dAuCbkGQyfAgnxU2vWuw1To1Ph7C10i/77npmRu2PzeZVhDkxeSkc2522vRs4vffBJZtDzhQ5Jr8TniTnB/9ad5oVIuFfCoZZ5iNtdUQjlNEoDnxeSkigLngOBPZWFtZcsA7NEURAS4WbQPQlGIpJ+TYhAqkk+PGyXHjtMLN/Nar5Xq1fFbepunuma67CqQCqSKJpZygCFkVSCqQzp9eyGZEjtP14v5+SRBaG3Txgl3Qm0U+qlWPatUYSeaS3NGBenSg6muaUsynkiLH1avlxmGt8vfbOMM0DpsbLjTi5QZ5saXHPz96+mTs6ZOxsV9+tZotemh6FzYONZ/HM3x3+P7QfcOwwfDdg9GRUcDvdc6AvrrzDQRB3Veud/X0QR98cnXg5ozZHCNJfnc3k0jkU8l7d4cg6L2PPu3vvnL9w4+vvt/dSxFEvVo+n8zLAN8OG/Tnu3r6+vpv3PjsC8RmA2leBRJI8zUZjDw0dvX0DQx+3nttsPfaYP/AzUgw9D8AzOam1TJlNU/ZZ+e+/vLO2KPHrSwfKLKmKNzWFjw7hyHI8p+oB0Upgvjv9+AygApAjKLo9fW6qkbD5FshXa+WW0eUcgITDHox7FUkous1+R3g9wDfDLEjQGp7myKIBRh2w/BWJBLy+ZZdLsLjiZGkphREjouSpN+zbJ+ZWXQihMeD2Gxu2BHyeTuNILW9HSXJRafTg6Je91+rKBomAotOp8CymlIEaT5Kks0lDAvh+CqK0uvri7CDZRhFyHYESL/ejZIkYptfRdFIMOiGHQswHCYCGzhekUQpldqiwu7T+EI4jrkQDEF2aDoSDOo36ATweoemMRfCBIOx02zozaO/a4VsJpNI7NA0F4vtx+NxJiJn0+d/Bm0B/wLf/AhWSuHgkwAAAABJRU5ErkJggg==" nextheight="794" nextwidth="1456" class="image-node embed"><p style="text-align: start">Where it differs from Tendermint is that despite both being two phases (<a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/pdf/1803.05069.pdf"><u>Hotstuff I</u></a> had three, II has two), Tendermint has linear communication, but is not responsive, which Hotshot2 is. If a sequence of honest leaders exists, the protocol is <em>optimistically responsive</em> because all steps (except the first leader's proposal) depend on obtaining a quorum of messages from the previous step. In a shared sequencer setting, this makes it possible for the protocol to achieve better liveness without needing to fall back onto the underlying layer, without removing the possibility to do so.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-the-building-blocks-of-a-shared-sequencer-set"><strong>The building blocks of a shared sequencer set</strong></h3></div><p style="text-align: start">A set of sequencers is allowed to submit transactions to the settlement layer (which the rollups inhabit). You can join this set provided they meet certain requirements,&nbsp;and that the number of wanted proposers isn’t reached. This could be to optimize latency, throughput and so on – e.g. Tendermint stays relatively low). These requirements will be similar to how you'd become a validator on a certain blockchain. For instance, you have certain hardware requirements that must be met, as well as a starting stake, or bond – this is especially important if you want to provide economical soft finality.&nbsp;</p><p style="text-align: start">A shared sequencer set (or really any decentralized sequencer set) consists of several components that work together to ensure that transactions are processed. These components include:</p><ol><li><p>JSON-RPCs for each rollup for transaction submission (for non-full-node-runners) to node(s) that function as mempool(s) before building and ordering. Within the mempool, there needs to be some mechanism to decide on queue, as well as transaction selection processes to ensure efficient block construction</p></li><li><p>A block/batch builder algorithm, which processes the transactions in the queue and turns them into a block or batch. This step may also include optional compression to reduce the size of the resulting block (calldata compression). This should, as noted earlier, be separated from the proposer – essentially PBS. The compression of data, can come in the form of several ways, <a target="_blank" rel="" class="dont-break-out" href="https://vitalik.ca/general/2021/01/05/rollup.html"><u>such as:</u></a></p><ol><li><p>No RLP encoding—However, this would likely be needed for a decentralized sequencer set,<a target="_blank" rel="" class="dont-break-out" href="https://medium.com/@markodayansa/a-comprehensive-guide-to-rlp-encoding-in-ethereum-6bd75c126de0"><u> to help standardise the transfer of data between nodes in a space-efficient format.</u></a></p></li><li><p>Omitting the nonce (unique number that validates data in a certain block)—it can be recomputed when required for execution by looking at the prior state of the chain.&nbsp;</p></li><li><p>Gas Price Simplification—set<a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/abs/2303.04242"><u> gas based on a fixed range of prices</u></a>.&nbsp;</p></li><li><p>Gas Simplification—beyond just gas prices, also the gas numbering system</p></li><li><p>Replace address with an index—Instead of storing the full address, rollups can store an index for a mapping of addresses stored elsewhere.&nbsp;</p></li><li><p>Value in Scientific Notation—The value field in an Ethereum transaction is priced in wei, making it a large number. You cannot omit the value field or reduce it to a fixed set of values. However, you can write it in scientific notation instead of wei to save on data.</p></li></ol></li></ol><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/00cf39fa53f0800eb03529237c470974.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEA0lEQVR4nG1Ub0xaVxR/6YdmXbKkzaQ2W5d+aO3m/iRd9mXZrKGpFgKSkJk2woZteMigyAoismYdQ7HJnBW3lbW2i+myxsSYmm1dFqMGIQ8cT3EgFdmb+GQw30VF3vVfHriMbcHbMtM1+eXm3HvO+517z/mdh6UT8ceQomNBL8EChnSNBAlPOhFnARMh/QG3O52IBwnPj/196UQ8QvoRFh5M/5+kCAwxIixSUQhAr9OJYdiZk5XKOllVRcXr5eVDg/cc7VcPl/DKjx59/tmSwyW8TpvtjZdf4T319JHSQ68dOy6XSiEAi1S0SIXwMAHHZjg2AwFABgILGA7CfC47H5peXUzkc1lEwbGZfC4HAdjeXOcg5CDc3lwv2LsYIADILiRgAdNps+lxlbXJ3KTRauvPqxUKtUKBDFwm1+O4TqnE35VrLlzQKZXIWziRyYsxyro6TX19s/aiHleZNFprk/mK0Wi3XE7RMazH4ei0tc6HpiOkf4mml2iaoaj50PQSTaM1QpIhrzcZnVsIR2JTwdgv078FgvHwbDw8G3C7Y+EwQ1GryT+mPIQeb5jyECGvN0KSDEX1Op3XOzqwjk9svtERVBNbi1lcdbpWJBSdOiWprqoVCU9XvHXFaMjncryXDr6jqCF9YwMD3457Ro6/eaxS8vY/+b/v9/c72u1mXaOkutqsa4QAsIBhAVOoPIQfN5mwTlur6/4PEIAUHTOo1WqFoll7UadUNmm0elylx1U3urogABar8asex5SfcI/+NDnu6ehuveawcxB+c/NmIayhwfi+ZjWZ3C1Fjs18aDBgdsvlYgKOzWxvrqP+oL5t72yXaDq7toFah+7IwTWYWk7Rsd3Bj2mdYzMfGS/9lwDpnQUMBGBjZTlC+pHO4A4j+gwFoO325nrxPJ2IryaTRW+xRAa1CnO0X/UND6EXfHf37tDgvb6vbxnUKqlAyAJmLjBJDA7OBSYfYWIuMPGr379IzX5hNs0QxO/RyINxn9/l8rtGJ8ZcAbd7YswV9BIBt5tjM5fUOHbL0e0bHkJp1QrFuRrJkdJDehxHb+zr/AzDsC8tLQOfd9+xt/W2td6xt922Wr+/3YNhmLPZ1GI0nih7sXT//ud4vGf27HnhYOmBvfsO7N33alkZCxizTvtQRSxgUnQM1efPrS2OzaBRZAET+Xkc1XpjZXljZbnYCTR6CzPhoJeIkP5FKrowE96ROzk7EWAoKp/LWvQfYI52+42ua6hLu4ewiKLrifgru4WA5vmRNNbyuaxveNhqain8Kq53fKqtP9/wnhyXydBYyqXSczWSs2JxrUgkFQikAqGkulrI5585WflECPl8IZ8vFQhrRaKzYrGyTobLZJZGXcjr/RdUFqQ5TPIqoQAAAABJRU5ErkJggg==" nextheight="205" nextwidth="468" class="image-node embed"><ol><li><p>Omit Data Field—Not needed for simple transfers, however on more complex transactions it would be needed.</p><ul><li><p>Replace Individual Signature with BLS Aggregate Signature - The signature is the largest component of an Ethereum transaction. Instead of storing each signature, you can store a BLS aggregate signature for a certain number of transacitons. A BLS aggregate signature can be checked against the entire set of messages and senders to ensure validity.&nbsp;</p></li><li><p>From Field as index - As with the <em>To </em>field, you can add the <em>from </em>field as an index to a mapping.&nbsp;</p></li><li><p>One interesting notion of “modular” design is that you can also play around with this and make trade-offs where you see fit, to make it fit your specific rollup’s case.</p></li></ul></li></ol><ol start="3"><li><p>A peer-to-peer (p2p) layer, which allows the sequencer to receive transactions from other sequencers and gossip blocks after building. This step is crucial for ensuring that the shared sequencer can work effectively across multiple rollups.</p></li></ol><blockquote><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/eb2f8dbeacf15be560708a87b7fb6bb3.jpg" alt="" title="" blurdataurl="data:image/png;base64,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" nextheight="1263" nextwidth="1456" class="image-node embed"></blockquote><ol start="4"><li><p>Leader rotation algorithm for the shared sequencer set (they don’t need to reach consensus, in the case of single leader election). You could choose to just have a leader rotation algorithm in place. Another route is to go down the <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/multiplicity-a-gadget-for-multiple-concurrent-block-proposers/14962"><u>multi-concurrent block producer</u></a> road, as proposed by Duality.&nbsp;</p></li><li><p>A consensus algorithm, for example the earlier discussed Tendermint or Hotstuff2, to ensure that rollup nodes are in agreement with the proposed ordering of the ledger.</p></li><li><p>An RPC client for block/batch submission to the underlying DA+consensus layer, which ensures that the block/batch is securely added to the DA layer, which ensures “final” finality and that all transaction data is available on-chain.</p></li><li><p>Separation of builder and proposer roles to ensure fairness and consistency, and to avoid MEV stealing. Alongside removing the execution from the ordering, something that’s important to optimize efficiency, lower PGA and heighten CR.</p></li></ol><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/8af564168ba722dec500b4ed730067fa.png" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAADgElEQVR4nIVT32scVRj9fPTFP0DwwRehL33UF0vBPNSHFkVqRUQIllQoNtRAkSiKPoiIQgmxCqayrXmIq4lpQoha28Zuk2zMZsfM7sz+mNnZO9kf8yMze3dm7u7Mzs5kR2ZH62aVCIcLd+Z+5/B953zgGcbR6DntTJqqcpyL8X+/sYyeTSJ4xBr6C4MXFzf75yGieqm0srCYXt/o6Prgd5+0PMPyiLWXRXy6JNIi+qNs1tQhDfiHmpDgoN1z2h4hnmF0DdxpYJ+03n/vg5GR50dHz/Ms6xESyvdPWRBMVUL5/COPXgJ4EeAFgLOzU78GB7aj4UMCYY1l1AoCPP7audc/dXTJ1huhnmd7LdwQRRNjommaWPOJ7ZNWhSts/nZ3e+O+LJZtXafvM6tza3Mzt7ZW6YaoDHfQZ28FbjudpOGp8avXlusFRkViKUOtLK2/+dY0rlZXv/iyTjOxW9fXkr/IFUESS0RTA9cJeyUkcNuB26qXObuhdI1hn2B3Y+Pu4gKVSDj7avziGw9mrhn7uiyU04k7x54dh8dG792MnwKYGRuDC08+PXFSZ3MqQplkEjGsXqtrCPWHZpVZBrE5sy67GA+6CBK1lV2as6pi6vv5EYCbF8dNjCWeF7IZltqlfs909P3E9ZiSYR6k7lXEgmcSW1FakoJ209sr88z2tl4uyXsSTbEdwwxcJ3Ddv4zsA9pSvS3VPEJwZe/K55dnf7zRqslEVT1Ceo7jWU2M0B5CNa4YGdA1cNfAkijtLH49//YJU8NKkYWzH8ETL8/+cPvO4sJXU9NL8ThH00I2KwsChJEwmj7pfLsSg2MwFb8adAPXaEZtsnkOXhqFE6fh3FihyEUGRkGqccUSTfUlG2cmpuHUxE8/J3gqRW1ucjStIaSLIq5WwxT1nbGwUsswKc8MM/qQJZcvwvgkXLgClyZLHB8F1MXYJ21L3RfYXNfAOYqik+sKn1cRslQ1cN2H8wlHFNGFGoT4xB7eUkIOnI6QzQZeNyroD6qjyRU+R8uC4GLc0fVmXbZ1PVqgYZMPb/KhXXWxHnR633128pXjEPvwGVPDerE8GXsXzgCMAFw+HnT9wVwOUf8tMNDOv2D5xJZyiZ3lj+vMWjGTVXhhbev2q5+MPvfO6djyN7aiha4cxUDCRTsSDZ84QTfwiRNNTCryerFiiUqVLTCpnf8rx38Cmhd1S4fklaIAAAAASUVORK5CYII=" nextheight="633" nextwidth="1456" class="image-node embed"><p>Rollup nodes receive ordered blocks from sequencers for soft commit &amp; receive ordered DA layer blocks for hard commit</p><p style="text-align: start">Transaction data (calldata) is first posted onto a base network, where consensus is performed to guarantee transactions for both users and rollups. Then, the rollup nodes execute the transactions (and commit to a state transition function that is added to the canonical rollup chain). The shared sequencer network provides rollups with their liveness and censorship resistance. Rollups maintain their sovereignty because all transaction data is stored in the base layer, allowing them to fork away from the shared sequencer at any time. The state root from the state transition function (STF) on the rollup side is calculated from the transaction roots (inputs) sent to the DA layer from the shared sequencers. On Celestia, this is generated as data is added to the chain and reaches consensus. As you already have the tx root (and all available data), Celestia can provide a small inclusion proof for light clients (that rollup nodes run on Celestia).&nbsp;</p><p style="text-align: start">To provide users with the UX they have come to expect, the rollup nodes receive the ordered block (that is also sent to the DA layer). This can provide the rollup with a soft finality guarantee—a promise that the block will eventually be ordered as is on the DA layer, which is when the rollup nodes execute the transactions and provide a new state root.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-block-creation-and-slots"><strong>Block Creation and Slots</strong></h4></div><p style="text-align: start">To determine the timing for block creation, sequencers need to establish a concept of slots. Sequencers should submit batches at regular intervals, typically every X seconds, where X is the slot time. This ensures that transactions are processed in a timely and efficient manner, since otherwise the leader for a specific slot would be timed out, and lose its signing reward (and execution rewards). For example, Celestia’s block time (according to GitHub specs) is likely going to be around 15 seconds. Because this is known, we can make some assumptions about how many “slots/blocks”&nbsp; we could potentially fit into a finalized block from the shared sequencing set to the DA layer and rollup nodes. Considering optimized Tendermint, or something like Hotstuff2.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/42659d082e61fe6b4bbb9789be962bb0.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKCAIAAABaL8vzAAAACXBIWXMAAAsTAAALEwEAmpwYAAACU0lEQVR4nKVSz2saQRTe3NtLeypBSjXb1iJCqAZsXKq4DqbjrmV3p22yDk38Af7YHCrm0EPsIdYUajUEakEoEQq9SK4pvYkUlFCtYOuupy6Il+Cpf0FZJ+whp4YOH8Obee/N9968jxoP+uNBX9c0XdOG3U6v3TJx4dhrt64uLDhpetjtEFzwXsCw29HVEaVr2p/Z2cvcCx4AxIWT0WgyGsVIwkhKYpzZ3MRIehaJEJff41nz+ZREPL313AiIRteFCOK4dSGCESJZGEkihLlM2m6zLtvvUnklm8TYbrM6aTqJMQ8AD4Df45FFAXFcJhYTIUxijJEki8J2IrGjKLIohHwPM7FYkGHWfD6W8YoQOmmaA8Eli8XrdgUZZsliuXH92rti0SCAbCAmb7wpvNpRlK2Npyzj5UCQECAuzAPwhDfK9Hs8IoRxWZZFwUnTcVm+Z7MxKyss48VImtdrX7bb3Q4HD4B1cfHOrZsnx03ji2bTyWw6yStZdnX1cSjEA0B2yAbIzjLe7USCmq9cKsWBICHGSEJcGHFh4VHItCEbkEXhyjx4Np1QZFy6OioX96qvi7o6Mmeo/fg+7HaIBPZ3d/cLBeIlujBBbsx7Ynz7+sVx25ADZeSro9/qL10dnRtzRZkYD/q5TPqgVCL2v0NXR+NBnyK155Vs8+io2Wh8rtc/Hh7Wq5X35bf1aiWXSokQNmo1IuJLEZB4o4Neu3Vy3Pz0odao1Q5KpXJxT0nE80o2r2Tr1Qr5op+np5d63YRBQNo5x3zmD1z3vW7XbDohbf4P/gI+gTGO3Th7YwAAAABJRU5ErkJggg==" nextheight="476" nextwidth="1456" class="image-node embed"><p style="text-align: start">Multiple batches can be submitted in a single slot, assuming the design allows the rollup full nodes to efficiently process them into a single block (within the slot’s time and timeout parameters). This can help to further optimize block creation and ensure that transactions are processed quickly. Additionally, slots can also be used to facilitate sequencer leader elections. For example, you could pick a slot leader randomly from among the stake pool, based on stake weight. Doing this in a way that preserves secrecy, makes the most sense, and utilizing something like <a target="_blank" rel="" class="dont-break-out" href="https://ethereum.org/az/roadmap/secret-leader-election/"><u>Secret Leader Election</u></a> would probably be preferred, to minimize censorship. Or even Distributed Validator Technology (DVT) type setups (such as Obol/SSV-esque solutions). Latency and slot times have considerable effects on how block submission and building affect the protocol. It, therefore, makes sense to look at how this can impact systems. Bloxroute especially has some <a target="_blank" rel="" class="dont-break-out" href="https://bloxroutelabs.medium.com/mastering-defi-trading-block-building-and-mev-f662650736c0"><u>great research and data points</u></a> into how their relays have performed on Ethereum. In MEV-Boost the participating proposers (validators, or in a rollup case, sequencers) request from the relays a GetHeader. This provides them with the block bid, which is the value of a specific block. This is likely to be the highest value block received every time. For each slot, validators usually ask for a GetHeader around 400ms after slot time starts – and since there are obviously numerous validators – relays often have to serve countless requests. This would also be the case for a large shared sequencer set. This means that you need proper infrastructure in place to facilitate this.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/3a8b8130921aad5baeada31e82ade945.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAbCAIAAACSpRrNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFGUlEQVR4nKVVbWwUVRS9iTGa+MOEHxojMVREjUFtlAIBJAh+JFIxalA+jCFSghITKSpGEiORYAEjmFgJAlIbLGhLW9nWlha2XZbdzn7N7s60O6/MTqfT3dnZ6bydTuej25Zti+mullIaImtyfrxMXu5555x774AhS9MxqKR+++bDX3YWV3667s8DH+uSaGJlxp07AkyddCmeSWeO7d68CuBlgFcA1gDEo5ypJHVJ/P8ECUOW+uPSBoB1AOsBigE+e3Uei7hzp0+fOVUhRCL5SbmhwJAlNZE4+n7h1nmwaQ7sfRH6WNbEisxF1b7evEXcRGDIiYnxiZrapn37v79+/bqpJC2M05qa1tS8k5hBMMmhCD2O5saGP3532+1uu725vt5WXR0iiPwtMrGSRX/uvf0CT3k8Ms/JPJdgu0WEeCaixvvyV5BgWZnjBCbChkIJlnW2th7at1+XJBF1J9humedSvYLMc3kShAj3rz8fd9vtKBBAgQDt9djqqo//VO53XybdrihFCUwkhlCUolCQzMMlQEHyyoUWt92OE7FMOvPQB4XwHMBygNUAS6CqqXLEGBqUEyZWUDCYRy8BCgYtjC2MU3HBwtpT25fCYwBFAIUAT8NpW4WFB7Q4b8giCpL5EDBBcnRoYHRoYMTUxq6Nttbbvti1a8TUdpeWui5dTGtatkettJZmKSofAr/LtWLb/vmb9x08fOJcRUWwoyOtqRbGnT6fhFCS49ytzSf3zD21Z07Y5bAwzs38HRDU19kAHgF4GOauJNuahlRVjQu6FJd5jvJ0tNqavtxZUrIIVt0PLbWVFh64UxHQ6fOt/eQHuLfw0NEz42OjuixbWLOwltb0Yd0Yy2QiIf/rS+BM2VK/05FPm3Kd9MTE8F+1VVfD5Khl0bT3/MWa863V5y9UN7TUuYlLLEWdOlE1nhlH4dCM5+uSeHv8o0CXJDkWI93uk0fKofhBWADwBMBCmDw8Ce+8t15CyJDjtNczvXpu/qctghsjkque+wICw4QIoqeLJl1XWmrr1+98977XCuCFB+5Z++hdbxQUbHi2vuasiBCVvTO9ihrvExhGjfcpAt/TRUcpShR64zwvxWJqv6wmkz1dtCbGwMTKoCiqfb2pXkGXRAurVsooP3AkycWtlGHhQUOW1b7eQfHGry17DTuam2urzl5uablkswkM43O0fbe15McdO8q2lny9cePZsm8FhqEIYuY2NXE/EyRROGjifi0pDk5ryhkB0F5fxO8n2tsdjY0T45m9xcXLAFYCLM1iEcDwkMWGgjcR5J7W6fcleqImVm7fkbTXk9u+FsZj10bLt2wpAlicrV4EULps+Vgm47Hbb1WgxBBCgYCJFQvjrC3yrAp8Tue/ecZ1SVQT4lgm89G2EntT44hlDqkpQ5Y6biWY5FCSKEj6nE7a6xUiEZmL5ohzfFNJeNvbc4onY8PqqGUJDEM6HMO6ntYGcwZ42x2zEBiyZGGsS6KYlRIiCNLlChEECgR6umiZ5xSBN2Qp7POlNfUqRXo72q+0Xwj73Js2vF158hhJOO0tDTGWMWR5lpCnuzHNJSnVK8QQ6umiaa83RBC013P4YFlbXSNsXzA5MfOzc/M4wDMwue1XwMLS5VbKiIRvDnlWpinrc/5MGdVQW8P6g4s/Xw1v3T3ZPWsAns+iCOAlWPvVm1os2dE2Wwb/BSZWBIbxu5zIG+gmArFOJtaFpO5oPIL4MM24A3yYJl0ugWH+BnaGNfbMAwLrAAAAAElFTkSuQmCC" nextheight="1222" nextwidth="1456" class="image-node embed"><p style="text-align: start">Relays also help in facilitating builder and proposer separation, while also working to verify that blocks built by builders are correct. They also check if fees are paid correctly as well and act as DoS protection. Additionally, they essentially act as escrowers of blocks and also handle validator registrations. This is particularly important in a world of unbounded sequencers, where you need proper accounting for who is participating, and who’s not (e.g. the syncing layer discussed previously).&nbsp;&nbsp;</p><p style="text-align: start">In terms of when blocks are ready (as in submitted by the builders), they are usually presented around 200ms before, or after slot start. Although, just like with GetHeader, there’s a considerable variance, but primarily they get served around 200ms before/after slot time starts. In the case where builders are sending to several relays, there’s actually quite a bit of latency. Bloxroute also looked at what happens when blocks are sent to several relays. As you might expect, the more relays blocks are getting propagated to, the more latency. On average, it took a second relay 99ms for the block to be available, another 122ms for the third and yet another 342ms for the fourth relay. <a target="_blank" rel="" class="dont-break-out" href="https://bloxroutelabs.medium.com/mastering-defi-trading-block-building-and-mev-f662650736c0"><u>Source:</u></a>&nbsp;</p><p style="text-align: start">As might have been clear over the last couple of months, RPCs are incredibly important to blockchains. Not having the proper infrastructure in place is a massive burden, and having a proper selection of RPCs is also vital. In that vein, RPC inclusion is, therefore, crucial for retail users who send their transactions to RPCs (and the public mempool). Bloxroute made a small test of 20 transactions which were sent to various RPCs, and then measured how long it took each transaction to be included in a block.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0b3c5c0476db71dcafc7674906317325.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAVCAIAAACor3u9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAEhUlEQVR4nLWVbUxbVRjH+80PRj+QzJeFLSpZRszIli1ZNEMETBZAVASGi9tkoiVIVbRkpCCvWweD4YCtG0ZeaiSwDcocpaCltrstLy1lvW2ht8W+Ubllg1tGe7qkL4TeY+htukIqZhp/H27OTc45/+f/POc5hwb/Z2hJWWdoFM/vof0NEEKfz/8vBUZF0jcyTpwuLmXWNMQnptF2vXY0PTdm/5G3PzhJe3nfSwcT8+glQQEftSBysDMhAQjhuj96dNSkaYU8Pz+fyWTS6XQGg8Fiseh0OovF2nl3AEBIIECSKIoSBOF0geUVYnmFIAhH5BfH7VaLBcdxcxBqgOM4+CdCApQgEeS/5HobTwQghBiGIQiComhkZj0eD4Tk79LJOcO81+sJxxU5fgoHAAAEQSCEvwiEThcIF6D5emd7d0/Y2ZLdPq2Qw6d1QKWVz+ev+/2FzAqBSLLu9xOEY93vu9Tazu3rh5AkCCJAkqOCoeyMlABJulzOqFEThCOKA+pHLt/MxuDwb7cG+RuBDcpBR8/trt5+oVhGzR64+fNHmSlUtcJELdt2BwAAmUzG7eufM8wLxhD1rA5C8s9FXIjIThZ8efz9UxCSa05n88WalvpK3q3eAEmuOkLBUiEShOOx2y0UyyT3EIIgnvRB2IFKpbr6Q1eAJO8O3vz+2g2jyaae1SlQDaumITntQwjhqsPBrmCqpiTFRYXhxEIIZZPTVtsihKTP53tl/+GWNk4UB16vB0XRKnajakrC5dQnHDyUkp4jEEmUGu27OafjD73pdLnnNPcvs6vX1h7Fvho3qUT5fD6Xy4UQflJYwqq6CCEsL68s+6528O7odgGCcFDnp7KqYkY6CoCbRqN1c3sSDh81mszZeWcSDhwo+bZUyB8QDPYg8vuZ6e8kv3VsXDI2p8NmVJqhkTGhWFpR17gvLu7hEt7C6djSyUGBzRPS1Hbjs1M5MyrNF1+XpR7PGOrv2Ru7O+Y52on3UjNzP372hT2xL8YM3u7LK/hGJEIuNV9pb2u609eZlpnJvnzV4/X92PXTyPAdjVzUdK1bPasLXz+hPkC1s0UF2V8Vf5qcmtTVyRGLh3Kz0luvt8a/HneluXLJjiUmHTuSmFjfcp3dWO98ZNVq5ecb6pjnzu2Oja0oL6o6X9XK4WDzZnZtWVZe7sSUAkJyi4OVlWWzUW02qh/g+tUVy6JFi2q1RqsVAPea04nb9DazZtE2r5kzLCwYbGbNQ9xgW8BW19Z8Pr/X4zL9gYplk4h8BpmYsJk1j90AAPcWgSAOu/3BpBxVoVodplcqlEqFEgCwZMdnphU6TC+Vjk8r5AqFUiAYFYnuSaXjAoGAx+P1D/DU6tklu92gx6wWiw7Tz+p0UY4phHAjsNHRwTl7Np/BYOQHEQqFLpfzwoU6Ov1zBoNRWFjIYBT39vYiQfhBeDwedV63dl/EexDZ6y7nskGPoajGZDJiGBa8yR2mhUUsgvDiyO3CO/BHfh3iDwuDmM3mTYFIAmSoODuww/sFAHhm196S0rLamprq6moURf8C5c1r5K5yCEIAAAAASUVORK5CYII=" nextheight="480" nextwidth="720" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://bloxroutelabs.medium.com/mastering-defi-trading-block-building-and-mev-f662650736c0"><u>Bloxroute Labs&nbsp;</u></a></p><p style="text-align: start">What was interesting to see is that some RPCs took several blocks to include the transaction, since it was dependent on what builder won the respective next block. The more builders that transactions are sent to from the RPC, the higher likelihood of a fast inclusion. Although there’s the chance that transaction originators could utilize their uniquely positioned order flow to target a specific builder or even build their own blocks.&nbsp;</p><p style="text-align: start">On the statistics front in regard to relay performance on Ethereum, it is interesting to look how they’ve performed as well. This helps us provide a more in-depth understanding of how PBS works in a multi validator/builder/relay world, which is hopefully where we are heading concerning rollups in general. <a target="_blank" rel="" class="dont-break-out" href="http://metrika.co/"><u>Metrika</u></a> has some great stats on this, and all credit goes to them for these data points.</p><p style="text-align: start">What should be noted here is that a missed bid is just when a relay is expected to relay a bid, but does not. Expectations of bids come from validators that are registered to specific relay for any given slot. This is not a fault in itself for a relay, and isn’t treated as such on a protocol level, either.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7ba67d2d6b525fdfdc17e528068c8865.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAETklEQVR4nK2Uf2wTZRjHL8EfCTFxwQUmGkUF569ETZbpRtnYsrFBJxZYhwUtskkmyWGckDIiSsbSjB1xF/RMSBs548Gu19G3C7c5znIvbm9rr916tL2sJWHJNuIfYubWde1aSCSmvdEUxf1h/Pxxee55n+f5vs+TvA9GEASO458cOvTliROCICCERgOj0hJeSZIQQm632+fze9xur9cbDIVQFq83cyrLcvBaUI32+fy5RFkOEARBURT2VkmJyWRibbY6jaa761QkGmk//MWx9uPnzn3nuAi6u7qHLgvQ9eNXpzr6HE5Hb2+rXj/s8Ygu17enT1MURRBE65FWiqKsVitlPfP1N2esVusPvWxPD3nh/HkIIXayowMAIEkSx7I2G4sQcvQ5OM7O87zrJxcAAEJ4FYpO4LgiiqLL1UvTwyMjCKFLTicAgOM41s4CAHie77+U8fA8P3RZAAAIgiBJEsZxnCAIEMJQONzV2cn2supYcsAsalHVgBCqw1TxuD2q4Xa78xPVFIxhGFUAIXSWOtvv7B8eGYYPAiEk3M8Dw/6WgtE0zfN89vfqQH/fNXksM5KlWw/nR/P3UOcAIXT/4lmmuivbZaaDwYGBocHByempZ1atfv3l18Lj46IoQghF15UlQxTVuk6nMycDIbx4gXUJws/ZcuI9ctWv37jh9XozAh6vpEQiN2/NPF+wAsOwz48c/W1m9mhb20svPD1189eAHPT5/GMBOSAHg+FwMBQKhkJyKOy0O5p0WjkUHg3ISiQyHo2OR6NKJJIJCIcnJieLi9ZyLIuxNltxUeH6gpXrHnl09ZMPY/kUril6CCt+ak1NeWnZG69oSt589vHHnltVsGtL7bqCAjVkfeETa1eu2LdT19LUiH/0YfmLG97VlB/Y0/Tx+7sxDOs+2YmNBQIHjLvLXt1Qr3n7s2PH23sIY+t+w1793v3Gg22Hq6tKddu36Bsbamo2Nmhrtm6taqivqttUpttW27RP96np4ObykoYtlTXlpXsat9fXVm6r1GirNr236526qo3a6s1+vx+TZXk8en1ianpianpqcnL21u+zM7OJRHI+Nh+bm1tILCaTi/GFRDKZMRKJZPr2nVh8IZFKz8fi87F4IpX+8+7dRCqdvn1nMZVKpNJ/zM7FFxKLqVQsHlcUBcNxfOeOHUbjB83NzQzDgCwMw9A0zTCMIwsAwGZjcx4AgMPh4DhODaNp+vvsl2EYu92unqpFMqvCbDbrdDqapi0WC5XFYrEYDIa6ujqj0Zjz6PX6ioqKlpYWkiRVD47j1dXVBoNBp9MZDAatVms0GtXTHBzHZV4yjuMWi4VhGISQur8oihIEQVEUdXXJskySJM/z+R61A0VR5Dyk+8m8A1WAoqjcVkAIkSQJAMj3EARB03S+R2065/k3Mu/AbDarHeQLcByXX85sNv9TIP9aywmYTCaSJGmazr/v/yyg5iwzov8s8Be0j17HMal6FwAAAABJRU5ErkJggg==" nextheight="806" nextwidth="1456" class="image-node embed"><p>Source: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://app.metrika.co">app.metrika.co</a>&nbsp;</p><p style="text-align: start">If a bid fault were to happen (e.g. relays providing invalid blocks), and it was responsible, then it would count as a bid fault. These are usually not that frequent, and are for the most part registration preference faults (which is when gas limit or fees don’t meet the specific validator’s registration preferences). More rare are consensus layer faults, which is when a bid doesn’t align with consensus layer rules of Ethereum, such as timestamps being wrong or parent hashes not aligned with previous blocks etc.</p><p style="text-align: start">In terms of latency (e.g. the time it takes a validator to receive a response for a block header built by a builder) the data is quite consistent. Although there are some outliers, for example if a relay that is being requested is in a different geographical location than say the chosen validator.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/81a00dac692a0f806d429b2d9b9da7b4.png" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKCAIAAABaL8vzAAAACXBIWXMAAAsTAAALEwEAmpwYAAADU0lEQVR4nE1SbUxTVxi+MVliTFwyRCMqSEBR5FNLqaVUoKh1+LVFUcniEr9wahSFgbotjARctmyKhvkRQG/rBdoL89be2yInck9v77n3nmNLGwYl6h9gf/bD7CczWbLlmttujicn73nyvF95z3uotpY2p9NZX19/8vTJhoaGjo6OQY8HYxwMBBBCGGNCCDauF4RghJCqqCgJQsh/xNARQhOxWEqMx+PvvZT7CT0ujr969fKHrm4pJM39Nj/KMJFwWNf13+fmJjCemkokJiOTUeXNmz/+/uev+BRJJGbm5+anf52ZnZ3VdX1y5vX09PTbP992d3bNJBK6rt+5dSsYEBYWFnRdp3ru9vh5PwBgaNAjCMLo2NgTr9fn842LIu8zIAgCz/t53h8IBAB45ud9IImnvqfjoggA4HleEAQAng243YIgQAhdND08PAwAgBBSI8Mjo2NjYVkOyzKEIdbzC/wfIQhhWA4nXQZEMWVFCEPRyIS7/4GiKAihlHcxSXHjiRiGAQAgJGMZDjDuL89dxKoGYUhRFCkkyVJYkSRJFFUVK5IU5PlgIChJ8mOX63Tj0bqDFfd//qmt5RQ74lEUnMpSFVVR1CQ3dmNM0NVx9cbXZz8/VHPmwmdFpRmtl45/c7Wx/Xpj8/mj57/4tP3bc82tx85ePlS1u8BetaW55cSpxr1HDpu//66Jpm87P9lm31vYdu1MZ2dT6/Xj3d3t93pv/Hjzq6YrR7zuHqMBx3HL05ZSSZSUbTOby9dlpC9ftiQ97YOPPkzJ1IpVS7PXr16ZnkZRVNbGNRRF5WRl7N9Tt6t6V6XdbjaXZ2auyi/Kse8w5RVkmR2ltXX26p22+sP7jAZer6duR60pr6CiuOyAw1lVXO60Vu+x1uw02WpKLJWbS51WR+3WCsuGgo8tlY7S7Q6TrWqr1VZYXllsLsvdXFNisW4qMuVssRWaCzM3lmRvyl+bm782N291dq3F/u8EzwFQFeM7q8bCZEKwhrVINJI8UUJwimhY07AagiJCsoY1QjAhODoRwRhHY0ZYPB6LxqKRF0YdQrRkNUSJoshxXP+jRyzL0jTNcVxvby/Lsv0P+4cGh/r6+liWZRjGRbuYJFJhi+37lMX6Y4YZGBhECL0DkoM0ymEUs2cAAAAASUVORK5CYII=" nextheight="469" nextwidth="1456" class="image-node embed"><p>&nbsp;Source: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://app.metrika.co">app.metrika.co</a>&nbsp;</p><p style="text-align: start">In terms of <a target="_blank" rel="" class="dont-break-out" href="https://www.rated.network/builders?timeWindow=7d&amp;network=mainnet&amp;page=1"><u>builders</u></a>, the total builders over time on MEV-boost are around 84, of which the top 3 builders account for around 65%~ of built blocks. This is somewhat misleading, since these are also the longest running builders. Although it does showcase a somewhat centralized builder role still, as if you lower the timescale, we get similar results. In terms of actual active builders, the numbers are much lower, 35 in the past 30 days and 24 in the past week. The competition is tough, and the biggest and baddest usually win out. Something that exclusive order flow is likely and already only adds to. We expect the distribution of builders to remain somewhat centralized (due to it being a game of having the best order flow and hardware optimizations) around a few parties unless we get significant changes to the setup. While not a fundamental issue, this remains a centralizing force in the stack, and we are keen to learn about ideas on challenging the existing state of affairs here. We highly recommend reading <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/0xQuintus"><u>Quintus</u></a>’ piece on <a target="_blank" rel="" class="dont-break-out" href="https://writings.flashbots.net/order-flow-auctions-and-centralisation"><em><u>order flow, auctions, and centralisation</u></em></a> if you’re interested in digging deeper into this (severe) topic.</p><p style="text-align: start">In terms of where we expect to see the builder role moving forward in the modular stack, we are quite certain that (at least in Cosmos SDK setups) are going to see Skip/Mekatek type setups via <a target="_blank" rel="" class="dont-break-out" href="https://github.com/cosmos/cosmos-sdk/issues/13387"><u>Builder Modules</u></a>. Another solution is SUAVE type setups—e.g. a specific <em>global </em>builder chain that services any arbitrary number of chains with block building and bid preference services to ensure PBS. We’ll cover this solution more in-depth later, and present some answers to some of the open questions around this.</p><p style="text-align: start">On relays, we highly recommend a piece by <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/ankitchiplunkar"><u>Ankit Chiplunkar</u></a> of Frontier Research and<a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/mikeneuder"><u> Mike Neuder</u></a> of the Ethereum Foundation. The name of which is <a target="_blank" rel="" class="dont-break-out" href="https://frontier.tech/optimistic-relays-and-where-to-find-them"><em><u>Optimistic relays and where to find them</u></em></a>. Which goes into great detail of how relays in MEV-boost operate, their current tradeoffs and cost of running among possible changes that can be made to increase efficiency. An interesting note is that by Flashbot estimations, currently running a relay in MEV-Boost costs around ~$100k/year.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-finality"><strong>Finality</strong></h4></div><p style="text-align: start">As a precursor to how we view finality concerning modular blockchains (as they look now), here is a refresher from our previous Modular MEV piece. Do note that this is not an “official” nor comprehensive view of finality; however, we feel that it most accurately represents the nuances of rollup finality in an easy to understand mental model.&nbsp;</p><blockquote><blockquote><p><code>Pending_On_L2: Soft commitment given by the rollup’s sequencer(s) that the users’ transactions will eventually be committed and finalized on the underlying layer, of which it derives security.</code></p></blockquote><blockquote><p><code>Finality_On_L2: The sequencer(s) has committed to the state transition function of the rollup, and the block(s) have been added to the canonical chain of the rollup</code></p></blockquote><blockquote><p><code>Pending_On_L1: Transaction input or output/state transition function has been posted to the L1, but the validity proof has yet to be posted, or dispute period has yet to end – this also requires two successive epochs to have passed for Ethereum. This is the point where most Optimistic rollups say finality has been reached, however according to the canonical bridge – there’s still, at this point, an arbitrary 7-day challenge period.</code></p></blockquote><blockquote><p><code>Finality_On_L1: The dispute period has ended for Optimistic rollups, or the validity proof has been posted and verified, as well as confirmed in two successive epochs with a supermajority.</code></p></blockquote></blockquote><p style="text-align: start">Now on sovereign shared sequencing rollups, this looks slightly different, let’s try to explain it with a diagram:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/32553fdcf1b0fbffc9aa76d642fe9ebc.png" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAADyklEQVR4nJ1UW2zbVBj+JS4TEwyJJ8QGQ9rERrntYYMBL0N7GAIkxIRgCFXqIw+btCKxlUsLEi+lMI2qlGYMqX2AVqB2hfTGljbN2rRJnTqtzXFtasdxHduxU8enMU5itRtDjtE6etGqSZ9+Hemc/3z/5ft/KJnmHcPWtK6fu2bjcYXjNJ7f8A3c9hfHMHzrH24FVtXvz7VQU0RkcJCIRFyM74TAxdjFuGxZ6/1djGf+GFnkU46R28z99gSRwYGJkREyGg8Fg+tvNZaTZui58ZjGslvJIFe2rLJllUzTtyUzlxXSzGRssLOJIYhKpHkfjmF4GYQndCF9Y2XFT3Q9xyqBY+QWZU1kUhkurQlymhGwqpXMfE5dOPPZvjerYDGVcjG2pJRjZG1NcQzjxvXrLwOcPHRYlTMoPsUkEiJCmxLYWjY6PHqps7evuz88OExG41hVXWzT5FW4D3YA/NbUZMmcEB9VEaEiws6mvnn/nScAAidP/ZlMTly5Mn75MorHNyUwZfls7Ydnamsb6uq+bPh8qOdXIhJxjKyLMRx47+CRVxcXBJSgOYqjCXomNisgfrzn90B9Q1tbgCVJJpHIiuJKsbghgaeBmelJWeRcXLhZTYXjRvr6uGRSn5+bDIdMLVOp/qrzsm0nKXqo5xJPUSJCCsdt3GQXLxV0fWw85PfQxdhvIE9RHYFAKBiMjYZdvDRHTbOI5FmKnk0s8HN+ZIYkFS2rkMth3SjouqWqawnU9DxNESwiBZZiEUnTCYKIWl71sYhQc2Njd0eHxvMuxhmBE1jaVOSsJOqSWNB1xzTJafKX3mDvwFA0Gp0hk/MMs5YghdiJqxPhUHh2ajoeneQRk0iM07OEL0SN5wu67ovPMU1Z5P5xl68V3QrKJWtJ5AQXF0qm5WK7clVeS5AVJOUvKc0IaUaQ5lJY8zLVpVRekfOKXHnk1d0xjGvFUutPP9Q0flLf3lp38du6C+drv/u65qsv6ttbP/2x5eOLLR8Fzp3var91tTiGAf5krZuvfMnMLemaqUiWmnGMnOO1yn7udA3sBajaDvvuhscAHgbYVcHjAPu3wf574cn7h8ciK8Xism2vFIueAjfZEKu7xVIzpiLlNaWc/3v3ByfgwEPw4qNweBe8tBNeeAQO/R/P72y+0DY2MBAKBvu7u+lYbEvLzhvDXFZmaDhxDHYD7NnmhbznLth7Dzz9ADz74H94ZgdUbe/pD1oLGREhESGN58HWsluG1tzZDm+9AsePwhtHPHv8KLxdwbvHoPp1qH7tqVPV8rwnuZuR/QtCohsP1BvI6AAAAABJRU5ErkJggg==" nextheight="769" nextwidth="1456" class="image-node embed"><p style="text-align: start">In this situation, we in theory get finality on the L1 before the L2, wait what? Yes, the L2 in this case is sovereign after all. This is assuming no fraud proof &amp; challenge period, or that you’re using a validity proof.&nbsp;</p><p style="text-align: start"><em>So, how do we actually achieve these levels of finality</em>? Block finality is achieved when a block is added to the canonical chain and cannot be reverted. However, there’s some nuance here depending on the view of a full or light node. In the case of an ordered block, it is final once it has been included in a DA layer block. An executed block (w/ state root) is executed by rollup full nodes/validators which gives them guarantees of a valid state root derived from the ordered blocks on the baselayer. Finality beyond full nodes (e.g. for light clients or bridging) have to be convinced of the validity of said state root. Here, you can utilize one of the methods described below. Furthermore, another method is also having validators be held accountable for the correct attestation to a state root (the optimistic route), via a bond and subsequent fraud proof. You could also supply a validity (ZK) proof.&nbsp;</p><p style="text-align: start">There are different ways to achieve block finality:</p><ol><li><p>Probabilistically, through proof-of-work (PoW), LMD+Ghost, Goldfish, Ouroboros (PoS) etc.</p></li><li><p>Provably, when the block is signed by enough committee members. (e.g. Tendermint 2/3rds, Hotshot2 or other PBFT types)&nbsp;</p></li><li><p>Depend on the ordering of transactions/blocks on the DA layer so that it rules what is the canonical chain, and fork choice rule (E.g. <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/based-rollups-superpowers-from-l1-sequencing/15016"><u>Based</u></a>).</p></li></ol><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/e9e1353165008f27c79e49c14e49f272.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAIAAAD8GO2jAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEjElEQVR4nK1WXWgcVRQ+CBYKUuibGIqm1WoraEyttdSAraABG/ogESk+FELxoaAVQmtslFqJsYgimIIYaJDYpFY2u9TpbtfNrJvNJtnsX3dn/7Kz8z93dnd29k6qUME3mbnZ1MRkszWBj+FwZ+Z+937nO/ceMGTRkASMVDWbGTzT+t35Axhp1uAWAeoEaCEePtsFH78LXDpbLhZ0SVzUyxiphizqQlEXinbAWYEk1Ae55ghsYKRizcQaNiShosiXek63Awx2d//91z1Tq5haxZBFUyubpZohyxipplY1tTIha0SgC0JdovRwf/u1y2/qgnhvEYfGrx8F+Knvwmwo9NnQJyMTw6UCN0GN91/pyyUjd+amP/r23E3vLxihxhygsqwucBghMRU/9zZ88R6oLK9mM+l4dDozUy0rrp/H4UmAzh3F+czT3W2wG8YmRga/vAit8Pzpl02t2lioFRKZpZqpVWtIRDn2eE8XtMI7fSdNreIPeGKRIEaomGN8NKVLvKFK/gDFJMKGLDeVA4xUPpvq7D1xYahPF0RdEOhJ6tOhfn/Ag5FGQLxg6W7/YmplS5/mXZSKzUIb7Dn1Qk3RaDdV4vk/DZPMuwT7y/uK/ztuRiJDFqVcxjYi53ZMOMbGgr95m5niAQgspyJVFzjK4bh65Xuvy9WM0x+AYHm9XDqVmZ/f5NTGGgR1S9hbQaSMjU0SIJYlkS5wFZ61JRKUbM46LeyDYS0aax26xJOEWa6tv/qvpMAyabvQVImJpyYdwesjRYbxU9SMlyqEfZnfKZFJ1TdEoBJWU9OXYVHaxwH5Zj2JZIxQPjStZjMk22RQymW8LtdCPKxkkxITF3OM+9bE1OTtzt4TLd37W97ad/jM0XwqhhGKBoNel2uGpsnvBKtyIGKEysWCmk0TAm0hb8hiPhLxjV4thGkuGuRTCZRbcN64BnsBdgA8BPAE3HCNhmmaCYdnfb45P12Ix7lUMheLcunUagIil7aQT3o9fCxik2UMWZQZpl7StpVVsfPs8f2nDj51su2lno5cMmooCmLzkalAwOOZ89PR4NS0zxcNBlcTLNPkQyGilVH31arSNTX9D8O0gVflgKSKBGsTEK0a21S3b6Hlu2h5ZUtGkgQSrEuwci5hyZF1/O9Ca7AbtHL7zdYglPj7G1wPYjLJx6MEYjIhJhNqNrNYLjV1XGdjd9ZXhrtbrUQoqh1gH8CzAPsBnrGDgwB+lyscCBCPNSLASGpAgBFi/PRhgBcBDthPErwGEKXpyNSUms82mKGpHGCk4pJlf8QVc4nY3WoFI0SeTd9oG1iIW2qBJMHvvkU5HB6nkwnPbZGLJMHqheqHmlYUaopWU7SlpmgLCBTF5XVc/OHSwPDA4I9fffD5h72Xz389+s3A8ICTNEWbJNAFEbparL7oMYBdANsBdtrBowCvgljYuHvcgEBlWTi2DR4H2A2wx8ZeG7sADoHb6dzYpo0TYCjKkfffsGx/CODYI3BkG3Rsh9d3wisPP9fTYSjKFrjI1MrMfMT3KxXw3A75Jv2Um75J5aOJJpP8D/0FyJOEjyy+AAAAAElFTkSuQmCC" nextheight="1441" nextwidth="1456" class="image-node embed"><p style="text-align: start">There are different types of finality that can be achieved through different mechanisms.</p><p style="text-align: start">One type of finality is “soft finality” (e.g. pending) which can be achieved if a single leader election is implemented. In this case, every slot will only have one or zero blocks (commit or not), and the syncing layer can safely assume the ordering of the transactions in these blocks.</p><p style="text-align: start">Another type of finality is “provable finality” which provides stronger guarantees (essentially final) than soft finality. To achieve provable finality, a majority of sequencers must sign off on a block, thereby agreeing that this block is canonical. While this approach is nice to have, it may not be necessary if single leader election is already implemented, as it essentially guarantees block ordering. Obviously, this depends on the specific leader election algorithm in effect. E.g. is it a 51% implementation, a 66% or single leader (preferably random (VRF) and secret). If you want to read further on finality in Ethereum specifically, we highly recommend this <a target="_blank" rel="" class="dont-break-out" href="https://jumpcrypto.com/bridging-and-finality-ethereum/"><u>piece</u></a>, alongside one we’ll recommend for unbounded sets later on.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-permissioned-semi-permissionless-or-permissionless"><strong>Permissioned, Semi-Permissionless or Permissionless</strong></h3></div><p style="text-align: start">To prevent potential DoS attacks, it's essential to have economic barriers in place to both join the sequencer set and submit transactions to the sequencer layer. In both bounded (limited number of sequencers) and unbounded (unlimited) sets, there must be an economic barrier to submitting batches to the DA layer to prevent the syncing layer (that propagates blocks between sequencers) from being slowed down or DDoSed. However, the DA layer itself provides some protection, as there's a cost involved in submitting data to it (da_fee). The bond required to join an unbounded set should cover any additional cost necessary to protect against the syncing layer being spammed. On the other hand, the bond required to join a bounded set will depend on the demand (equilibrium from a cost/revenue perspective).&nbsp;</p><p style="text-align: start">With an unbounded sequencer set, provable finality on the sequencer layer is not possible (since we’re never quite aware of how many active voters/signers that are there). On the other hand, with a bounded sequencer set, provable finality can be achieved through a (super)majority of sequencers signing off on a block. This does require the syncing layer to be aware of the sequencer layer and which sequencers are active at any given time, which is some added overhead. In a bounded sequencer set (e.g. max 100), you’re also able to optimize the number of sequencer for “performance”, although at the cost of decentralization and censorship resistance. The importance of a bounded set, and an economical bond, is the ability to provide “fast'' provable finality, which is also deterministic.&nbsp;</p><p style="text-align: start">Both the unbounded and bounded sequencer types are something we also see in legacy blockchains, such as with PoS in Ethereum (Casper+LMD-GHOST), which is unbounded; PoS in Cosmos SDK/Tendermint based chains that utilize a bounded set.&nbsp; One interesting thought is that, do we expect similar economics and <em>choices</em> from the community surrounding shared sequencers, as we’ve seen in Proof-of-Stake? Here we’ve seen a centralization towards a number of entities (hence unbounded doesn’t really matter, if you have a few large staking providers/pools anyway). Although, they do “mask” the centralization, and after all, you can still home-stake, if you wanted to. From an ideological perspective, the choice should almost always be unbounded – but bear in mind that the economics make them very similar regardless. Regardless of who the participants are, the economics of what you’re paying for should still be equal, e.g. cost of DA and hardware cost (although this might be lowered by the amount of stake allocated to you and experience, alongside running infrastructure efficiently already). Even in the bounded PoS world, we’ve seen a group of infrastructure providers becomes essentially the largest and most often seen validators across almost all chains. The correlation is massive between validators across most Cosmos chains already, which is also certainly a danger to the decentralization and censorship resistance of said chains. Although, one thing that is quite different is the fact that any retail user can stake any amount, to any validator of their choosing. Sadly, this is typically allocated to the top of the list, and life goes on. Yet again, we ask; do we expect similar economics to take place in the modular word? One would hope not, but as we specialize, you often want the best person for the job – which more often than not is expertise staking providers. We will also cover these economics later on, in a separate section.</p><p style="text-align: start">However, one important thing to remember in all of this, is that at the end of the day, what matters most is end-user verification – which with light clients and DAS, is available to anyone, anywhere (even at the Pyramids of Giza);&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/744e6933df67941d4c3dc8cabbdbeedf.jpg" alt="" title="" blurdataurl="data:image/png;base64,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" nextheight="900" nextwidth="715" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/JosephALChami"><u>@JosephALChami</u></a></p><p style="text-align: start">The trade-offs and positives of unbounded and bounded in sequencer terms, can be summarized to:</p><p style="text-align: start"><strong>Unbounded Sequencer Set:</strong></p><ul><li><p>Anyone with a sufficient bond/stake can become a sequencer = high level of decentralization</p></li><li><p>No single leader election is possible, as the set is potentially infinite.</p></li><li><p>Non-single leader election via VRF is possible, but difficult to determine VRF parameters without knowing how many sequencers there will be. This should also, if possible, be a secret leader election implementation to avoid DoS attacks.&nbsp;</p></li><li><p>If no leader election = wasted resources problem: block building is essentially a free-for-all, and whoever submits the first valid block/batch wins while everyone else loses.</p></li><li><p>No provable finality on the sequencer layer, only probabilistic – e.g. LMD Ghost+Casper</p></li><li><p>Finality can only be reached once the batches are written to the DA layer (limited to underlying layers block times, 15 seconds in Celestia’s case).</p></li><li><p>“Better” censorship resistance than a bounded set.</p></li></ul><p style="text-align: start"><strong>Bounded Sequencer Set:&nbsp;</strong></p><p style="text-align: start">This is, for example, one of the solutions for single slot finality in Ethereum, alongside having super “majority” committees. See <a target="_blank" rel="" class="dont-break-out" href="https://notes.ethereum.org/@vbuterin/single_slot_finality#Idea-2-validator-set-size-capping"><u>this</u></a><strong>.</strong></p><ul><li><p>The number of permitted sequencers is limited at any specific time.</p></li><li><p>A bounded set is potentially more complicated to implement than an unbounded set.</p></li><li><p>Single leader election can be implemented, giving strong finality guarantees on the sequencer layer.</p></li><li><p>The syncing layer needs to be aware of the sequencer set to know which blocks are valid.</p></li><li><p>Writing the sequencer set (or set changes) into settlement layer blocks (e.g. fork-choice rules), which are written to the DA layer, can allow the syncing layer to determine the sequencer set independently. For example, this is how Sovereign Labs’ rollups function, the set changes are written into the validity proofs that are posted to the DA layer.</p></li><li><p>Strong finality guarantees on the sequencer layer may not be necessary if the DA layer's speed is sufficient (However, most current setups that aren’t optimized settlement layers have at least 10+ second block times).</p></li></ul><p style="text-align: start">Regarding how these sequencer sets are monitored, and new entrants are added, or removed, there’s still quite a large design space for how this should be implemented. E.g. is this going to happen via token holder governance (and how do you then account for the many different tokens and rollups that are utilizing the set?). This means that it’s likely to be done via off-chain social consensus that signals on-chain changes (e.g. the Ethereum way). However, do keep in mind that the actual on-chain consensus is obviously in place regarding slashing for breaking consensus rules.&nbsp;</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-economics-of-a-shared-sequencer"><strong>Economics of a shared sequencer</strong></h3></div><p style="text-align: start">The economics of a shared sequencer network allow for some interesting options. As we discussed before, a validator in a shared sequencer network isn’t too different from your typical L1 validator. The network it participates in is just more optimized for doing one task, receiving intents (pre-PBS) and consequently proposing and ordering transactions. Like a “regular” validator, there is a revenue and cost component. On both sides of the equation, the network the validator participates in has a lot of flexibility, similar to regular L1.&nbsp;</p><p style="text-align: start">Revenue is sourced from users, or the rollups they ultimately aim to interact with, who pay a certain fee for usage of the shared sequencer. This fee could be a percentage of MEV extracted (the input number might be hard to approximate here though), cross-chain value transferred, a gas like construct or a flat fee per interaction. The most elegant revenue solution is probably a setup where the value paid to the shared sequencer is less than the additional value gained by sharing a sequencer amongst rollups and getting the benefits of shared security and liquidity. The downside is that the benefits of decentralization of another part of the stack are hard to quantify. However, as a shared sequencer network grows into its own ecosystem, its ability to extract fees will probably increase. This is in a large part due to their inherent ability to easily aggregate, and it has somewhat an economics of scale effect. As more and more rollups, and consequently applications, join the network; the more cross-domain MEV is extractable.&nbsp;</p><p style="text-align: start">On the cost side, the shared sequencer network also has optionality to compete. They could easily subsidize usage of their network by fronting the cost of posting to the DA layer, or even for interacting with apps on the rollups itself. This would be similar to strategies used by web2.0 companies, whereas you take an initial loss on user (or rollup) acquisition in the hopes their long-term revenue will outweigh the expense. Another more novel, or crypto native, approach on this is allowing rollups to pay for DA fees in their native token. Here, the shared sequencer layer takes on the pricing risk between the token needed to post data on the DA layer and the native token of the rollup. In essence, it is still a shared sequencer fronting the cost; however, it creates ecosystem alignment by acquiring a token of a ‘supplier’ (the rollup) instead. This is somewhat similar to the warehousing construct we set out in <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/64766542/the-thesis"><u>the appchain thesis</u></a>. Other parts where a cost reduction is possible is by utilizing different forms of DA. Different DA layers will offer different pricing due to utilization, the ability for users to easily verify through light clients or outright make different blocksize choices. Finally, the shared sequencer can also batch transactions before posting to the DA layer. In the case of ZKR this could allow for lowering tx costs due to a certain equilibrium of transactions, on the ORU side you could do various batching gas optimisations that we currently see live on various rollups. This would decrease the amount of data needed to be posted on the DA layer, thus lowering the cost of the shared sequencer network, increasing the profitability of the overall network. It does come at the cost of limiting interoperability and changing the time to finality (in the sense of finality on L1 as discussed earlier).</p><p style="text-align: start">Overall, the economics of a shared sequencer network allow for some interesting experimentation and bootstrapping strategies. We estimate that the key differentiation will be the size of the ecosystem and hence the amount of cross-domain MEV and less so the cost side of things. We also highly recommend checking out the Espresso team's very in-depth<a target="_blank" rel="" class="dont-break-out" href="https://hackmd.io/@EspressoSystems/EspressoSequencer"><u> blog posts on shared sequencing</u></a>, they also cover some of the economics trade-offs (and positives) of these types of networks as well. To showcase another way for why rollups are incentivized to utilize shared sequencing (beyond the economics of it), it makes sense to look at aggregation.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-aggregation-theory-and-shared-sequencers"><strong>Aggregation Theory and Shared Sequencers</strong></h3></div><p style="text-align: start">Another way to describe the properties that shared sequencers enable is through the lens of aggregation theory. Aggregation theory (AT) is the concept of how platforms or aggregators can gain significant user traction through a systematic way of integrating other platforms and their users. You essentially change the game from distribution of a scarce resource (e.g. blockspace) to controlling the demand for abundant resources (again, blockspace in this example makes sense). AT is essentially aggregating the suppliers and products (i.e. rollups and blockspace) into a single <em>superior</em> user experience for an aggregated user base. This relationship becomes increasingly exclusive as the network effects of these aggregators grow – there’s no reason to move away. As this happens, the user experience is what becomes the vital differentiating factor between similar setups. If the incentives for new users are there (e.g. good UX and easy interoperability), then the likelihood of a rollup moving to their own network or a different set is unlikely – since network effects drive new suppliers and new users. This creates a flywheel effect, both from a supplier and user perspective, but also from an aggregated censorship resistance view.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/abb5be4bb2967b82e1cb55e975a01450.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEt0lEQVR4nF2SW1ATdxTG96UzPvdF7fhkH6rj1HaUWNvSSq1WrahYCBZJTcAsNAFZYKObzZANV0nIFbOSGyaGQAIhm02WXKRpVolBjKkpRIIlOkjbQUem2qk8VB5IOiQdh/bM7+E/55yZb77/d4DfHiWXlxbeQBGOxfRsOpVIpxKL6dnHqftPF9MbF/5HOpV48fzXp4vzL5d/X5hPplOJjdOlJyng1Z/La5nMWmYtm83+8eLF5s1bAAB4a9MmIFdbt23LZrN/v36d28lkc5V/r66uZrNZBoMB/Lfy07XM2lom89fL58CDxL2REYfbPUqSBEkSN2+G7YO2kRGHi3DKu7rYJ051CVGfz+shXcPD9mfPllZXX9ts1/0+SqNWSqWXe2TddfzvcfxKq0RsNpvsg7YbAb+HdI2NkaPOkft3bwN0yD82RoYCXnJ0gCKGCIeVIoYClPOHgFuJtRzd9WFtKXN83EeHAqR7eGZmZmVlxajHDXpte7sYw4QqlcxiNljMhmiUjt+b9HidvfpuownvaMUuXOAFKAKIToTtVpPNqPa67BThoAiH12X3uuwBarSOVd58Eao8farwk48GBvr9Pk8ymVxZWVGr5EZDH8it4rBZfB4oQhFUKKgFqykPodZdLgEPg3z2hTqeCEVCAS9w904El7fZdIpE4qdYbDIWm4zHp+LxqZnpeB2rnMOu/K6k5IsDhYM2i89Hzs2l8g6gBj6fV9PZIRHAUE6mRqWUlrKKO5Rog/j8OW55xZkyofBSJBwEohHaqJWp2xGYXwWySlnfHCs9frD40Kcnj3y+a9s7hYX7392ydf++AlyreuMAx3tVSimfVwNyq0AuBxUKQC6nubm+TlCt02kSiZjNdo3PA5nM0y6H9c0XaUYd10cd1+3WfrvVlKOfd5YJcqv27njv0MEimh4n3c6NDhqhegmGilCEzwMFMGQxG4J+ymI2SDBUADegQsG5c5VBigDuTk70qboGDIrZ1IPp6fupVDLPo0e/SFEYQeCigoJ9jD0z0/GcwFzegUza2QjVNzTwOGyWCEVALkcAQ6TbqdUoejpbFYruJohfziy19uvXBUy4QifHrvb2dGFIW4tAjDS1IFALAn21b29ZWQlj546TxcdIt9NDuvIOcLxXAENQA1+EIhIM5bBZILfKqMfxq73qttaeS0IXMVILVsNwEx3yrwsYtHK8W9gharxYx4FqWDx2OY9dDtWwjn/2cUUFk7FzR8WZso0hr2egkjVC9bkYOCIU6WjFxGKhGG7qbIb1cplSKT165DDIrVq/ouhE2ITLXFb84fxcKpWcTz/Ms/DksbZLwmFXvr99+6GDRTPT93w+d07glcViIt1OXKuSYKgEQzFMqFRKbRbTtwe+/ODtrcV7GEZc094u/vdMI7dCWo38iqzNpNPqcLWpr1eHq3W46poRP88sPVtSsn/37hPFX3tIl17fl8+gR9Y9Nkaazf0SrKVVItZqNRbLtaFBm6EPN5uMAxbz0KAVhptUKkUoQAEPp+9M3Q7fGqdukPY8QXIwz48+IhLyx26HYtFwlA5G6eDTxfnlpYX8O9+nx6koHZy8eWO9Ew1PRUJTkVCUDiZiE1E6OPfz5D/0JygOeRSB7gAAAABJRU5ErkJggg==" nextheight="330" nextwidth="768" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://stratechery.com/2015/aggregation-theory/"><u>Aggregation Theory 2015, Ben Thompson</u></a></p><p style="text-align: start">In the vein of shared sequencers, AT can be seen through the almost “combination” and alliance of rollups that all utilize similar vertical parts of the stack – strengthening themselves and others, while enabling users to have the same experience, anywhere.</p><p style="text-align: start">Suppliers (e.g. rollups) aren’t exclusive in theory in shared sequencer sets, however in reality; the shared sequencer set, it’s rollups and users benefit from a cycle of network effects that lead to increased usage of said rollups. These benefits make it easier for rollups and users to integrate with the shared stack, since they would lose out more by not participating. While these benefits may be hard to see when you only have two rollup sharing a sequencer set, it becomes a lot more clear as you add increasing numbers of rollups and users to the equation. The shared sequencer set has a direct relationship to users, as they order their transactions, even if the users themselves have no idea they’re even interacting with them – since from their perspective, they’re just using a rollup that they have reason to interact with (meaning the ordering/sequencers becomes exclusive). The only cost associated with these sequencers is essentially the cost of the hardware that they’re run on, as long as the blockspace and token that secures it is valuable to the end-users. The transaction fees are digital and paid from the users’ wallets, mayhap in the future, even abstracted away with advances such as paymasters within account abstraction (however, someone will have to bear the cost of DA, sequencing and execution).</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/fc31e896750fc54de7bc296fc6bf6fdd.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAVCAIAAACor3u9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAFeklEQVR4nI2Ve1BUVRzHv0lNWjP+0fjWZsIlHEOS1MlKMB+FSIgIgsGAmpSACCmWlragaCP5GNCRiXLyhSVpQC5QKwghsUAsrrvCPtzFZR93L/u4+2DZu1dWhebuIqGDkzPfufM7j/v7nPM7v3N+cJmNY4qmLHZCV36xtPrK5TreVZFAIKitra+qEtTWCptu1PF4N2qqG2tqrlVU1Ffz/r52rd9IjukHTwP4pJXLtHKZVa91koSTJEx3u+2EzkkSdkJn6VE7ScKoUlk0Paa73U7y2QBPLISmLLTVSlOW/5pe22c8aprZOVZrv5HsNz4F4B1jXTMOG02Z+42kkyRGXNt1eh9p9Dp87vrNpntOyqzRaORKj7uPcVBPMIYBviXQlEkmlpBqtV2nvyvtIru7DUqly2xU3ZZQeq1aKvW5Vnd2suulqMFBJvnrk5i0FAgBpiJkjU6poinLaMYwQCq8aVBIK36vAzgIjHOZDV1CISatABa2tYncNnJceBowK7fogsftkItuqaVSWYdQIuwAFgMTvRoHvPBTaeWAyz46zsMAnVJhUMj1PRpE7Yrb+73H3adXypZvycXbiS7K6NBp9x8vQ2CCoKXLbTPfEYsNSmWvSt78jxzL92BmDIuZHLUks8RDe9xW2xgAmjLdH7gnrSg/NCsg7xX/hkMH2yWq6Ru/w8qd3JI/5NL22KINC7nv5ZcdcFkohUjEHpXN2lldIPjhk/pznyXGLzlTEF9/6dPKc2lEV8toxjDAodMOPnxQs3v3BmADcHLxuycqWzFjC2ZnIvro5YZzSAbSgezAPoJUiG66re67N0uzpyMWSJkPTFwUHITxHwGhqD/1AWNn+o3EMMCbamzaDA0N8nPzNgKbgJIVK3/ktSIwE3OyEHuksuEXpL+E7ePxZYhDRyjEHYydUbac+GIa4oHkRcCMqOAFE9g/14BfFOahPS4z6UtiGJRKQqEgFPJ7brqam5sMpADFYWGnea14dRNeS0X04asNl7DRD6lAzpt2jV4lETF2RtpcuHOKF/AWMC18Xshz7C4jUX001KAxGbuVpPcOQiuXCZuaZR1Cm9XK28eNAdYBp5YsPVvVgsmxmLoeMQW8xjI2FmuBrKA+glR3illA07EdU7AeSApmAUEh45DIAvhF7yukanFrs1wk0snlbIgYh81lNg4NDfL27ksZ3sEyFhCQjjmfI6Go6q9fkTEBmX7YNZ8FSCWMnbnTXLTDu4PEIGDKyjfmg91BFBpLwu8z92nKSFNmNkS+o3CSxODDB5W7v0oCkoDCBe8UlzfBfys4mYgt5DeXI/V5ZAM75vYZjBrpbbfV3Xnj2LYXEQPEcYDp0Zx5QAIQDn5RqMvqdpK6x7Koj9APDXluXTyfjfEZQNmm5AaJCiFZmJselnNG1d2OHA5S/GKLkxiHQ6+Se2gXpRcVJyAHyFsHzORsjvOLy8LqVMj4xx8MeBiHmaZMjz12bW3iplbJwW8L4z/e0tgkbBWI9uQejk/JEAg6GhtaTp4+E7oq+vr1llvC2wqxhMcXVPDbr/zZfPa38lOnz0aviyu9WPbzhbLycn5VnZDHF9TUtZh7tDRlYgE0ZXHoNFicg9kZbGrO3sp+A9LBSQNnKwK3ew8jC4FZ4GxDcPbybUfgnwb/dHY+JwuvZ2POTgRkseJksoEN2I4Zm8uqmgZc9pHX1PDy5kIs+wYruMP6MA+rDmD1QUTkI2I/IvIQmc/aiUd2FZxn7cg8RHCxap9XXNaO4LKdkXmIysfaA8J2CeOgRteDXiepH1EfofPeRtIrg080RdJUr04lp6leb49+ZOiR9D65bezzM2ZFM4/SGBWq30jeEYsfnzaG2FLhfbT/p2SOCejxFoZn1L+6ejwdXnY7RgAAAABJRU5ErkJggg==" nextheight="976" nextwidth="1456" class="image-node embed"><p style="text-align: start">This makes even more sense when you consider where Josh and Jordan from Astria formerly worked – Google. Google products have since inception been heavily inspired by the ideas of AT, this is especially prevalent with Google Search, which was created by modularizing (lol) individual pages and articles, making them directly accessible via a global search window.&nbsp;</p><p style="text-align: start">The customers in this case of the shared sequencer set (users of rollups) have an increasingly low acquisition cost, since they are likely to be attracted to the set as the number of suppliers (rollups) increase. This does mean that, in most cases, aggregators (or multi-aggregators) have a likely winner-take-all effect, since the value of this aggregator increases with the rise of suppliers (as long as the user experience is good, of course). In contrast, on singular sequencing networks, the customer acquisition is limited to a single network and its applications. If a user wants to utilize a rollup application that’s on a different rollup, they will (within current limitations) have to move off the network entirely. This means that the stickiness of users and value isn’t very high, and also means that at any moment, if a different rollup ecosystem becomes highly regarded (or has more incentivization), capital could take flight.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-summarization-of-attributes-and-trade-offs"><strong>Summarization of attributes and trade-offs</strong></h3></div><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-attributes"><strong>Attributes</strong></h4></div><p style="text-align: start">A Shared Sequencer set is a rollup network which aggregates and orders transactions for multiple rollups. These rollups all share the same sequencers. This pooling of resources means that rollups receive stronger economic security and censorship resistance, which allows for <em>fast </em>soft finality guarantees, and conditional cross-rollup transactions.</p><p style="text-align: start">Now, there’s been quite a lot of noise on Twitter surrounding atomicity between rollups that are sharing the same sequencer set. This is primarily set around the fact whether it is atomic by default, or not – it is not. However, if the rollups in question have implemented each other’s state transition function (STF) as a dependency between them regarding conditional transactions – they could indeed have atomicity between them – as long as their slots/block times line up (which they should with a shared seq. set). In this case, to get atomic interoperability, you would essentially just run a light node of chain A on chain B and vice verse (similarly to how IBC works). To further this interoperability in terms of security measures (beyond trusting a single full node as a light node), you could implement ZKPs (state proofs, essentially) to solve the “oracle issue” of making sure state is indeed correct. This would give more clarity surrounding if conditional txs or similar have touched the canonical bridge between them. Fraud proofs is also a possibility, but would obviously leave us with a challenge period (which would mean third parties would pop up to take that risk for a fee). Furthermore, in the light client (and not full node on each other's case) it would be lagging behind at least a block, as a result of waiting for the signed header + fraud proof window (if any).</p><p style="text-align: start">We’re of the belief that “bridging” is most likely to be solved in conjunction with light clients and ZK. The challenge of using light clients in this case (and not smart contracts) is that hard-forks on the rollup node sides (upgrades etc) would need to be done in conjunction with each other to keep their bridge running (just how IBC needs the same state module enabled). If you’d like to read more on this specific topic (and how to solve it) – we highly recommend this <a target="_blank" rel="" class="dont-break-out" href="https://docs.google.com/presentation/d/1FWIrhzygBC4ixkFndNxCQ1ldZ6ibYQ_P1OgXU7UvL54/edit#slide=id.g200c2e2446c_0_67"><u>presentation</u></a>.&nbsp;</p><p style="text-align: start">What makes shared sequencers incredible scalable is the fact that they’re not executing and storing any state (as centralized sequencers do now). The same goes for the rollup nodes themselves (they don’t have to scale to 100s of nodes, unless they want an atomicity between them – e.g. light clients/state proofs). These nodes just execute transactions that are valid to their rollup, as well as any conditional cross-domain transactions that are valid to them as well. If the rollup nodes had to execute and store state for many, many rollups, it would hinder scalability and lower decentralization (in turn lowering censorship resistance). It also reinforces the concept of Proposer-Builder-Seperation (PBS). Although we still need to separate the builder and proposer completely. In the current setup, the sequencer is essentially a builder and proposer (although they do not execute the transactions). The ideal setup is likely that sequencers just exist to blindly sign off on built blocks coming from a highly optimized builder setup and making sure blocks are correctly implemented (while providing a high degree of economic finality and censorship resistance to that attestation). Through that, they can provide a high degree of security and commitment to guarantee soft finality to rollup nodes.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0dceea942bd946a6b1dfeb1e7d59bb4c.jpg" alt="" title="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEFUlEQVR4nKWUXUwcVRTHj02MD/UjJrUx0QfUKmIT09iaIvU7MX2wDyY+aZuiUGilwVrEWKjQJWtabaLUlmBMoyRIJCIoEopEmoAKgmjJbtlhYWdndnfm7p073187M7tsa8zu0gaJdTEmv5c5N/f8zzl3/gdSElkHgqtqwbGOjsY7I7PDJpGSkUgBC6N/vwtFs9sEu6qWpKYadkPVDhj/st4gRiIc4sJhLhzWOf7/CqTypE0nRl1mw2zWy7qq7iiyo6qOIhe9WFzAyWWRopNfLF38YHqgJTh8gg+OuaqWkoT1VFZEwCZYjsWkWKK7GU7vh+4G6H8Xfh9409M9m6D1CtgE3+hYR1w0GGQp6vyxO97fD2frchpjXW/ISElJuFhxeQFHkdUoLS1Q0gJlcInrZ9cQC7Pubr3lkxo4fxR63oa5wcaMnbEJsgk2EV9gTZWOIhZYGZFNsIWRo6qeoaQk4hlS2pJdg7gGsQkyuAQJjePgCAr8IIRGVWY+JUkm4jIp05Y4M0kbfEShKUeRTYRyeRQZRdj4IosibK6Dwi8hxxjm0mw8RKUk/o+pwPD3v46NzI5emBGZhKOIrqqbRBMT2FWtuenflgIBPR4P9X9zua8v0PtV9OKYo4gpScimU39evaJjpPLIwoKFBRCZqByLiQzjGRLAHoA9nsk/+/IZuL0GShrhnrd+vDDpGbLO8Rbmk5FFCyNC07ogsFNTR2FTHWw8DDd/+swLEh/XBTTiaz62rWJidNxRRAvnZghcOIxpmqWotCU/9uJJ2LTX4MNPv9QO8ArcVQN31/f2jJDoIjU3p/IJkWFUPhENBjianuwfOAi37QV4FeCz53dHF6hkEh2+9d7nANj5eS6yyM7PJyORayPKW2bZ1XEsZsqx2oYe2NoC5Sfhcf/ML8G0peYfHItM1FFkm2DP0LjZmdOl20/d96hv4wNfV76eTtmmmKQuTU92durxWD6nuNYHNinYiuAoHV0Ix8MRgWYtLNiEmAgbHCI0YyJcwOCQwsZVNkFoWmCjWpK3MPIM7Wp2ebXD1xrNJgQxSzgRMTXGsvisJ2dcMbusZZc1zxEVwly9YhQ+c3hKxiWZlLTamGvW3z8IuJrEU8zZE4Nn3hs81zr0YVN/+/GBc61D7ce/O9XY2+Eb6vANdfqHO/3DHzX3fdzUP9T1s6tJBVsVXxUmwtm0Ntg1AbAPoBqgahXVAAf+HqwG2FeyucnVcuNer8Cyqw12/QRwEDYcgZvqc2w4AlALUJnPWLkSXIkf2r6lzVHWvewKHXz7+QTAawB1OZkVavMUmrgePARQVbK56T8I2IR4hhyaCj211b9jS9vOh9p2PugrL/XtKvPtKmurKPNXlPnLS31PPJyLPPlI27b7W96p7PIM+UZv8Bfi/IXCWIzM5AAAAABJRU5ErkJggg==" nextheight="850" nextwidth="1456" class="image-node embed"><p style="text-align: start">For cross-rollup conditional transactions, they also exist to help enable rollup nodes (the executors) to provide intermediate state roots, allowing for atomicity between rollup. If you want a deep dive on how this could possibly look, then this <a target="_blank" rel="" class="dont-break-out" href="https://docs.google.com/presentation/d/1FWIrhzygBC4ixkFndNxCQ1ldZ6ibYQ_P1OgXU7UvL54/edit#slide=id.g1ff0fb2ceff_0_19"><u>brief presentation</u></a> is perfect for you.</p><p style="text-align: start"><strong>Tradeoffs</strong></p><p style="text-align: start">The timeout parameter that was mentioned earlier has some interesting effects on MEV and transaction inclusion, depending on the ordering and leader/consensus mechanism of the sequencer set. e.g. if the timeout parameter, as described in our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-application-specific-chain-thesis"><u>application-specific chain thesis</u></a>, is relatively short, it is key for proposers on the decentralized sequencer level to post data as quickly as possible. In such a world, you could get competition of “validators” of the decentralized sequencer set competing to act as a leader and outbidding each other for blockspace on the DA layer up to a point at which it is no longer economically desirable to do so.</p><p style="text-align: start">As was covered by Evan in the<a target="_blank" rel="" class="dont-break-out" href="https://forum.celestia.org/t/sharing-a-sequencer-set-by-separating-execution-from-aggregation/702"><u> original lazy sequencers post on the Celestia forums</u></a>, waiting to execute transactions until they’re posted to a base layer (Celestia in this case) is quite wasteful. Since you’re now limited to the base layer’s blocktimes - which is a long time to wait for finality from a UX perspective. To get better UX, the shared sequencers provide a soft finality commitment to rollups (as discussed earlier) which gives us the UX that users are used to in existing centralized rollups (while staying decentralized and with high censorship resistance). The soft commitments are in essence just a promise of the final order of transactions, but backed by a heavy economic bond and <em>fast </em>final finality from the baselayer once posted. This is also covered by fraud proofs (as noted in the introduction). The actual hard finality comes when all tx data has been posted to the baselayer (meaning the L1 actually reaches faster finality). This is dependent on whether or not the rollups are utilizing fraud proofs, or zero-knowledge proofs for their sovereign proof verification – which happens on the rollup side. The reason for wanting this separation is to take away the heavy computation of state transitions from the sequencers (which is a huge bottleneck). Instead, the rollup nodes only handled the ones valid to them (which does mean we have to add conditional transactions, state proofs or light node verification for proper interoperability). Hard finality is still dependent on the base layer (but this will likely be around 15s with Celestia, and also deterministic w/ Tendermint) – which does provide us a high degree of relatively fast hard finality guarantees on the rollup side.&nbsp;</p><p style="text-align: start">It is also possible to utilize ZK proofs within the network to optimize validation, transaction size (e.g. only posting state diffs – but this does add a higher degree of trust until a ZKP is posted). These state proofs can, as covered earlier, be used to allow for connected chains/rollups to have much easier and faster interoperability (not having to wait for a challenge window).</p><p style="text-align: start">One downside to these conditional transactions that were covered earlier is that they’re likely to be a lot pricier to verify and post (e.g. Tendermint block header verification is costly, and is subsidized on Cosmos chains) – as well as add some latency to the system (but still much faster that siloed rollups). The atomicity that is achievable because of the vertical shared integrations do make up for a lot of this.&nbsp;</p><p style="text-align: start">In the bootstrapping phase of a new rollup, going with a shared sequencer set makes a lot of sense – and the positives that you’ve gained as a supplier will likely outweigh some of the trade-offs that you might be “forced” to make on a moat level. However, for already mature rollups with a lot of transaction and economic activity – giving up part of your moat likely makes little sense.&nbsp;</p><p style="text-align: start">This brings into question whether we would need something like an economic/transaction (per rollup) weighted redistribution of extracted MEV to entice already mature rollups to join a shared set – or even keep extremely mature rollups and avoid having them spin out their own network. This is all quite theoretical, but it’s certainly an interesting thought process surrounding how MEV would look in a shared vertical world between many rollups that have varying degrees of activity. For example, if a singular rollup that drives much of the value through the sequencer set is sharing parts of these profits with others (that might not be bringing in as much “value”), there’s certainly more reason for them to move to their own siloed system. Sreeram from EigenLayr has some <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/sreeramkannan/status/1637496244317880321?s=20"><u>thoughts here too</u></a>, which we recommend reading as well.</p><p style="text-align: start">This also becomes increasingly important when you consider the fact that searchers have a considerable technical cost to work on a new chain, so standardizing this and providing some sovereignty to chains regarding “their” MEV is probably a good starting point. Essentially, in MEV the dominant interface (or software) is likely to win out – however actually monetizing this software is incredibly difficult, unless you run key parts of the infrastructure (leading to centralization). On a market level, what shared sequencers provide is essentially a common mempool for many suppliers, with a centralized auction that would likely lead to more healthy competition.</p><p style="text-align: start">A worry here is that in the case of two rollups both running a sequencer in the shared set. A rollup (A) with “less economic” value running a sequencer could be elected to propose blocks with a high amount of MEV + fees originating from a rollup (B). From rollup B’s perspective, they would essentially be missing out on some of the value, that they in a siloed approach would keep to themselves.&nbsp;</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-solving-interoperability-tradeoffs"><strong>Solving Interoperability Tradeoffs</strong></h4></div><p style="text-align: start">Another note on the proposed tradeoffs made regarding interoperability, another way to solve some of these issues, is summarized below:</p><p style="text-align: start">The point of the shared sequencer network is that it gives a guarantee of canonicity for multiple chains, which is certainly a big advantage in this case. This can be combined with a mechanism to give a guarantee over a valid state transition between rollups. This could be a committee-based approach (e.g. PoS), a bonded attestation (Optimistic approach), or the one that we prefer – a ZKP backed by a committee signing. Because the shared sequencers are “lazy” they only create mega blocks which order transactions for multiple rollups, and the execution of said transactions is left to the specific rollups. State proofs (i.e Lagrange, Axiom, or Herodotus and others) are all possible solutions to potentially get attestation to finality across sovereign rollups as well. You could even add economic bond finality attestations via things like staking pools, EigenLayr and more. The idea is that the shared sequencer gives an economic guarantee of the canonicity of ordering, and generating a validity proof from this ordering is as such deterministic. The basic idea is that rollups can synchronously execute transactions across each other. For example, two rollup node networks can be conditionally aware that the two rollup histories are valid via ZKPs and available (with the data published to an efficient DA layer). The rollup nodes can then settle both rollups simultaneously by posting on-chain a single-rollup block prefix received from both network A and B. One of the things that does need to be said, and we covered this earlier slightly – is that cross-rollup atomic (or synchronous) transactions are likely to be pricier than singular intra rollup transactions. This is because conditionally cross rollup transactions are consuming resources from two independent systems via shared execution.</p><p style="text-align: start">Succinct also has a write-up on cross-chain “atomic” transactions between rollups with a shared sequencer (and shared fraud prover) within the Optimism superchain ecosystem that can be checked out <a target="_blank" rel="" class="dont-break-out" href="https://hackmd.io/@succinctlabs/BJF9ZsNZ3"><u>here</u></a>. Also, as <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/0xshake"><u>Bo Du</u></a> from Polymer puts it; “Cross chain atomic txs are like acquiring a lock across database shards for a write”.&nbsp;</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-a-vertical-future"><strong>A Vertical Future</strong></h3></div><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://jon-dba.notion.site/jon-dba/Research-328fa9c082264b5c82f4763c406fd8a3"><u>Jon Charbonneau</u></a> and others have already gone quite in-depth into the inner workings of how a SUAVE like chain would possibly look, so we won’t go too into detail. You can check out his pieces if you want a more detailed description. Although, we do feel that vertical integration does deserve its own part, both to highlight how incredibly modular we can really go (and why) and some of the open questions and concerns surrounding vertical integration.&nbsp;</p><p style="text-align: start">While the current shared sequencing proposals from both Astria, Espresso and Radius are incredibly modular, the sequencers are still acting as both builders and proposer (although in the Astria case, they do not execute transactions). Astria is also actively building PBS into their architecture from the get-go.</p><p style="text-align: start">There are several ways to achieve PBS if it’s not already built into the protocol (although at varying degrees of decentralization). Something like SUAVE, using an off-chain model such as MEV-Boost, or implementing builder modules (such as the Cosmos SDK ones being built by Mekatek and Skip).</p><p style="text-align: start">What’s important to note is that neither of these are exclusive. You could flexibly utilize several different methods, and have anyone express their preferences. Whereby you’d have executors compete to fill those. Adding more optionality is always good (and adheres to our beliefs in modularity). Although, various implementations will have different trade-offs. With something like SUAVE, you do add privacy (with SGX or crypography) alongside cryptoeconomic security to the truth, instead of relying on a centralized PBS builder that is trusted completely. (Thanks to Jon Charbonneau for feedback here).&nbsp;</p><p style="text-align: start">A vertical integration into a builder chain would need to be done in a few that ensures fairness, and that doesn’t cut corners and increase latency and lowers performance. As such, a builder chain would need to be incredibly optimized, and likely require costly and performant hardware (leading to centralization). This means that to get end-user verification, we would likely need some implementation of light nodes (although they have to trust full nodes), or utilize a state proof type setup to ensure that chain and users have proof of bid preference being filled, and that blocks have been built correctly.&nbsp;</p><p style="text-align: start">A chain such as this would likely be incredible state heavy (which we would like to avoid). Although these state heavy transactions will be preference bids via smart contracts. In the case of preference bids, it either gets filled or doesn’t (in a short amount of time), since bids are usually only valid for a short period of time depending on the preferences. This means that we would likely be able to implement very efficient (and early) state expiry for bids – which would allow us to prune data and keep the chain “clean”. This expiry date needs to be long enough to still allow bid preference to get filled, although lowering it too much essentially makes it impossible to implement blockspace futures far into the future. The need to revive and retrieve expired bid contracts is unlikely to be needed, since they aren’t required to exist for infinity (unlike applications) – this can be made more “secure” and trustless by providing state/storage proofs as bids are filled, or via DAS storage solutions – such as the <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/abs/2111.12323?context=cs"><u>one proposed by Joachim Neu&nbsp;</u></a></p><p style="text-align: start">As we covered early, the need to verify the “truth” of SUAVE is likely going to be limited to “sharks” (power users) of the platform, since most users and customers of a SUAVE implementation all have significant economic gain to be derived from utilizing it. This could entice us to just have people run a full node, if they want to verify – although this excludes the vast majority of people (you could argue they have no need to verify). This is (in our opinion) antithetical to crypto, and we would preferably see verification of SUAVE happen “trustlessly” via state proofs or via a light client friendly implementation.&nbsp;</p><p style="text-align: start">The reason for needing this is that you’d want to verify that your bid preference were filled correctly, and that blocks are filled with correct information upon payout (to avoid weird rebundling and other exploits). This is essentially an oracle problem – which indeed can be solved for on-chain state (which all of SUAVE would be) via state proofs. Making these state proof cross-chain brings forward another problem though, how do we relay this information cross-chain in a way that makes it so nothing was tampered with or withheld? This could likely be via a strong economic finality attestation (such as the one presented by Lagrange, wherein you could use the re-staking validators of EigenLayr to attest to finality and truth of the chain with a very strong economic bond). This then brings forward a different problem (e.g. the bid contract specifies that the “oracle” – in this case restakers) have specified a token that is staked and provides the economic bond – but how do we then slash this outside of consensus? While you could code in slashing criteria, this isn’t in consensus and would mean social slashing would be utilized (which is hardly ever “fair”, and could lead to problems) via smart contracts. This is one of the bigger issues with slashing in EigenLayr at the current time.</p><p style="text-align: start">So, where does this leave us? Likely in the situation that until we get on-chain “trustless” slashing outside of consensus, a SUAVE like chain would likely need its own consensus algorithm and cryptoeconomic security that attest to the finality of bid preferences and built blocks – however, that means adding more cryptoeconomic attack vectors, especially if its building blocks for rollups worth much, much more that its own cryptoeconomic security.&nbsp;</p><p style="text-align: start">Beyond this, there’s a super large design space for how a SUAVE-type chain and cross-domain MEV should look in general. Underneath are just some of the possible avenues to research:</p><ul><li><p>Intent Matching and Intent-Based Systems</p></li><li><p>Convex optimizations in multi asset trades</p></li><li><p>DSLs</p></li><li><p>MEV redistribution</p></li><li><p>Latency wars</p></li><li><p>Scaling issues of having a single set of actors needing to build for the state machines of multiple rollups.</p></li><li><p>Preference expression&nbsp;</p></li></ul><p style="text-align: start">On preference expression, to interact with a smart contract in the EVM, a contract call (message) is sent to a specific function on an address with deployed code containing execution instructions. While users provide inputs, they may not have control over outputs due to potential statefulness.</p><p style="text-align: start">In contrast, preference expression design systems (e.g. SUAVE and Anoma) only require users to sign preferences with a bond, which is paid to the builders and proposers if the preferences of the searchers are met. The implementation of different language and virtual machines may vary for complex combinatorial logic, such as transaction ordering for MEV searchers and builders. This is a new design space that is getting a lot of attention lately – especially surrounding the Anoma structure. We would recommend looking at the <a target="_blank" rel="" class="dont-break-out" href="https://medium.com/anomanetwork/an-overview-of-anoma-s-architecture-26b72e8c9be5"><u>Anoma architecture here</u></a>. And would highly recommend <a target="_blank" rel="" class="dont-break-out" href="https://mirror.xyz/breck.eth/UwNIfA9HKWdKrptkhPWz0CKCQrdok3xwPMTFivsCcNY"><u>this short read</u></a> as well, as an appetizer from <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/brxckinridge"><u>Breck </u></a>at Haun.</p><hr><p style="text-align: start">Much of this article wouldn’t be possible without the great research that has been done in this particular vertical. Many thanks to:</p><ul><li><p><a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/evansforbes"><u>Evan Forbes</u></a> (Celestia)</p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/likebeckett"><u>Alex Beckett</u></a> (Celestia)</p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/AstriaOrg"><u>The Astria Team</u></a></p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/EspressoSys"><u>The Espresso Team</u></a></p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://writings.flashbots.net/"><u>Flashbots</u></a></p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://jon-dba.notion.site/research-328fa9c082264b5c82f4763c406fd8a3"><u>Jon Charbonneau and Michael Jordan from dba</u></a> (lower case research + a ton of other sources)</p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/bloXrouteLabs"><u>Bloxroute Labs</u></a></p></li></ul><p style="text-align: start">Furthermore, we want to thank all the people, projects, and companies we reference throughout this article for their contributions to the space</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>shared sequencers</category>
            <category>modularity</category>
            <category>aggregation theory</category>
            <category>rollups</category>
        </item>
        <item>
            <title><![CDATA[Modular MEV Part 2; Finality, Actors, State of Rollups, DA Layer and Cross-Domain MEV.]]></title>
            <link>https://paragraph.com/@Maven11Research/modular-mev-part-2;-finality,-actors,-state-of-rollups,-da-layer-and-cross-domain-mev</link>
            <guid>IQoNY58nA0jxMnhDqUSh</guid>
            <pubDate>Mon, 25 Mar 2024 22:05:36 GMT</pubDate>
            <description><![CDATA[The Modular StackIf you’ve read any of our prior articles, or if you’re familiar with the way modular blockchains work, you’d know that they work qui...]]></description>
            <content:encoded><![CDATA[<div class="relative header-and-anchor"><h3 id="h-the-modular-stack"><strong>The Modular Stack</strong></h3></div><p>If you’ve read any of our prior articles, or if you’re familiar with the way modular blockchains work, you’d know that they work quite a bit differently than their monolithic counterparts. With modular blockchains, you split off parts of the aspects of a blockchain that monolithic blockchains usually all possess. These are namely—Execution (Transactions/Smart Contract Interactions), Settlement (Dispute Resolution), Consensus and Data Availability. Now in a modular stack, you might have a data availability (and consensus) layer, a settlement (liquidity and dispute resolution) layer, and execution layers (hence referred to as rollup, however, keep in mind that settlement layers are rollups as well, in the modular stack). We’ve already looked at how the MEV supply chain looks in a monolithic setup, as well as in a semi-modular setup (with off-chain execution rollups), such as on Ethereum. When you start to split up more of the layers of a blockchain, it changes even further. If you need a refresher on the Modular Stack, we recommend reading up on our prior article – <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-modular-world"><u>The Modular World</u></a>.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/22cc223b9b853fc5e1a3dc1bf475dbf2.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAANCAIAAABHKvtLAAAACXBIWXMAAAsTAAALEwEAmpwYAAACpElEQVR4nGPgIwLwcPGYWps5eDk5eDq4+Lk5eDoYW5iIiYkRo5eBGEV8fHwC/AJwBgQRqZFBCAlAhNC4fGARAUFB/GqwAiEhIQYWFhYmBhBgYoD6hgnMZmIASfGBAQsLM7IIJycnXA0nJyemuZycnNxcXHx8vJycHAyBIaGFpeWFpeXBoWHsHOx8fHypmdlZBUXFldV29g4MYCOiYuLzS8sLSit9/QMYGBjU1DXyS8szC4qyCopkZGTgtkIACwtLamZ2fVtnVVNbamYmw+yFy8+du7b/8KnFqzYICwmFhoYePnXh2pVbly/famrvkZGRDg0N3X3w+M0b965fvzt74XIlZaUVK1b9//H/1cOX719+iIyMkZGRUVZWVlVTU1dXV1ZWdnFxOXH64vd3n/99+blq7UaGyTPnnjl7Zf/hk7MWLrPycAyOiVq7YdvhI6eOHD+fV1giISOtpKw8f/HKoyfOHT5yeuKM2doWxrnFxffuPrl9497RE+dsbGzZWFmlpKXNnRzEJcT5+PjExMS27tx75cLVaxdvdPZMZFBXV9fR0/f1D8jKyvL09fHw9kxITDQwMtLXN5SSlOLh5eXj41VRUdHTN9DTN1BQUODk5BQTE9PTN9DR0zcwMtLW0wFHEgs8iCQlJT08POTkFZSUVSQlJUFBzMLCwsbKKiQkJC4mJg5O3SxgAI9ATrAaZBFQ0mBk4hPg1zQ2MDI2UlZWFhISEgMDC3tbSXlZNlZWiH0o+QBrksAPmBgYTExMjp84s3Dxis1bd+fnF7KwsCAnX2IzGh8OwMnJqaSs8uLBs/8///3/87+vbwqVLWBjZRUTE6ltap0ybfa0WfMDQ0IZGRh4eHmoYwEnJ6eKkpqjraevZ6inq6+9tYuRvrmlmZ2psRU8tAE3uNrc3ht2owAAAABJRU5ErkJggg==" nextheight="611" nextwidth="1456" class="image-node embed"><p>Inspired by Stephane’s great monolithic MEV <a target="_blank" rel="" class="dont-break-out" href="https://flashbots.mirror.xyz/bqCakwfQZkMsq63b50vib-nibo5eKai0QuK7m-Dsxpo"><u>Supply Chain Diagram</u></a> and adapted to fit a Modular setup by r&amp;c</p><p>This is an example of how a supply chain could look in a modular setup, regarding MEV. Underneath, we’ll take a bird's-eye view of how this looks in the entire stack:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/ccfe266113a923694f4a7315342574c4.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEHklEQVR4nI2UfUwbZRzHn7Y32run9/Lccb17yvVKS3kZY2ykAnZrcGNBt2RzCjZucQ4EwZZAnC/M+Qch8y/JDGYZcTAyIQOyTY1L0CwsLroY/9ni1GhMlqiJUaOJojK2yfzHn7krLaUi+sk3l+eey933+b0dEv4HXp43qB6NhKNl4apwsDRobC4rqd9QVh0JV0dChJA13kWr7oorURTFMIyAYeG30TUL1SbXQCGSQqT/MMAYMwzDsizDuBjG5XQ6GYZBCDnQEk6nE2PMshy2yQ00EjIiYQNjfi0DVVUbG5s6OpNPdDy1Nd7wUHNib3NLvOG+HU07Dzze1vLIozuadhIiaIUrTioIAiFE0zRKaW5MSFyZGpZ1195Tm0r2dHalupI9XclUb+8zbe2d+/YdaG3v7O55Opnsbrr/AcHLabIVax6r1IDDOC2MsSiKHrcbF1G33xesXq9FTJeuqpWlvooSNlgkhU3/5kppU4VDwEV64YZSU9d8mmaVI10YTdPSNVthUG6aFaZZbpoBXecwliVp5oXDX706VBEpaY7Hfxo5OZBIPN/SAm+cPbRrV2r3bpie6n+4WVbF9ZGQz+ejNmkDSilrkxsKqgwGN4bCxX6/XliIMVZl+Ur/wM8nToR0vTkWg+nJlxOJg9sb506+1r59W1tDw92J8cMP7vEb/vi9dTU1NRtz2GQTjUbD4XBxcXH6inAmPxlbCblZp1fy8hLDeR0CWcdLTg+LBOLicHahqmqRYZimaRgGpdRu4KUmNgyDEJJt8fwuciCE3cgne5x2X1Ifj92IQaiISozT3inE2G0dK8PS8bLJYVl29TngMSZE3rv/pe6+c88NXGhNjbSmRvuOzrT3Tjz25Ejf0ZmDqVP7O4af7X9nT+KI/V0eY577l+b5p4HIsSylxqVP4fNf4OPv4ZMf4esFS9/chhvzcPVbuP4DXPsOvpiDyYvgk71lAa0koBUbumIhq6qqKMpaBhhzmkYHhr585fSdwdFfB0fnh07fGp78Y3hq8fiZO8fGFo6NLQyO3hyeht4XZylV41tjW2J12xri6cJGo9H6+npN0/ICWjYQBat/PQUOTwGy5XAzSODdksitYxDHujJiOLZAEEVZUUSRpP9bJEPeECwbcJgr4Ao82MPxHC8KXkkQiciLvN/wB8NBjveKRBKJmJaXxyz2cHZ518j+kgGRCHKgwbYTf52Hudfht/El/T4O8xOweBb+PA83x+H2Gbg1CXenLC1OWzvwFhzvGkMOJFrpXSZ/0GRJRgi93XcZPgO4DHAlow8ArgLcsPWRfZt9lH56HS4ceV+QXFWlocqSQFVpoCJEg6Y1Fqqq5htMHHoTrgHMArwHcCmjWVvZxcUcvQvwIYylzim6vCUWq6u1KC8vM82AaZqU0mwQfwPDSHYWih43iQAAAABJRU5ErkJggg==" nextheight="822" nextwidth="1456" class="image-node embed"><p>In a modular stack, the sequencers essentially act as the builders in a monolithic setup. However, the sequencer also proposes blocks to the underlying layers to which they are connected. As such, we can both call sequencers builders and proposers. This is absent from any<a target="_blank" rel="" class="dont-break-out" href="https://notes.ethereum.org/@vbuterin/pbs_censorship_resistance"><u> Proposer-Builder-Seperation (PBS)</u></a> implementation, which would likely be implemented by third parties (or rollups themselves), to minimize PGA auction congestion on the execution layer.</p><p>The validators on the data availability layer are purely proposers, exactly like their counterparts on Ethereum(w/ MEV-Boost). Opposite, the sequencers essentially build blocks from bundles of transactions from users and searchers. They then send/propose these to the DA or settlement layer (depending on smart contract rollup or not), where the validators will include transactions/blocks based on the fee being paid (and into their respective <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/88304566/namespace-merkle-trees"><u>Namespace</u></a>). The Celestia validators are unable to reorder any transactions, just like their counterparts, as they would get slashed.&nbsp;</p><p>Essentially, the sequencers, now builders, are able to put together the highest value block—which could contain cross-domain MEV opportunities, for example, to be included in the DA level block as soon as possible by the aforementioned validators. When a block is finalized on the DA layer, we essentially get complete finality on the rollup (Depending on rollup nodes having settled state, or dispute periods—although all data is now available). This opens up the opportunity for some interesting, and still somewhat theoretical, DA layer MEV interactions, which we’ll cover later on in the article. Before we start digging into cross-domain, bridging and DA layer MEV we need to understand how the modular stack functions in regard to liveness, finality, and incentivization which all affect how MEV is extracted and where. Alongside what off-chain actors inhabit the ecosystem.&nbsp;</p><hr><div class="relative header-and-anchor"><h4 id="h-liveness">Liveness</h4></div><p>When talking about modular ecosystems, liveness becomes critical. This is because as you add more components to a stack, they all rely on each other and their liveness becomes even more critical. For instance, you need liveness between nodes on the various layers, but also between them and the DA layer. It is therefore essential that we also take a look at liveness in a modular setup. If you require a primer on liveness, then our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/modular-mev-part-1the-introduction"><u>previous article</u></a> covers decentralized sequencers and methods for them to achieve liveness as well. In a modular stack, sequencers on specific rollups need to give liveness guarantees, but essentially derive some of their security from the layer below. In some cases, especially for app-specific rollups on top of a shared settlement layer, external sequencing is also a possibility. This would work in the sense that the rollup contract on the underlying layer (that has smart contracts) would be used to order transactions. In this setup, the users of the app-chain essentially just need to trust the underlying L1 for liveness—instead of having to trust another leadership election system (and it’s sequencer network). However, what this means is that the rollups in this setup would still be limited by the data sequencing abilities of the settlement layer—very much the case of rollups on Ethereum today.</p><p>An excellent way to illustrate how liveness works is by looking at the CAP Principle—Tim Roughgarden especially has an <a target="_blank" rel="" class="dont-break-out" href="https://timroughgarden.org/f21/l6.pdf"><u>excellent explanation</u></a> (alongside many other great lectures). CAP stands for three informal properties that you are required to possess for a distributed system to work as intended (regarding uptime and security).&nbsp;</p><pre class="dont-break-out text-sm md:text-base"><code>C: Stands for consistency, basically that the UX should be identical from user to user, and it should feel like you’re interacting with a single database every time you use the system.</code></pre><pre class="dont-break-out text-sm md:text-base"><code>A: Stands for availability, which is what we also refer to as liveness. The fact that all messages are handled by nodes in the system, and that they are reflected in future blocks/queries. All commands need to be carried out.</code></pre><pre class="dont-break-out text-sm md:text-base"><code>P: Stands for partition tolerance (or censorship resistance), which means that the system needs to uphold consistency and availability even in the event of an attack, or partition of network nodes.&nbsp;</code></pre><p>However, what the principle states is that no distributed system is able to uphold all of these properties. Here, C (consistency) is especially hard to achieve, while retaining all the other properties. To gain consistency, you usually have to give up on availability. However, availability (liveness) is a core property of a distributed system, so we can’t give up on that. This is the trade-off that most singular databases in web2 make, since they want consistency over anything.</p><p>Various consensus mechanisms make different tradeoffs depending on their setup when it comes to the CAP principle. For example, if Tendermint gets stake weight attacked, it might go into an asynchronous phase of a partially synchronous model (keeping consistency). The other side of the coin here is that the longest-chain consensus (non-fast-finality) gives up on consistency in the event of attacks.</p><p>What this basically shows is that you need to pick two out of the three, when your network is under attack. This means you either keep consistency or liveness.</p><p>So, why are we mentioning all of this? Well, it is crucial for the sequencer networks of rollups in a modular stack to achieve part of the CAP theorem. Otherwise, the MEV will be entirely taken by the team controlling that singular sequencer (unless other public goods setups are in effect, but there’s still a trust assumption in that case, the centralized sequencer and the team behind it). It is also to show that the sequencer set needs backstops in the case of liveness failure, to not lose consistency (or safety). One of the options that could be utilized to decentralize the sequencer set, is by using a stake weight leadership election algorithm. However, one of the issues that you might run into with requiring other validators (sequencers in this case) to sign off on blocks, is that of censorship. You already inherit your liveness properties from the underlying layer. In this case, optimizing for liveness, over post-attack safety (as is the case with Tendermint for example), might be the better option. Essentially, the network’s leadership election should only pick a leader that then proposes a block, instead of requiring other sequencers to validate the same block. We will go more in-depth on other solutions towards censorship resistance in the incentivization section.</p><p>One extra unique thing about running on a separate DA layer is that you can’t do a double spend, as all transaction data is published—unless you perform data withholding attacks; however, that should lead to slashing depending on the consensus algorithms used. In the case of similar DA layer attacks from validators, the consensus layer will also slash these. Moreover, in the case of data withholding, you can retrieve the data from the namespace (or similar).</p><p>The way sequencers of rollups maintain liveness outside the rollup system is through the underlying layer it is connected to, whether that is a settlement or DA/Consensus layer (however the settlement layer also retains liveness from the DA layer, so essentially the DA layer is what contingencies are built on top of). They are sending received transaction information to the underlying layer, which then gets sorted (in the case of Celestia) into their namespace.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/98aa2251e6140ee9f2f4fb21e342cf53.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAE9UlEQVR4nJ2VXWwUVRTHx9XpbG+5u3s7s/fuOK6WZQrtsmWYTjtst8O2wzDdTr9ggaVgQdB2qRSqBMSWr1K2LbF82IJVAqhoiIkxJphATHgQgwkxoYkkAsYX0sQEIzxAoi8mPtTsjmyWdsuD/8zDnTPn3F/OuWfOpdz5BCHkeV7TtFgsput6OBy2LEtV1UhGlmXJsgwhzBuLEMp9pfI62X6EEL/fLwiCvSCEYIx5nscYZ3eBGWXXAADbAjKCEM4JsAPmZZwKnU46o2w8QojNCGfk9/sjkYhhGKZpKopiGIau66ZphkKhZwHsPCCEFZJsxizLskRRJITwGZGMbIzNEwTB/sTzvCAIfr8fY/wsAEIIAIAQSnbvPDAw3NbWZvPs+tipzCjRbOUH2FswDBMIBCRJKikpEUXR7/erqkoIsakzDnMu5QFACGmahhBKkiTLstvttk8MAEAIUVVVFEWaphmm4P8AIISEkHCk9t2+PkVRaJq2E/I8KQsAoLysLDU0XBOpxRjP1az5ASzLFtB0VbU6PDq+vr3D4XDYB5jrgxBiGCbZ3TOQGpXlSpqmZ/vMCbArEwwGq6rVUCgkCAJFUQCAGSkCAFRVXSorkiTZPgxTMFcqTwFqNa2zsxMhVJBpeVEU1yUSolg6I6Z/3/5IJEJRFEJIkqRt3d2StJQQkpdBPWnHwvoV5tFjp+rq67NZAwAOp472HTwiiqUAAE+mR9s3vnYoNVoeLIcQehAqdDrbN246lBpdHq1jGGZ2rdIACKGDomoitV3JN0szHWLv7uW4qmp1XaI9EAjYwTRNLwvXrEkkeJ4HALAs63A4gsHFW7Z2VSqKw+HIkwGEEGPcleyOr4mHQqH3T53GhLjSRnJ6YkIURUWpfGfvXntOVCrK0NBQMUJjY2MQuiCELwpCT89OjLGu62/v2jXjwNIAhmEarKbU6HhE05RqtX9wxLQsh8OxdsOmg+lSBBuaW/YNjiyRZZZl39rdn9zeq9bUDB490dQapyiqsbWtb2B4YXn5UlkZOX461twCQGFuoagip9PPkfbWeDGALpppb40HeOH55xyL55cmmla9QFEL+Je2dbyOoRsUMKtXWlG1hgOu3mRP5aIKmqJ8iO1oXcdBN0Hs5kRHxYKFRc6nAZFGI3X727EHNztOHd7x2diHDyf7r3+15o3NH/0xOfHo1vGfrw5PXj7z6Fby3Gi8t+vM75Opm5e3Xzh59u71Q9992fvekT1fn52YuvHqsf2r927/4O61fVc+r2ttRK6cEjVt3fDF9INPp6d2XDo3cvfqxen7B+5ciXduPv/XnZOPJ0/c/3F86sbQ1Pdtx/vW7ukZ//PWwK9Xx+79MPH3LxP/3O6/9MnZhz9dmP5t97WLe775+Pz0vZOPJ1dsWY/APA/y/AdYpqpWnbGqwTKj9UsWlXHQXQxgxeKQVqWaWrTZaIjIynzMs/NcuJhFTsAByEEPB93eIhhcVB6Lrli9sjFuNevLo2UlAQzdJS+/kjtCKIwx5/X6eB8mGBPs432+zKznvF7Oy3FerzdtJ7bRx/PZBxNczLJFELrcbpc7XRQPQsWzxka6TbM3Rvaesv++3Dsr65CNz43K2m3/mYBgMKhpmmEYiqLEYjF7SsdisXA4rD2RYRiqqra0tOi6HgqFFEVRVVWSJNM0dV2XZTkYDEajUdM0NU3LnRn/Ai6uUryvrPtHAAAAAElFTkSuQmCC" nextheight="1017" nextwidth="1456" class="image-node embed"><p>The resulting state roots of the transactions are settled either on the rollup’s own nodes or on the settlement layer in use. To uphold safety guarantees, the entire full transaction data has to be stored (or made available) on-chain. Although, we don’t need to execute it (since we do that off-chain). This is what provides us with data availability, which allows rollup nodes to see that all <em>needed </em>data associated with the rollup was published – to the underlying layer. This is where liveness and security are inherited from.&nbsp;</p><p>In the case of ZK rollups, it relies on the censorship resistance of the underlying layer for its liveness, not security since you’re not required to monitor transaction validity (as it is ensured by the ZKP). However, regarding consistency, there are some variables (such as a trusted setup). Furthermore, as we pointed out in the last article, with ZKPs complex computation (and the time/cost it takes to do so) it means that sometimes batches can fall behind. This means that while some batches/blocks have finality on the execution layer, it might still take some time before they receive non-pending finality on the L1, which is when the recursively proven ZKP batch is verified (either via a verification smart contract, or from rollup nodes in a sovereign setting). The reason for this is both time/cost. The final cost of verifying transactions is cheaper if you verify a large amount at the same time, instead of more often. That means that even though you technically can lower costs with ZKRs compared to ORs, there are still some hurdles to how mature the rollups transaction activity is, before it reaches an equilibrium of cost and activity. This is bound to get lower and lower, as rollups mature and hardware acceleration tech, proving networks, schemes, and recursion increases in efficiency.&nbsp;</p><hr><div class="relative header-and-anchor"><h4 id="h-finality">Finality</h4></div><p>Semantics (or subjective determination from the perspective of who the observer is). Does the trust-minimised two-way bridge decide what finality is? Well, that’s the way it would seem if you look at withdrawal times for rollups currently. This causes 3rd parties to pop up and take on inventory risk, providing instant withdrawals for end-users. We do think it’s relevant that we look at the difference between stages of finality, especially on the rollup side (particularly sovereign ones), so although much of this will be semantics – remember that semantics are important.&nbsp;</p><p>Finality in rollups refers to the assurance that a particular transaction or set of transactions has been irreversibly committed to the blockchain(s). In rollups on top of Ethereum, this assurance is achieved through a combination of several mechanisms.&nbsp;</p><p>In optimistic rollups, finality works differently compared to zk-rollups. Optimistic rollups primarily submit a compressed batch of transactions that include headers (showing what sequence of context is included), context (amount of txs, block info, time etc) and transaction data that commit to the rollups state transition function (which is then posted to the canonical chain). The rollup’s L1 smart contract then assumes that the transaction is valid and executes it. If the transaction is indeed valid, everything proceeds as normal. However, if the transaction is invalid, the rollup's canonical chain can be challenged. The challenge process involves submitting fraud proofs, which proves that the transaction(s) was invalid. If a valid fraud proof is submitted, the smart contract (and rollup nodes) will roll back the invalid transaction and revert any state changes that it caused in the canonical transaction chain. This means that optimistic rollups do not provide instant finality (despite all data being available) – instead, they have a challenge period during which transactions can be disputed (which is what the canonical bridge’s withdrawal period is based on). The length of the challenge period varies depending on the specific optimistic rollup implementation. However, the arbitrary period is currently set to 7 days, because of the valuable blockspace of the Ethereum network. If you want a flow diagram to help you understand Optimistic rollups (and how they work currently), I highly recommend <a target="_blank" rel="" class="dont-break-out" href="https://l2beat.com/scaling/tvl"><u>L2Beats’</u></a> (click on the specific rollup you’re interested in)</p><p>The other is the use of zk-proofs to validate and bundle multiple transactions together into a single proof. These proofs are generated by the rollup's prover(s) after they have received the execution trace that attests to the validity of a certain rollups block batch. This gets submitted to Ethereum for verification by the smart contract governing the rollup (alongside either inputs or outputs as calldata, depending on the implementaion). Once the smart contract has verified the proof, it posts the relevant data, effectively committing the transactions to the blockchain. The on-chain mechanism is the use of Ethereum's consensus mechanism, which provides a final finality guarantee, which is enforced typically through “waiting” through two epochs of votes by a supermajority of the Ethereum validator set (different to deterministic consensus protocols, Ethereum is probabilistic). Once a validity proof has been verified on-chain, on the L1 it is considered final and irreversible, providing a high level of assurance that the transactions included in the block are also final.&nbsp;</p><p>What should be noted is that the above is from the perspective of the validating (canonical) bridge to the rollup. If you’re purely a L2 user, then finality is going to feel much faster, and your transaction is essentially final when it is Pending_On_L1 (for Optimistic Rollups) or Finality_On_L1 (for ZK Rollups) (see underneath).</p><p>One mental model for the finality of rollups is putting it into 4 different stages, depending on the rollup. These are:</p><blockquote><pre class="dont-break-out text-sm md:text-base"><code>Pending_On_L2: Soft commitment given by the rollup’s sequencer(s) that the users’ transactions will eventually be committed and finalized on the underlying layer, of which it derives security.</code></pre><pre class="dont-break-out text-sm md:text-base"><code>Finality_On_L2: The sequencer(s) has committed to the state transition function of the rollup, and the block(s) have been added to the canonical chain of the rollup</code></pre><pre class="dont-break-out text-sm md:text-base"><code>Pending_On_L1: Transaction input or output/state transition function has been posted to the L1, but the validity proof has yet to be posted, or dispute period has yet to end – this also requires two successive epochs to have passed for Ethereum. This is the point where most Optimistic rollups say finality has been reached, however according to the canonical bridge – there’s still, at this point, an arbitrary 7-day challenge period.</code></pre><pre class="dont-break-out text-sm md:text-base"><code>Finality_On_L1: The dispute period has ended for Optimistic rollups, or the validity proof has been posted and verified, as well as confirmed in two successive epochs with a supermajority.</code></pre></blockquote><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4764eaab2fa2e7b20a6bb35035890adc.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAZCAIAAADfbbvGAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEIElEQVR4nK1WXW/aVhhmF9vEFjHCp2fobJkwE9cJ4MbBmILBmXBDDMVEQJNA+UpS0oQoQBfSTcuWZmGKitS0y26G1I+t2qSpuZi25WLqpqjVriZN3T/ZfsEmOKkXRSQla6RH1uF88Jz3fZ/3sRUGDdYNYAjn/RLvl6YSxYXi9QAX0anRbg4quiQwaDDeLwW4SCyaaWw2Y9HMKRPo1Cjl4EiCfUWhUyg0KqWpy4MnIbD7KLsPMZMAsPFdGMJPk4AkWK9HrCyuVRbX9n794+sH3+NW+oWJOgEBbqXBlWEIB/j/KQL3kv8IRQZUStNsvrpU+kT9htkM2eSlFzIpjspGgIt4PSJDC16POBqMDzn9K9fqjc2mvHQQAS5yFE3nCHi/BAZ9fYzAhn764mE+VlhIFgvR3M336zcrnwbPh958HdapUZ0aVSlNJMFSDq5jPVoE8j55h9cjgnnI2O92Bpanr93+YPNho7k6/+GN0upSZqmSLR8qz5EEKqUpmyr98vPvd5s7sioYWoAhnB7ieb/k9YiImTRqLUatBUedBg1mhmxv6/sOEZxz8kdGgJhJyu7j/RJiJsEs5eAYWni692dcyoOfuHWYcnCOQS/Rz1B2H9HPwBC+3xAQThJs6WrdbGodhyFcq0KNWgsY79cApEim9XpEnRpFzCRJsPls+dtvdr0ecSpRjIUzF4LJuJQPj6Vn89VadWMqUcyly7P56ujYJWkyc3mudHmuFImnpMlcUExcuJjorCLKwXk9ImX3uegRkmBbKW63cYCLkATrokcoBwdmWmG1o8et5/R6iwluabrPSpnPnEWRgeMarX19N26lScJNEixJuCkHFx5Lt2fY5wBL7CGNalWo/Dyuk4G6dM8BiqFSmlRK06sKI1CdvPSyVmFoQ7qYTSXnrxRqzS+/C41OdOOpJyNIJeef7D3b/eHpnVv3//7rHxc9chpmp92XPAzhlN0HzAPo+KXsWjYyoxbT6y3qt9BhWth59Fih6O3tQXp7kIN7jmHaJwBvD7APdCbvl4AWZwofz6QWLolTpXx5e+veeGgiKk6Ghfh5dhSAoQXeL5EE27mTZSMCwgAEwItMkM1FjwjBCSkYW05PL6en43woF06MB0LuAVb5WktOADo1Gnwv3jmCVHK+sdmsVTfu3Lpfq26AIBhaAEEQ/czwEI9ZqDPvDNpsHsrBYRbKYfdZ+4ZAPcCTJNzj0mzAnzBoMAxzalUoigwaNJjRYFVkUwu7P/5WX99+svds59Hju80dUEPQYuDtWF/fbmw2F4rX11a3Kotr9fXtXLpcWbzx+dZXc1dWVmqfpZLzQigZThQmZypXP6qHE4Xk9JIQTbu9Y/8VWadGe3sQGMIPWgX4kgCucLCBKbtv8KwHDHAr7aJHGFqQa4BhzrZntIL4F+i7mYf2SDAcAAAAAElFTkSuQmCC" nextheight="1165" nextwidth="1456" class="image-node embed"><p>The L1 can have different finality trade-offs, e.g. Tendermint DA (deterministic) is quicker to reach finality than Bitcoin DA and ETH DA (probabilistic). However, the probabilistic model makes fraud proof considerably easier to implement. It should be noted that the STF commiting to the canonical chain, happens on the L1 as well.</p><p>The soft confirmations given by a single, centralized sequencer are possible because of the (trusted) promise from the sequencer that it will not reorder transactions, nor touch MEV (Also, the sequencer can provide instant transaction confirmations by requiring a security bond that will be forfeited if the promised block inclusion is not met, ensuring economic finality). If we move beyond centralized sequencers to decentralization of the sequencer set, much of this MEV is likely to be extracted by the chosen leader for a certain rollup block, or from a different mechanism (as we covered in <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/100501772/decentralizing-sequencers"><u>part 1</u></a>). There are and should be mechanisms in place to avoid reordering of transactions by a proposer, that they received from a builder (or FCFS), which should be punishable by the slashing of the sequencer’s bond. This bond should be high enough to avoid sequencers doing so, but also not high enough to gate keep the ability to become a part of a permissionless sequencer set – a fine line to walk. This is why the ability to <a target="_blank" rel="" class="dont-break-out" href="https://community.starknet.io/t/starknet-escape-hatch-research/1108"><u>force transactions</u></a> through, to either the underlying smart contract of the rollup, or the DA layer where transactions data is posted – is incredibly important.&nbsp;</p><p>For sovereign rollups, finality works slightly differently, since we don’t have to post proofs and calldata (tx data) to a congested L1. <a target="_blank" rel="" class="dont-break-out" href="https://mirror.xyz/sovlabs.eth/Hwe-6x6MTUjvpuTuuwIoN2E8lgpg1euDnn_vZgwoH0Y"><u>A recent post by Cem Ozer and Preston Evans</u></a> goes into detail into exactly how this is possible with sovereign ZK Rollups. What's critical to note in this specific setup, especially in regard to MEV extraction, is that this design inherits the transaction (and proof) ordering from the base layer. Which means that the proposer on the base layer becomes the leader. This is similar to the <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/based-rollups-superpowers-from-l1-sequencing/15016"><u>"Based"</u></a> design, which we'll be referring to several times in this article when referring to inheriting the ordering of the base layer (essentially outsourcing sequencing to the L1). When this is the setup, you're also now dependent on the block time (as a result of outsourcing sequencing and ordering) of the base layer.</p><p>If a rollup posts state-diffs (such as Starknet and ZKSync), even running a full node won't help reduce latency (since the full transaction data isn’t available). Most zk-rollups today use centralized sequencers to give soft finality guarantees (a commitment to the end-user that eventually the transaction data and proof will eventually make its way to the L1). But to make decentralized zk-rollups competitive on latency, we need to reduce latency for light clients. It is possible to do this without increasing proof verification costs by creating proofs in real-time (timestamps) and using recursion to aggregate them into a batch proof later (such as on <a target="_blank" rel="" class="dont-break-out" href="https://dev.bonsai.xyz/"><u>Bonsai Network</u></a>). As long as you distribute incremental proofs right away via the p2p network (on the rollup side) prior to the on-chain batch proofs, light clients will experience fast <em>soft </em>finality. However, the fast finality guarantees that the light client is given is only as fast as the block time of the underlying DA layer (since the <a target="_blank" rel="" class="dont-break-out" href="https://rollkit.dev/docs/rollkit-stack/#sequencer-node"><u>Pure Fork Choice Rule</u></a> is inherited from it).</p><p>The slower batch proofs are still posted on-chain (such as with existing ZK Rollups), so there's no extra cost for on-chain verification, beyond the on-chain verification of the batch proof every DA layer block.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0b08905318c48372f16e29ff28d9b0f2.png" alt="" blurdataurl="data:image/png;base64,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" nextheight="1353" nextwidth="1456" class="image-node embed"><p>This provides a trust-minimized bridge with the L1, where the bridge is no longer the source of truth for light clients. This is only possible if you’re bridging between protocols sharing the same DA layer, or operating in the same <a target="_blank" rel="" class="dont-break-out" href="https://blog.celestia.org/clusters/"><u>cluster</u></a>, otherwise you're introducing additional trust assumptions on the rollup side.</p><p>In today's rollups, the L1 smart contract enforces the fork-choice rule (the rule deciding the canonical chain, this is with Tendermint chains ⅔ stake weight of the valset, or with Ethereum with <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/abs/2003.03052"><u>Casper FFG + LMD GHOST</u></a>) by verifying the zk-proof and checking that it builds on the previous proof and processes all relevant “forced transactions” (through the L1). Without a smart contract, it is still possible to enforce this rule by requiring proofs to be posted as calldata to the L1 and adding a statement to the zk-proof that it builds on the most recent valid proof (the ordering of these proofs on the base layer decides the canonical chain). This allows you to prove the fork-choice rule directly, instead of enforcing it client-side. On a DA layer like Celestia, this is easy to do, since you can look through the Namespace Merkle Tree(NMT) for transactions belonging to a specific rollup. If you want to read more about data commitments, like NMTs, read our article on data commitments <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/from-linked-lists-to-namespace-merkle"><u>here</u></a>.&nbsp;</p><p>In terms of models to gain security guarantees on finality, <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/Jskybowen"><u>Josh Bowen</u></a> of Astria puts it well, and I’m going to quote him here.</p><ol><li><p>“Proof of Stake committees, which come to consensus over a given state root and create an aggregated signature. (Committee with stake behind it)</p></li><li><p>Succinct zero knowledge proof of a given state transition. (Validity Proof)</p></li><li><p>Signatures from a single actor attesting to a given state root backed by a bond which can be slashed if the state root is proven to be invalid via a challenge mechanism. (Fraud Proof)”</p></li></ol><hr><div class="relative header-and-anchor"><h4 id="h-state-of-rollup-mev">State of Rollup MEV</h4></div><p>In regard to the current state of rollup MEV it makes sense to look at ecosystems with a lot of activity (and hence extractable MEV). For instance, Arbitrum previously chose to ignore MEV altogether by using a first-come, first-served mechanism, but this places higher hardware requirements on the nodes and reduces the cost of DDoS for searchers, who will spam the sequencer to get included in blocks. However, the larger a window is, the larger amount of MEV is likely to be extracted. This is likely leading to less centralization in regard to MEV actors, though. While if you were to lower the window, there would likely be less MEV, but high centralization in regard to who extracts it (based on geographical adjacency).</p><p>This is currently being addressed by the Arbitrum team, and its community, with much drama around whether they should implement a PoW type algorithm (calculating the lowest nonce) to be included in rollup blocks. If you’re interested in how the Arbitrum team wants to implement this, we highly recommend you read this <a target="_blank" rel="" class="dont-break-out" href="https://research.arbitrum.io/t/thoughts-on-arbitrums-proposal-to-score-connections-by-pow/8121"><u>forum post</u></a>, which goes into detail. However, by adding considerable cost to the extraction, the profitability of such goes down the drain. This means that you’re essentially adding a race-to-the-bottom for searchers, who will now have to compete on PoW calculations and spend money on upkeep of additional hardware. This is arguably not a particularly solid implementation, since if there’s still profit to be made, searchers will commit to make it. As we’ve argued previously, we would much rather see MEV go into the security budget of a decentralized network (which would also mean going to the token holders), or through public goods funding (but then we add an entirely different discussion into what accounts for public good).</p><p>One important part of what rollups enable is the possibility of separation of transaction ordering and execution, which will go a long way in alleviating some of the MEV issues that currently exist in monolithic blockchains and their SBV mechanisms (currently off-chain via MEV-Boost). Although, what happens currently is just redirecting MEV profits from validators to rollup sequencers. Which, if you think in terms of the security budget of the underlying layer, is strange, since the validators now only earn a DA fee. I would almost propose that in a modular world, some of this MEV is directed down to the validators, and their security budget, which is where the rollup derives much of its security from. This could come in the form of a % base fee of the extracted MEV, that goes to the DA/Consensus layer – call it public goods.</p><p>However, one important thing to take into account when talking about a competitive and decentralized rollup MEV market is as Vitalik put it <a target="_blank" rel="" class="dont-break-out" href="https://medium.com/@VitalikButerin/i-feel-like-this-post-is-addressing-an-argument-that-isnt-the-actual-argument-that-mev-auction-b3c5e8fc1021"><u>back in 2020</u></a>: “a competitive MEV environment has other negative externalities, e.g. it bloats the chain with a high rate of failed transactions” which in turn leads to less decentralization due to higher resource requirements. All the while, the execution layer (rollup) derives security from the base layer, but doesn't provide it with a lot of the value extracted apart from a base (or priority) da fee. This is, of course, dependent on what sequencing is used, its ordering and the separation of builder/proposer.&nbsp;</p><hr><div class="relative header-and-anchor"><h4 id="h-incentivization">Incentivization</h4></div><p>In the ever-evolving landscape of decentralized networks, the lines between economics and ideology blur, and the true cost of progress is obscured by the promise of profit. Yet, as those networks grow and thrive, those who bear the burden of payment must navigate the perilous waters of inflation and incentive. MEV is the lifeblood that flows through these networks, driving the participants forward in their pursuit of economic gain, even as the ideals of decentralization hang in the balance.</p><p>As we laid out in the previous article, someone at the end of the day needs to bear the economic burden of paying those that provide resources to a decentralized network. This is especially true in the beginning years of a network, as it aims to grow and mature. For mature and active chains, like Ethereum, this inflation is able to be lowered considerably. Here MEV plays a huge part in incentivizing the network participants, which makes it worth it, economically, to run certain activities. Obviously there’s also the ideological idea of decentralized networks, but at the end of the day, most of the actors and participants are participating because it makes sense from an economic point of view.</p><p>And while we’ve generally, at least in our past article, made the case for MEV rewards to be used in the incentivization of protocol security (via redistribution to the validators securing the network) – there are also other views on possible solutions. These include both using privacy preserving solutions to minimize MEV as much as possible, such as running parts of the MEV supply chain on SGX (TEE) hardware to store encrypted blocks and validate them permissionlessly without giving away vital information. However, the difficulty of obtaining TEE units (although this is getting a lot easier is an entire different story, which might also lead to centralization towards those with access to hardware. Furthermore, there’s been considerable discussion around the actual safety of TEE (a lot of drama here in the past year). Do you want to trust hardware, or do you want to trust cryptography? Cryptography is likely to have more performance overhead, while (if implemented correctly) higher security.</p><p>Other ideas include things such as time lock encryption, <a target="_blank" rel="" class="dont-break-out" href="https://eprint.iacr.org/2022/898"><u>threshold encryption</u></a> and so on. Although what’s important to note, is that even with current implementations of these solutions, MEV still slips through the cracks – whether that’s benign MEV (which is vital for the running of the on-chain financial systems), or non-benign MEV that’s harming the end-users. You essentially either allow arbitrageurs to give users fair prices at the expense of liquidity providers, or you compensate LPs via inflation, hurting the token holders (the current Osmosis strategy). Now, if that is happening on an application-specific chain, where you are also paying for security via your native token – you’re essentially double inflating your token holders.&nbsp;</p><p>However, on the flip side, to get people to use the product (which will eventually provide the security budget from MEV and fees), you need to first mature the rollup or application to the point where it can support itself without much inflation (such as with Ethereum). That means you’re essentially forced to incentivize usage and liquidity providers, via issuance, as a starting point. You need the inflationary token to push the security budget pre-matureness of utilization of said application(s). A way to limit some of this pain is to utilize a <a target="_blank" rel="" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-1559"><u>EIP1559 </u></a>(fixed-per-block fee that is burned) style token burning mechanism, which will limit the amount of pain taken by issuance of tokens, as the network&nbsp; grows in usage.</p><p>With our thoughts surrounding incentivization out of the way, let’s look at it from another perspective – the reverse way to think of incentivization, is to think in terms of disincentivisation.&nbsp;</p><p>There have been some thoughts and implementation research into how to eventually move to leaderless MEV capture that gets redistributed to the end-users. <a target="_blank" rel="" class="dont-break-out" href="https://duality.xyz/"><u>Duality</u></a> especially has been digging into this, with their announcement of <a target="_blank" rel="" class="dont-break-out" href="https://blog.duality.xyz/introducing-multiplicity/"><u>Multiplicity</u></a>. It is essentially based on the belief that blockchains with leadership mechanics are unfair for end-users, since it allows for much cheaper censorship. So to improve this, they came up with the idea of multiple concurrent block proposers (named MCBP). They essentially want several sequencers/nodes that contribute transactions for each block. What multiplicity provides is essentially a gadget for non-leader nodes (or sequencers) to include additional transactions into a block. The way this works is sorta similar to some ideas of first-come-first-serve, that we covered in part 1 of this series. Which is leaderless. It is based on the idea that for a leader to construct a valid block, it must include at least ⅔ (by stake weight) of the nodes’ transaction bundles.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/96b5f99d5cde4955add363560d0f8dc6.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAaCAIAAABZ+cloAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFJklEQVR4nK1WW2wUVRgedtntzk73NrOzM2fOnp3ZuezM7nR3u7P0sr3QBmrZtlxE2iJC1BAk6oMxVdpgMEGjMcbEB540PPDgg/cLSUlMjIYUCHcNGHlQ0QdsQAgPhoSEoP5mdmuzoNSCJF8m5/7N/3///59DhZvwnZDNtMkkH/CIjB8xfrTAygVA3WkiGiQlp1c3nHhY4TmVC8v3k4DxI4HX1z64ua9vJJvpMHRHJvlokPxfgnk/1Amqg2P9vasZPwp4xHv7/dsJeC7NMqlokDB+xHMqwTbBtqE7hu7cBw0YPzLUcj7XJSKD9omG7ph6uYa2OmWdo9HKJh9iaMzQtS6N6QB2R26NiDmCeqgEPCIXlpNSDsUzttVlWx0Z1cll2riwjAQDCUYsgLlmkhKNklYyia3jLOE0HVtpwcxIlklsk9hpydKxxTJzglGMHyHByGbacpmOeEJ+fuzVPz+C79+5se8T2PspnNrzPuzd9/Vbb4y/3rt5d/dg90oxmo404WYvslN5Ry+rSrFglDU56+R7dCWP2LTIqiKr3mJBNEgItjCyokFczPRs2zDRnls1Oj6xfMXWatfI9qGxsl4cWFNtbV8mECsWV2OsEonIcVbVDMdUcoMDW4eqT4tCOsFrAU/NaQu4SJHt4ZFRNi5X2vorbX1pzRmsbozzRn/Pmp72YcaPRJJN6kVJySX1YoiWTNm5dBFOnAaK8jHev+WsCVPX5vY84DlVVx2eUzGyCLYFXlPlAs+lMcoQbM0vC3mlSFMy5JeEhPnKy4d2Tk5zzYRrJvGwzDKkDq6Z/HuiBTxz0cL4UYiWaN9cqWg0nPEjWyl2mh0mseMeVgwmckohpxQKaikr5y1iZ+V8QS0tVCr+E5jXU4IRXoryLctTpEBRXMAj+pcISymhMTHvnYCp2ceFZV1zdM3JZTt1rayrTqGlm2B73tzFEjA1F7mx4JXqRSkaJEJYCXklMSynpBwfJImQzEZTXFhurFqLImBqudJdWZXPdZl6W/10kVWLTz2Oc+XspnFSaDdHRsiKlVJMy2UrBNt3RxDwiLrqDA5s6O0esq0uQy1zYTnShHG5Ehd10tGDMyWULSsFJynqKZLHKHPXGkSDhOdUgddld78152JKaPai0BKUkDIohFoVxUymok3SPxMtuRiEvK6kXFhu3E9TQsgrsVFZCghaXNIlEmdqUjWKTPvEoE+og/aJt3WDPoH2uIiH3Urubq6laLMXxUVN6ezWuvoqO57sf2nCXLcGi5auOapcwMiqB6tLkJRaEqgYS+RZoSCiIhJb6m1eyGOpxW2IrUStJJOtkphNSi3zRkQiqcrE9idm9k2dn9595atnz37c3T+ysn/tQ+sfe2Bg/bJSv6mXqdee+/zcNMAXN+E0wNHrVw7A7DTA0Rtw7Hc4CCc+BPjyJpwFOAUX98Ph9+Db/fDum7PuDUHj0BJU3Lih9OjG8pbxzme2qb19SWxiZMkkr6uOZba7Fhx4+/q1kwBnAH4G+AHgJPxxAuAngPMA38GVQ+7X7f4IcBxmD8Jvx+DcNEhilvGLkUiK59UEr8VY92HAc2q9lDaWFuqDPZeufwMXDsGFGfjlMPx6BC4fcdsXZmB2Bq4eh9nDtakZuHwMrh6Ba6fhzGfgnrW4S5RqtQYfHnlxtLpjfHhqvDo5Vp0cr04+snrnlnW7Nq99YWx4yh2vYWx4anRoatPqXX0dmxj/Yp8BlJfiKCrUAJoJJJJJI2MUUymTouhbZ+uILb5k/QWRd5KvQgpcywAAAABJRU5ErkJggg==" nextheight="1187" nextwidth="1456" class="image-node embed"><p>That means you won’t be able to construct a valid block that omits transactions that are included in a bundle of&nbsp; &gt;⅓ stake weight. This means a quorum has to be reached between sequencers/nodes with regard to the bundles of transactions coming from various sequencers. The way this works is that each sequencer in the network constructs their own bundle (ala first-come-first-serve) of transactions, which they sign and send to the leader. Afterwards, you go to the concept we just presented, which is that the ⅔ stake weight of signed transactions must be included in a block. What this means is that to censor, you must bribe many more validators, which increases the security budget of the rollup.</p><p>Another way to think of incentives is to look at the way most stake works in Proof-of-Stake Ethereum. Most stake in PoS Ethereum is being delegated to staking pools, who further delegate it to trusted (Lido) or bonded (Rocket Pool, Swell) node operators (infrastructure companies). But these pools could suffer from a risk called <a target="_blank" rel="" class="dont-break-out" href="https://docs.flashbots.net/flashbots-mev-boost/architecture-overview/risks"><u>MEV hiding</u></a>, where node operators are incentivized to hide the real value they make from a block and keep a larger fee for themselves (in the case of private order flow). An open market for block building solves this problem because builders need to maximize their public bids in order to be competitive (such as MEV-boost). As long as validators sell their blockspace to the highest bidder, there is very high confidence they are not engaging in MEV hiding on the side. This is also an issue that could become prevalent in rollups (specifically centralized ones), even when the sequencer sets are decentralized. It is therefore vital that there exists an open and transparent market for the MEV supply chain.</p><hr><div class="relative header-and-anchor"><h3 id="h-off-chain-actors"><strong>Off-chain Actors</strong></h3></div><div class="relative header-and-anchor"><h4 id="h-transaction-originators">Transaction Originators</h4></div><p>Within the MEV supply chain, whether viewing it through a monolithic or modular lens, the input always comes from the transaction originator. The vast majority of order flow originates from retail users, for whom the predominant point of interaction with the chain is their wallet. These wallets are then the <em>de facto</em> aggregators of retail-originated order flow. An important extension of the ‘wallet’ as the typical example of the transaction originator comes by realizing that dApps are also significant order flow originators. While these originators so far haven’t been afraid to squeeze their users to juice up their margins (example being the near 1% ‘service fee’ charged on Metamask’s in-app swap functionality), there’s a much larger opportunity for them to cement themselves into the MEV supply chain.</p><p>Consider the parallel of MEV to <em>Payment For Order Flow</em> (<a target="_blank" rel="" class="dont-break-out" href="https://www.sec.gov/news/studies/ordpay.htm"><u>PFOF</u></a>) that we know from traditional finance. A zero-commission broker like Robinhood aggregates their users’ transactions and sells access to this order flow to market makers, who can then ‘earn the spread’ between these customer orders and the <a target="_blank" rel="" class="dont-break-out" href="https://www.sec.gov/comments/265-29/26529-11.pdf"><u>NBBO</u></a> (a regulation that brokers must execute trades at the best nationally available ask/bid price). Market makers are happy to pay for this order flow because the general estimation of a Robinhood order is that these orders are generally non-toxic, i.e. the retail trader likely doesn’t have any information asymmetry over the market maker and thus there likely is room to make profit.&nbsp; While of course this TradFi analogy only partially applies to the types of MEV seen in blockchains, the link in the chain that clearly can be analogous to ‘our’ MEV is the PFOF opportunity.&nbsp;</p><p>Any entity in the supply chain that can capture significant order flow has the control to sell access to that currently are easily the <em>de facto</em> actors that are able to capture this order flow. A way to monetize wallets and/or return user-originated-MEV-value to users would be for these wallets to sell some preferred private relay access (think: all Metamask swaps being routed to a single market maker and/or block builder that is able to execute transactions with some additional no-frontrunning/sandwiching guarantees). Naturally, this type of (off-chain agreed upon) exclusive order flow access can have a centralizing effect: the preferred recipient of the order flow will generally be able to build more profitable blocks, allowing them to return more value to the originator of the flow and leading to a positive reinforcing feedback loop that’ll serve as an incentive to increase their exclusive flow access.</p><p>With the majority of order flow originating from wallets, we could see the wallets becoming a sort of kingmaker by controlling where a very significant portion of order flow goes and how it is executed. Co-incidentally, wallets are incentivized to an extent to route their order flow to the most dominant block builder in order to maximize the UX of their wallet (fast inclusion and predictably low tx fees). The centralizing effect of exclusive order flow access will get even stronger with the integration of PBS as builders will be more dependent on exclusive PFOF to compete in the block building race, and with the increase in modularity and complexity of decentralized sequencers doubly so.</p><p>Validators running multiple decentralized sequencers will be forced to buy the ‘best’ order flow for all chains/sequencers in order to be the builder of the most profitable blocks. To prevent this centralizing effect on block builders, the alternative could be to auction off individual or batches of transactions to bidders in a more level playing field, a concept which has been dubbed an order flow auction (OFA) but which functionally is the crypto-equivalent of PFOF. The TL;DR of OFAs is that transaction originators can solicit bids from (some set of) bidders for their transactions by disclosing (some amount of) information on it, with the winning bid being chosen based on some criteria.</p><p>While certain specific OFA implementations have been devised for trade execution (see DFlow, CowSwap, Hashflow, etc.), more generalized OFA implementations also warrant attention. Particularly, <a target="_blank" rel="" class="dont-break-out" href="https://collective.flashbots.net/t/mev-share-programmably-private-orderflow-to-share-mev-with-users/1264"><u>MEV-Share</u></a> is an interesting protocol that could fill this need, by providing open access to searchers to users’ order flow through an OFA while returning MEV-able value back to the originator. The downside of the MEV-share implementation for now is the fact that the ‘matchmaker’ role, which is responsible for matching private user transactions with appropriate searcher bundles, initially is likely to be a ‘permissioned’ role run by Flashbots. This is needed to prevent competing matchmakers from engaging in bidding wars (thus again depleting value returned to transaction originators) and to ensure that bundles are only sent to trusted builders that will honour the ‘validity condition’ that accompanies each bundle and which posits that extracted MEV is returned to the user.</p><p>As mentioned previously, in a more modular future wherein an increasing amount of value will be derived from the cross-chain blockspace market, the pressure on block builders and validators to purchase exclusive order flow on ‘all’ chains increases to ensure maximum profitability (in order to capitalize on cross-chain MEV opportunities). At the same time, an abundance of blockspace may shift pricing power for this blockspace away from the blockspace producers to the transaction originators. Regardless, these approaches will decrease the amount of value that accrues to validators (and thus ‘decrease’ the security budget) as the proceeds of these (off-chain) auctions are returned to the transaction originator (or the order flow seller). This once more highlights the friction field that emerges around the value that can be captured on any set of chains; the value from this zero-sum game can increase the chain’s security budget, flow back to transaction originators, but not both.&nbsp;We’ll be covering this more in-depth, in the cross-domain MEV section as well.</p><p>So, where may this all end up going? Firstly, a key risk that ought to be mitigated is the MEV dystopia, i.e. the threat of vertical integration of key parts of the MEV supply chain spurred on by exclusive order flow (see this <a target="_blank" rel="" class="dont-break-out" href="https://www.youtube.com/watch?v=AuMkr5AnUvI"><u>presentation</u></a> for more). Metamask has already set Infura to be the default RPC provider, which is arguably fine for now, but a sliding scale where Infura would suddenly privatize their order flow or start building blocks isn’t out of the question. It is important that these types of parties remain aware of their dominant role and that observant third parties expose and denounce misuse of this position. Secondly, with dApps being significant originators of order flow and thus MEV, we’ll likely see more apps working toward designs that help internalize MEV, whether through app-chain designs, protocol-level choices, or their own exclusive deals. An interesting example of a protocol-level choice is Penumbra’s <a target="_blank" rel="" class="dont-break-out" href="https://protocol.penumbra.zone/main/zswap.html"><u>FBA</u></a> (frequent batch swap), which basically arbitrages their pools internally by executing all swaps within a block in a single batch against a constant function market maker (CFMM) curve (think: Uniswap curve), thus using flow encryption to internalize their MEV. An example of a dApp creating their own exclusive deal has been Sushiwap integrating Manifold Finance for <a target="_blank" rel="" class="dont-break-out" href="https://kb.manifoldfinance.com/docs/general/general-token"><u>private RPC</u></a> access with some additional guarantees in place for users. Finally, a ton of innovation is likely to happen within the OFA design space, with a particularly exciting domain being the effects and implications of the increasingly cross-chain and modular world on OFAs.&nbsp;&nbsp;&nbsp;&nbsp;</p><hr><div class="relative header-and-anchor"><h4 id="h-relayers">Relayer(s)</h4></div><p>Another “actor” that is going to play a large part in the modular world, is that of relayers. Relayers are responsible for the transfers of data between different blockchain systems. They especially become relevant for sovereign rollups, and rollups that don’t share the same base layer (such as a liquidity settlement layer). Although, in the case of rollups that share the same DA layer, you could facilitate cross-chain swaps as long as the rollups respect the other's fork-choice rule, while running a light node on each other (to get state transition information). In this setup, you’re also still reliant on relayers to facilitate the passing of messages, which in most cases will probably be facilitated through a standardized transport layer (such as IBC or Polymer). As such, it is certainly relevant that we describe how relayers function, and how they are being incentivized. There’s also MEV to be extracted here, which we’ll go more in depth with in the cross-domain MEV part. Most of the use-cases of relayers currently (beyond facilitating token bridging and data communication) is for liquidity balancing across chains for both searchers and market makers a like. At least in terms of relayers in the IBC ecosystem. There’s also relayers in place for a lot of other cross-chain messaging protocols in other ecosystems, and relayers are also used often for off-chain order books, for example.&nbsp;</p><p>IBC relayers (such as Hermez) function within IBC to facilitate transfers of assets and data between different blockchain networks that have an open connection/channel with each other. They can profit by exploiting price differences between blockchains and by taking advantage of arbitrage opportunities between different DeFi protocols. Relayers can also extract profit by exploiting front-running opportunities. When sending packets through IBC channels, there are two main types of channels: ordered and unordered. Ordered channels ensure packets are delivered in the order they were sent, while unordered channels deliver packets in any order. Packet sequences enforce channel ordering. If a packet with an earlier sequence needs to be received before the current one, it is rejected until the correct packet is submitted. The IBC module guarantees that a packet will not be received on the destination chain if the timeout has passed.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/cb07bbdbc0b8fb74c322627032a88bce.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAADy0lEQVR4nJ2U32/bVBTHK/FWiaZxYsWW3Nq+Thu7Qbm5+TEvzs/Gzc8mabYmDqGloRnpmqxAk25dM63SEjVrpY0GRtSCQNokKnhE4hGBBI8g7R/gf0A8A0JCrrusi7auRfo+HB/7ns/5cY+HTEbz64VPvK3Ul95tzmWu53IfKPl1grCc/gB7c9w4Qvd1+tXQuQBGMwccHIMoUlAN4Oj7cR3LAUdsdsEXyjjdM75Q5pIUN0+4NAyuY88LMBnNA6n1nTZ78GZ7v7rZLtVuf3h3t1S7ncmXgzNXEvOlcFR5DtCP0jjGajZFCoCGFCmcjSTxCRxTK/CFMtFkIZ1f9gZT0WSBZmwEYSEIC0UKJwBAw0RUEd0RLfrmxs5B72ht9e5AuAFbNzLu9cS1IgjCopU4OAOK5E0GYOU9K+XNZKyoZU2RgpX3DOSrH2X1o6wWWj+qRtlptHfbPSW3ctmb5IBjjJoiCMsYNfUCQHRHfFLCJyUQDIguWXRHRJecTZemeLHfMdOxwlJ0WpRNBqAfpdPR/K33by1kSxTJIxiIpxZ90qx69pn83pSW65BPSuAYqz3gGAtomIwVk7Gi35tCMOCwT4su2WkPIRhof9T85sGjw/aj/TsPmtU7M4EMBxyiO5KMFRcWa25nWDdMqakYgMlotvIeBAM4xg6tlDef/vZ7MV/ttHpbN+8f9I5+/OHXg97R99/9DGiIYECT91I0myy8ZfH88/df1UZTThVSuaV45p3th/uffPbkl5+edlq97sOv5tJLnVavstz4849//d6UCkjGijeub/XvjJX3KLmVxWI1P1/uR0fHKuWulZXyF3ufv1dpxFOLWaWSvrqsFFeLhdWZ6flsuqSODZ8ANAQ07LR6ojuiAkSXDGiodv+ZkM0vumSKFE4L0FC7YwvZUrVQjUqzl2GQwLjhN0inPeRyhpDNrx0UXbLbGUY2Pxi3nWzyQCy1lFM30nQ8GwQDgIba/eGBMx66Ui1Utzd2clcrL43Q36FzbTJFCggG+huAjTAaCcFA0Jc6++zrAbphSm3Rcb0De2cceb78/xNAkcLSwlp/Yi/55sVmXgyAYyyOsaJLDofmKFIw6hmVYQAmA8AxVv0lHBua52IAjkEcgwTeI0xK9Bgk8EmOQQiGhUlJ89vhNMcgqyCpTt7DMegCAKOe8fuyjXq3uXW42/m2cu1eu/319vaX9fWPG/Vuo95dq+01tw7XanuNevde6/GN6n15WnnVMF4J2Kh/2tw6VPLrHINEdxzB8ElNvIcDDqsgOVFkSvAJk5KZdZ0xg/8At05RY7y44xYAAAAASUVORK5CYII=" nextheight="875" nextwidth="1456" class="image-node embed"><p>If you’re interested in digging deeper into IBC and relayers, then I recommend <a target="_blank" rel="" class="dont-break-out" href="https://medium.com/the-interchain-foundation/everything-you-need-to-know-about-ibc-channels-part-1-6f37a3060a"><u>this article</u></a> by <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/adi_r_r"><u>Adi</u></a></p><p>So what can an entity that runs DeFi strategies and a relayer do? They can buy an asset on a protocol where it's underpriced and sell it on the protocol where it's overpriced, thus capturing the difference as profit. IBC relayers can also extract MEV by exploiting front-running opportunities, in the case that they have information about cross-domain swap taking place (for example in a cross-chain application such as Mars/Squid/Catalyst).</p><p>Something that might also be possible is the idea of Denial-of-Service (DoS) attacks on relayer packets, which could cause them to timeout (as described earlier). This could be used to front run a particularly juicy MEV opportunity cross-chain, since if we consider the ordering methods – you would be able to send your packet after a timeout.</p><p>The unordered channels currently would allow for easier incentivization of relayers, since you could have a separate bidding market for inclusion of packets to relayers, as it would no longer be a first-come-first-serve setup. This could, as it’s now more economically viable, lead to a larger and more decentralized relayer set (instead of them being essentially multi-sigs at this point). This would also allow for MEV to be extracted, and possibly be redistributed either to relayers or to the protocols of which they connect. However, a downside of this, is that it could heighten the congestion, and cost of participating in cross-chain transactions.</p><p>If you’re interested in looking at current relayer (w/ IBC) incentivization, you should take a look at the<a target="_blank" rel="" class="dont-break-out" href="https://github.com/cosmos/ibc/tree/main/spec/app/ics-029-fee-payment"><u> ICS-29 specification.</u></a> The folks over at <a target="_blank" rel="" class="dont-break-out" href="https://www.polymerlabs.org/"><u>Polymer</u></a> are also working on a few new specifications for relayer incentivization.</p><p>Another possible extraction opportunity for relayers is to synchronize blockspace between chains (and taking on inventory risk). Essentially acting as an off-chain social contract-enabled liquidity layer.&nbsp;</p><hr><div class="relative header-and-anchor"><h4 id="h-mev-marketplaces">MEV Marketplaces</h4></div><p>As we mentioned in part one of the saga, either the protocol itself has a built-in searcher-builder-validator/proposer (SBP) mechanic (preferably w/ PBS), or a third-party solution will pop up to provide that service. These third-party services also have the ability to potentially allow for off-chain social contracts between sequencers(rollups) that could allow for certain atomic and cross-rollup transactions. Thus, it is important to mention some of the projects that provide said marketplaces, and how they will fit into the modular stack as a whole. There are also some interesting integrations that could happen, through the DA layer for example as well. We’ll discuss this and more in this section as we explore the MEV marketplaces that will most likely play an essential role in how MEV is distributed in the future, as well as now.&nbsp;</p><p>One thing that’s exciting about MEV marketplaces, beyond setting up a proper MEV supply chain either in-protocol or off-chain, is the ability they have to facilitate social contracts between actors. Let’s think of an example of how MEV marketplaces could be used to facilitate various activities across domains in the modular stack.</p><p>You could negotiate social contracts (mayhap eventually on-chain enforceable ones) via MEV marketplaces to put in place multi-loop party auctions. Essentially, two sequencer sets (proposers) negotiate a market between them to enable cross-chain atomic swaps.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/d99b90b3693212261930cb5f3e01842d.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADRElEQVR4nJ1UW2/URhS2REh21/Gsx5exx/asL7P2esNuF3VvSrZbyHWTEEDQRSo8FEWQiLy0aqteXlolJH1BUIQUJCgST/0JfahUxAMvCAkEpEUIcYkQfwKJByPbW5aGkKBK38PMnHPmO+c7Z4YRgCkAE8m2xFvx2ndrGHkgqcdbIYLM20TPY5SFHIEcedsUI+fWdJzr79U2WBkBmBJvZSwXq058Ua067LllkxSJno+dIEdMUqxVxl1/0KUVjHPxeRxoGNk4Kp+rubRimyWZt/9DEILNxBfp2DvSnm0MtWyzaJJi15V3il5tf/lTKNiKSMM62DDTqG6CRNpuH28MtXSc03FuM4Iod4m3sOLWyiM5t8z1amG8EOomAZMF5l9ffhNc+3OudTit7rLtMtYKkcmSgIVEWt69x3drfMp4E7WRIJVQGUYwNNciHs1W+0EG9JB0nyHzNlZcWfXmmlN3v/1xcGAIG8UM+UhRQwF7exSGgZpKHdN3aDkNLXaHzicyfCrTIUAiRSKVBKuenxj/uD08cnx8cv7IngPTlWHq50rVSqcTvCU7JckpsawB+3QJmEikuuY3d89MVY61WvNjkwufjxw8VB31Cr7te1hxVSWLRMr4Xr1UaGqad+HU73fOr5/59eHK6rObi2fvLa4c/W5s+tQnCDqQI0h1B+p7C41RZ1ddtwqxygDoZ+av3jn39Oy5v5cuPLmxdP6fxV+++H5y7ETV9+qF/KDnlhnIkbgcLqmlEhgksQiIqvlhpgkisB0BJcHCZEC3Ckimwr8DHQmL+/qU1E5FEU1Bojt7Qn2EpB1PM+RItwdxu8QIEjAxcqM0yRsHyHYm5210mgwdJGYhS6R33keXYAM6veW7A7cFtvBkto1EIt3aJx6T91m3IRAiDqx4ErBk6GwKHXtbhG9PAJK4P6GCfryDEd4BhOnwofxPAhFYac7I02arOf/Z1Nczowsjg7MTzZPjjRMTzZOjjdnp4YV9Y3Ob/n0fRCBDh2G41Z9vBS+Cl/eC4HEQrAfB0wgPg1dr4cnz6wHRi5AzRNCd3Q8m4O1ED2pP/XB15dHqT7cvn177bTnE5dNrl5buX1y8e2X5wfJXf6Do73tfBa8BIg/mMZrgL8sAAAAASUVORK5CYII=" nextheight="713" nextwidth="1456" class="image-node embed"><p>Here the visibility of what the swap entails is of utmost importance, to avoid mishaps.&nbsp;</p><p>You could also use these MEV marketplace to essentially get cross-chain synchrony guarantees between rollups that share a common security layer (such as a settlement or DA layer). Wherein the marketplace actors would batch transactions into the same block of the underlying layer to facilitate atomic transactions. This requires the block windows of said rollup sequencers to line up, unless you put in a time-lock to batch them at the same time (but this could possibly interfere with timeout settings).</p><p>You also have folks, such as <a target="_blank" rel="" class="dont-break-out" href="https://meka.tech/"><u>Mekatek</u></a> who are working on implementing a <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/meka_t3k/status/1630667019476410377"><u>builder module</u></a> for Cosmos SDK chains which would enable specific chains to express their own preferences regarding MEV, how it should be extracted and distributed. If you’re interested in how this works, I highly recommend you reach out to their team. As well as <a target="_blank" rel="" class="dont-break-out" href="https://skip.money/"><u>Skip</u></a>, who have just recently implemented their <a target="_blank" rel="" class="dont-break-out" href="https://osmosis.zone/blog/osmosis-protorev-by-skip-protocol-on-chain-app-directed-arbitrage"><u>Proto-Rev</u></a> module for Osmosis.</p><p>Teams working on MEV solutions in the modular stack are primarily Mekatek, Bloxroute, Skip and Flashbots - in the democratization and marketplace vertical. However, there are also a myriad of other MEV projects working on parts of the stack, such as Blink, Manifold, and many others across various different ecosystems.</p><hr><div class="relative header-and-anchor"><h3 id="h-modular-mev"><strong>Modular MEV&nbsp;</strong></h3></div><p>Even though MEV in theory doesn’t change when you split up layers (execution is still in theory the same), it allows for optimization in the different layers to minimize the amount of MEV through things like different block building techniques, threshold encryption and so forth – depending on your application or general rollup. This is primarily because of the fact that in every single blockchain a leader is usually selected to propose a block, this means that the extractable value, or priority fees end up with that specific leader. One way to alleviate some of this is via the setup described in the incentivization part. Although, in theory, this is only masking the centralization. The thing about execution layers that are decoupled (which is all rollups, unless you use some <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/based-rollups-superpowers-from-l1-sequencing/15016"><u>“based”-esque</u></a> sequencing and mempool model), is that they all siphon the MEV to them exclusively, while the leakage of MEV (beyond priority fees) is self-contained to the execution layer and very little slips downwards. The base consensus/da layer can’t actively do anything to stop the MEV from being extracted at the execution layer, unless we’re talking about data withholding, but with how the consensus is set up this would result in slashing.&nbsp;</p><p>For a Sovereign rollup, that self settles on the rollup side via validity or fraud proofs client side (while handling consensus, state transitions and fork-choice rules themselves) you would likely see exactly the same leadership setup that you would see in smart contract rollup. As with their counterparts, some of this MEV drips down to the DA layer via fees, but MEV is still self-contained to the searcher-builder-sequencer (validator) supply chain on the rollup itself. This is especially prudent with deterministic consensus algorithms, that are much faster to reach finality on the rollup side. The only way you’d in theory get MEV to drip down to the DA layer beyond da fees, is if you go with a first-come-first-serve type setup – where you rely on the DA/Consensus layer to decide what the canonical rollup chain is, since its validators would decide the ordering. Although, if this is decided by priority fees (such as with Celestia), you essentially just get a MEV-boost type setup where fees are king, unless you’re able to bypass this in terms of geographical latency and private order flow.&nbsp;</p><p>Now, in the case where an execution rollup utilizes a settlement layer (such as <a target="_blank" rel="" class="dont-break-out" href="https://astria.org/"><u>Astria</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://dymension.xyz/"><u>dYmension</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://www.eclipse.builders/"><u>Eclipse</u></a>) where you rely on the settlement layer to post txs data to the DA layer (and settle state transitions and dispute resolution).&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/07a4f6644bbaa10472f4491f3998fde1.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAXCAIAAADlZ9q2AAAACXBIWXMAAAsTAAALEwEAmpwYAAAErklEQVR4nK2VbUxTVxjHqw7wjRd7el/ay+G29/b2tre1TkZpoUVoAUtltbO+DJUFnV8chEVZYAyCLwvqEreELX7apmPAnMO5ZUKclVVRQTuZCMSQTP2wMTfdkn1YRtAs2Z7lCqlQYMNlye+enJfnnP8593mecxQcNn9WXt1bved63eu1a7csTUpTk8LSpLRdRRsvv7InvPu1T3dWcalmpNRRiEcqvmVH5c2GxpsNjUe3lyMVz9CihpLBGokmBbXaQJOChhJJxI+jsBsdcC4E4TBEen869FZcYhqmDAsW45HGw9D3NXSFoKvLZXYmJ7MU4ilahE/a4eIF6OmGluMEwVvM2Xm5/sxnClxO3wpLjsWU7XEHLKZsAnETAmm0eGh9WfvLtZ/vqit1+pKSWVrFJyWzpU7fqZequuoPNG3eodVIBOIoxBMEX5kfbN9V91FFdbkngFR8dKFohSaF6PZlAfmbT2PBphMdcQkankvHjMTQIkGLSrX0tN2riNcQxIQ1hXhFvEYvuRBjXpCgmbzQbMgCalKgEK/FFi02u7KKPO518pHtRU6716DPoKZuCqtNWo1ELtOpp+70nwQmZjKSjrXabQXOLJ8ry5ex0sNz6TrWGjNBx1on+3BOAjQp0KRBQ4mCPiMvd63DXpRp8zrsRR53IA2bSUJPkwaaNJCEniT0OtZKIf2TCSQvUi+JQ4vmk3m5fqw2JsVTKFG9eD6BGaPDVpCgUC2JQ48MqFWuYsyIC+cRTyBAKHU5eS9u2Hq4oGinO7/EXVjq37B33aYD/mCdp3Czr3jb6jUVwZJD60sOugvLCrxbCrzb8r2Vsy1HE7GHU2go8UQIrt6CI62/VNa+X//GmS+vQfcQfNEDNftPltccPXZKbl4YgjffvV1e817jO5HOXhDFXGViKoE4AnEoRRutoBRtrECqxnLyKwj1QegaRL6VGfoRBr6Hb+7AwAgM34PILbk58AMM3JXNOq9ARy+YJI9JtLlzA84sn8Pmddi8RtG+YnmOw+aNCQHZBwffHmk5De0h6OiB8HWIDMPZK9B9Ay4PyuXxTmjrlMsTZ6D1NLR1QNMHY1o2HTNGQZ/Bs1Y9v5LTrcCMJOgzDIJtupM5EnGYMWPGiBkJq02YkdKwfLEUrykR+HT5nmEkzEipjDyEGTNNyHk7IzP8omiix6BSarXs8hmH5h5CUxJtGhyLLTEXy39gVgECcTrW+j8IUGgiUachjF/x9Myjj3J7jomW8BQxnYVxlEl0EEpd/DzVjAYpicycBAQuc7O/vvS5PY8JNLwQ3Fu8ent1VWPJxorn/a+WBhomszVQXxbcv8q+SaXU/rtA4+4OuA2jAzA2iQeD0Nf118XQyNlT3/0+AA8Hp4yO9sOfw3ArBCy2xmhMDzNFU/3lsX642w33L8HPPY+5fwnuXYrtjPJrBG6fAwPvoAk9ZmRXTbzMjDQee1EUR/ZF4A781gdj/bE8HIQHN2boH+2HP4ZkeZMh257hcdp9opDpsHnlZyrLl5vzbLo1b7nkKswPGkW7YmNxde/H0HUMzjdPcOFDmXAznG+FcCt0t8USboarJ+DIvqsk4ohlU97k8V80Htzj5d/JcGFkEA2HVQAAAABJRU5ErkJggg==" nextheight="1062" nextwidth="1456" class="image-node embed"><p>The setup depends entirely on the sequencing/block production rules and to whom you outsource this to (if at all). If you have a leadership election setup on the execution rollup, the MEV gets extracted there. If you have a first-come-first-serve, you’re dependent on the ordering of the transactions on the underlying layer.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7aff7c58c7db8a70b98887f1d2355142.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEdklEQVR4nK1V0W/bRBzOOsc5X3yO4zg+n31xPKf2MidO6jhJXaduaNat2dq1sK5CnTahog3RaZ3ENPaAxAM8IAEaiAeEELygSQMhJHgBaX8C4okXXiZ45IF/AYmg2GWIbYgi7ZMf7Pv97r7T933ny6BDgM/zMlZM14EQAgAghOjQyPxnhyAIDMPUnBNnN7adBKZpPjUCQRAghBjj+WgQDuIoiiilkiQ9NQKEEMuymqa1223Pa7quizFOJRIEASEhz/MCQqIo5nk+HRTFglgoCGn5cYKHBUEQ0/6lOG41vXRpRVFkWbYsqyiKEACEkFIqBbbtmmbbqrlWrW5Wg3q9Y9sNy2pYVq2i/4OAgzALQA4ADvJZJpPJZDrtZtDvd6J+vdX0PK/f6zj27PF6HZsmKpebplkURR5CXuBPhfMWUXCpMMMcQSg/3Wiy178JOAhrtNKxbd8+rhXzL93++v6Pk2uvfaNy2Tcu7m1HoywASytniprRrFQm9+5OvvoydJyZbFaWS0uD0yuj86vxufHS+kJ3heoGB7lHPZiaKcumphtEKxeF7mBr58UPaeOZV1cvTO7/9uvrH7fHO28/mNz49vf6rHN7eXhreVTVdZUQWZb7vfloPh5Ew3bLDzo9SivwcQKEUJ7nOQg5yOV5/ujMVCJmJjMdFPI5yEmyUnHaWu1EDoBpDSEFY1EUU89NsxrHA8Oo6FQ/VIoEQSyIxcTq5BNN8yojxlIgIeSYaaqKAhKfk0wgSmkYhhohVNchACzLHjamKF0g0bAkScfM6tra2ng8Ho1GGGOEEMMys7YTj1bOntuMRysnGk3DNC3L+h8EMBGBJJAkqdvvh2HYT4AxlguC5zY2zq6Nl0fbG88OFwZzruvYdjrrXwgE4eBJoCgKpVRRlEfcSt+JUlbL5RLP+43GMU0jpZKOcSHpSQkODlbSfPAOIZdjWXCUkZLVS5KUnWGYIzPTQZDLsSx7ZAYwDAA5mCCJBpy17UYNq0VwlGW5tABhZlqa9qU9XOJP1rJme8NhuHnm0v5eL4zaQW9xvBqNV4PBwPe7veFwcGG9v3pyzg/64YJj271eL4qiIAg6/lwQBLZtY4xTPTM6tQzTUYmBsUaIQQ1bo9V4YfniJ3fe/OP7Gw++u37t1v6dd96a/PT+5Ofn7r63Fq9f+uyDO5Nfrvzw+fbzu+2gByHn+77jOL7ve17L9/1Go9FOYBhGRtPNijGrEqqqlGimTi1V1aJ4eeuFK+f3r2/t7W2ev7hxeffSp+9e/eKjzZv759a3Ny7v7rxy88LVl7d2dhtei53q9mQ8SSLIAZCTZVkjOlFUohKi6aqqapJSVQgllBpVVVUreoUmx1gQEAA5hPJ/TU8dOfjdCoKQpuggLQ/dTm8uDnK56WS0GMcnT58Kut2gGxBCGJZBAtJpTZZxWVE1apUVVac1ohkYE53WMNYk6SByh7rRPM8Lul3XdT3PM00TAFAQxXYw9OYW3Wbo90ZuM2zNxS0/brQWOr3T3tzi8ca8ppsQwj8BwKbgebDvSVcAAAAASUVORK5CYII=" nextheight="922" nextwidth="1456" class="image-node embed"><p>First-come-first-serve (FCFS) decentralized sequencer network</p><p>However, you could also utilize the settlement layer for leader election (ala the <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/based-rollups-superpowers-from-l1-sequencing/15016"><u>Based</u></a> setup, where you outsource sequencing to the “L1”), or depend on it for ordering if you utilize first-come-first-serve, while the settlement layer uses a leadership election setup. At the end of the day, it very much depends on the actual implementations of the rollup in question. Some of these predictions change if you utilize a shared sequencing setup, where the MEV of the execution layers are redistributed to the entire sequencing network. If that is the case, you might see the more popular execution layers push for a weighted redistribution, depending on how much “value” they provide in fees and MEV. Since if you don’t, they might view sharing their MEV as a negative, once they’ve reached maturity beyond the bootstrapping phase.</p><p>The total MEV of these shared layers are in general (beyond fees) the total amount of inefficiencies in the system caused by non-coordination between actors in the supply chain (liquidations, arbitrage, front-running, sandwiching). This, as we’ve seen on Ethereum rollups already, is a lot. In a modular world, our thesis is that the total MEV will grow even further due to more opportunities presented by a breaking down siloed monolithic environments into a diverse set of modular ones. We imagine a world where either MEV is likely going to be extracted entirely on the execution side (apart from fees), but also see great value in shared-layers coordinating to bring value to all the layers in a modular system (such as SUAVE-like implementations, or a restaking-esque solution, like the one presented by <a target="_blank" rel="" class="dont-break-out" href="https://hackmd.io/@EspressoSystems/EspressoSequencer"><u>Espresso</u></a>). These are primarily implementation details, but you could certainly imagine a world where you would pay “homage” to the layers you derive security from, beyond the baseline fees you pay for their services – depending on the matureness of your execution environment.&nbsp;</p><p>The main reason for why this separation of MEV to the execution layers is good, is that the cost of MEV extraction is siloed to execution environments, which also means that supply chain disruption is able to be contained much easier. This also means that the cost of MEV won’t affect the base layers with regard to congestion, and allows for much more specialized layers that are optimized for specific purposes (same reason for why we want PBS). Although, if the MEV “problem” becomes so great on a specific execution rollup, it might lead to even more layers getting added to solve the congestion and disruption issues that it brings. It’s really an equilibrium that is extremely hard to find. Especially since if you just split up layers continuously, the vast majority of financial activity is still going to happen on the execution layer’s side (since it’s the leader and decides on ordering+finality), which is where the MEV lies (whether that's benign or not). This is why we’re most likely going to see PBS and SBV/MEV supply chains either being built into the protocols themselves from the get-go, or move off-chain (such as with MEV-boost). This is to solve the PGA auction issues that come with a non-seperation.</p><p>Less so modular, but rather app-specific, is the fact that various MEV minimization techniques work better when they’re contained and tailored to a specific application – such as with Shutter network (shielded mempool), or threshold encryption with Osmosis. This runs back to our application-specific thesis, in which our argument is that app-chains allow for better optimizations, both in resource pricing and tech choices, but also MEV minimization techniques – although at the cost of composability. However, things like Polymer (and IBC), alongside ICQs and IAs are set to change this.</p><p>Although we argue that the security budget is important for decentralized networks, it all ties back to where do you want the pain to land. If you value security budget, and you're willing to sacrifice end-user execution for MEV to be extractable to increase security, you would aim to find an equilibrium. If you, on the other hand, value MEV minimization more and are willing to have the pain of issuance land on token holders, a MEV minimization technique makes more sense.</p><p>What a shared security layer provides, is also the ability to lower the amount of issuance, since you're able to inherit security partly. This is also why we believe most modular chains will eventually revert to a few select, and highly optimized and secure DA/Consensus layers. It is at least a good starting point, for any new chains. And you could argue that the cost of leaving this shared layer is higher than what you stand to gain. This is in the same vein as why a shared sequencer network might make sense for execution rollups.</p><p>For an application-specific rollup with a controllable segregated execution environment, there are also some unique methods for providing better transaction execution. We have of course already covered some of these, such as threshold encryption, time lock puzzles, but another way is to change sequencing rules. What you could do is to require that the sequencer(s) (the builder and proposer) are constrained to a sequencing rule (a uniqueness to rollups, building on top of existing layers) that requires them to only execute swaps in the same direction if the price is better than what was available at the top of the block, or if there are no swaps in the opposite direction following their trade. This means that if someone wants to make a trade in a certain direction, they must ensure that the price is better than the price at the top of the block or that their trade won't be used to move the price for someone else. By following this rule, users can be assured that they are receiving a fair price and that their trades are not being used to benefit others.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/c108b11242d59e3a89f58604ae6bc7a3.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAACQklEQVR4nGP4TwNw+tzxfYd2gZl/Gahr9O8/v////985oTEg3O3///9fv36lsgUQ8PTZwyPH9kPYDFR3flZR4rad68ECf0m24DfYCDj4+vUrpRZ8/fr5////37+hGIQfPH/xDNlikAXfvn2Dk3/+/v3z9y/cfkVN4avXL7ZXVT158OD586e1raXXLl66efUqRPOmbWt+//l9dN++x/fvQ0SyihKaO6uR/YrPB7///Hb3s77/+O6klraP7z8cObbf0Ea1vrDo6L59EAXCMgznr5ztrq3bvWULRGTC1I4JUztQLHjw6ElObsXCRSuLyxqOHz+ze8/B/gkzzp27BNfw8dPHxMDg3Vu2fPz0cd221QwMDNE+Pn/+/v30+XNCWvjrd2/aKmt2gi3Ys29neU3e69ev37x5C0GfPn9mOHfuEgMDg7SCgZCEGgMDr7yKkZCEhpq2VW19Z0lZo7u3/5TZixkYGGxMbSZOmadnYlhd1SzJKxoblTxp6nxNPZ3eSTOtDc3TkjO3bNnj6ObCwMAwcdLc4rKGkrLGkrLGqtp2lCACRw4o6L9+/Qqx/+vXr9++fXv39u2P79//////4MG9////z50y6dK5c////588vevHrx+TWtoggfbx04cbt6+hhTM0kiEAIoTM/g+2Dxn8+P491tf38O69XZNaJk7r+v//f3Jg0LxJkzFTLeFIxhrtID0MDLs3bZq1aMqGTash3HAPD4jdlFoAAZfOnvn4/v3zF88+f/7w////3Vu2wBMupgUABfeXWR0CdXMAAAAASUVORK5CYII=" nextheight="281" nextwidth="646" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://collective.flashbots.net/u/quintus/summary"><u>Quintus</u></a> on Flashbots Forums</p><p>While this sequencing rule ensures that users receive a fair price, it's important to note that there are still less favourable orderings that users can pay for. Additionally, being in the long tail of same-direction swaps at the end isn't desirable either. However, this rule still leaves room for multi-block twap MEV strategies that are more sophisticated. When it comes to more complicated orders like arbitrages touching multiple pools, the sequencing rule may not be sufficient to guarantee a fair price. If you’re interested in reading more about this particular setup, there’s a <a target="_blank" rel="" class="dont-break-out" href="https://collective.flashbots.net/t/economically-efficient-transaction-ordering-and-user-preferences/1050"><u>great post on the Flashbots’ forum</u></a> that goes more in-depth.</p><hr><div class="relative header-and-anchor"><h4 id="h-cross-domain-mev">Cross-domain MEV&nbsp;</h4></div><p>The best way to describe cross-domain/chain MEV is that if transactions on one chain start effects on another chain, which is then capturable on that other chain. This MEV is then capturable on chain B, even though the activity or transaction originated from chain A.</p><p>For transactions on separate chains, there’s obviously MEV associated with them on the individual chains they inhabit. Now, couple that with a bridge swap taking place on a cross-chain AMM/DEX, and the MEV problem suddenly becomes a cross-domain issue. If someone, for example, sees a swap/transactions happening on Chain A, which indicates that they will likely handle a transaction to a certain pool on Chain B. A searcher, with liquidity on Chain B now has as much time as the latency is for the bridging to take place to essentially front run or similar.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/881f50907acc331fc653934deaca6f5e.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAERUlEQVR4nJVUb2gbZRg/P5QRZemfxPTKcW2vqb07vN25NOVCc11jaoNZu/yjF3cmS0hMQlrvOpMmNZfSBMvS659ZamhYoSXr6mB0EgU/yKBSNpjMMSh1OB0MYfhFP4gf/OAnQdleFyurjYUfLw/Pc/f83ud5fs8LGQ1WMS7nsoseZ8jtCIhxOZNSctnFoF9Kjs8IfCwWnpRGp4N+adjuy2c/FOOynJ7zjkSCfmnQ6gmfe493RdZWt8S4bBvgg34pJy9Ew0mlUBLjsk6jhwatnoSUUwqlaDgZDScFPsa7IgkpL41O57KL3pGINDqdHJ8pr1cEPpYcn5mcmFUKJd4ViYaTIOp2BACxxxk6L+Xk9JwYl/O5JYGPqVUIlEkplevbmZSyfeOuzzsmp+eG7b611a1cdlEplD795EulUBL4WNAvKYXSXOGSwMfEuJyQ8sXlyyvFzUxK+fqr7zbKlcr1baVQWvloY/vG3eLylTu3H9za2cuklCcEu/ceyem5X3/54+bOrlIo3dzZ3b33w7WrX9CUGUNpEmdJnO16xYjAxH6P0WBlKI6hOGBgKM1QHAgxFGc22c0mu9FghdpRCkNpDKXVKgSBiabjbQzFEV09GErrNHptIwbOqgHOOqj52AtwHdQMQlV/0/G2p3ZH1Q+BAImz5fWKGJej4SSJs/UvojqN/kBoGzGG4sS4PGQXMinFaLCC7P+FJwQ6jR5Dad4VcTsCtgGeoTgEJhCYeP5rBO7SafSvnehfWlwX4/LkxGwva6tNgMCEbYBHYILEWQylLX1ODKUhqKnaHO0zqFWITtNh6XNqGzHQQ0ufk8TZQzj+rkDgYyvFTZ93zDsSIXH26sefT07MEl09RoOlChJn3Y7ArZ29UDBRXq/4hDGfMDZo9dCUuQYBAhNuRyAaTrodAZ93bMguJKS82xEAemCegcRZs8l+XpxmKM7rfsfjDAl8bNDqYSiudgVmk52huF7WRuJsNJT4/bc/IeglIAntPkBQE0Nx9/ceYyjdy9qMBgvoZ+0hgyvUQc1qFaJWIeCyoDjdvyUE9vnpMP75sTYBEFLQL1n6nG5HYNDq6WVtZpMdKL2ay9LnNBosENRweNKDKyC6eh5+/9O33/y4Ua48evhzQsrrNPri8mUSZ6vyt/a7NOo2tIWEtZ0ARyAgcdY7EvGORHLZxWG7z/7mWQhquHP7Ae+K6DR6MS7f33sMQccaG9rV6taG+raG+raXdZ1HaFFV9aAtahXSjlLA0DZihpP9p3pPnz39tnAm4HcEvUO+t4bPcd1vGF41H4EALPD+NV4pbl4pf7a2uhUKJrrpU/OpC2sfrBSnFuZTF+bThWsX19+PptXq1v9L8NzDQAD5MhTXffJ1k9FanFpIBhPCmcCl/NJy9mJOnJ5NzuTenTrwXalNoNPo21EKvMBg1AhMwNpOBCbQFrKj9QTaQqItpL6VOaSCvwCyMKOXKKkvJQAAAABJRU5ErkJggg==" nextheight="866" nextwidth="1456" class="image-node embed"><p>This extraction technique requires the searcher to have liquidity on several chains, which could lower possible attacks, since their liquidity is fragmented as well</p><p>There are various ways to hide some of this public data, which we’ll get into in a bit. However, essentially, you’re still being “MEV’ed” in the same ways as you were previously – depending on the setup of the particular chains in question. This is especially true in synchronous setups, while asynchronous setups (such as <a target="_blank" rel="" class="dont-break-out" href="https://catalabs.org/"><u>Catalyst</u></a> for example), might yield better protection against hostile actors (that could inhabit a TTP state chain). State synchronous setups in general also provide pretty bad pricing for pools, however state proofs (of which several companies are working on) are definitely set to help alleviate some of this (but at the cost of some overhead or even centralization). As soon as you’re handling transactions on numerous different chains at the same time, MEV opportunities arise in a cross-domain fashion. Pricing here is especially important, and projects like <a target="_blank" rel="" class="dont-break-out" href="https://www.lagrange.dev/"><u>Lagrange</u></a>, <a target="_blank" rel="" class="dont-break-out" href="https://www.axiom.xyz/"><u>Axiom</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://www.herodotus.dev/"><u>Herodotus</u></a> are probably going to be able to provide much clearer (and trust-minimized) pricing for cross-domain on-chain activities. However, what should still be taken into account is the manipulation of price feeds, for more information on how protection could possible look here, I highly recommend looking at <a target="_blank" rel="" class="dont-break-out" href="https://github.com/gyrostable/technical-papers/blob/main/Consolidated%20Price%20Feed%20and%20Circuit%20Breakers/Design%20of%20the%20Consolidated%20Price%20Feed%20and%20Circuit%20Breaker%20System.pdf"><u>Consolidated Price Feeds</u></a>.</p><p>Another key factor of cross-chain applications that also affects cross-domain MEV is the fact that on applications that have “multichain” pools, as in – I can deposit funds on chain X, while borrowing on chain Y. You essentially introduce differences in pool sizes across the various pools and chains. This makes life quite a bit harder, especially if liquidity of a certain asset is much lower on a specific chain, but still supposed to hold the same price points across the different chains. You need extremely strong consolidated price feeds models, or state proofs showing prices from the chain with the strongest liquidity – to avoid problems that come with price exploitation on lower liquidity chains. This also means you, in most cases, on cross-chain lending protocols will have to decrease the Loan-to-Value (LTV) of the cross-chain pools, unless you’re absolutely certain that you’re getting trust-minimized and proper price feeds from the strongest liquidity chain. This does introduce some extra risk parameters, especially on more complex protocols. In situations where you have an asynchronous cross-chain AMM with the same amount of liquidity in each pool, this becomes less of an issue as long as your liquidity pools are deep enough (and provide proper slippage information). However, you’re still going to be running into cross-domain MEV extraction opportunities on different chains. This, as said, can be lowered by hiding vital information (such as with time lock puzzles, encryption and so on) – however, there’s always going to be some information leaking which could affect your protocol.&nbsp;</p><p>What this does mean is that (at least in the cross-chain AMM example) is that you get fragmented liquidity instances (although connected), which is a lot less capital efficient. Especially as the amount of chains support grows, since you’re now required to spread out X amount of liquidity to Y amount of chains. Essentially, arbitrage between the pools is what’s going to synchronize them, but the capital efficiency still remains quite low. The issue is easier to handle, if you do just stablecoin pools (such as with Stargate), but if you hardcode assets to $1 and a certain stable loses its peg, then you’re in for a world of trouble (and a lot of MEV). Replicated instances of liquidity becomes much easier to maintain and handle if your entire ecosystem of chains connected are standardized, such as with IBC and its interchain standard (ICS-20). Which can mean moving funds much easier, and not relying on “wrapped” assets that are incompatible with non-wrapped assets. This can be made more efficient by having off-chain agreements for atomic transactions (but adds extra trust assumptions), or via a shared DA layer.&nbsp;</p><p>Now, as we’ve mentioned earlier in the section, the ability to avoid or minimize some of this cross-domain MEV extraction is interesting. However, most current solution to this, are going to add latency to the system – is this a trade-off the end-user is willing to make? Unless you’re extremely aware of the negative externalities that MEV can bring, then most users are probably not going to care. However, in the edge cases of power users that are moving large amounts of funds, this definitely becomes more fascinating. You could utilize ZK-Timelock puzzles, and encryption.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/8438c0c2a4b19a57994967f10bd403b1.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAXCAIAAADlZ9q2AAAACXBIWXMAAAsTAAALEwEAmpwYAAAETklEQVR4nLVU/08aZxgn2Q9bXAuVHiLrycF5lgMmx1FOOOBOUL7sEHoiwnrV4nBBRyhZRowha5SwBbLMaI2hSzqm1bqspia1dZaErHPL1sXFtNuvS5Nl/8F+WrIft7B3ZQa1JU2WPLk8ed/nns/zeZ7n84rkECaHMJlULUSS66t3M+9+cHujuji/sr317Selz7NTxUK+tL62nbuykIhnCvnSvTu72anicnnz/s7DycT02o2ttRtb1cpeIp4BwcvlzUK+lEnnlsubqcmsCADIIQxWaPU4rcdpv0/w+wS3K9zn5B02jrEHGHvAYeN6HQHOGwW3fDDm9wl9Tp4PxkaFJB+MkQQLgt2usN8nMPYAH4xFwuP/AQAeKEJgKiOKELBC24matBprJ2pCEYLoZkxGV5fapMMtMqla0gJLWuC6A/wGk7TAp17tEDVkd7vCJqOLOtcXeOOi3eIzaGiKdJm7WXuPlyJdepwmCZYkWPlp9AB1/GCVBw1W4I0AvQ7eyV6gzO6vvvw+xo18+uFSPj371tB4aWYhn55xOQZm37+KIgQkRuQQ1gHrjktdt0YAkmAHg2OxkcuDwbFi4RqqNLS1dbW1dUFttQBc07P74BGmMsqkakiMtJ7ogMSITKJufQU+9fIZ6UnlswDkEIYihIXy/Pbr73/+8ddyefPx/hOSYL/b/VmlNPmdnsRQiHfVvmYjg6iMDuf5QWHC6YnQ7ECvO3Q+Mu70RJpiMCokYyOX/T5BiCQtlMdh4/Q4rcMtNOXW4zTnjVJm9/BYiuMv9XPRwejb5h5PPxfl+Eu+gZH2ds3zGSTimWplr3x9o3x9I3dloVrZW1+9K7z5TmXnh90Hj/Z//IVlgzKpWnpSCYkR3VmrHMJaT3QAe06L5BCmx2kL5bFQHqAJzhu1UB7SwJAEC1ZIj9MyiRroxkJ5YIUW/HjcwBsBQK/qfp+TP2r5aklJgkURoqktqkvjsOgYe6DhXA5hLS8pkDOvkwR7+OoIAFihZewBIJ86XwAADmVPs+hxGkUIFCHCoXg4FG8m+78ApaWb2aliIp5pAGDsAXACvovzK/Nz5cX5lexUkbEHJC1wUwAOG4cihF5rIwkWdBy0q13W6bBxkBiBxIhIdFp31gqGDObfZPk1AD4YK+RL0eEJtyvMB2OgXXqcdtgGwqG4VmPVaqzZqWImnUtNZqPDE31OnvNGUYSQilVNAfh9QiadGxWSFy8kI0NxQ7djwDM8l/14cfbqe4npuexHQW8knZpJTWZTk9mJ8WkhkqwBKA3NMgA7XuNu7reY+wF3HD2HqQiFrMuIW5Wv6UQiKYgBwYw90GT2GsCRTMEDBxz50yEfKZSmdPC/mujZ17J/iq2XXNfjYVW+CEB7uwa8SKSBgRVa8BSSBKvDLUB0dUeP0y/IIJPOffP1T7c3quFQvJAvVSt793celpZurq9t3/qisji/svrZncf7T9bXto8Tx99iWbB0urQZrAAAAABJRU5ErkJggg==" nextheight="1059" nextwidth="1456" class="image-node embed"><p>This allows you to send the finalized transaction commitments to pools, and any watcher would be able to challenge operators (the trusted third party) that did not execute the committed to finalized order of transactions, wherein they would lose their bond. The operators could also be run on an SGX machine, for example. However, this would add significant overhead, and possible latency.</p><p>Another area of research that is quite interesting, and something that we looked at slightly in the transaction originators section, is that of order flow auction systems. However, let’s try to look at this from the lens of a cross-domain position.&nbsp;</p><p>Something that’s potentially appealing to explore is the idea of integrating MEV marketplaces, to facilitate private order flow auctions via specific transport layers. This would allow certain actors to take on inventory risks (via a fee), and provide certain privacy guarantees and fast, to atomic transactions (which are much easier to do with 1-1 assets, than swaps that depend on variable pricing). You could essentially have the transport layers integrate with block builders on connected chains, and as such optimize MEV (and it’s redistribution).&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/97ddbea49387a01794947c60a510e07e.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKCAIAAABaL8vzAAAACXBIWXMAAAsTAAALEwEAmpwYAAABu0lEQVR4nGPg45AmiCTEVJXlDSBIX89WQkwVgojRy0CM0RKoZsEtkBBTVZLTVZLTxWMZPgswjebD7Q4lOV2iLOBgkuBgksDqcD5CSE3VhINJAp8FEKPtbHyQjeYA64FYzMEkwcDAA2HApZD9Eegfj90CDiYJE0PHCb3zPN3CEmJz4cZJwLwCke1qm93cMCk7sxISJhApuGITQ8drF5+ZGDpCogdiPQM8PTjZ+S1fsn35ku3NDZOS4otUlYzsbHxMDB0h0aimahISmBgWnBYWnBYcEA8RVJLTtbPxgSiDOKKrbfbubScn9M4LC06DmMwwoXfewrnrvdwjGur6ba29MjMqmxsmVZS1S4ipxkRnz5qxChLbqirGUlLqyOlHWd6Aj0N67aq9JoaOxgb2leVdgf7xpcWtIYGJbc3TjHTtITaBgoiBQYSPQ5qfVxaS0jmYJI4fvvb08ZdrF5/ZWHkpyxsYG9ibGDpCZCEMONfLPeLR3Q+Xzj2e0DsPHqTI6YVBVEhJVEiJi0WSi0USIsTFIrly2fZjh67kZtaICimJiShDSKxIQkx159bjxw9fCw1KZmDghxvFxSIJMRkAqe+fCBrv5ZIAAAAASUVORK5CYII=" nextheight="434" nextwidth="1456" class="image-node embed"><p>This should, we hope, be done in a way that’s permissionless, and have similarities to the same ideals that Flashbots and others hold themselves to when it comes to building off-chain MEV marketplaces. The idea of an order flow system is to provide much faster execution (and eventual finality) for cross-domain transactions. This should also tie into incentivization of pivotal actors (such as relayers). Currently, most relayers aren’t running them for economical profit, since they operate at a loss for the most part (and many of them funded by grants and public goods from the chain or application’s governance).&nbsp;</p><p>This also opens up another cross-domain MEV avenue, which is the access to exclusive blockspace markets via direct access (through integrations) to the block builders (in a modular world, the sequencers). This allows for searchers, that want to maximize their MEV profits, to integrate into cross-domain MEV marketplaces, that still allows the MEV to primarily land in the hands of the validators of the networks (and as a result the token holders).</p><p>However, the negative externalities of this, is similar to the problem that we already see in singular staking networks. Which is the centralization of stake. For example, sequencers (essentially the rollups validators) that run sequencers on several other chains are able to commit to extremely valuable cross-domain MEV activities if they’re the leader of two simultaneous proposed blocks. What can help limit some of the externalities of this, is shared sequencing setups for rollups - such as the shared sequencer network that <a target="_blank" rel="" class="dont-break-out" href="https://astria.org/"><u>Astria</u></a> is working on, as well as projects like <a target="_blank" rel="" class="dont-break-out" href="https://writings.flashbots.net/the-future-of-mev-is-suave/"><u>Suave</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://www.espressosys.com/"><u>Espresso</u></a>. We will cover shared sequencing more in-depth in a later article. One thing that’s also relevant, and I hope we see more research in this area, is the information asymmetry that comes with introducing so many actors into the system, all of which have different latency of information leakage, depending on where they sit in the system flow.&nbsp;</p><p>As we move into a modular future, where blockspace becomes more and more abundant, there’s now less “worry” about being able to be included in a block – and instead much of the MEV (such as cross-domain order flow) could actually be extracted via transaction originators (as presented earlier) alongside integrations with the block builders (and proposers) themselves. Something that’s also an apparent “issue” is that of rollup sequencer networks outbidding/spamming blockspace on the underlying DA layer, to extract valuable MEV opportunities in the stack (we’ll cover this in more nuance in the next section). This obviously becomes increasingly expensive as blockspace grows on the underlying layer (such as with DAS), and might only be possible in short stints (if at all).&nbsp;</p><p>One thing we also mentioned earlier is that there’s way more opportunities for well capitalized MEV extractors in a modular world, since liquidity is a now way more fragmented (and bridging often not atomic, unless specific criteria are met on the <em>shared</em> DA layer, or via social contracts). This could see large (in terms of capital) actors become increasingly wealthy, and drive centralization. If you want a more technical deep-dive on various aspects of cross-domain MEV, I will also recommend the <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/pdf/2112.01472.pdf"><u>cross-domain MEV paper</u></a> by members of Flashbots, the EF, Gauntlet and Socket.</p><p>Just like with Ethereum’s <a target="_blank" rel="" class="dont-break-out" href="https://notes.ethereum.org/@fradamt/H1ZqdtrBF"><u>crLists</u></a>, we hope that cross-domain sequencing and blockspace markets also take a similar approach to censorship resistance – and therefore also integrate models like crLists (force builders to include a transaction inside a block). This is also what gives the ability for block builders to provide a soft-guarantee, that a users' transaction will eventually be finalized. Where this could possibly become an issue is for block builders that are geographically located in jurisdictions that don’t want certain actors to commit transactions (such as with <a target="_blank" rel="" class="dont-break-out" href="https://www.mevwatch.info/"><u>OFAC</u></a>), which could lead them to block certain transactions (and not adhere to crLists).&nbsp;</p><p>Another quintessential aspect of cross-domain MEV, is that of benign arbitrage MEV that takes advantage of differences in prices across various DEX on different chains that carry the same assets. We won't go into too much detail on this, this is a well established topic. If you’re interested in seeing cross-domain MEV happening in real-time, I highly recommend you check out the <a target="_blank" rel="" class="dont-break-out" href="https://www.odos.xyz/arbitrage"><u>Odos’ tracker</u></a>.</p><p>There are also some interesting implementation of cross-domain consensus that is in the works by the team over at Anoma. If you want to read more about their specific solution, you can check out their Paxos Consensus paper <a target="_blank" rel="" class="dont-break-out" href="https://drops.dagstuhl.de/opus/volltexte/2021/13490/pdf/LIPIcs-OPODIS-2020-5.pdf"><u>here</u></a>.&nbsp;</p><hr><div class="relative header-and-anchor"><h4 id="h-da-mev">DA MEV&nbsp;</h4></div><p>Another component of the “modular stack” is the DA/Consensus layer. It is the lego block on top of which other components are built. A DA layer is usually seen as a lazy blockchain that does not differentiate between what data is posted on it. A rollup posting data is competing with a user that wants to inscript their NFT needs to be stored on-chain (Ordinals). This is a very pure marketplace, where you can pay in bytes made available and the preference is shown by willingness to pay a certain price. Those that pay most are to be included, as both miners and validators have to optimize for maximizing revenue due to the economics of their business. While this seems trivial and most readers will know this, it is important to know that pricing will determine whether your DA is included in a block. Especially if the fact that being included or not impacts the leadership rule of various parts of the stack. This is what gives the DA layer pricing power, or the other way around, others will be willing to pay up to make sure they are included and decide the ordering. The amount they are willing to pay depends on the MEV possible to be extracted (and the tx fees) and consequently this will mean extractable MEV will trickle down to the DA layer.&nbsp;</p><p>There are a few setups in which the DA layer has pricing power to extract more value from rollups. First, you have could have (sovereign) rollups that rely on the DA layer for their sequencing. Here it becomes critical to get the rollup data on the DA layer prior to others as it directly impacts who dictate the state (e.g. the ordering of transactions) on the rollup. In such a scenario, we would envision most MEV to trickle down to the DA layer. The second scenario is one in which there is a rollup with a settlement layer, here the MEV will mostly be captured on the DA layer in the case that the settlement layer relies on posting to the DA layer for leadership election. The third scenario is still a somewhat more theoretical one, this relates to potential decentralized sequencer setups. You could envision a decentralized sequencer setup that results in proposers on the decentralized sequencer level competing to be able to post to the DA layer (or pricing out competition to do so). The point to which this matters will be a function of various parameters in the leadership election used, e.g. if the timeout parameter, as described in our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-application-specific-chain-thesis"><u>application-specific chain thesis</u></a>, is relatively short it is key for proposers on the decentralized sequencer level to post data as quickly as possible. In such a world, you could get competition of “validators” of the decentralized sequencer set competing to act as a leader and outbidding each other for blockspace on the DA layer up to a point at which it is no longer economically desirable to do so.&nbsp;</p><p>A way for the rollups on top of a DA layer to maintain censorship resistance is requiring sequencers to stake a certain amount on an L2 and vouch for an L1 address with sequencing rights. Only transactions from addresses with sequencing rights will be processed, and invalid transactions will result in the sequencer's stake being slashed.</p><p>Another way to view this is that in “based” sequencing (using the DA layer directly for sequencing) the DA layer has pricing power to extract MEV.&nbsp;</p><p>An important note here is, whether it's a good or a bad thing to have MEV be extractable by the DA layer. As in our first piece, you basically have two points of view here, one is the security budget. If MEV is extractable at the DA layer, consequently the value of the DA layer blockspace becomes more valuable. This makes the token, which gives you the right to sell future blockspace, more valuable. Consequently, the value at stake, is larger and the security budget of a chain becomes larger. The counterargument is that if MEV is extractable at the DA layer, the pricing variation caused by MEV on one rollup will impact all others interacting with the DA layer. This would be worse for protocols using the DA layer as pricing is less consistent and reliable. It is likely that this will end up in a situation without an optimum, and we are mostly curious to see how it plays out with the various shapes and forms of modular designs coming out in the next few years.</p><p>As we presented earlier, if the leadership election and MEV extraction happens on the execution layer itself, most (if not all, apart from DA fees) of the MEV will be extracted on the rollup.</p><hr><div class="relative header-and-anchor"><h3 id="h-future-discussion"><strong>Future Discussion</strong></h3></div><p>This section will serve as an appetizer into some interesting thoughts and research that deserves more attention, and possible implementations. It's less coherent, and more just a gathering of things we find intriguing, with regard to MEV in the modular stack.</p><ol><li><p><a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/decentralized-l2-sequencing-w-native-ibc-interoperability/14944"><u>Decentralized L2 sequencing w/ CosmosSDK/IBC</u></a></p></li><li><p>MEV marketplace integrations into modular stack through DA block submission and sequencer APIs for 3rd party market swaps - PFOF</p></li><li><p><a target="_blank" rel="" class="dont-break-out" href="https://joncharbonneau.substack.com/p/encrypted-mempools"><u>Mempool encryption by Jon Charbonneau</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://meka.tech/writing"><u>MEV findings on Osmosis </u></a>(using threshold encryption) by Mekatek</p></li><li><p>Restaking for validators to engage in block sequencing on L2s. Is it worth it from a slashing properties' perspective? Enough yield for validators to run more runtimes? This is the same reason for why the Cosmos Hub’s current implementation of ICS might not be worth it from an overhead perspective. Especially if the supported chain has low activity.</p></li><li><p>Effects of latency on MEV, we've already covered this slightly in regard to the first-come-first-serve mechanism (and it's effect on Arbitrum). As well, as current and past geographical centralization of the MEV supply chain. But would be interested in seeing how this looks in a more “modular” stack.</p></li></ol><hr><p>As has probably become clear over the series, is that you're making trade-offs at every level, and it's really up to the developers of rollups to decide how they decide on what trade-offs to make. We hope that this article has helped somewhat with identifying which trade-offs are important to keep in mind, in regard to MEV, security budgets and decentralization.</p><p>If you’re building in the modular space, and interested in discussing parts of the article in more detail, feel free to reach out to us on Twitter – we’re here to help you make the design decisions that will be best for your end-users.</p><p>Thanks to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/cryptobelix"><u>Pim Swart</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/MathijsvEsch"><u>Mathijs van Esch</u></a> for contributing to parts of the article, as well as to the many reviewers, such as Mekatek, Josh Bowen etc. Also, a big shout-out to the many folks that I got to discuss MEV with over the course of the last few months, particularly in Denver.</p><p>Writer: 0xrainandcoffee</p><p>Next up in the modular saga, we’re exploring shared sequencing, and all the derivatives of this that come with shared-layers. We’ll also look at some of the effects this can have on MEV, especially in a shared sequencing world, as well as on SUAVE-like setups.</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>modularity</category>
            <category>mev</category>
        </item>
        <item>
            <title><![CDATA[Modular MEV; Part 1 - The Introduction]]></title>
            <link>https://paragraph.com/@Maven11Research/modular-mev;-part-1-the-introduction</link>
            <guid>TcRk3iGoubJItdoaSlqZ</guid>
            <pubDate>Mon, 25 Mar 2024 22:04:09 GMT</pubDate>
            <description><![CDATA[Introduction to MEVMaximum Extractable Value, or MEV, has been all the rage in crypto. MEV refers to the extraction of value from users by reordering...]]></description>
            <content:encoded><![CDATA[<div class="relative header-and-anchor"><h3 style="text-align: start" id="h-introduction-to-mev">Introduction to MEV</h3></div><p style="text-align: start">Maximum Extractable Value, or MEV, has been all the rage in crypto. MEV refers to the extraction of value from users by reordering, inserting, and censoring transactions within blocks, as well as the profits from benign MEV such as arbitrage, liquidations etc. It was first mentioned back in 2014 on the <a target="_blank" rel="" class="dont-break-out" href="https://www.reddit.com/r/ethereum/comments/2d84yv/miners_frontrunning/"><u>Ethereum subreddit</u></a>, by /u/pmcgoohan.&nbsp;</p><p style="text-align: start">One of the earliest examples of quantifiable MEV was during the CryptoKitties craze. Specifically, the concept of completing <em>pregnancies</em> of CryptoKitties (giving birth to a new cat), wherein anyone could finalize the pregnancy via calling giveBirth() to the smart contract after the cat’s <em>birthing </em>block. By doing so, you could receive a reward in Eth. This was possible to front-run, resulting in profit (MEV). As Markus Koch pointed out back in <a target="_blank" rel="" class="dont-break-out" href="https://medium.com/block-science/exploring-cryptokitties-part-2-the-cryptomidwives-a0df37eb35a6"><u>2018</u></a> (great read btw) – Early in the history of the game, accounts associated with a few people were the only ones giving birth to kitties. As time went by, other accounts began calling the giveBirth() method, seeing the profit freely available. It was also possible to see that only a few midwives (cat birth callers) accounted for most of the births.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/55f894a6b2a5bb94f783ede5c023e0e2.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAANCAIAAABHKvtLAAAACXBIWXMAAAsTAAALEwEAmpwYAAACnUlEQVR4nJVUXUgUURj90IeewiJDLHVZV0LKTUnWlLWegl4lSnrIqJdM7E+i35d86ElQmbx0H64MXNfbTk4qLbiiNjFE4JuoJIwVbrGltebDwJRT4zYxc9dd3azocPjmY2DO+e6ZbwZsF5Zl2f9Ccm3N+m7+nWtWirqu86eAX0zTjEQikothF7Isp5u+vpAyMdZy8x7sPgClteAJbMUapxb4He6pGopOrH41HAM++9TUVEdHhyAICCFCiCAIlFKMMUKIUtrV1T3wOHym9QYUHoKyevAGs+kLQlEg5+ipV2/fT79emH3z7uPi4nIikTmBYRiyC67LGBMEgTFGKRVFsQeh8dGRptZbsK0M9lZDQeVmHnSMc3wNV9tt2/7hTpxwkTHQNA1jTAgRRZExxnt+GoRQD0JPB+XTLdcBSiHfDzv2p7irItXk+wE8l+4/cNL+3UDTtGg0yhhDLrgNpTTtR0jvQPjR2St3HCFvEIoOQ0kteOpS1VMHhdVQeXxp+Yu7L8lsg8nJSVeF8EB4RBhj3oui2CuKYRZqbL7mvEBvHZTUQEnAZQ0UB5zQ9h2ZnV9wNm195bIjisfjaWkePXFBKUUIPcR4cEBqunwbcn2p3HN9F9q7v62uxj4sxT8lFj8vp6W3NlhZWaGUSpKUzgdjvLEqE2Pn2u5CXrkzdV65/+TFjfNm9VufAGPMtz6dPq8Y41B///joSGNzG2wvh50VUH8i+TNLMBsZA/4dzM3NCYLAI+Lh8PSZu689CIVDtOF8K0ARQDFUHbPtpK7rhmGY6zAMQ3fBb8ZisU0nsCzLNE1eNza850NMz8yoL14+GRoef/ZcURRVVRVF6ezslGWZECLLsqIovEqSFIlENE3LGPwvuKWmaVxRVdU//c1+AQzUVMuJf3wzAAAAAElFTkSuQmCC" nextheight="283" nextwidth="704" class="image-node embed"><p>Revenue of top giveBirth callers (midwives) via Markus Koch</p><p style="text-align: start">It was also possible to see that the midwives were competing via gas fees (since despite being relatively even in code efficiency, some were ostensibly more successful and profitable than others in achieving the giveBirth call). The conclusion made, back then, was that the birthing fee made CryptoKitties more expensive to be played than if the mechanism wasn’t necessary. This is an example of where MEV equals poor transaction execution for the end-user, as it spiked gas fees during the births.</p><p style="text-align: start">Another example is that of front-running on Bancor, back in mid-late 2017. The possibility of this was pointed out in <a target="_blank" rel="" class="dont-break-out" href="https://hackingdistributed.com/2017/06/19/bancor-is-flawed/?ref=hackernoon.com"><u>June 2017</u></a> by Phil Daian (Flashbot co-founder) and Emin (Avax founder). They showed that miners would be able to front-run any transactions on Bancor, since miners were free to re-order transactions within a block they mined. Ivan Bogatyy took this one step further in August of the same year, and built a program that could monitor and execute front-running opportunities on Bancor as a non-miner (just a searcher!) — since blockchains, and their mempools are public. It’s a great read if you want to get a view into the world of MEV in the earlier days (<a target="_blank" rel="" class="dont-break-out" href="https://hackernoon.com/front-running-bancor-in-150-lines-of-python-with-ethereum-api-d5e2bfd0d798"><u>Link</u></a>).</p><p style="text-align: start">Since then MEV has evolved rapidly and with increased on-chain economic activity from 2019 and onwards with the advent of DeFi, it has become a critical component of protocol design. With the rise of L2’s, bridges, app-chains and so forth it is interesting to look into the potential implications the “modular” design space might have on MEV.&nbsp; But first, we must give an overview of the actors within MEV as it stands.</p><hr><p style="text-align: start">There are various actors within the MEV ecosystem. Searchers are usually the most profitable MEV participants (from a first principle perspective, although more “general” value ends up with builders and validators as they congregate value from many searchers), but there are other participants as well. Let's explain who they're first. What's also important to note is that part of the participants collude more than others do, as a result of protocol design. The participants (bar users and wallets) are searchers (S), builders (B) and validators (V). In the MEV supply chain, they have the following role to play:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/8fab5d73d00e5b80693e83f0ec1ab63d.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAACL0lEQVR4nLVUIXDjMBAMKywqeFISXBJi8igkJCjEyMjIxCwkyChITETMSOiQkFjQMSEhMTEhMSExdd6X6vOZ9KfznV9gcL69vdOttCr/GatSyna7Xa1Wh8Oh7/u2bfcLuq77uQAASik55+8K9H3fNM3qA8MwrNfr5+dnKeV3BSr+XiV//P1i2m+BnHNckFLKH0gpUaTcMNOC2xKfRSrxlwAics6llEKIGCMlcc6VUpxzYwylAoBcoJSiiDFmnmellBCCKoYQ5nkGgHmerbVXASGEtdY5BwBa61KKlJKYACCEyDlba8dxRESt9TRNIYQY4zRNSikp5TRNVE5KeTweYQHn/CogpTyfz03TCCE45865vu+7rnt6emrb9nw+G2M45z8WvLy87HY7RASA3W5HBtnv90opIpJHXl9fGWNXAZoIERljzrlSiveeMWatFULQTDlnIcTlckFEmomIAGCMYYzR2Trn5nk2xtTDuC45hOC9jzHSJmntfgGtOsZIOTWNfHEXSSnVNGriKlC/Sqm3tzdErK4Yx7Fpms1mQx2RBYZhqGlERMTNZnO5XO4K/nEPHtouP3InWfmWiIjTNDHGbp39QOArSClprZVS5Jy6j7Ztj8djCOFTAe8951xrDQBELktrjDEpZW0txjgMQ9u2dCFIQGt9Op2GYajEBwIxRq21c85a672nYAgBEZ1z9UxijKfTaRzH23eQJui6rhL//Yiqx8iaBOecEEIpdfcWvQOXSABuI77nRgAAAABJRU5ErkJggg==" nextheight="340" nextwidth="680" class="image-node embed"><p>Source: Stephane’s great piece on <a target="_blank" rel="" class="dont-break-out" href="https://flashbots.mirror.xyz/bqCakwfQZkMsq63b50vib-nibo5eKai0QuK7m-Dsxpo"><u>MEV supply chain</u></a></p><p style="text-align: start"><strong>Searcher:</strong> try to find all extractable value on-chain through different methods. Searchers work with builders, as searchers are willing to pay high gas fees in order to have their transactions included. This is important because many of the things we take for granted, like arbitrage and liquidations, are performed by searchers. Searchers bundle transactions together and give them to builders.</p><p style="text-align: start"><strong>Builder:</strong> Takes the bundled transactions that are grouped together and put them into blocks for proposers. In addition to the searcher’s transaction(s), several bundles can be grouped together for a block, and can also potentially contain other users’ pending transactions from the mempool, and bundles can target specific blocks for inclusion as well.&nbsp;</p><p style="text-align: start"><strong>Validator:</strong> Validators perform consensus roles to validate the blocks. They sell blockspace to the profit-seeking searchers and builders and are in turn rewarded with part of the spoils. Keep in mind that the validators get both rewards from issuance (Proposer, attestor, sync) and execution rewards (MEV+Tips).</p><hr><p style="text-align: start">So why do some say that MEV is bad when it seems on the surface to provide value to the ecosystems and the security budget? MEV gets competed for via Priority Gas Auctions (PGA)s. PGAs are auctions where fees are competitively bid up to obtain priority ordering for transactions. Fee estimators used PGA-inflated gas prices as a reference, causing users to overpay for their transactions. What should be noted, is that this was primarily the way it worked prior to MEV-Geth/Boost and Flashbots. After the release of MEV-Geth, much of the computation related to MEV was taken off-chain instead, by a permissionless side-relay that allows MEV searchers to communicate directly with nodes and other participants. Leading to a decrease in fee congestion pricing. This is also easier to see when you look at the share of vanilla builders versus MEV-Boost.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/a7e1e70906c8d00b5bbcb5ae33c6e258.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEzklEQVR4nJ1SbUyaVxQ+mK0xq11F/FhtnG38wA+0DlRQUBI7TbZ2U+fWpUlb6/ADUEHs7OYP7Zp2jTOmri5b9mPpR1irU+lrgb5aUGAMLaIgEHhxL6BUm5r0z/4s2a9ly31f0LbZr908OTnnuefe85xzL1RWVp74sFEmk8tk8h5V791799rapQODlwcHB+vrP1L19pksllAw5PP5A4H1/wGYw3H7sv3BDDY5+YtOp/1Zrb5z+5bH5fK43UbDI6PBQJLrW5EIje0nr+JlcpPCrrO5EQ4BQRDG+fm7k5h6cuYn9YRErrh2/TvcZJuZXcBNtocLVgw3avQGTP+IgkGDz0/rjTQwveG+fm5ab5zSI3JCi6DBTRNa47h2fly/MGtaBJfTtWizsUQNcIANacVwmIdscmEUzDxIzoe0Y5DIAVYxsDjwZhYk5QIzGw5mQWIBsEogiQ2JWcDKAeZRYMWct7JhX3rlyU+BJEmPx5MmboL4bGAWUMiLOsmFkJQPzEJIZQuy9pVlJ9QVxtdzoKkk7uMSxql3GGL2a/zsN+qL4j45Bqe5cee4cK4UzpZCcynIBNBcBCPS42hEGIYBtw4ScoDJBlY+AqrBRtqZebCfk5R2SMUHRQVCNwWFCBRCUAigVxhjhCDlg1wAiip0u5QP54thVHYcdRCJRDJqT8OBXEgpQvNJK4JkDiQXQSoXktjsjIMSPnTwQS4CGXULukiI0E6RNNMlQiHt0FbCgxudtaiDqekp4NaiAmjiHDRoNPGMnCMpNbmMC0JQVqEC3SIkTSZAMrtEyNI+TSqFKEcmiKaheqVwo/Nd1EGQJNNrTqECyUWQkg+pOUczUtr50FcFXRVRXe3U4XbK6YiB9mlSJoDW8r00KR+9wXVpDepAj+MJ/PcgPhdY2SfyQVIOKiES0iWKCqdFKasQQ6veJem0LhGoxIwOajIqMaNLBMpqRtvuiFYcy/GiRtifebIAOilRreXRfiXcPbH/2QHdXAsXTbyFG3U+40IrD84WwrBEDCS57nSuMEWNpUcYAzUoW1mNNCqrkRYZNVyVGCmlbbcIMcpqZOlQJX79Un3m1abMSw3pXzUcvtr0dv/7aQMfHLpYl/DjhXpYDxCaB/rmukJZ2d43aKdsd8zZZeTUL6LfEM2K/iqtFU9X56yz2LJ1wWE1elcX//nrD4S//7Rrb6FH3ow8+eYMp4UDbTz0edt4UUhL90IJFUp4L+1KeHCGDcPny4wms91mItwO98piJOj3uuwB31rQ71mY+B4V8BOEXj06PqxSD/VMjl6cvPHlzSvy8ZHPNWP9lNOrGeu//XXn+Ejv9Ldf3LwiVw/1aMb61UM9d64ppkb7pn+47LZbPHaz3YLb5rUeu9mEYwv4/cdm3GbAUAHUxPbT5VW3bm6eDEVW17xOLxHZ3lld8y6trG09e+5weR0u79az58TvYYv1cWR7x+0lllbWIts7ZChiXbT7CcLr8RoMRutvNp/PbzKb/YQ/FA6HwhuoQDgcdjjsGs00jj/0eDy/WszrgYDL6ZzD8SBJrgcCRoPB7/P5fV6dTksQRJAkLRaTy+kMkqROp3W73RsbG06nE8OwpaUli8ViX14Oh8MkdTbaAb3CsRULQ7t8LCX4ChN6YevFs7vrX0AlC9JENTwuAAAAAElFTkSuQmCC" nextheight="466" nextwidth="847" class="image-node embed"><p>Source: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Mevboost.pics">Mevboost.pics</a></p><p style="text-align: start">At its core, the issue stems from the fact that users and bots are in the same pool, independent of whether they go after MEV or not.</p><p style="text-align: start">The nature of MEV (and profit in general) and its relatively permissionless nature is that there’s a huge incentive for participants to extort users of the blockchain for profit. This, as in most profit-driven ventures, leads to participants centralizing (geographically for example) to make higher profits. Extortion is also centralized at the coordinator level, especially in the current implementation mechanism of shared layers that eventually rollups/sequencers will have to off-load tasks to (such as ordering, dispute resolution, liquidity and so on). Thus, extortion can and will happen (through centralization).</p><p style="text-align: start">There's also an increasingly high barrier to entry to participate in MEV, leading to further centralization. This is partly because of the fact of the constant upkeep of MEV bots that searchers have to do. The competition is rough, and the code is constantly updated. If you find an edge, you’re much more likely to not share it. Although, as a result of blockchains being open ledgers, they will eventually be found. The MEV “marketplaces”, like Flashbots, are also quite centralized, since the vast majority of blocks flow through Flashbots (70%!), although MEV-Boost relays are permissionless, and have several endpoints (<a target="_blank" rel="" class="dont-break-out" href="https://mevboost.pics/"><u>11 according to </u></a><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Mevboost.pics"><u>Mevboost.pics</u></a><a target="_blank" rel="" class="dont-break-out" href="https://mevboost.pics/"><u> - creator Toni Wahrstätter)</u></a>.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4f9b49cfe253f200b0bdcd413948cebe.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADIklEQVR4nKWU32vUSBzARxAEwf/CJ5/uRUFbFe7hODgRRFDEB59ExAd/cXD34BU57kHwR2mrWKpWFFwV1sV6yF09t9ts2s1mnTSTH5udTKY/0qW2Zd3WtbttdjaOJLHblSoc9vMQvjP55vuZSSZfQCkdHR0VRVEQBKgokiRDqAiCIIoiQohsGOC6bjwev9d/v6unJ/bk6fUbnYnE876+vmhIKbUsC38vgYAQ4rpusThdqVQazGswb6lSqYYsLi6WSqVyuVwKiYJyyPr59Qnz8/OBgFKKkCZLmd5nr8DRjiN/3eece57nhzDW4Jw3A8YYD4kCxhq+768PImq1WiCYmBg3TNPOa6evPgRgF9h/uilgIa1BU/ytBNZCtVoNBBAqKkJ2XrvY/Rhs3Q9+ucg5/7BUra/m+RsUCCkBKqplqOe6YmDLPvDz+egN+L5fZ6y+cUEyOQQV1c5rF7pjYPNecOj3Oy9HfzhzLZaEnPPllZWNCnRdR0grmCgQbGoHxzu2n7oCwI4Dl/o453VW931/eWUlMtVqy4w1WBj8XwGl1DBNE8GznY8AaAPH/th5vhOAnQc77rb/2gP2nByEODQxzj9GVZqnqBEMg2PjeV5zi1F1z/M+CwghllV4Oz3x2+042Pbj1hN/7r7QDUDb4cv94KdzALR1JYZfZvNPUmMz796rpOjOlRcqNac4v7BUW1iqlt5/iD5V6wGNWBMQQmyMR3LqzdiLgdcjQg5d7X86nB37OyX1xgbeaIXuRwO3Yi9yRqHzQTwxmIaa9SDxj2IUkGn9l5Ymp1xdN1RkzM7OGqZBKS0Wi5qmTU5NrQkIIRPj45Pjzog4nDcNmM1oGppxXUOFCoRzM9MwmymYpmNbMCfnTePV4L+SJDmE5HKyLMkY41QqhUKSySTGOCtnBSH9hQBjmxBH1/Wh1HD0cziUEuJkMhkIVYztZHJIXW1/spwThLSKEKVUFEVZzlHqpEXRtm1d1wUhHTUIjPGaIKLZ3RRFgVCh1CHENvRg4xhjhLSvtkwI4eoqcbMCDdbXsoNWR3QdG1Mty6LUiWaat771yFfb9SellhJM7FyJsAAAAABJRU5ErkJggg==" nextheight="454" nextwidth="910" class="image-node embed"><p>Source: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Mevboost.pics">Mevboost.pics</a></p><p style="text-align: start">Important to note that there are plans to decentralize the entire MEV supply chain, and we believe that the Flashbots team is well aware of the nuances of the current implementation. The centralized Flashbots relay does not directly own any validator power. Neither can Flashbots censor non-MEV-related transactions. Validators can still include transactions that did not go through the Flashbots relay. Flashbots is clearly a centralizing force, but the alternative of a non-Flashbots world certainly feels like it would be worse. As participants in MEV-Boost make a larger income on average than non-participants, it leads to further centralization in actors utilizing it as well.</p><p style="text-align: start">Fear not, though, “we’re going to decentralize!” as the age-old answer often is. Although, if Flashbots can’t come to a consensus on the ethics of MEV (as alluded to during a <a target="_blank" rel="" class="dont-break-out" href="https://unchainedpodcast.com/the-chopping-block-why-the-once-taboo-mev-is-now-a-core-part-of-ethereum-ep-449/"><u>recent podcast</u></a> w/ Phil Daian), how will the wider community agree on it?</p><p style="text-align: start">If Flashbots as a system eventually becomes a DAO, it could possibly become decentralized itself. This is a similar analogy to Lido and others here. To off-load claims of centralization, many protocols say it will become a decentralized DAO (eventually), just like Flashbots. You could argue that it is merely altering the centralization into more layers, such that the centralization is harder to see. However, there’s some limited merit in adding more layers. At the end of the day, in most cases, some decentralization is better than none. Although, this depends on how attackable that decentralization is.</p><p style="text-align: start"><em>So why is it so vital for actors to participate?</em></p><p style="text-align: start">Validators want to collect the most amount in fees/MEV in order to offer the highest staking rate on their user’s Eth. This is an incentive for validators to pick the highest-value block created by builders.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7ad2b22caa848e52f15a5823ffe3f7e0.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAPCAIAAAAK4lpAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEQUlEQVR4nG1UXWzbVBQ+D5MmXopAMAlRpkkwkAYToELFurWj2tqsVB1TUVEBDbHxt1VjZYMxXiaEBJqAh8KQEL+i65AqaLeMbS2ktGFLs6Vqmtbx7Dh2HDurkyZxbK9OWuPGTS+6dmhXsU/2kXXvOec73z2+BxBCwWCwt/dXQRQvXhro6+v/ra9/eGRkIjTx7Xff//jTz5d9Pq/X+6dnaHBw0O3+vaenx+e/Kgpi/9lzIyPeCMP4fKOjfr/bff5qIGAtLqLVAISQYRjpdNowDKtoJBKJdDqtKIqu6zzPS1JS1TRJSsqyrCiKjJFVNa1QKDiLup7XNE2xoet6qVSyFhdLNlYIisWiZRgf/dAHu9/1j0/FOI7GiLA2aJpm2aht2WUbYcqwPbFDTMpImYwkSbquC4IoSZLDgQkWihZCaPvhzwEeGfT6UzfiU0Q4TF4niDBJUvilypYgCIqiSJJiGMaxDgFN03FBjLJslGUlSaJIiuf5FQLTXFi0DNfRL2Btdbfb4/H6eY5JirzAs4l4LErTHMfEmEicY6fj0RgXDQZDYZIMhUIEgYtw6MMEESYIkiQJuy6apssEoiAa5gJCaNexLqiogeZ3YGPL8VNnTnz9S23Hp9s6Pjn/1+g5j6/b7el2e+D5zhPf9OrZpMDHMtMCz0UpnCtiy6OmbMW2RJJhomWCaISZmzcsc67u0Em4cyvU7oMHGuHxNqhsgI0t8PBueKwV6l6D9S6ofx3WVN/ResTVefKDL0+3fdh11nOZJMMUSTE0nYjH0iIfizI8xzA0xXOcZVmrelBWsOMt2OCCra/Cpj2YpqodHmqGLXthfSPUvwH374TGA7DmKWh4G+AJaD0Km/Y8+ebHsGXv+1+dea/rtOvIZ3e/eOzisH/Ae21puQeGuVA08lhBRQ1s349rf/plnPfRVtj8Av6ofgUqd+Cte2tx6ru2QVMHtrsOwtpqrKziGVxERY0tfScuq6odIbR0q4Lnjp+Ce+z4B5ttBa2230tYSt0+2NAEDQcwd9MhWPcstByGdXXQ0gn31eO2VTaA6yAOrNuPy6pqh81tKwQIoZJlkZx44UowSMcHfMFxmh+6NuUPs8OBsDdIj05GhgJEgIgO+CfGr/MD/okQHT//99gkI1y4EgwxwiXfRIgR/vBPjVExz1g4QLAe/yROWyqVCRzc1DRNVTVVmdW0m/aTk7NzhbymKoYxb1mmZRWzmbQxV8jJ2QXzn5yctawiQmgWX+acYcwbxnxen83rs6qS0zSt3IOyiNISQigry8nUTCo1M5POTNvXclqSFEUVBFFRVDFxI6coOTwX1Bk8UdRpKen8LZIkTUvJLJ4luVRqRpZzkpTUNG2VAgeKohQKc/ac0S3LKpVKsiybpplTFNM0FUU1DCOTyRaLuHYdI+8EplIpTdOcAeU463r+NgTO2S3bW1duu/V/4KP4b5r+C5ADJaGxigsrAAAAAElFTkSuQmCC" nextheight="441" nextwidth="937" class="image-node embed"><p>Source: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Mevboost.pics">Mevboost.pics</a></p><p style="text-align: start">Builders will aggregate transactions from users, MEV searchers and their own private order flow to make the highest value blocks possible:</p><ol><li><p>Builders with <em>exclusive</em> private order flow <em>should</em> mainly be able to create the most valuable block.&nbsp;</p></li><li><p>A builder having its blocks included consistently incentivizes more private order flow to arrive at this builder since users and searchers want their transactions included swiftly.&nbsp;</p></li><li><p>Selling future block space upfront so market makers or protocols can secure block space for their transactions or users</p></li></ol><p style="text-align: start">MEV block production and transaction inclusion dynamics in essence create an unfair market for end-users. The market structure cannot be improved (and has not) without direct intervention. The protocol as such must control the market, or have mechanics built out to support it (as we’ve seen). Cooperation between proposers (who have all the power in the market) seems much more worrying, especially in a semi-permissionless half-decentralized sequencer setup. However, if slashing takes place in the advent of any extraction of MEV, what is the reason to become a sequencer apart from transaction fees?</p><p style="text-align: start">This is especially true if you don't emission tokens for security, as you derive security from a base layer. Thus, it leads to the belief that an SBV (Searcher-Builder-Validator/Sequencer) supply chain must be in place. That could lead to trusted social contracts between actors as well. MEV could also in reality become a “problem” aggressed more so on the application side of things (such as some protocols have done so far - <a target="_blank" rel="" class="dont-break-out" href="https://people.csail.mit.edu/rivest/pubs/RSW96.pdf"><u>Timelock Puzzles</u></a> and more), leaving the protocol without direct interference. But in some cases, and we will make that case, MEV can be seen as increasing the security budget of the underlying protocol.<br>In competitive block markets, where there’s competition for blockspace applications will eventually revert to “MEV” (as in priority gas fees). Builders don’t waste blockspace on unprofitable reversions, and will always make the most profitable block.</p><p style="text-align: start">By enabling searchers and hunters to easily look for good predictable state changes resulting in MEV (so a marketplace) you can incentivize good MEV adding to the security and efficiency of protocols. Coupling these profitable actions with the sequencer itself, whom as a result of bonding tokens to become one (maybe with the added possibility of delegation from other users to gain a fraction of the profits) could share in that profit. This would allow the value chain to both land in the hands of users and sequencers, while adding to the security budget of the protocol itself. So the user shares in the value they themselves create. You can only scale a blockchain's decentralization with its success and adoption (matureness).</p><hr><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-mev-good-bad-or-just-existent"><strong>MEV; good, bad or just existent?</strong></h3></div><p style="text-align: start">A way to reason about the role of MEV is by looking at it through the lens of the economic security of a chain. In general, this is seen as the value at stake to “protect” that chain, the amount of assets staked or the amount of money needed to perform a 51% attack in the case of Bitcoin. MEV is a critical component of this, as it enhances the yield for validators/miners and therefore allows greater economic value to be put up for stake.</p><p style="text-align: start">So there are basically two lines of reasoning here. Either MEV is seen as bad; this follows the reasoning that value being (unknowingly) extracted from the user is bad for UX and sophisticated users extract this from less sophisticated users. As a result of this, a myriad of solutions to prevent MEV has popped up, things like threshold cryptography to encrypt TX’s pre-ordering and batch auctions with a uniform execution price are used to prevent or minimize MEV extraction.&nbsp;</p><p style="text-align: start">Another way to look at this is that MEV is actually a force of good. The reasoning here is that MEV extraction enhances the (potential) value of the blockspace being sold by validators/miners, and therefore allows for more yield towards those. As a result of yields being higher, it stands to reason that validators/miners are willing to put up more assets in order to get access to these yields. This will result in the chain having more economic security. Another way of achieving this economic security is by artificially enhancing the yield, by issuing more native tokens/rewards. However, this comes at the cost of token holders as they face inflation on their assets. If you view MEV through this point of view, it's actually a force of good for token holders, as it allows them to benefit from economic security while facing less inflation.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/53c22e8a7c436d214d4f8d561048bff9.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAADyUlEQVR4nLWUf2hbRRzAv4jiEBS0M8Iax9DpptDOWXQDf+BQWNH/Jgz8tf0xtj8UwV9o/UuU/rXhyupcu4V2w8qixa6lXR1N2iRccrnLe81Lk6ZbfGnZMy95adalaZLmZVlec9J3mK7T/8o+PI579+7uc9+77ztg/1IzH8aYYRg1s2SMrbAVtjGAMebH/nM22+XRUZfLddFuj/0V6+joOGfr6e/v7+o+23Wm2+mc2JCgWCxmMpnJ4OTYmMPhdCCEThw/4XK5lkullKalNC2bzW5IUKlUEqoamY5QSiVJClBqt/+GMV7MZlPJZCYzP59OK8p1VU2oqppQFPV/SGrJxHw6rZmryWazuq6vCQzDKBaLsiz7CcEYS5IUDocppRhjhJAXIUKEQXvPQE8nIdTjdvN2bIJW8YjBkGvwwu99F8Zd7vl0WlXVXC63TrCYW4xGo3wMnxpjLIoipTRAaTAoOYb7bT98gr0eSilvF02oyUw03Dc4NjT8J0JowuVyOJ13CaopLRWZjtQF3MFLP8ZiUBo4f6bzy4Ne5MHYX/96Z4Vvb11fPzaIx+NlvWwYhizLvJ8oioIgUEong0FCSICSSGz2p28Ofb7fGgxK/42AV3jE3CeK4pogHAoXCvnZ2VlJkuoRCII4fmV4oPcUIQL2ekIz8um2j75otRJCEUJ3LtxrvhJCMCEBQfAi5MfYi9DCjRtrW8SRZdnn83l9Pj7ScXnQ/nN7IDSDsV8ITX//6fuHX3siNH0NmVPwQw4IAibUj30Y+yeujPgxJkKIEEGciizmltalaUyOS1NTU+FwWJJi12LxOYV4HON9JwPOS1HqHrnUf+DQsQYAacRm//HrP061SQHf3Nz1aEgQ3KNX43OK8ndv73lBEIY624a7vhvqblfliDl/jUdQM4yV+NWI7ezpo++9ffTg/s+OfXDkwD7rQ/AgwJMPwwOb7gPYBCabAfY2Quue7e+89cobzzfsbIBvP/7wqyPv7n2z9fWXd/I+AND7y0Wen2tb1H785GM7doG1GbY2geVpaGyGLS+CZTdYmmDLS2B5AZ7aB9teBUszbGuBzTvg0WehcRc88sz9W58Dy3Zo3A3WFni8Bax7oKHp1+HxuwXlajW/vJxQk4yx5VKpUrm9Yhj5pdV0LuulsvlnFgr58q1bjNWKxSJj7Halkl/KM8Z0XeeJXyoW+C257qrg6LoejUYVRcnlcgs3FxhjiqLoerlarSZUtcaYtkqaMZbJZPKFfKVSkeW4sUo1LssJNalp2sLNbI2xarXKL+Z1gnvEPRf8A0p9IpBNuqnlAAAAAElFTkSuQmCC" nextheight="496" nextwidth="960" class="image-node embed"><p>Source: <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Mevboost.pics">Mevboost.pics</a></p><p style="text-align: start">It boils down to where do you want the pain to land. By allowing MEV to be extracted, you limit the inflation required to reach a certain level of economic security, at the cost of user experience. Issuance (inflation) thus becomes a needed utility to reach certain adoption metrics, which eventually will allow you to lower it to insignificant amounts, while MEV can contribute to the security budget (and as a such the decentralization of the protocol itself.&nbsp;</p><p style="text-align: start">However, by preventing or minimizing MEV (if even possible) you increase the general user experience at the expense of token holders, as you need more inflation to maintain economic security. Another, perhaps more farfetched, reasoning behind the level of MEV extraction can be that for an entirely rational actor, extracting the maximum amount might not be the most optimal. Since this will be such a burden on users that they will stop being actively economically on-chain, decreasing the overall amount to be extracted from them over the entire lifespan of a user.&nbsp;</p><p style="text-align: start">And while we view MEV through the lens of the base layer in the above section, the same argument can be made more on an application level (although our belief is these will intertwine more with <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-application-specific-chain-thesis"><u>app-chains</u></a>). <a target="_blank" rel="" class="dont-break-out" href="https://meka.tech/writing/analysing-execution-quality-in-osmosis--e9dd8394-0d09-4d92-a0c7-27629d321af0"><u>Research from Mekatek</u></a> shows that on a DEX level, you either allow for arbitrage and benefit LPs, or don’t allow for it and compensate LPs with inflation at the expense of token holders. This is a similar dynamic as we have just presented on an infrastructure protocol level.&nbsp;&nbsp;</p><p style="text-align: start">So is MEV good or bad? The fairest answer we can give is, it's both and neither. Some forms of MEV can be seen as bad from the point of view of one, but as rewarding from the point of view of another. Overall, we are of the belief that MEV is neither good nor bad, <em>it just is.</em></p><hr><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-decentralizing-sequencers"><strong>Decentralizing Sequencers</strong></h3></div><p style="text-align: start">The topic of how much value to be optimally extracted becomes particularly important when you look at MEV on layer 2’s.&nbsp; This is because, as it currently stands, most sequencers are centralized. They are entirely in charge of ordering in a block, and consequently can determine how much to extract. However, as like any point of centralization in crypto, the goal is to move to decentralized sequencer at which point you run into the same incentivization game theory of a PoS L1. The economics behind a sequencer can be shown as;</p><pre class="dont-break-out text-sm md:text-base"><code>yield = issuance (inflation) + sum of fees collected - cost of DA &amp; dispute resolution</code></pre><p style="text-align: start">(Keep in mind there’s overhead to count for as well in regard to the cost of running hardware)</p><p style="text-align: start">By preventing or limiting MEV to be extracted from an L2, you decrease the sum of fees collected and therefore make it less profitable to run a sequencer, or participate in a decentralized sequencer network. Furthermore, there are various considerations that you need to consider when decentralizing a sequencer set.&nbsp;</p><p style="text-align: start">The reason why decentralizing sequencers is needed is clear—it decentralizes and removes trust assumptions from the centralized teams building the rollups. Currently, the way rollup sequencers function is that there exists a single sequencer (run by the team) that executes, batches and finalizes all transactions. This is obviously not ideal in the situation of a sequencer failure (although exit withdrawals can help here). Furthermore, it is also putting massive trust assumptions on the team that controls both the sequencer and the multi-sig smart contracts that allow for upgradeability, and fault proofs in the case of fraud. They also have the ability to reorder transactions and extract MEV. Although, the way transactions are currently finalized is under the assumption that the sequencers will not touch, extract or extort any MEV or transactions, which is what gives us the soft finality that allows sequencers to finalize transactions as soon as they’re received. This is what is referred to as soft finality, in some cases actual finality won’t be reached until up to 10 hours later, in the case of ZK rollups. A great example of this can be found if you look at the <a target="_blank" rel="" class="dont-break-out" href="https://etherscan.io/address/0x47312450b3ac8b5b8e247a6bb6d523e7605bdb60"><u>SHARP stark verifier contract</u></a> from Starkware on Ethereum—which is where the ZK proof (that is recursively proven from a myriad of transactions) is finalized. This is usually done every 3–10 hours, which is quite the dispute time from when the first transaction in the batch was handled.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/99ef9d636324399027aac201e60f42ae.png" alt="" blurdataurl="data:image/png;base64,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" nextheight="748" nextwidth="1350" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://etherscan.io/address/0x47312450b3ac8b5b8e247a6bb6d523e7605bdb60"><u>SHARP stark verifier contract</u></a></p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/b3c925d9236858f133606807342f9b0d.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAALCAIAAACRcxhWAAAACXBIWXMAAAsTAAALEwEAmpwYAAACdElEQVR4nGPYsmXL/Pnzv3z58h8VzJ8/vxEMurq6IOyC/Pz58+f/////x/cf/4kDX758YZgyZUpaampjY2NzU9OJEyfgcmVlZbm5OVOmTAkMDCzIz9+2deuFixdOnjz1////P3//fkECBCyYOnVaelr6iRMnrly58vnzJ7jEnLnz6+rr8/LySkpLN2zatAoMzpw+s2/fgbVr1h46cIhYH3R1dZWXlzc2NhYWFEJ88P3bt/////e21TjaW2ipK1qaG3q4O1iY6GZkpybkZlk5Opja2uiYGjt5eTp4eEQkJdy4dQufBRAXrV2z9sqVK69evf769RsEHTl0YPWqVQsXzN+2ZcuqVSu2btl09NjR9Vu2bN2x4+qNG8dPnz57/vyhI0eOnz798RPU35jg46dPDFu2bGlpbpk0eTKa3Nx5C9LSMiMio6ZNm5GamlZf31Bf35CXV9Dd3fPj+4+vX79BovrH9x940Ns3bxnmz5+fl5d37949NAtq6uoio2Jc3NyNTc0trW2tbe0gyMXN3drWztjU3NrWzs7esamp9eTJU8eOn8BEh44cmT9/AQMkpDB9FxYRpa1roKCsKiAsJiElKyktJywqoaCsqqyqDhFUUFbl4OIvLC47dvzEnr37MNHuPXvmzJ0PsgArSMvItLa109Y1UFZR09LRU1ZVV1ZV19DSlZZR0NY1kJCSVVZVFxaVKCuvxGXBnr37Vq1ahdMCX78AZVV1CSlZBiQgICzGwMDMws7LwMDAwcXPwMCQnpmDy4KNmzbn5eXhtKCnpy8vryApOTUyKiYpOTUpOTU+MRnCgCCI+LRpM/btO4AVbdmytbSsHAAprtfLJFq1DAAAAABJRU5ErkJggg==" nextheight="453" nextwidth="1366" class="image-node embed"><p>Source: <a target="_blank" rel="" class="dont-break-out" href="https://etherscan.io/address/0x47312450b3ac8b5b8e247a6bb6d523e7605bdb60"><u>SHARP stark verifier contract</u></a></p><p style="text-align: start">This is done to lower the cost of transactions and put as many transactions in a single proof as possible, otherwise, the cost of transactions would skyrocket. Such is the way transactions are finalized on rollups - they receive a soft finality guarantee, that eventually they will be finalized on the underlying layer (in this case Ethereum). In the case of Optimistic rollups transactions are instead batched up and the state root (same as ZKRs) alongside the calldata (transaction state, this is just state diff with ZKRs) is sent to the L2 contract on Ethereum. Because of dispute period requirements (the ability to roll back a fraudulent transaction) actual finality of transactions on Optimistic Rollups doesn’t happen until around 7 days later (agreed on number). This means their actual soft finality guarantee last quite some time to allow for watchers to prove any fraud that has happened. These are all issues that need to be addressed when we decentralize the sequencer set; soft finality needs to be guaranteed, and eventual finality needs to be reached while allowing for the proofs (validity or fraud) to function as intended.&nbsp;</p><p style="text-align: start">Underneath is a picture of the way rollups function currently:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7c087b9ab42c7f1549a444a0cac17b03.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAaCAIAAABZ+cloAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFWUlEQVR4nK1Wz28TRxQ2ib0Zr+3JeDPe2Z9e27vr9WZtx7+d4CQ4hOIGe3EcEgKUUIkKggIKKZBCIpUCFf0hBG0PqJU4FImeeuq1tJUi9dJT7z30L+ip4tYL1XrBCailrZpPs9aTR/M+z/ve99ae4N+ApulIPMobieD/g+cVe/lydXR8H0KIpuldJqBpmmGYGbvTmj/GcRwAYJcJIIR9fX21Wm3/9DQAAGO8ywTuJQgh1Wq1VCppmoYQ2n0ClmUJIQCA3degdwNCiJv91RwwFIKhUC+AED4LQqEXCOgdoCiK5zlZloPBIMMwLLstQy+Xq5afpv3dI36a9gHgA4ACYIB2lp+mXyBgGAZj7Dw4EoKwXK0uLCxUxiq12rhpmoQQ55dBSAHn5ABNU91cCsfFBUHkOE0Ui7pe1LVhRTEkKSlJUY7z7Kz46eXz51evrKy9s7a+cWZl7cjiUsPuvHf7zvm3r15//86lq+/e/OiT3MhIjBCR42I8r4tilCMsw8R4vl2pRDkuIYhxQdRE91MSWHabALPsytqVzRu3L1y6ev3Wh2vrm12aixs3PlhZXXdpNm9+XC6WZvLFqezIZDa7L50dNYZ5lvAsm5Si3U6De7zePp+v3+ft83lfLhHGmBCOYZhms6lpGsYRQghCgwwzZNs2xjgEIYvZiWzlYGkipehTuVpnb6NVqY+lcgcKe6dy1ULSSojRlKIn5YQV1wch9OzsEJqmAQAQQp7nHZ26cL8XBIFhGD/tJ5gUk+mcbr5emhzPlKZy1f25aqM0UcsUC/rwdGGsOTpVSWVr6bwZ0yGEHoQQwzCoC5dGEASMcS81AICiKIQQxpiiKABAeHAQQURwBMJB92AER1gGI4jCKIzDzCCEYYQGaGfAeCzL6nQ69Xq93W6rqurxeNzWdLMrimKapmEYlmWVy2VVVQ3DkCQJABAIBoLB7vOsv50gEAz06gFD0CEol8u2bU9PT7s0tVrNdS+EkKKoQqFg23ahUKjX67ZtT05ONptNwzAoioLQOf+P8BBCFEURBIEQIklSLpdjGKa3jRCCzyHLsqvEf5pLHte0FEV5Byh/MIAjeICiHFsGA/6ulfy0vyuDbxAhURK9lBd08W8JgsEAz/NRUSaB8OF6o5IvhYeGOI4Th4g4RJQhXiS8KMmCIKpidKHZkcOsKIiiJHVL1J063eCleJuAJeTQTHtu8/Lx7x6c+P7B8c9uL518a+n08ptffnrh8VdHvrl/+Na1VmvObi+88fDeuZ++Prn10D53ttNZVJNGf98emh7wOw3tDCTnpmAAgIHgjsnokRSlcaA5d/fGxpOtjSdb5x4/Ont6ZWX18vpvP9x7+uu9p78sfvtFY2qmcWj21Naj63/8fO33Hw+uLjcPzeXLNTVZTFljCS0TU01B1hJa2rBG1WReiurP+6srcmv2qD13rD1/oj1/ojV7tHF4fsaem9+8fOb+neXP7x65eMHuLLbmjzVnj3YWlxYWT7XaC3OLp1LmMEIRjo9GCM8wQxGWcxchEkLbo9dxsqLEVU1XVc1Zmq4nUwlVkzlRk2K6FJN4MRZPqJqeUDXDMC0ro6pJVdPdPwPuqO6mchzQM39PBofA9WoPAABZkhJqQknE5XjMtExZlr1en7uF0GB/3x6ftx+AZ9UPBgM9GVwlnrM6VXIIep3uAiHUaDQ6nc5sp+O+kzOZTG9XNwpWphaNp2LqsGGN6kZBiupmZlxNjiS0dELLWCOTMS0tyBpmyV+/MiGEWheGYaiqalmWaZo936rJfK70mprMJ81Ktrg/aVbS+bqVmUjnp1zubHE6na+bmb0pawxj8ieEsyUIqAfyngAAAABJRU5ErkJggg==" nextheight="1201" nextwidth="1456" class="image-node embed"><p>(r&amp;c)</p><p style="text-align: start">Keep in mind that L2 finality is not finality when you depend on the L1 for consensus. This is partly the trade-off you make when you move the consensus of the chain from the rollup to the underlying “settlement” layer. Unless you handle consensus on the rollup as well (which would lose the derived security, but could gain sovereignty and utilize a DA layer for data availability guarantees). However, the obvious tradeoff here is the fact that you fragment liquidity and increase the difficulty of interoperability.&nbsp;&nbsp;</p><p style="text-align: start">Next off, let’s explore some possibilities for decentralizing the sequencers of rollup, and what kind of implications this can have for MEV.</p><p style="text-align: start">First off, to decentralize the sequencer set means to remove the trust assumption that we have in a singular one that is run by a team that has incentives to not touch MEV nor reorder transactions. This gives a certain “protection” against MEV. However, if you move to decentralize the sequencer set, possibly through the bonding of tokens. You open up the possibility for a permissionless or semi-permissioned set of validators/sequencers to extract value, since they have committed tokens of the rollup (such as with the Fuel token model). This means there needs to be a mechanism to ensure block ordering correctness and slashing properties in place. The reason for this is to ensure that the sequencer set keeps liveness, stays fair and doesn’t infer on transactions. Such as with reordering and placing their own transactions first in the pool—even if they paid less in gas fess, this usually warrants a public mempool, or guarantees of inclusion.&nbsp;</p><p style="text-align: start">&nbsp;Underneath are some examples of how this could look:</p><ol><li><p><strong>Proof-of-Stake with Leader Election.</strong> This would likely be with Tendermint’s leader election or akin (since we derive consensus from the base layer) alongside a slashing module (like the Cosmos SDK one), or something similar. This is at least the option that most rollups that I’ve talked to seems to be going down. However, there are other options as well. With PoS, if you allow the largest holder to get the most % of blocks, it will inevitably also lead to centralization. Or also revert to a MEV auction, since you bid with the opportunity cost instead of outright payments.&nbsp;</p></li><li><p><strong>Fair Ordering Sequencing</strong> (Arbitrum have in particular looked at this). For this to work properly, you’d also need a bond that is slashable (which could be the same for everyone, to keep the essence of fairness). In this setup, you “pay” [opportunity cost per block * blocks staked] for the right to extract MEV over that period. For fair ordering to work, you’d need a fair ordering protocol that picks a fair sequence of events to eventually publish. This will usually come through honest majority assumptions, such as in the form of first serve ordering with a merged transaction list from the various sequencers. The system is, as such, first come-first serve with a 51%-of-N honesty assumption. In the case of dishonesty, the system could commit to a social fork (if they have sovereignty).</p></li></ol><p style="text-align: start">The problem in particular with the second option is the fact that it becomes a latency race to be included first, which will most likely lead to builders and searchers moving as close as humanly possible to the sequencers in question (much like what we’ve seen in Trad Fi, and even in the crypto world as well by optimizing network latency). This obviously causes geographical centralization.&nbsp;</p><p style="text-align: start">There have also been some discussions surrounding MEV auctions (bidding for the right to extract MEV and propose a block) for sequencing slots (particularly from the Optimism camp). However, we feel that it pushes towards centralization despite its permissionless nature, and it has a very high barrier to entry. Although some of the aforementioned methods also lead to “centralization”, it’s way less obvious and harmful to the protocol.&nbsp;</p><p style="text-align: start">Generally, the fair ordering mechanisms aren’t able to “prevent” or mitigate MEV in any way that doesn’t add considerable negative trade-offs. However, things like threshold encryption, time lock puzzles, batch auctions and meta mempools (unbundling the mempool and block builder role with a shared aggregation/sequencer layer—which could become useful in the area of cross-domain MEV, which we’ll also touch upon later) might have more success in providing such properties.&nbsp;</p><p style="text-align: start">Now that we’ve seen how sequencers currently work and some methods for possibly decentralizing them—let’s try to picture how a decentralized sequencer set looks, and what it needs to keep finality guarantees and make sure the protocol functions as intended.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/244efbd7c75a8130e51bbef4496679ac.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEgklEQVR4nK1V32/bRBzPWjc+X3xnJ3Z8PttxXSfOktpu4jlOE69u2q7r0mVrt27TNFZtaEibxlYEmjQkJB7gATHxSzxNAl7QHpiEkECCB/gP4JEHHkB75YU/AYkgOxuIbYgi7SPLOt/3e/c5fz+fu8uhfYAv8EWiVBo1CCEAAEKI9o3cf2ZgjBmGqdYbx7fO1DNYlvXMCDDGEEJCyGIcd+OlOI4NwyiVSs+MACEEAKCUtloLvufNzzcJIZMSYYwRxgWexwgVRbHA8wghURBEURQFAadhhJ8k+CuAsYgQFkQxSRLf85qNdGpFUWRZtm27KIoQgALPK5IUOo5rWYFtu5bdMK3QcUKn5lqWa1lVw/gHAQfhDAAsABzkZ5hcLpdrt7ywG7X73caC53teNzpUd2oHGw1iWahc9iyrKIp8+hf8Rq9rU4VIwjQzjVAhXWi21r8JOAirhhE6TuA4WrFw9fZX3/44vv7alyrHvvHci+f6qzN5dnl9s6iZXqUy/uze+IvPe05taoaVZSnpb2ysnR4unxwmo7hzpKKbHOQe16DAFxRJsjStQmlZ4KOlcxeu3DXcldsbZ8ff/fbr6x+1hhfu/DJ+6Zvfm7X6qyuD2ytrs7quUirLcjdajBeTw/HA94Mw6BhGBT5JkHHwHIQc5Ao8Pz2VloiZyqWduMBCriiXK422Vm2yAKQxhBRCREGYaG5Zs0ly2DQruqHvy0UYi4JYzKTOPlHqV5lnqgqnUdW2bVVRAAAPgwgZht7r9TRKDV0HAOTz+f3aFE0mQAhCKJVKc5YxGo2Gw+H6+jqlFCHE5Bm75iRr65sntpfXjjZdz7Qs267+DwKYFYFmKJZKURT1er1uBkKILAiteXdrePzYyurZE1uDfj9wXaeWniv/TpBtovTJoCiKYRiKojym1qRNFYWWyxLPh+78nEapJJmECFnOhODhxsqSH7Yh5Nh8HkwzxUI6uyxLM1MMc2Aq7QSAzefzB6YAwwDAwgyZNWDNcbw5hRbZ6TzLTQIQ5tJQmjfJ4WCqz0y1WosGg/725u7e9agXtztRMhz2h8fCw0tB0IkGg6UzJ7ubR9tB2Ov16/V6JwzjOA7DMGi1DgVB3XEUQiilpVIpp+lzhulQOkuIplIzbRvWSn/14sd33vzj+72fv967eevGe2+/Nf7pg/GDU/feHSXHdz/98P3xgxd+uH/2/KUgjCAAQRA4jtNqtXzfD4LAdd1WBtM0c5puGaajUkNVDUpnNaNKiBYnqzuXr5zeu7Fz/dr2zvnty8/vfvLOtft3t16+ORqdObV7+eKtV85dvbpz4ZLrL+Szuj0VTysR5ABgZVnWqU4VlapU03RVVbVSeVahplapmLOqqpp6paLrhBCMEQAsQoVHw1NF+EfHLcZ44qLHRE59CdIjj2PTwWgpSY5sHA07nbDToZQyeQZhrBtVSSZlhWqGnb2rKjUJoXpWA0kuTzy2rxvN9/0wDF3X9X3fsiwAgCCK/qHV5sLSwfnFdrTe9Ppue7DQHjS9fjvacFvL9flFTZ+DkPsTiHLgEqqnAp4AAAAASUVORK5CYII=" nextheight="922" nextwidth="1456" class="image-node embed"><p>Fair Ordering Example of Decentralized Sequencers (r&amp;c)</p><p style="text-align: start">On top is a sequencer setup in a smart contract rollup, underneath we’ll showcase how this would look with a sovereign rollup (rollup on top of a DA layer) via PoS leader election. In the fair sequencing setup, there isn’t much incentive to buy and stake the required token amount to become a sequencer, and the total cryptoeconomic security of the sequencer set, stays rather low.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/198a888688fe5492e811ec8296cd9749.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFAklEQVR4nK1V72scRRjeNuFyuZud3dmd2539NXe3e7e7t9nL3l4uzSVN0uZKr61t2qK1RdvSQg0FESkF2y9+sdhUqGhFFNoign6RakgT1IIlFQSt/4MgUq0fxDRp/QGCuHJ3yTUkUUF9eBlm3hnm4X3f551huBWAEEqYbCqN5XK5MAxt2/aawBhDCLl/BWatq3kXjxBqLXmEeCzCJv4fAo7jH5KxrJambqWMm2iz/keCh0wgmfSLQX3XXs/zHMehlK7cRjy/arnK8w8EAADTNKvVahCUBgYG1lYiCQDbdLEQshCCprXm7ZMMQqjF3CZveJAAISdJkqqqZhOEEFVVZUlCPC8gBDlO4PmsqlJVlTHWZWJIcoYoGUXRZZJWFCJJLQamxZwEbU4eJGPdsQ2CwGmaJiKByDLH8RJROI5XVDXOcR3xuIyxIkkFSk1VHe0pWqbuOKbv5XucXE8hlzcMVZJbFzJ5Q3MpdSiVMW7cD9lsLgyre2vb9jAbGV4jcZ5NdsX0FBvvYGRReGrHjmO1WmBmkgAkANANWgmC2tBIT9FLilAgKUGR2GbSllK0xffrpVKt1NvvugkAOzuZibO3pj+L6ocvHS0P/v7a3DtHTxM3PHLumrPv6V1+Ibr87h8vv24SiRcEXdNlWRaxeOXCp0OVbSDZLSCBg3BlwplR39/d3z/i91Rsx1RVW9ezmXSuYMdA8kDf8Edn3jy7/aA1Mv7MB/fHz32MkEDSupHPKDIhhHAcl8vlXNcd21p3XddxHEmSVgmByetGYFkOpXndcNO0aJpphUDU0Fwn6GZgB9PdCbrjstiBuplkEmBRJLLcUhSEEGPsuO7mzUOZTIZSurYZG0VOAtC2BGiUu7UnICQiQWxohldSqJCWbds2TVOWZQBA64woipZlVauDlFJN09ZqnWlrdKU97DTEQwgRQjIhukHr9fr2Jiiloih2dXX1VwcfffzQ+L7HDhw8XK5UPM/L2/bKOP6y0ZZeBdjoBk3TMMYCQq1Etx7BFMZphdhZ6uetfs8ruwXXtLxsliwLdH0CxCPIQcCBeCKOBJ4ockqWWI4FHIAcTIBEHMQTjUQ2UtQKV0CoNyhRVXR1IYVFblWRVxEkYULmpBxvle2SqWQtZBJWUiDJwLTCEYUjWT6r8SrkWACSfApDQeAh7AvKg8XeLUP9lmlyKXF9AlHEHV3MxWfnZm9GE3M3rny+eHX6/olPbrwxM395dvHk3M23Zn56e/qXk3M3L13//quZaHPvI9Cn1pHd1pHd+dqgWR92j+1P7xm1TuxHstSOo0EAITRozi5s2hBjvrwa/bAQvTD/63tfR7e/jc7eW5z7Lrp1Nzpzb/H2neiLO9Fz9xaufxNFd6Mndp6K+ap3+mjfuQnv9JPB88ezx8fdU4cEQ4Usu/yvLEeAEMI4FYtvnDh48cNXfrv+4v3plx5MTc7Pnv95anJhanJh9vyD9yfnpybnZy40PNde/XFTsSb1ZPWCowQFe9doZudwektFo0YKY0mSZLnRihDCVTXgY/ENG2NMyzq6liZLy2UP08FoFA9U+wLPLwdBJQyLbqHoFnzbKQVBuRwWi8VyGJbDkFK6RkVIEJDYNrTeBPECIUY6kyeqrmpUz+QUVTeyeVUzdGo1RiOjG6Yoihjjv//R1geErEat3r6aZZd6gmG3OOT6g3446haHPH/I7x3pDcf8cKsoNp6TPwHkzCxcK1umPgAAAABJRU5ErkJggg==" nextheight="1013" nextwidth="1456" class="image-node embed"><p>PoS Leader Election Example of Decentralized Sequencers (r&amp;c)</p><p style="text-align: start">In this setup, the way it works is quite simple—When choosing the sequencer for a certain round, a committee simply utilizes a weighted round-robin method based on stake weight. With this method, any validator can easily calculate the eligible proposer for a given round. If you want to read about NMTs on Celestia, check out our data structures article <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/from-linked-lists-to-namespace-merkle"><u>here</u></a>. (Keep in mind that the dispute window could potentially be lowered in this setup, as you’re not in the extremely competitive blockspace of Ethereum).</p><p style="text-align: start">There’s also been some research and discussion (<a target="_blank" rel="" class="dont-break-out" href="https://github.com/tendermint/tendermint/issues/7858"><u>2017 on Tendermint repo</u></a>) done into&nbsp;randomizing leader election as well, which could also be a method to get a similar setup to fair ordering, but with a random proposer (leader) instead of first-come, first-serve. Although, this disincentivizes sequencers to buy and stake more tokens (which weighted round-robin incentivizes), which could lower the economic security of the protocol.</p><p style="text-align: start">MEV extraction differs between the two different setups, and can result in MEV being distributed and extracted differently. There are other concerns to keep in mind, such as finality guarantees, disincentivisation methods for MEV, which we’ll cover in a second part alongside the various actor that populates the space in modular MEV, and how collusion can happen. We’ll also look at shared sequencers and meta mempool setups—so look out for another part in the coming weeks!</p><hr><p style="text-align: start">Many thanks to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/MathijsvEsch"><u>Mathijs van Esch</u></a> for participating in the writing of this article, and to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/Jskybowen"><u>Josh Bowen</u></a> for the discussion that originally led to this series of articles.</p><p style="text-align: start">Thanks to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/meka_t3k"><u>Mekatek</u></a> for reviewing.<br><br>The four graphs on MEV data related to blocks per relay, builder payments and MEV-boost share are able to be found at <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://mevboost.pics/">https://mevboost.pics/</a>, one of the greatest websites on MEV data - big thanks to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/nero_eth"><u>Toni Wahrstätter</u></a></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>mev</category>
            <category>modularity</category>
        </item>
        <item>
            <title><![CDATA[From Linked Lists to Namespace Merkle Trees]]></title>
            <link>https://paragraph.com/@Maven11Research/from-linked-lists-to-namespace-merkle-trees</link>
            <guid>6bcRK6UBgFliHTzalSu8</guid>
            <pubDate>Mon, 25 Mar 2024 22:03:03 GMT</pubDate>
            <description><![CDATA[We’ve covered in relative depth how both Merkle and Verkle trees work in our article “Beyond IBC”. However, there are other applications and derivati...]]></description>
            <content:encoded><![CDATA[<p>We’ve covered in relative depth how both Merkle and Verkle trees work in our article “<a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/beyond-ibc"><u>Beyond IBC</u></a>”. However, there are other applications and derivatives of Merkle trees that we do think deserve their own article, because of their unique properties.</p><p style="text-align: start">In this article, we are referring to Namespace Merkle Trees (NMT), Merkle Tree Mountain Ranges (MMR), and also Jelly Merkle Trees (JMT). This article will thus serve to explain some interesting aspects of them, their use cases, and hopefully, you’ll want to further explore data structures further.&nbsp;</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-a-history-of-data-structures"><strong>A History of Data Structures</strong></h3></div><p style="text-align: start">Merkle trees are the most commonly mentioned data structure when talking about the inner workings of many infrastructure projects in the blockchain industry. They are named after Ralph Merkle, who patented the concept in 1979 after introducing them in his paper “<a target="_blank" rel="" class="dont-break-out" href="http://www.ralphmerkle.com/papers/Certified1979.pdf"><u>A Certified Digital Signature</u></a>”.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7211d151c8ec26f51d10697b4b639f41.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAIAAAAUMWhjAAAACXBIWXMAAAsTAAALEwEAmpwYAAACq0lEQVR4nLWVIZisIBDHCZevmUwmks1mspFoNhvNSLMRaROJRJqRaDQaiUYi1cj7bud93u7d7t2+++5NQnDmx/wZGJL/s5HfCnRc7PPkrwEe2RvgM/nJDf4QgJ/n5HE1SCnlnFNKz8MeSnQcR4wRI+acQwgAQC5GKe267knGfUBKabqYEGKaJmMMAGzbdhyH915dLIRwzXjEuw8wF1uWRWvdNM2yLB9+2LZNa62UOpeulbyGfQTgWl3XhJCyLMdxrKrKWnv3qFJKWmtCSFVVRVE0TbOu61cZYIhlWaqqEkIAQIxxGAZ0+yxCSkkp5ZzjnFtrY4zWWhTwPLx3APqv62qMSSkBQN/3ZVnO83xXRoweQsg5xxiVUlpr59xxHOu6KqVuABhdSvn6+goA4ziGEPZ9994Pw4AHjpvF/9d1JYS0bau1ttaiOyGEMTZNEwAwxrz3NxnEGCmlWDNCiH3fEVzXdd/3ACCEOLMZhqEoCpyUUp6Al5cX55wxpm3bbdtuAFiImOM5aYzZts1ai5rikvfeWruuq3POWgsAzrkQgpSSMbZe7MyVoI8xhlI6zzOlFNNUSnVdRyk1xvR9zxiz1s4Xo5QCANaPlFIpVRRFWZZa62EYUCgp5TzPb48dApxzbdsCQNM0dV2P4yiEqKqqaRrOedd1OBZC4GVmjFVVhbeaMYaTQgjOOd7zpmmklCmlvwAAwGJfluUsAADAe5RSEkLgPjjneCQ5Z6yIGGPbtqfXNE1njb5LJKVE1ay1nHNca9sWK2Hf967rEMkYU0phFNymtdYYMwzD6YW1+7FMz5fyXN4vhuNt20II3nvOeV3XmK73PsaIXjhADW4yeLIf5JyVUvM8xxivX5tv+8Q/d7TjiRf0e8DPmle+5/6Tnny3uT/6+RvAk4J8AfgDAOxw9bjbjmUAAAAASUVORK5CYII=" nextheight="807" nextwidth="1051" class="image-node embed"><p>Merkle tree from Ralph Merkle in ‘A Certified Digital Signature’</p><p style="text-align: start">The fact they have received so much attention in the crypto industry is hardly surprising, as they have been a critical data structure in commitments to the global state and transactions roots of blockchains. The most clear-cut example of this is the fact that Merkle Trees were first mentioned on page 4 in the original <a target="_blank" rel="" class="dont-break-out" href="https://bitcoin.org/bitcoin.pdf"><u>bitcoin whitepaper</u></a>. The stated main advantage of using Merkle Trees in the block header was to allow nodes to discard spent transactions, consequently saving disk space.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/1f42cfd81d3672a2d8014b46f8f01a42.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAHCAIAAADmsdgtAAAACXBIWXMAAAsTAAALEwEAmpwYAAACL0lEQVR4nGPYtXPHxUuXpk2eZGZhERkZGRAQ4O/v7+3tbWlp6e3t5ecfYGVllZOTc/TIkf////8Cgd9g9Os/GPz99xfCgEmBqd8gNRBxhnPnzt65e3ffvt2BwSEFhYVJSUkZGRne3j5lZWXRUVEdnV2ubq4xsTEnTpyAmALRBmF/+fIFTRAO/v77BxFn2LZ9m5OTUw4YeHt7N7e0ONrbx8XF5eYWzJo2deqUKUVFhatWrQoKDLS3s/PzDzA0NIyPj9PR0TU0NPTx8bazs8/LzfXzD7C0tExKSjI3MzM2MnJycgqPCFdTV6+rr2c4dfJ4QkJSaGhYTk62vZ2djo6OuKhIakpqZka6h48fAwOLrIqagoJCR2dnR2entZWlqamJsYlpWGiIm7tHSnKSjo52WmqavZ0tPz+/uYVlWGiIt7ePgoJidXWllrZ2XkEhw5zZMxkYGFVUVM3NzEJDQ83MTDU01BUUFFOSk5i4+BjAwNzC0tfHR0xUVFlZOToqQkFBUVtTy9DQwN3dw9jIyNrKysnJUUhYWEdHx9jIyMLSQllZOSAgQEhYJDsnl2HFiuWmpiZmpsa6unqRkZGODg46OtoFhYWTp0yJjopITk4uKcidNmNWYWGRl6dnbGxcXU1lUVFpWGhoWnr6rFmzyspK6xua+/sn7Nu3r6ysLDMzMyMjc+KECQEBAWVlZTNmzmI4euRwR2dnenpaW1tHV1dnf39fRkbG8ROnIBGFGXukAgBOoWBiJ8eATQAAAABJRU5ErkJggg==" nextheight="121" nextwidth="550" class="image-node embed"><p>Original Mention of Merkle Trees in the Bitcoin Whitepaper</p><p style="text-align: start">As part of scalability research (including statelessness), a lot of resources have been put into altering Merkle Trees. This is because as we try to scale blockchains in a way that does allow people to keep running nodes (why? See <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-modular-world#%C2%A7end-user-verification"><u>end user verification</u></a>) resource usage must be minimized. Through that lens, the various ‘flavours’ of Merkle Trees are fascinating innovations for scaling and security within blockchains and infrastructure projects.</p><p style="text-align: start">One thing that does warrant being said, before we dive into the various data structures we’d like to showcase, is that some of them have different purposes. For example, JMTs, Patricia’s (in ETH) and Verkle trees are used to commit to the global state root, while NMTs and MMRs are used in transaction Merkle roots. However, both’s roots (top node) would commonly be provided in a block header. In Ethereum’s case, standard Merkle trees are used for transaction data, while a Patricia tree is used for the global state tree.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-namespace-merkle-trees"><strong>Namespace Merkle Trees</strong></h3></div><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://github.com/celestiaorg/nmt"><u>Namespace Merkle Trees</u></a>, also known as "NMTs," are a type of data structure that is used to organize and verify large collections of data on a blockchain. As a variant of the aforementioned and more well-known Merkle Tree data structure, they offer a number of advantages in terms of efficiency and scalability when it comes to applications and rollups requesting data specific to them. They were initially presented in the <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/abs/1905.09274"><u>LazyLedger</u></a> paper presented by Mustafa Al-Bassam of Celestia in 2019 as part of his PhD.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/80ecd355dd7c291e6046c1264d7f2b38.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAVCAIAAACor3u9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAEcElEQVR4nLWU0avbVBzHT/6CPfTpUvXhglSuVAqRSre6SsBCsNtBq93NQzRwx0UCfQiU5aHQ4ZGrCxTN8KEPV64QCNJhoLqomXULBu3DHoK9GF0nkcPIrnHGcR4KAfMQuT14QeZgY/p5OBx+OTnfc37f3/mB/H8GPMgiQsj169fjOJ7P50EQLBYLz/OiKPoPBLIsy/McIVQqlViWBQAUCgU69vt9z/OO1jySgG3bjuMoisJxXKlUEgRhMpm4rjufzx9VgLJcLqMoGo/H2gqEEE1U/gDcVyDLsjiOCSFJkuR5fuzYseFwSAjJ89xxHABAlmXkb9I0fQgBemVN0yqVCoSQYRgIIQCAZdl+v9/tdnmeByvq9frGxgaEUNf1++XqvgLGivoKjuNarZZpmgghTdNM05RlmX4ql8uj0cg0zYcWmE6nkiSpqqooiizLe3t74/E4DMPFYmFZlmEYqqp2u11VVUVRtCzrQQXoIsdxLMuK4zjPc8/zqJ9H/9MJfQ15nsdxbNv2ZDL5dw+Wy2UQBBhj3/eTJNE0DQDg+z7GOAiCPM8ZhqnX6/StJStodVarVQAOzxcEASHE932GYQaD8xjjMAznK5bLJUAINZtNWZYBAOvr69S9ra0tRVHa7bYoigCAYrFYLper1erW1tb29rYkSaIoMgyztrZWq9VYlkUI9Xq9YrFYKBQYhmFZdn19vV6v67oODMMIgkDXdUmSeJ7v9/uEEEVRRqOR53nD4ZDn+VKpJMuy53mDwfmdnZ3ZbIYQ4jiOZdler2dZFkJoPB5jjFVVlSSJ47jRaIQxNgwDRFHkuu50OjVNU5Ik0zQdx4miaDabua7reZ6iKLquT6dT13UxxovFwl2BEFJV1VsRhiHG2HXdyWSiaVqv13Mcx3XdMAz/YbJhGPcabtu27/v3muz7vm3b9xYPPdxR/NBkQkiWZYZhFAqFNE3p602ShPbLjY0NQRBoT43jOE1TGpckqVgs5nmOMY6iiO6TpimEsNlsUqU4jg9NFgRBluVmsykIQqvV6vV6nU6n3W7ThFarVeqqJEk7Ozv1er3f70uSJAgChFAQBGVFt9ul/kMIVVVttVqDwflDkzVNazaboiiWy+Xt7e1arUZLpdPpyLLM83ylUqH+8zy/u7vbaDS63S6EsNPpQAg5jpNl+cKFd1dV9yqEsNFoIISq1aqqqpZlgT+zLLnze5LcoS3zaIzjOIoiQgidJ0lCI2maYoyP0kgIoalI0/Tg9sHdP+4SQsIwpPskSQK+veZ8PLZ+vLH4fj6/deuW41wJw19s214ul7Qx7O/vT6dfHfx68NONG57n3fkt/vnmzR+CIAxD2rSDILh2bfrJpUtffHnl6tdXP7v86e3bB7PZd2EYZlkGvpna/KlXnqk8+7ooGoah6xc/ty/XarXd3T1JeoN/6fTxEyeefurJd4bvDQYDhNDb6C3u5An2ueqZzc3nTx5//LEnzmx2zp5984P3L56G8LX2y6dardGHH507pzReeHF/f/8viya55+oeGAMAAAAASUVORK5CYII=" nextheight="205" nextwidth="318" class="image-node embed"><p>Original Diagram of NMTs presented by Mustafa Al-Bassam in his PhD</p><p style="text-align: start">One of the key benefits of NMTs is their ability to organize data into a hierarchical structure, wherein you can efficiently verify individual or separate pieces of data that an application requests. As a user, you only need to retrieve the corresponding leaf node and its parent nodes, rather than the entire dataset.</p><p style="text-align: start">Another advantage is its ability to scale to very large collections of data. This is made possible by the use of multiple levels of "namespace" nodes, which allows for hierarchical organization.&nbsp;</p><p style="text-align: start">As with any Merkle tree structure, they use cryptographic hash functions to combine (hash) the data in each node, which ensures that the data cannot be modified without detection. Additionally, their hierarchical structure allows for efficient and secure verification of the integrity of said data.</p><p style="text-align: start">Every chain (“rollup”) on top of Celestia has its own namespace, for which the data is merkelized and sorted. The final result is one short Merkle root, where each rollup has its own subtree (namespace) that it can pull and watch data from. This is especially relevant for blockchains with potentially more blockspace per block (while enabling light clients to be first-class citizens through DAS) as it allows you to pull data without having to pull the entire block.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/a75809860650852282943086d4e6d0c9.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAE6UlEQVR4nJ1VXWwUVRSebDud7YW707uznbvTcQysU2i3W8fZodPpdlsY1umw7fYX2oIUQZZNpaASoS7QULJsi2BLYKWICI0SH0iMCcb/mEjUkGggEBNBfUGNCQYSkQcfeahhb7osZcuDX24md+585345P3MOxRYChFAQhHA4bNu2aZqGYcRiMV3XQ6GQYRi2bauqCiEsaIsQyn+lCpIID2MsSZIoimSDMeZ5XhAEnudzt8AscnsAADkBWUAI5xUgBguzJIZh6Cxy9gghLgs+C0mSwuFwJBKxLEvTNDMLy7ICgcDjBIgfEMJaRbXsVdFoVJZljLEgCHgWRIboiaIozEIURUmSeJ5/nABCCACAEIoPbkuOpjs6OogeiQ9xZU6I5mDeHJArGIbx+XyKokjSk7IsS5Kk6zrGmKjOSeZ8KCAAIaRpGkKoKIqqqizLkowBADDGuq7LskzTNMOU/B8BCCHGuN5oSCaTmqbRNM2ybBlCZbNhAQBUVVWl0+mGUCPP8/MVa2EBjuNKaHpZnZ6eyPSvGyguKiIJzOcghBiGSQwOjY69oaoqTdOPcuYVIJHx+/3L6uoCgYAoihRFAQDmuAgA0PV6VQ0qikI4DFMynysPCYRCjfF4HCFUki15WZZ7e3tluZJlXfm03Xv2hkIhiqIQQoqiJBIJRVEwxgU1qNlyLDWtlvGJzPIVK3JeAwD2Hzj42khKlmUAQBlCLgj71z2/b+xQVVU1hLAMoVKns69//b6xw03Ny0udzkdjdV8AQuigqIZQ6IXEi5WVlTRNk9s5jltWp/f09vl8PmJM07RuGD2r+yqECgCAm+McDkdNILBx0xZVDTocjgIeQAh5Hm9JDHZ19QQCNUePZniMXdnDN6emZFkOasFdw8OkTwQ1LZVKuRHKZDLkV6oQxaHt23meN03zlR07GIaZK8AwTEtb64GJjBFq1Or0ZGrcirYWFxWtXjswMnZ4SXV1S1tsT/r1p1WV47jtu3bHh17WGxr2H5yMtndQFBVt70imxpdUVz+jqmNHjtttMQBK8wNFLXA6JQ/ub+92A+iiS/rbuxd7K4qLivy+yjWtHcUU5ROeSAxs9sAyUMK0R6LNeoMbwJcSQ8GltTRFeRG3tnONB7IYcRt619c+tWSB82GB0KpI+qfPM7cvDRxPbXvv6Ilbl3d/e65n84ZTt66c+Ofq4StfpH/4+NTfVwffOdS1LX7yr8sHLn2y9czk6Z+/Gb3wwY6J1M4P3566cfG5yZGu4a1T1y/s/exsU1sLCx9UHdW6ae25mdvTM78NnT85dv2rszM3R6592h3fcPrf60fuXj5y8/tjNy6mf/+6cyK5eudQ5u7V0V++PHbju7fu/Xri3rU956dP3/nx3Zk/X73w/vBHZ6Zn/pi8c2nlxj608EG9UvV6vd28srMlGmlaUVO51ANdbgBr/P5Grc4KN7eZLUZtcLFX4BZC3s0hJ/AA6IHs/SeAtdV+u3ll17OruqNtZlNz1SIfD1nfokX5LYTied5TXu4VvGR0eAWvN9vuPeXlucVj7BUE8im3POXlbo5bAO+Hw8W6XNmW5ea4AmWamxi5OUX6Uv7MyhFyCcy3yoGQ5wr4/X4y8DRNs22bdGnbtg3DCM8iEonouh6LxUzT9Pv9mqbpuq4oimVZpmmqqhoIBMiYDIfD+T3jPwaPUn4PBTMvAAAAAElFTkSuQmCC" nextheight="1017" nextwidth="1456" class="image-node embed"><p style="text-align: start">As such, an NMT on Celestia is a Merkle tree with the nodes ordered by namespace IDs and the hash function modified so that every node in the tree includes the range of namespaces of all its child nodes. If an application or rollup requests data for a specific namespace, the DA layer (Celestia) then supplies datasets for the specific data relevant to that application as a result of its unique namespace ID and provided nodes in the tree. This allows us to check that the provided data has been made available in Celestia blocks, hence the name Data Availability (DA).&nbsp;</p><p style="text-align: start">Another implementation of NMTs is the ones used by <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/sovereign_labs"><u>Sovereign Labs</u></a>, a ZK sovereign rollup, who have been implementing them in <a target="_blank" rel="" class="dont-break-out" href="https://github.com/Sovereign-Labs/nmt-rs"><u>Rust</u></a>.&nbsp;</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-merkle-tree-mountain-ranges-mmr"><strong>Merkle Tree Mountain Ranges (MMR)</strong></h3></div><p style="text-align: start">A <a target="_blank" rel="" class="dont-break-out" href="https://docs.rs/merklemountainrange/latest/merklemountainrange/#:~:text=A%20Merkle%20mountain%20range(MMR,existence%20inside%20of%20the%20tree."><u>Merkle Tree Mountain Range (MMR)</u></a> is a data structure that is used to maintain a consistent large log of data that is easily accessible without providing the entire tree. It is also based on the concept of a Merkle tree. In an MMR, each leaf node represents a piece of data, and the hashes at each level of the tree are computed by attaching the hashes of the child nodes and applying a hash function.</p><p style="text-align: start">The MMR structure allows for particular efficient insertion of new data and the ability to prove the existence of an existing distinct piece of data within the tree. The name “Mountain Range” refers to the specific construction of the tree; It is constructed in such a way that it always tries to maintain the largest possible consistent single binary tree (binary meaning that each node has at most two child nodes), which can result in the tree structure having multiple “peaks” (hence the mountain) or sister trees. When the root nodes of an MMR are needed, the peaks of the individual trees must be batched together to compute the root hash of the entire MMR (the block header, root (top) node of a Merkle tree for example). This makes MMRs a useful tool for maintaining a consistent and long-term secure and verifiable record of data, where certain parts can be updated and referenced as needed.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/24398b504042a9ef8ce0704d5b354189.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAADHElEQVR4nJ2Uz28TRxTHXRbGHWsyZDVhPF5ZNQPrrZNNl6yjTkiGGq03DWw2dhwvDk7lRD00aizsOCoVDVKLRKBw4Efb1FGJCm0jIAJVLeLP4Yo48AdwT4WdRmmUoKjfw7vMe+/zvk8zE1L3IYSQbdv5fF4I4bTkuq4QwvM8x3F833ddF2O8a21oPwBVVQkhjLF2pJS2Yzwe1zSNtLRX4X4BO9SeF7ekvlN7AjDGlFIp5Va7/6ddAIQQjDFjLJVKmaZpWVYikUAIvXsV+wVgjBVF4ZxLKRljEELGmBDCsiyEEABgLwbGuD3ZDrs7AZqmTU5ODg4ObtWorVvEOfc8L5PJ7GoXYyyEME2TUmoYxnbGJoCQLoxxd3fPreVfLn59CUK4fSGEEEVRhBDrfz4/V65E3p52tVsjhOLxuOu6tp3WNE1K6fv+dpebgLb9XssaKxTT/f2qqiqKoqqdW3kRCKOU+rlC1h3m/CgAAMIwIcS27ampKSkl59xxHM45Y8wwDAjhfwDd3T2NRkPXjwNwsANjx3HOl8uxWOzf/p2G8eHtO3cIIREIU6lUrVYXYsDzvCAITNNMJBJz1frVpaX2oPX5+blqHSG0CSCEfH/7p9nqBQAApdEIhJzzR0+fjRWK7V2pqtq4uPjd1RsIRQjpgjB8Npdv3l879cnpaDTKGEvqyaWbt4LzU2EAMMZnRnM/NFd1XUcIhcIAvP0GChMzMzMdLSZCyPO8E3Z6ulLBuKP1II4EQeB5XlLXOzBW3jswZPZNV6blx6Lf6PnINE9YlpTypBDHjx0LhUK+P5p13SCYIISExoPSw/UnSV1/8MfjUrmiKAdK5crva48ppcsrq1l3WFGU2vxXi5e/LQTB3R+b7x889EFv6u+N13d/Xbl+v7n+5kV6QDTv/eY42SEpl1dWhRho3nuQyWS+uXxl+vMvQmOFiWLpsxhj+WLJyQ6HARgPzo0Vipzz2Wr905GznYcPz9UW3JEzo7n84pVrsSM0JcVfGy8rjeqltZ+fbbzqHzr5ZbXe29en68nZCwt+Lj9XW7Dt9HhQyroj/wC7BNEc91BCMQAAAABJRU5ErkJggg==" nextheight="653" nextwidth="1456" class="image-node embed"><p>A small representation of a simple MMR</p><p style="text-align: start">Now imagine this on a larger scale, and you get the concept of MMRs.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/1a21367f6517d9f12746dd771f6adba1.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="768" nextwidth="768" class="image-node embed"><p>Artistic Representation of a Merkle Tree Mountain Range</p><p style="text-align: start">The ability to efficiently prove the existence of a particular piece of data within an MMR makes it useful for non-interactive state proofs, alongside Verkle Trees, which we’ll cover further down. A state proof is a method of verifying the current state of a system without requiring direct interaction with that system. In the context of an MMR and Verkle Tree, a state proof might be used to verify the current state of the data within the tree without having to directly access the tree itself.</p><p style="text-align: start">This means you can allow a prover to provide a compact proof of the inclusion of a particular piece of data within the MMR. The proof can then be verified by a verifier using the root hash (known as block header in block commitments) of the MMR and the hashes (child nodes) at the appropriate levels of the tree for the data needed. By utilizing this method, it allows the verifier to confirm the authenticity of the proof without having to access the data in the MMR directly. Appending an element to an MMR is much more efficient, as you don’t need to navigate through the entire tree to include a new dataset. All of this can be achieved on-chain, which allows for full transparency. However, MMRs are much more expensive in terms of gas than Merkle tree proofs to verify on-chain (<a target="_blank" rel="" class="dont-break-out" href="https://github.com/miguelmota/solidity-mt-vs-mmr"><u>Comparison</u></a>, note append gas and verification gas being different, although committing to an MMR is cheaper). In most use cases, MMRs would become infinitely large and not able to be verified on-chain (as a result of gas usage), hence off-chain verification via an open-source “trustless” ZKP setup in many cases.</p><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/HerodotusDev"><u>Herodotus</u></a> is an example of a project utilizing MMRs for their non-interactive state proofs, wherein the data required is computed into a ZKP, which can then be verified as needed. This allows them to keep a consistent state of verifiable data that can be refreshed and accessed as needed.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-jelly-merkle-trees-jmt-and-tiered-commitment-trees-tcc"><strong>Jelly Merkle Trees (JMT) and Tiered Commitment Trees (TCC)</strong></h3></div><p style="text-align: start">Originally developed by the Libra/Diem team for what was supposed to become the Facebook/Meta chain, <a target="_blank" rel="" class="dont-break-out" href="https://developers.diem.com/papers/jellyfish-merkle-tree/2021-01-14.pdf"><u>Jellyfish Merkle Trees (JMTs)</u></a> are a modified version of AR16MT. JMTs have several features that set them apart from other implementations of Merkle trees. Namely, version-based node keys which allow for smaller key sizes on average, reduced complexity with less node types, and a concise proof format—meaning less space usage and faster computation. They function to provide what was called either “Proof-of-Inclusion/Exclusion”. Which tracks the binary path to the intended node.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/cde721cac34ea4ee59242530c7b183bb.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAeCAIAAADCaIt+AAAACXBIWXMAAAsTAAALEwEAmpwYAAAEaUlEQVR4nLWWz28bRRTHJ/bu7GTiGU9Ww67W2Zpgx8a1kizOxu7G2tRxFBxvfuBAnVghIXEbErVFSLQoKT5x4sABiQMXUBASBxBIFVIrIlAuQAXigvgXEOISIST+gyB7muDaaRoX+j3Njt7sZ97Me28eIG1ijJmmSSkNhUKcc9M0VVXlnFNKGWOEEM45Y8wwjHA4rGkaxpg8XKDlG2PMOS8UCp7nzc/PTzVULBYLhUKpVCoUCslkslKppNNp13XL5XIulzud0QoQQggxxhBCuCGxd1VVxYAxRikVZoQQMe4M0LyGNsaCdMqPOgOciBR6UgBYlwwhfCKAAMb26Oj8wkujmQxCCiH0/wQghCKRyPrm9efnXnzlyhbnvKPLeASAUipJUjgcvvra6wtLK4uVZVVVRVz9BwAlQRY8DkTTNOPxuGEYRqieWZlMhhAiSdJxsHYIoPWIlAGAEFJKE4lELBbDGIucgBBqmpbNZpPJ810AiDzoBECpApWQYYwUJwat4d0PPwr39zdHDmMMAGDb9v7+/rQ3M2w998j7eADQEwhwTOY+fefWX3vr9z6xbVuW5LZzoBh3L6+sFV9YXKluxmJx4etZAVqAXrr93s6fdzZ/+Sxk9ikQkrbFjAWnvbml1Y0rW9cTiYQA3E/DNuPWI+qGyHj6nLuxNJBM9CioZYH4CwAglUplMhdM81wkEonH4wghSZKhX27f0EmXjBAEoGFKmoUx9vl8kiRVq9VYLAYAEAUKIVSr1VaWl0MDkYFn48gvNTNODFNKj8L0WBhjTdOcrDtd9Gq1WnN1UhCKh595+f23b/z+1davnyfSI7CJcaZSQSmFUHYvTl5aqVbWNjLOmCT5j3dAGZMAmHr3Zu3vve2DvSFvQgG+jgE+n88dv7i2cW1989p4bkKSpGYXMca6pl+4XHZKxfrNPUY1ZYxZljVsWfl83jCM9vCvpyEAMuhqmT8NQAnpZYwSAgBwHEfTdQCA2dcXiUb9D3pw354FgyzYAQBjDAAAsvzx7m4ikRD1hxBSe3PHeEpTkELPULcfCujGmKm8Vl6szsxMTU/X/yTKnwQ/uPvlzKurPQrqCQQeE9AbDAK///u3bh3+fO/wpx/ylgV8vl5VhQDkb1x+47cvtg++zl9dhQDQtjM5M6DLf3dn+/DH7w73v50dG2sAehXgsxdndg6+ufnHnbGl+eZw7AwgLiBA6dLkpD04COR/S15AQcPjzvn0CJbP9D7XAS3tQvMYdHX5IWypR9AvQX9rFInP9s4DUEpFPRHvl3hYhAcIIWGrqqpIBTHZEwh04+66i0fZcNw1NZqPumdiph6H/f39xWKxVCoNDQ3lcrlyuey6bjQaLZVKCwsLqVTKdV3btmdnZx3HGW8onU47juN5XjqdzmazlmV5nmfbdjabFf2kZVmZTKZSqYTD4boHuq6LDlfXdcMwdF1njOm6LppfzjkhRNM0VVU1TRPzpmnquq4eSdd1YWCaZjQaZYxxzkOhkKqq/wAc8A5MuyUjNwAAAABJRU5ErkJggg==" nextheight="1354" nextwidth="1456" class="image-node embed"><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://penumbra.zone/"><u>Penumbra</u></a> is another project that is utilizing <a target="_blank" rel="" class="dont-break-out" href="https://github.com/penumbra-zone/jmt"><u>JMTs</u></a>, although with some changes. Penumbra uses them to record all values related to the chain such as valset, proposals, assets etc. This, despite the chain providing privacy, obviously still needs to be stored and available to clients, so that they can verify that the information is indeed correct. A sparse Merkle tree, such as JMTs is ideal for such a purpose.</p><p style="text-align: start">On any other blockchain, full nodes handle all transactions and keep a record of the entire chain state. Clients can check the accuracy of the data with Merkle tree commitments. On Penumbra, however, the chain only stores cryptographic commitments to private user data, and lets clients handle transaction execution and instead provide ZKPs to ensure that transactions are computed correctly. The implication of this is that clients must create Merkle proofs for verification by full nodes, but as the number of users on the chain grows, the burden on clients to process every transaction becomes unsustainable. To address this issue, they use a <a target="_blank" rel="" class="dont-break-out" href="https://rustdoc.penumbra.zone/main/penumbra_tct/index.html"><u>Tiered Commitment Tree (TCT)</u></a>, a light SNARK-friendly Merkle tree with subtrees that enables clients to ignore transactions that do not affect them.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7bbd2e25b0b8c99363986f089273ea20.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABsAAAAgCAIAAABsC5RsAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEzElEQVR4nJVWz2/cRBQ2aZzdODvrnXg7jjsMNa4zmUxc3I03i7VsN+tudrebZtsqSRPUH0nYNm2TtKUEtRRVoFYCxAEOVSn/AarEgUP/AM5cqIQQ4o74I5A4BMXTGHe7SeA7WJ6nmc/ve+/Ne5bUbgAAEEK8EJRSzrnrurlczrZtx3E4557nua4LIXz1rLQbI0KIc04pNU2Th3AcxzAMGsIM0fWs1NUqSBVF0TQtsQNZlhVFiZaJROJ/MEIIeyTpg827Pz3/rVyuEELy+YlyuRxFwPf9XVWD0BewA2FVFCUNUpeWlr9+9HjMcXoPHEAhIISaphmGoYXo7iPG2Igh/Gx6lPOllbbnjUuStLC4mJ+YiJ9RFGW3WKmqKvm+X6vVSqWSbdvlctm27T5Zbs3OX16/9aZlpRRlduH8xubdQxjLstxV5j6q+5NJSmn4mbppmj2SdGKy0phq1Go1jF8HAMRJxTvYidULxvgiDcDJU6dv3L7TOn1m86P7janGSKX4zd+/nLzVXrt+80J79TAhhmFwzovFImOMcy5SVCgUGGPi+RIjAGCyEpxoNI+6uekzc6OMj7zt3X/+jJZ9bzx/vBJkdlwTmYEQiozpuh4ZO6tHUZRUWHQQZhL9SUqHz55o9ErSAADxAowKo6NIAACdjCI04qlIB0hWTypKOnZSBL0zHf/lzsC0+s6Ni/PfPjQtcxAOkhAYY8uyMMZ7kEpdrQOpgVRvX/uHJ5//+aM9QoeGhkR3sCzLcRxCyD6MiUQiUiSsCKEgCPjICDmEJ/J5sUfo3V+1aZpzc3OiWRWLRVVVNU1b3bhxeX1D0zSE0LsXl2cXziOERHwF/g3OKzUvQQh1XReJxxj3J5MIoUZzuno8UPq2kzvdOj1zdo4QIst9wscIQpwSwwvVkRAAwLiXv7627owfaz96+MYxPmwPr7RXC77/4b2PK1N1hBAhJGqRjDHbtl3XtW1bGDvrEULYvrp+aelycbb53dYf9U83gtLk9fc3JyuVs/OLrdlzur7NyBijlApqwWWFsG27kxEAYBiGaZqyLC9vXFtuv9cjSbZtpxRFtLK4wL1UxxHtGMoi13UHtpep0J5Wu6FLZtRdMACAO8ozie0Qp7d7yEvYp5sldpyPtmZgJpVUivOnJlfOHcxmIYQYY0IIQghjLCppV0aMMedc13XTNA3DeEEK1YEe+cqzJ4//+tkeZRhjx3F83xc3hzG2150xTbPRaIitnudF14ZRynJvFZv1UcZkuVfkQYR4f9XyztgUdBAOtmbnH3z25cFsNpuBixcuTDWaOkKD0Y3ZczZI8bsFIUwk+jA+tNxerTWnAQCapl1carevbagISa9JmVhb2y1FUsf6iG0vLC5SSmdmWrquG4Zx9doa5/zpnbtX6nUllRLJ0XUdIWQYRvzKdTIKj9Zu3l65ujbdaj344qtxLx/U6rfvfdJqNLd+/3Xr+6f9g4OHCSmXy6VSiTFWrVYZY6ItRKSdk4vzsRHGCCHjnifcGXOOplU1z8eOmGYydMd13VKp5DhOoVDI5XJBEFBKuzOqqtqfTIpR0yfLaVUVL6qq9oZ5E3GklFar1SAIfN8vFAqcc8uyIoYuc6YjodHkEYNQNFDTNCmlrus6jqNpWvwv4x/ZFCPxVLyloAAAAABJRU5ErkJggg==" nextheight="1600" nextwidth="1370" class="image-node embed"><p>Representation of a Tiered Commitment Tree (TCT) used in Penumbra</p><p style="text-align: start">Note that a root refers to the “top” node (which is what is provided in a <a target="_blank" rel="" class="dont-break-out" href="https://ethereum.stackexchange.com/questions/268/ethereum-block-architecture"><u>block header</u></a>), while child nodes are also known as leaves(leaf)—hence a tree.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-verkle-tree-integrations"><strong>Verkle Tree Integrations</strong></h3></div><p style="text-align: start">Now that we have discussed various flavours/alterations of Merkle Trees it can be interesting to look at one integration that <a target="_blank" rel="" class="dont-break-out" href="https://vitalik.ca/general/2021/06/18/verkle.html"><u>Verkle Trees</u></a> can achieve. As mentioned, Merkle Trees can bring improvements to the resource usage of nodes, this is why they were used in Bitcoin in the first place. One big effort in this area is using Verkle Trees to reach what has been coined “statelessness”. Statelessness is the concept of allowing nodes to disregard state they have no interest in (<a target="_blank" rel="" class="dont-break-out" href="https://github.com/tvanepps/EthereumDiscordGuidebook/blob/main/state-expiry/README.md"><u>read more</u></a>). One instance could be that state not updated over a year could be disregarded by a node. However, this state will remain revivable at a later time via polynomial commitments. This would vastly reduce the resource requirements for nodes. Verkle Trees are a critical component of this because they enable smaller proof sizes, which makes statelessness (either weak or full) feasible. These advantages are a result of the parent node being an offshoot of vector commitments rather than hashing functions. However, this comes at the cost of compute efficiency, as mentioned in our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/75212553/verkle-trees"><u>previous article</u></a>.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4a4858082be1b4bb6ed61e5f65260a06.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEIUlEQVR4nJWUf0gbZxjH748MY7lkp6/1XnP1NJcj/rrTxKTtqSenO4vdruY2g1fq+aMzNZL4Yy6h4rK0dmaodKHaGURRZ1yL4phsE+100jLWldKBXR2jHRWK4Pxn//nP2BjIMIIrXTa3L89fL8/zfni+z/O+SOrfhGFYY+P5oaHhTp+v0+cLBi+dO3vW77/Y6fO1d7R3+nzdgUBbRwfP8wCA1MOExD010abcvNz8gnyGybPabAU2e6Hdnh0TwzDmLDOE8Pl8AFL+KeIDYjVAr9NhycD/Xl/kxkxZlXwkMREAkIQlgb3SlP00A2GAENJmozmHzsqlTXSGyUzlsLTRlLEfcQAQwljvuInOLD9VHhq83tXT62ptN9EUZcrE4VHKlEmbKdpsNNEZtNloIAysNdvGsRZ7Xg5rzmHNrDWbNhtZa05WLh0HoNfp8llWVdXZhampueHjHHMs3XD61Qq3x9Xsbn6j+vU0A65/WY9DHId4XIuSsOT4FkEIk5KTT8vVV0fGcJhm49gTJVYQcwPDML1On4QlVTkc09MfK4rywhj+05CPJCZabfaZxS8Xv71feUZOTTmqfSkhJbYqEEKCMKAoarFYfvv9j62ft7OzszEM+3+A3lCoOxDINBpzGVaWZU97R63rwjEy8yABAHCutlaSpOKSku5AIC0tDT+sD2S/U41GEwwGd3d3o9GoRqOBECIIUlVb99W9B0pTi16nMxAEiqKyLD9+8lNbR4connr0w4/DkQiKoocAUBQVBMHj9Xq83lAo1NLiQVEUAEBR1NsXuyRnzQV3y95ssD0JgvDp/Betre0EQQwOfRiJjDIMcwjA7/fPz3/GMIyBIC73XBkYCGMYJori5uZWOBxGEMRZVz82O1fAFTW73WsPHy2vrC4u3err7x8fH19YXFz7fv3a4ODBOsUBjE9M3r13n+d5kiQ/X1haXLoFAJBleWdnJxwOa7UJkqLcXluvrK4RRXFyano4MjI+Mdkbej8cHpyY+GhkdOzGzZl/+TMQVa3r9Pk4rkirTfB4vcHgJYqiSDK9r7+/2e3WahOKOe7mVLS8tPQVsaKvf8Djbbvcc6W+8fybTU31DQ0eb9vVD64xDAsAgDG9CFheWd3c2uZ5niCIr7+5+/jJBkVRJ46f3Nr+ZWR0DEGQmjOv/br+8K16teudd59uPFteWX3w3Vp3IHD7zp3ZuU+motGnG88kSdJoNBiGoSgaG9Zf64uQJJlOkvtkgiBIksQhbj1pLRKKueIijuNKeV4sLz9VUSEIgsViEQShRlE4jisvK+N5nuM4i8Vit9uFmGRZ5jhOFEWSJPd923sHzzsIAMAhXlhstxYXcjwny3J9Q32Vw1HlcDidzv0rVFWVJElVVZ7nFUWRJKmyslKSJKfT6XK5ZFlWFOUA8CdpvmIDFt5KdQAAAABJRU5ErkJggg==" nextheight="741" nextwidth="1456" class="image-node embed"><p>Efficient Verkle Tree (VT) Construction, in a normal VT there’s a proof for each path.</p><p style="text-align: start">Other projects utilising Verkle trees to lower the resource usage of nodes and make their data commitments to chains more efficient are <a target="_blank" rel="" class="dont-break-out" href="https://www.polymerlabs.org/"><u>Polymer</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://www.lagrange.dev/"><u>Lagrange</u></a>. Lagrange is compiling Merkle trees into Verkle trees for smaller commitments, so that the eventual Zero-Knowledge Proof (ZKP) that gets posted on another chain is much smaller and less costly than initially. Furthermore, vector commitment based proofs (which Verkle trees are) can be aggregated easier in a user’s browser than Merkle proofs within zkSNARKs. For this same reason, Polymer eventually wants to move to Verkle trees, as covered in our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/beyond-ibc"><u>“Beyond IBC”</u></a> article. They’re both using <a target="_blank" rel="" class="dont-break-out" href="https://github.com/mir-protocol/plonky2"><u>Plonky2</u></a> as their ZKP scheme for the on-chain verification.&nbsp;</p><hr><p style="text-align: start">This is just an example of cool shit you can do with Merkle tree alterations. We hope that it either piqued your interest in data structures or has driven you to research parts of blockchain infrastructure that you might not otherwise have looked at. If you're working on anything in this domain, reach out to us!<br><br>Also many thanks to <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/MathijsvEsch"><u>Mathijs van Esch</u></a> for helping with parts of the article, and for providing the discussion leading to this.</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
        </item>
        <item>
            <title><![CDATA[Horatius At The Bridge]]></title>
            <link>https://paragraph.com/@Maven11Research/horatius-at-the-bridge</link>
            <guid>bhu8OyYTdexr9FvhKXV5</guid>
            <pubDate>Mon, 25 Mar 2024 22:02:24 GMT</pubDate>
            <description><![CDATA[A well-known legend of early Rome describes Horatius Cocles almost single-handedly defending a bridge against Etruscan aggressors.Over the last coupl...]]></description>
            <content:encoded><![CDATA[<p>A well-known legend of early Rome describes Horatius Cocles almost single-handedly defending a bridge against Etruscan aggressors.</p><hr><p style="text-align: start">Over the last couple of months, we have seen token bridges be targeted by increasingly elaborate exploits. This has prompted several people to talk about the actual security of bridges. As such, we would like to present a comprehensive overview of security and trust assumptions in blockchain bridges. This will provide a complete overview of most messaging protocols, bridges and interoperability projects. Furthermore, we will also take a look at the economics of cross-chain messaging protocols and bridging, since this is also extremely crucial if the token of the protocol enables you to take governmental control over it.</p><p style="text-align: start">First off, let’s establish just how bad the problem has become in regard to exploits happening on bridge-related protocols.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/955728babf27d98c274f751cde0d5ad4.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAALCAIAAACRcxhWAAAACXBIWXMAAAsTAAALEwEAmpwYAAACtUlEQVR4nGMQExcXl5CAIBFRMWUtDRMPRw0LYx0bCwNHG3UzQ3UzQy0rE20rMxVDXQ0LY317a2UtDR0bS3UzQw0LQx0bcwNnW0UdLVGwOSAgJQkyEwYYBHj4+BlY+MCIl4FJlIdfXkpaVkpKSlRcSlxCjF9QQlhEWkJSUlRMjF9AjF9AWkJShIcPokCUj19KXFxaQlKUj5+XgZGXkYWNgYGFgYGXg5Ofn5+Xl1dQUJDBKjoga8v05FX9qWsnpK6dmLSiJ2pOU/S85uRVfWlrJ6eunQgW7Ete1Q9HqWsnJK3ogbCTVvSkrp2YtnZy+vopmZumtx/fNOXukYjKAhsLSzd3d1VVVYaE+vI5zy/0XNw78cahaXePL3p1Zdu/F5t+P208vj5z7ZSyXYvzNs0u37OkcOu8kl2LCrfOK9w6r3zPkrxNs/M3zYYIZqyeAkGZq6d07F0988K+0IIMQz39wOBgXV1dhuKi8sWzFy+avXD+jPmNlY0VBWUr5y/dtX67p62ThoxCsKuno4mFjb6xo4mFlY6hp62Dp62Do4mFuZa+rb6ps5mVlY4hFzhwIIidgZGVgYGPi1tAUJCHmwcURBlZueu37Xz14fO3P/8XrVgZGx8nKycrIioiLiEuKi4mDGYIi4pAkIioKFgQRIqKi0G44hLicASJZpRILimr2Hvg6JXrd2/ceVTf0Ozq6gKKP1QgLi4OJ5EZaGysgCG/sPTU+Sunz15etmptUlJSbGxsWFiYv7+/lJSUsDDIrRQCBikpKUVFRVVVVWVlZXl5OUVFRUlJSWR3CQsLi4CRsJAQiCEkLCQIYhBrgTAYCIIBhI0sLSYuLqeiJKOkICUnK6+mKq0gL6ukKK+mIq0gLyIMigLCFuCXlpCQ0LIw0bQwVNRQ07ExV9bSUDPS07YyU9RQI9ITAFpk6HMvBY9JAAAAAElFTkSuQmCC" nextheight="498" nextwidth="1456" class="image-node embed"><p>Comparison of Exploits</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/b228116626ebcaebb640a2a23bf335b8.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="1224" nextwidth="1456" class="image-node embed"><p>Bridge Exploits In Numbers</p><p style="text-align: start">As can clearly be seen, the exploits of bridges have been a huge issue as the number of chains in existence grow. This is only set to become a more systematic risk unless we prioritise security, and we as users need to be at the forefront of holding protocols responsible - it’s our funds at the end of the day. This is also why we are writing this article—to focus on trust assumptions and security in the interoperability space.</p><hr><p style="text-align: start">Likewise, as a result of the industry becoming increasingly multichain, app-chain and modularly focused we are also seeing a large influx of new blockchains and layers. To accommodate users and liquidity, interoperability is needed. As such, we've seen the importance and popularity of bridges, in particular token bridges, become increasingly popular as more and more blockchains start to build out their own ecosystems. As a result of this, there's a demand for liquidity to be moved from one chain to another. Hence the popularity of token bridges. Although this is not the only use-case of bridges. Here we are specifically referring to general messaging protocols, IBC for example, which enables a myriad of use cases through its messaging system and standards.</p><p style="text-align: start">An excellent overview of how many assets are bridged across various chains can be seen here (s/o to <a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://CryptoFlows.info">CryptoFlows.info</a> - creators are also behind other great sites such as L2Fees, CryptoFees):</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/b4aff951b27e667a16246914fbb7372a.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="771" nextwidth="1074" class="image-node embed"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4de31dc955115dcddddf1bc6fc31cf53.png" alt="" blurdataurl="data:image/png;base64,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" nextheight="702" nextwidth="565" class="image-node embed"><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/9995ebca0fc92e208bacbfcadbd10b19.png" alt="" blurdataurl="data:image/png;base64,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" nextheight="713" nextwidth="577" class="image-node embed"><p style="text-align: start">This clearly shows the demand for bridges and highlights why it’s so incredibly vital that we push for security when it comes to cross-chain messaging protocols and bridges - because they handle tremendous amounts of value, both in regards to volume and are often also custodial in many cases controlled by multisig smart contracts.</p><hr><p style="text-align: start">In most bridge applications and cross-chain messaging protocols, there is a range of actions that contribute to its efficacy. These are primarily seen underneath. Although, they depend on the particular bridge/messaging protocol in question:&nbsp;</p><p style="text-align: start"><strong><em>Fraud Watcher/Monitoring</em></strong>: State monitors such as light clients, validators or oracles.</p><p style="text-align: start"><strong><em>Relayers</em></strong>: Takes care of message passing/relaying such as a relayer (usually just a messenger, not a consensus participant), taking information from source to destination chain which operates off-chain.</p><p style="text-align: start"><strong><em>Consensus</em></strong>: Agreement between actors monitoring the chains, this could be in the form of a trusted third-party valset, such as with Axelar or an off-chain network of consensus nodes, or even a multi-sig.</p><p style="text-align: start"><strong><em>Signatures</em></strong>: Bridging actors cryptographically sign messages, this could be validators signing a cryptographic signature such as with IBC, or through a ZKP (such as Plonky2) with Polymer that attests to the validator signatures from the source chain.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/538dabeef4a080f04e32c3bb48acc4f7.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAICAIAAAAX52r4AAAACXBIWXMAAAsTAAALEwEAmpwYAAACTUlEQVR4nGMQEAQBfn5+Xl5eQRgbAnh5eU1NTU2MTTTUNczNzXV0dXX1DOTlFTQ1NUVFRfn5+eHqIYYg64UDBm4ebnZ2NjFRUUlJSW4uLlZWFj5eXri0qqqqhqaWqa21laWVlra2rKysoKCgqKiooKAgLy8vExMjKysLPz8fH5jNzs6GxQItbR1zaxsHZzcHZxczSysnNw+IKcLCIqKiory8vEb6RtX71qhYm7EyMCB7TlRU1NPH3zcgNDYhOSom3tsvyMrahpuLC90Cb7/grLzSwrKawrKa/JLK6sZ2DU1NZO+LiooYeFsIiAnx8fLxgdwK8h8rK6uqqvriVZuOnr3x7MOvO08/fv3/f9GK9UwMDAKoAcUQkJpUtHRmbk5xTkFZYVlNbUunmrq6KDjEpKWlJSUlNLSNmrrPamiZiggLSMvKyYKBtLS0vaPzqi27T166c/fpu2v3Xtx9/mnKzAUC/PzGxqba2toKiop6enqysrIM4fGJpS3t4bHJodHxobFJiRm5SsrKPDzckFDS1NS0sLRtnnBI18BSUlJCXFxCCBx2fLy8+gYGe4+cufP0w8sv/x+/+f7yy/9FKzewMDOLiooKCwvDYl2QwdDYxM8/1Msv0CcgxNPH387RWVJSChIOgoKCysoqSspKkuICUpIS8vLy4uLiEHEuLi4FRcX6ls7Zi1YsW71p8cqNK9buyMkrBsc5ahxwcXHIy8urq2toampKSUpxcXFATIcAbi4uMFcAErHIOnl5ebm4uNTV1VVVVeXBgJODAzMVAQCy6ZRdLzpZswAAAABJRU5ErkJggg==" nextheight="368" nextwidth="1456" class="image-node embed"><p>Bridge Actors and General Architecture</p><hr><p style="text-align: start">You can then categorise these protocols into four major types:</p><p style="text-align: start"><strong><em>Custodial Bridges (often asset-specific, but you could even say exchanges are custodial bridges)</em></strong>: Providing wrapped assets that are collateralized in a custodial (through a third party) or non-custodial (smart contract) way. An example of this type of protocol is wBTC with a centralised merchant like <a target="_blank" rel="" class="dont-break-out" href="https://www.bitgo.com/"><u>BitGo</u></a> which then mints an equivalent ERC-20 token (wBTC on Ethereum).&nbsp;<strong>We will get into the trust assumptions and risks of this type of solution later, but some of them should be quite clear just by this explanation alone.</strong></p><p style="text-align: start"><strong><em>Multisig Chain-specific</em></strong>: These are usually two-way bridges between two chains such as the Harmony Bridge, Avalanche Bridge and Rainbow Bridge, all connecting their respective chains to Ethereum via a smart contract on Ethereum. Users typically send an asset to the protocol, where it is held as collateral, and are issued a bridge-wrapped token on the destination chain, backed by that collateral locked in the contract on the source chain. These are often protected by a set number of validators or even just a multi-sig. We've seen how these solutions have proven prone to risk - namely with Ronin Bridge and recently the Harmony bridge.</p><p style="text-align: start"><strong><em>Application-specific</em></strong>: An application that provides access to several chains, but is used just for that particular application, for example, Thorchain, which also operates its own chain with a separate validator set. The trust assumption with these often lies within a single validator set that controls and handles all messages and transactions across the network that connects to different smart contracts/addresses on various chains.</p><p style="text-align: start"><strong><em>Generalised Cross-Chain Messaging</em></strong>: Cross-chain messaging protocols that allow for generalized messaging across chains with set instructions, such as IBC. These are usually dependent on validator sets. Here the trust lies within the two chains’ validator sets that are connected. With XCM, the trust lies with the Relay Chain (Polkadot). You could also add messaging protocols such as Polymer and LayerZero, that are both agnostic.</p><ul><li><p>Cross-Chain Messaging protocols are often used in conjunction with liquidity layers since they often only handle communication and standards between chains based on their specifications. A great example of this is <a target="_blank" rel="" class="dont-break-out" href="https://www.superform.xyz/"><u>Superform</u></a> which uses both LayerZero and Socket (as a liquidity layer). You could also view separate Cosmos-based chains as liquidity hubs for IBC as well.</p></li></ul><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/1ceda60ff7c808a7e8e9a9cabe0d10e2.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAOCAIAAADBvonlAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC/0lEQVR4nK2T3WtURxjGx83Z2dmzZ94zZzKZs2f2fOznOe7GmN1osiahFOpFRKlSkyZIDDERFQUFo6hRU3vhhUgJloZCSdKbQIMGSmn1VorQD7z1b/BPaC96s2V3jQbxC/XhvX5+78z7PMj4KNJ1Ky27T4yJgpfE2DAMoJQCGIaBPtCZApiMJVBs8Mihhf8efXr9tOJdJmOEENKhGbr+QQAKkCIEY+w4TuD7UaVczUdGIplxM4V8PtvXY3aJ9wdQoElMuGNXuruVUkBpsGP7Z0vzuYGaK+yRmclr//7eP3/81QC9pTfvniRESjn954+TD1drlR05P/hkdvz80/uHFs4FaZXJBgPTh1Uh+2qAxViXEIwxYwuGQlPPNwCAchjVxg70T3xeyhcSCEV2phpVzJQhhFCW2BkUcUxDQGl7TABCSMZ1Dx4eH588NjE1O3pkanTiqB9kMY5vPuuZu23brucxZiVQDG+LOZ1i76WTo78shj2VTs7LxdLYr9998fNtyzRRUtcTrUnqSUPXi8XSyL4D/YPD/YND9aHhffsPhmEkpeCcl4rZWm+3EMK2bSlli5YymUktZsS08qnRLx8s9gz0ea5bLoW9c1O75mdMCsiRMi06Jee+HwRBwBhLYBzXNIzjca0poNTinSZod9b+2XjUCMOw/YitB+OcR0EuVIHvuk2XICgqz9KwruuosbLcePxX4+8/fjtzRmMs6/uMMdgUY6xlYXiuPXPup+vfPMkohxDSLtFLoUpB80ztlgEzgZnNoj29caOxcbexvr4yexykdGz7uTsA6Lpuce55nm2nEUJYQ0opQsi7pxmheBx1xFBHB7UspZTjOIaRQpuSUiqVEa1ECdGlaXHXdX0/aKeorbcATID2AKXbENpd37O8du/W4tKd71dv3v52cemH3mo1jKL60LDjOLW+XfXBod31PUplXNdzmz+e45y/oTQvegAAGONSuH3u8sKFK19dvPr13OWF2VNnC4WibaezubwQolrtC6PIcdRWte/0OsD/332cjXEY/GwAAAAASUVORK5CYII=" nextheight="618" nextwidth="1456" class="image-node embed"><p>The Operational Simplified Architecture of Mentioned Bridge Types</p><hr><p style="text-align: start">This next section will serve to cover two of the vital parts of cross-chain protocols, namely the smart contract risks involved and the additional trust assumptions that need to be accounted for.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-smart-contract-risks"><strong>Smart Contract Risks</strong></h4></div><p style="text-align: start">One of the first and most obvious security risks to cover is that of smart contracts. Smart contracts are used in most cross-chain bridges that don’t have a native generalized messaging protocol, therefore, it is of vital importance that they’re secure. So let’s cover some of the risks that need to be addressed here. The most effective way to avoid those risks is by omitting the usage of smart contracts altogether and instead relying on the security of the chains in question.</p><ol><li><p><strong>Correct Statements for calling contracts</strong></p><ol><li><p>What functions rely on predefined conditions before execution is possible</p></li><li><p>Assert conditions to check for things that need to hold true for all function executions, such as balances of bridge liquidity contracts</p></li><li><p>Revert statements that are triggerable if required conditions aren’t met, such as those previously discussed.</p></li></ol></li><li><p><strong>Formal verification and rigorous testing</strong></p><ol><li><p>Formal verification of contracts is important to ensure the correctness of said smart contracts under set conditions. Does the math work out? Does it work according to the specifications I need it to adhere to?</p></li><li><p>Testing all functionalities of contracts - for every update or change made.</p></li><li><p>Test randomness to ensure that if security properties are violated that the functions hold true.</p></li><li><p>There are various testing methods that can be used such as - Unit testing, static and dynamic analysis and much more. Get in touch with folks like Runtime Verification, if you want to discuss what you can do.</p><ol><li><p>As always remember to audit your contracts, but be aware that an audit isn’t a stamp that something can’t go wrong, it’s just another way to minimise trust. Bug bounties are also another good thing to utilise, and there are various ways to implement those - such as <a target="_blank" rel="" class="dont-break-out" href="https://www.sherlock.xyz/"><u>Sherlock</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://immunefi.com/"><u>ImmuneFi</u></a>.</p></li></ol></li></ol></li><li><p><strong>Upgradeability vs Non-Upgradeable</strong></p><ol><li><p>Should your contract be immutable and non-upgradeable? This obviously ensures that “malicious actors” can’t cause problems. However, it lowers the ability for innovation. A new contract and a migration to it would be needed, which would need to go through the many checkpoints we’ve discussed previously. Another downside is, what if the contract has flaws that are now unable to be addressed and it simply lives until it gets exploited? Although, the beauty of being non-upgradeable is the fact that it limits exploits in the case that the contract is steadfast, and if an update is made without the proper security measures to an upgradeable contract it can lead to faults - as seen before.</p></li><li><p>However, if you do go with upgradeability, which in most cases is the correct option there are various ways to ensure that you adhere to minimise trust and maximise security:</p><ol><li><p>Prepare for failure - what upgrades are needed if an exploit takes place, can I enact emergency measures?</p></li><li><p>Utilise proxy patterns - splitting up state (info) and logic (execution) between separate contracts. This means that you could upgrade the logic of the smart contract (with a new one) without messing with the state itself.</p></li></ol></li></ol></li><li><p><strong>Emergency Stops</strong></p><ol><li><p>Have entities that have access to an emergency stop function which close accessibility to functions within the smart contract. This should only be used in very significant situations where it is needed to stop an exploit. This does however put power in the hands of the few, but it can sometimes help to safeguard functions in contracts in the case of exploits. This is a good method and idea to implement alongside the next point.</p></li></ol></li><li><p><strong>Monitoring (Watchers)</strong></p><ol><li><p>Active monitoring of smart contract functions and execution is extremely important to ensure liveness and correct tracing. You can also utilise various monitoring tools to get alerts on certain triggers or functions which are important to the liveness and safety of the contract.</p><ol><li><p>One way to add to this is to have incentivised watchers (such as with Optimistic Rollups) that have incentivisation to catch fraudulent activity and report it. However, this needs to be implemented in a way where it will actually have an effect, there are more pressing matters than having watchers.</p></li></ol></li></ol></li><li><p><strong>Governance</strong></p><ol><li><p>In the case that control of your smart contracts is decentralised and given over to the token holders of your protocol there needs to be certainty in the security of governance systems.</p></li><li><p>Things to consider are large token holders able to upgrade the contract and change functions in their favour, which could lead to malicious exploits causing failures and loss of funds - something that has been seen previously.</p><ol><li><p>A good method to consider is <a target="_blank" rel="" class="dont-break-out" href="https://docs.gyro.finance/governance/primitives/optimistic-approval"><u>Optimistic Approval</u></a> which is a method to add timelocks and a veto process to allow for aligning incentives and limiting power to certain actors and helps to avoid malicious proposals.</p></li><li><p>This also ties into using timelocks to prevent smart contracts from executing functions that are integral to the system until a certain amount of time has passed, which can allow emergency functions to step in if needed.</p></li><li><p>TWAP voting could also be used to reduce quick governance voting takeovers.</p></li></ol></li><li><p>A decentralised governance system can be very useful to allow community members to have a say in the future of the protocol. However, it does add risk and trust assumptions.</p></li></ol></li><li><p><strong>Access Controls</strong></p><ol><li><p>Specific functions of contracts need to be addressed as to who can call them. Should all EoAs be allowed to call functions? Should functions be public or private? Should only functions be called within the smart contract etc… Some functions should only be accessed by some actors, such as upgradeability, or minting tokens.</p></li><li><p>Who’s the owner, and what functions are they able to execute - does it lie solely with a single owner or a multi-sig? Often separate roles can access part of the functions to limit centralisation. Regardless, you should focus on eliminating single points of failure and minimise trust - focus on minimising, you can never remove trust.</p></li></ol></li><li><p><strong>Reentry</strong></p><ol><li><p>Sequence numbers, timestamps or cryptographic proofs to ensure valid identification of contract calls to avoid double dipping.</p></li></ol></li><li><p><strong>Oracle Manipulation (Consolidated Oracles)</strong></p><ol><li><p>Another important thing for smart contracts that depend on price feeds or similar information from oracles is to have secure methods for identifying manipulation and limiting what is possible from an outside perspective.</p><ol><li><p>A great research paper to read on this is the <a target="_blank" rel="" class="dont-break-out" href="https://github.com/gyrostable/technical-papers/blob/main/Consolidated%20Price%20Feed%20and%20Circuit%20Breakers/Design%20of%20the%20Consolidated%20Price%20Feed%20and%20Circuit%20Breaker%20System.pdf"><u>Consolidated Price Feeds</u></a> which lays out ways to ensure security and minimise trust when using oracles.</p></li></ol></li></ol></li></ol><p style="text-align: start">As may have been clear from the above there are a lot of trade-offs involved when it comes to smart contract risks. We hope that with the above list the majority of risks involved are shown and users and developers alike can start assessing those risks.&nbsp;</p><p style="text-align: start">It should also be noted that even though some Cross-Chain Messaging Protocols do not rely on “smart contracts” per say, they still rely on code and protocol design that needs to be extensively audited and tested. This should go without saying, but it is still important to note. They should also be updated in line with many of the same ideas discussed too. A somewhat recent example of a non smart contract bug that resulted in an exploit is that of the BNB exploit, which was a result of out-dated code in an old IBC spec, that wasn’t kept up to date.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-trust-assumptions"><strong>Trust Assumptions</strong></h4></div><p style="text-align: start">Another important part to cover is the trust assumption within the specific protocol that is being used. This is incredibly vital in the case of something like wBTC which is handled by a centralized custodian. It’s also relevant even in the case of roll-up contracts that act as bridge smart contracts for their specific layer 2. Often they’re controlled by a multi-sig or similar and in many cases are even upgradeable. In some cases the trust assumptions are small, in others, they’re quite large. However, what’s important to note is that in any bridge/messaging protocol there are trust assumptions to some extent, and there always will be. Even in the case of smart contract-free messaging protocols like IBC. In those cases, you’re trusting the validator sets of the connected chains. In other cases where there’s a trusted third party which operates the bridging protocol, you’re trusting that validator set primarily, such as Axelar and Polkadot. In those cases, you’re also often dependent on smart contracts that, at least in Axelar’s case, act as custodians of the funds being bridged to Axelar.</p><p style="text-align: start"><strong>There Are Always Trust Assumptions</strong></p><p style="text-align: start">There are ways to solve some of these trust assumptions, such as relying on ZKPs to verify the correctness of block headers on-chain. However, there’s still a trust assumption that the block header is correct from the source chain (and its valset), and as such saying there aren’t trust assumptions involved is plain wrong. You’re also dependent on the verifier contract on-chain being correct, and as such open-sourced contracts should always be preferred and be subject to testing and formal verification. What this does prevent is relying on external trust assumptions, the less of these involved, the better. While we’ll never reach trustlessness, we can get relatively close and reach practical trustlessness which is the point where the trust lies solely within a decentralized network of sufficient cryptoeconomic accord. And by accord, what is meant is that the cost of an attack would far outweigh the gain. Here it is also vital to consider that it’s in most network actors’ interest to ensure the long-term health of the network for their own gain. This leads us to the ever-constant saying of - and + EV and the role of Moloch, and the ability for us as a community to coordinate together on and off-chain to fight off irrational actors.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/d39232ad9f674c0b0a9c1837d64ca8a5.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAADKElEQVR4nK1VPYskRRjubaqKqnu3Pqaquj76Y3p2Z7/GXRDFwNhMEC474RQv2dQ7DmEzA0N/goGxGJyCCGYHGp0mZv4CMdgFczEYqeqZub29mbkT9uWheau6u556n+ft6gK04t7uOiOC497K4ChjdF2wZQwZpQnDkG6Ogkkhg+POiCaIJsjo88trAqMS4yVQSQgmBA1DQshGAkooQYg7kxNMMH75IUIIcD49eiu2J7Gbxe6kmZy60Pt6GruT2J2MtE8ci7JuEOQF0sY55KI3bYUJKYU0GVoqA8ABZM4tY7u5FIQxoi9WsyJwDLZISQAgxF5KI5XVttY2jrSzrh1pBwBcqMo1le+sa4VQ1xVbEOxuJSBZom5y7EJfhXE9fsOHfetaX09DczjSvgpjH6c+LoaZYKHGaxHkIGVZoLLAqEQ5QeUORktghNBOeiDlg/8JL3gAnA/Nt+i8wTGWQYhU+uD4nW7/7Tiehfqg7mbt3puhnob2uO1Pq9APzofmsO3TtZ6cxm5W+W4goNRpnHuOJKMGuxamEYKGphRCSWW5UMCFEFpIDcA5F9kGzrkSUvN0S3GeIRQAFJQxjMp4cFCPj1yYVL7zcT+1YJxWYWx9u5qhqRKc9SVLEUhOkxQkRZq5HlmiRIDcZC/Ue5Ufa9e40BtbuzBxcc/6TtuYve0WX+xKwOvYHAuJwOkkCNpJEqESo+FaPkdZpgYnNO13VUACJpi8goBgkg8JB1aD0aAVGM2d4d6K4GRwMnoZPQ8WtFRdHGZSEv1oXHNntnDkCobWAWDw/CxLeZq5CTCKSXFHSdDqjhKgJZPixte7hiA10stBKFoauQqcJbqJV3iwfnEqAWpjFOeWc0WpAm6k0EJsWe5/EAy6zZqmt/aw66ZHh41zsxh75/DWLb8uAWMMYyyl/Onp09+ffP/zex/88duz9+/eLYqCA9wOAULIWnN1+fePv3z95cfvzv/595MHDxIB57dGYIy+/PPqi+8++/zJxXw+v/fhvdsmsObyr6tvn331w6/fzOfz+x/dvzWC4XgRQpyfnz96+Pjhp48uLi7Ozs6Kotj0015L8B/Ea4Z1pkWZOwAAAABJRU5ErkJggg==" nextheight="984" nextwidth="1456" class="image-node embed"><p>The Types of Bridges Discussed Earlier Plotted In Regard to SC and TA Risks</p><p style="text-align: start"><strong>Disparity in Trust</strong></p><p style="text-align: start">Although one thing that is vital to understand is that there's a disparity in trust. The trust system varies from one blockchain to the next. Transferring data from one blockchain to another that has a greater or lesser cryptoeconomic security could result in malicious actions.</p><p style="text-align: start">Multi-sig wallets require multiple signatures from different parties in order to authorize a transaction, making it much more difficult for a single entity to compromise the security of the system. Decentralized governance, on the other hand, allows for the collective decision-making of a community of users, making it harder for a single entity to gain control of the system. However, each multi-sig setup will be different from the next, offering various amounts of security and trust assumptions. The same goes for the case of decentralised governance. Is there sufficient decentralisation in the token holders, do they have a governance implementation that favours security - for example, Optimistic Approval? There are several factors that are important to take into consideration, and often vary from protocol to protocol</p><hr><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-reentrance-and-liquidity">Reentrance and Liquidity</h4></div><p style="text-align: start">Another key thing that we covered slightly earlier is "replay/reentrance attacks." In a replay attack, an attacker broadcasts a previously recorded transaction on one blockchain to another, potentially allowing them to spend the same funds or assets multiple times. The obvious way to avoid this is obviously the use of light clients to cryptographically prove that said transactions have been done on each chain. However, that is not possible on every chain. The clearest example of this type of exploit happening recently is with Nomad. Another option is to use sequence numbers or timestamps to ensure that each transaction has a unique identifier that cannot be reused - randomness is an important thing here as well.</p><p style="text-align: start">One thing to also consider is where the liquidity on a specific asset lies. For example, is it in a source chain liquidity contract? Is it like certain USD stablecoins where the liquidity is actually off-chain? There are a lot of trust assumptions to consider. We should aim to minimise trust assumptions, but we can never remove them completely.</p><hr><p style="text-align: start">Now that we’re established some of the significant things to look out for when you’re bridging your treasured assets, just wanting to query data or sharing state - let’s understand why bridging assets and state are vital.</p><p style="text-align: start">Data movement and state sharing is the next step in enabling true composability across chains. It allows applications to extend beyond the boundaries of chains and built protocols in a chain-agnostic way. With this, a module, account or smart contract on chain A can call or read the state of a smart contract, account or module on chain B. A great example of this happening is through the ICQ module within IBC. It is correspondingly vital to ensure the security of assets being bridged around to various chains, as we and many others foresee a future where many chains, hopefully, co-exist.</p><hr><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-general-analysis-of-cross-chain-messaging-protocols"><strong>General Analysis of Cross-Chain Messaging Protocols</strong></h4></div><p style="text-align: start">This section will serve as a guide to basically every single cross-chain bridging and messaging protocol in existence. It will cover their various security measures and where their trust assumptions lie. If we missed a certain protocol, then we do apologize. But, this section should still cover the vast majority of protocols that exist, and will even go into specific bridge contracts such as L2 bridge contracts as well.</p><p style="text-align: start">We’ve already gone over how IBC works quite in-depth in previous articles such as <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-application-specific-chain-thesis"><u>this one</u></a>, and <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/beyond-ibc"><u>this one</u></a>. If you’re interested in reading up on them, I recommend you do so. What’s important to underline though is that the primary trust assumption within them lies in the validator set of the chains that have opened a channel. There are no smart contract risks, but rather the trust in the valset and their state.</p><p style="text-align: start">As we covered in our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/beyond-ibc"><u>Polymer article</u></a>, there are various derivatives of IBC. By this, we mean cross-chain messaging protocols that utilise IBC in some way or another. This first section will cover such protocols. Namely Polymer and Composable, we’ve already done a comprehensive deep dive into Polymer, so we’ll keep that part short as you should already be quite well acquainted by now. It is also important to note that we are investors in Polymer and Composable.</p><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://www.polymerlabs.org/"><strong><u>Polymer</u></strong></a></p><ul><li><p>IBC Routing protocol, is more of a generalized cross-chain messaging protocol than a bridge</p></li><li><p>Light Clients or Smart Contracts acting as a light client verifying block headers (signatures from validators)</p></li><li><p>Cryptographic proofs through validator signatures from validator sets - ZKP on non-Cosmos chains, via recursion (plonky2) and on-chain verification - their zkIBC implementation.</p></li><li><p>IBC logic in smart contracts</p></li><li><p>Can offer asynchronous bridging that relies on valsets of connected chains.</p></li><li><p>Enables data sharing and query. Not just an asset bridge.</p></li><li><p>Synchrony commits on the source chain (validator signatures), finality once block headers are checked on the destination chain.</p></li><li><p>Cryptoeconomic security is the stake of the connected chains valsets with IBC, and for non-IBC based chains the trust assumption lies in the smart contracts deployed.</p></li></ul><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://www.composable.finance/"><strong><u>Composable</u></strong></a></p><ul><li><p>XCVM operates similarly to how Polymer operates. By this, we mean the ability to deploy native cross-chain protocols. So the sharing of state, query ability and such.</p></li><li><p>Centauri is their transport layer which is what facilitates the actual communication. This is based on IBC and allows for state sharing as well. It basically allows the bridging from IBC chains through their Parachain, which is connected to its respective Relay Chain.</p></li><li><p>Operates with light clients as with IBC and a rust implementation of IBC to support the Polkadot ecosystem (Substrate). Light Clients or Smart Contracts/Pallets acting as light clients verifying block headers (signatures from validators)</p></li><li><p>In this case, the trust assumption moves from two singular valsets to the valset of the Relay chain in question (Polkadot or Kusama) which operates the state of the Parachain being bridged to, from a chain that utilises IBC. This is through an IBC pallet (similar to the Polymer IBC contracts in Solidity on say Ethereum) which implements the IBC framework needed on their Parachain.</p></li><li><p>Watcher nodes to verify block validity in case of attacks on chains.</p></li><li><p>For chains with native light client support, the process is quite similar to how IBC works natively.</p></li></ul><p style="text-align: start">The next section will serve to explain how XCMP works, which is the native cross-chain messaging protocol of the Polkadot ecosystem. This is a natural follow-up to Composable since they indeed originate from that ecosystem.</p><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://wiki.polkadot.network/docs/learn-xcm"><strong><u>XCM(P)</u></strong></a></p><ul><li><p>Parachains make a single trust assumption since they all rely on Polkadot’s consensus, so they trust the main relay chain.&nbsp;Same with Kusama and its parachains.</p></li><li><p>Thus XCMP relies on Relay Chain and parachain validators to verify messages sent from para chains, the process is finalized by a block on the relay chain.</p></li><li><p>Established channels such as with IBC. However each submission needs to go to the relay chain, and as such need to monitor state on the relay chain to confirm that messages have reached consensus. Thus, the parachain block headers go into the relay chain blocks to confirm message passing.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/25b5b6ae2ab9f2c16b2f59cdb4770ebd.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADZ0lEQVR4nK2UX2gcRRzHx+S8y3RnZ3du9naT3e7euLOZPZc91iRXLjW78VowoQ/+iXL1bzHKVZRWkSClItYXjdVKaaH1RSh9EduKKPgHUVNBXwRBbX1QpIWgIKUPrUjfR+7WHhqTmAc/DMtv9we/7/7+DdDWACHEGIvjeGJsPLg5rI7y9NapyeZko9EghGgbBqzjo5SapgngjfO339WZuRvAIjUMy7I2Hv0/BDDGFdN86/EX5HuX5YdXP336lRFzWMUq0fX/QaCskwKCX+47In+Qcuma/OSqPCd/PHBik46Jrm+8SmsKEF3HGFedzV/sOyI/uCI//uOb547P3LYdIUQIwRgjhPrP3OjbGxLQCRkqlZKxsYltabu5fe9sG5QGZnfsYIxBCB3HcV3XsizHcWzbHh4ednpYlmXbNqWUXGd1AUIIQohzHgqhKsrAUBEUC4ZOIIRCCEppFEVZlgkhtvQIgqBWqzWbTSFEkiS2bUMIFUVBCIG1oruuGwQBxphSWjGMimHQHhjjKIqEEJqmJUkSxzFjLOwhhAiCwPf9/DWOY9d1warRfd9njOXlJr1+9lPObc55/gdhGLqum0cXQuTfGWOccyGE4zhAJ2W9TPUyJWWDGpUhuCngPAzDPLq2GhhjQghjrNtbrGpER1hFGKtYRX9DURSMMVBKg8oAUAaAOggAADOtNE3TUqm0ziCSnsswjIfvu9+ACN1Q0ApFrVDSilAnf61IP12QPfL8zuPfzh06O/fq0h2LS/c+exQWC93urAvWtEEAarNp4+W90cKDYk979Ml2sHPWJOV/DKmmgfax7w5dky/92j2v/S53n7q09Zaoyvw+nue5PTzPy3vDGNvseVvrY9sOLuy58n5n+VRn+e0nLr17z9KxEWqoK/agffTrg5flgQvyxYty8Tc5f/Ji2khyAc/zbNsWQkz2CMPQcRzGuj6XeVPJRGvxmc7ymUd/Pv3YhTOd5XfmPnvDqpgrF+2Bw5/vPyefOts9+7+Xc69/VQAA4W4Ra9dpNptZltXr9SiKTNOEEKoaHgQgWnho9y+nd51/c9f5E/M/nbzzo8MjprUyA9t2fB4wnzOf3xSErsfym8CyrOnp6VarNT4+nmvU6/Usy2q1GkJIJ0TDuFob5WmDTzVEuoVPTVST6N+j8Sc+1Opzyr+DUQAAAABJRU5ErkJggg==" nextheight="747" nextwidth="1456" class="image-node embed"></li><li><p>In this case, the Relay Chain sorta operates as the trusted third party (TTP) - so it’s as safe as the valset of the Relay Chain - your trust assumption.</p></li><li><p>Parachains derive their security through the Relay Chain (Polkadot) through shared security.</p></li><li><p>This means that the total stake of the Polkadot network is the trust assumption and cryptoeconomic security of XCMP.</p></li></ul><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://ibcprotocol.org/"><strong><u>IBC</u></strong></a></p><ul><li><p>Requires a light client on each other’s chain to cryptographically verify consensus state between the two chains</p></li><li><p>Requires Relayer to relay information between the light clients on the two chains. The relayers are required for liveness—the ability to be able to exchange messages among nodes, with the nodes successfully coming to a consensus.</p></li><li><p>The relayer does not relay messages to light clients on each chain. Instead, the exact recipient of messages that the relayer submits to each chain is the IBC module on that chain. Light clients are a small subcomponent of the IBC module.</p></li><li><p>IBC light clients only trust a specific header at initialization step (a root-of-trust, when the client is created). During that step, the client indeed trusts that the node which supplied the header is honest. After that step, they no longer have trust assumptions resting on specific full nodes being honest.</p></li><li><p>Trust assumption lies within the two validator sets of the connected blockchains</p></li><li><p>Cryptoeconomic security is the total stake of the chains in question</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/c26040e64ec36a7651c548aab894c687.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC/klEQVR4nK1UT2vbSBydXSWqB8sWVSeRpZ9GlhPrnz1SrMp2UlyDNpBuClsMQajoUEQuAUMIuJ/Ax3yNnnosPe1h7/0EJadl99xT2b306GKp8Wo3BZtt30GMmPm9N783bwYJG4Dn+ZOTk+PjY9d1GWOmaWKMNykUBAGtXSGKIsdxaZrO5/OXs9n19XWSJBuyfxHAd/CVdTnu79xHCHEc91WuuzyiKC4F5CUaOzu7+UBWFLVeqwtCtVxcr9VpS7cGnQfkQT77X9RqdUVRCSE5wxKyLGOMUbfT6Xms57Gj4XDQD8OHoaoRx21jXC3vpcJXrNCx+q5ht/418QVV09rTmrse80zHCZY0YRCGzPfR8c9P/Uc/md5AM0ynd4R+QL++/uP9u4+1+j0ATVEUFVRVUW3P2ffM7iOv3bMMc68hN+AWut6sVLnf3ty8fXWDEBo4nW6rRRuNKAimWYae/vKsOxgfPH4Ce/a++xAh9On3xeLvRbW+1dQNSikAFP22e1bnsGuFDgDQWwCAYbR+3EJ//blYfFgghB6z3vMoOnTdyWg0ffEC+b7n2O2Oa/UO/I5r2baz19YOjwaSJG1tb5Us4ncau86gK2vKNreNMeZ5vvgKgqAq6mAY7rd1x3Yc12W+7/m+6ThLizDGiqLoenO1WQBNFEVZlimlRUxXJ6m2tHrpF2NMCKGUijkKSzWApq5TSlVF+SemfI5yTItiAChHpcJXyuyyLJcXrMpXbGsuGsZYkqSij7sAgCKI33qTJUkCgJVRxfUBAELIJg/GegGcMxqGQQgRBIEQshpvgvUCwu0hFa8eIYTneYSW6fgOAmL+0jHGrq6ukiQJguD09HQ8Hl9cXDDGOI4rZ+x/doDzHI/H4yzL4jgejUZxHJ+fn0dRhBD6VgEx76Df7w+Hw8vLy9lsxhibTqfz+TwIgsK37yMwm81s286yLE3TwiKENjq/jSwCgCRJJjnSNI2iKMuyJEkMw1jbxEYClNLJZNLPEcdxFEVnZ2eTycQ0zbUCnwGTsrlNyjtLFAAAAABJRU5ErkJggg==" nextheight="921" nextwidth="1456" class="image-node embed"></li></ul><p style="text-align: start">To continue on the Cosmos route let’s take a look at Gravity and Axelar which both operate their own bridges via smart contracts on non-CosmosSDK/Tendermint chains and onto their own chains that function as a trusted third party and consensus network. These are relatively simple solutions, but they do enable the Interchain ecosystem to connect to the wider blockchain ecosystem. So let’s take a look at them as well.</p><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://www.gravitybridge.net/"><strong><u>Gravity</u></strong></a></p><ul><li><p>Runs a Cosmos chain as the consensus network which secures and mints ICS assets that are usable in the Cosmos ecosystem.</p></li><li><p>Validators are required to run a full ETH node</p></li><li><p>Connected by a relayer network (which in this case is not trustless as with IBC) which adds a trust assumption since they control their Cosmos SDK zone and as such run their own Eth nodes as previously noted.</p></li><li><p>Liquidity bridged to Gravity is in smart contracts on Ethereum.</p></li><li><p>Non-upgradeable contracts, only slight logic upgrades are possible.</p></li><li><p>The trust assumption lies with the Gravity bridge valset, smart contract security risks and relayer network that has conflicting interests.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/eccdb7662671e842303fbc1fdc14b212.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAFCAIAAACreXkmAAAACXBIWXMAAAsTAAALEwEAmpwYAAABt0lEQVR4nGPgYGPjYGPj4eYWFBTkYOPgYOPg4uTk4OCQl5fX1tZWV1fX1tDQUFeXlJTk5ubm5eXj5uZmZWFgYWJgRkXc3Jy8vHy8YMDPz8/Nzc0BBgwqKqqKKqoGRkaW1rbaRvrySspy8grCwsL8YMDOwcHAyMjEzi4IBny8vMLCYlpmPnomPgamnvrG7gamngbm/qY2kZJSihxsrNzcPBCjRUVFpaWlJSUlGXz8Q31DomKSM9OyCwsn1i9Zv2n+0tUWFhaSkhISkpJGmpobCvNDrKz5BAQkJCT4eLksrNy+v/7/+Pv/B5//X33z//zL/9de/H/2/X9K3hQ+XhZpaRkJEBCfNmv+4VOXZs5eyGBla+/g7hUSFpWYmhkcGp2Unp2YmikrL8/Py8vAypru6Pj/xJHVeTksPDzi4uK8vFw6uqaXLvw/dO3/0Wv/d5z9v/Pc/12n/x+7/j8muY2Pl1VCQlJUVFRMVLS+uX3Jqo21je0MkFAD+YuNjZOLkw0MwMENCkpZBQVTAwN5FRWIGoi4sKSChKSCpJSilJS8lLSspLSqlKwGP78gBwcHRA03NzfEHA4ODgDbP2j9MXch8AAAAABJRU5ErkJggg==" nextheight="234" nextwidth="1456" class="image-node embed"></li></ul><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://axelar.network/"><strong><u>Axelar</u></strong></a></p><ul><li><p>Similarly to Gravity, it relies on validators of the Axelar chain to run nodes/light clients on the chains onboarded to Axelar.</p></li><li><p>They also batch up transactions similarly to Gravity</p></li><li><p>Relies also on smart contracts that need to be ported to the targeted language of new onboarded chains. Axelar currently supports more chains than Gravity which only services Ethereum. These smart contracts aren’t liquidity smart contract as such, but rather a smart contract that can call other contracts. This means they in theory operate like a gateway or a light node in which messages are passed that fit the logic supplied by Axelar. Bridges, like <a target="_blank" rel="" class="dont-break-out" href="https://satellite.money/"><u>Satellite</u></a>, can then use the infrastructure to set up an actual liquidity bridge and bridge assets.</p></li><li><p>Allows for general message passing cross chain and is targeting applications to implement Axelar as a messaging protocol ala what IBC is as well as what Polymer and Composable are targeting.</p></li><li><p>Allows apps to use their infrastructure. Similarly to how LayerZero is not a bridge, but Stargate is. This is a solid comparison, however, keep in mind that Axelar operates its own consensus network, which is its Cosmos SDK chain where its validators also run nodes for connected systems.</p></li><li><p>The trusted valset is currently 60 validators (although not all validators run nodes on the connected chains, for a subset of them or sometimes all). There’s obviously smart contract risk to take into consideration as well, and also if you’re using a bridge connected via their infrastructure they're smart contracts as well.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/053ca9ce7469d33af595496995263753.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAIAAACMdijuAAAACXBIWXMAAAsTAAALEwEAmpwYAAACbklEQVR4nGPg4eHh4uLi4OCAkzwYgI+PDyzObWNjw8fHy8HBwcfHx0McYBAQEFBWVlZTU1NUVNTU1JSRkUGzg4+Pj5WFhY2NNSAwZM7ClWmZuXx8vAwMDETaAVInBAMiIiJCQkJoKri4uNTVNVrae7bsPrJ20+5NOw9Omj7X2saWg4ODKAvgpsABmvNZWFgio2OPnr5y5NTFbbsP7j108vi5a0VllaRZgAfwC/AzMDDExMbNnr9s486DoFDKyJSSkmJhYyMmlAhbwMLILCkpKSYmIikpmZqRo6GpycTEpKysLCcnz83BRQULrPxtJaWkIAmMgYEBkoTY2dhl5eUcYl14+XgJWMDLxw9BQkLCgkLC/AICvHx8YCTEwcEpJSVlaGPEzcMNiQ8+Pn4+XmiwcHJxySrLiYuLI8cfHy+vgIAAcqQysDMxcDAysDEwSIkJKstICPOy87Iy8LKCBHm5OFVUVFhZWHG5jp2NXVJSUkRERFBISFAY5DhZRSUdPT0pKSlhISFRsDhDQOO6tLXvM1a9Tl76NHnxo6TFj9JWvkpd9TZ/53/v7HYuFpAXcVkgKMDPwMg4KzHx/8L5/7vb/0/q+z9lIghN6v/f2/1/yuTrNVUM4cW9OdP25sw4OPnF/ymv/0/9+L9o9YO0nk3N218ldq1nYGDgFxDEZYGIgAADA8P+gvz/m7ZsaGg92tr5/+Sx/2eP/1q+amFF7amuCV97exiSpx4s2/u/eOu3hov/my/9b7ryv2z378J1z6oP//conM2C1wJBflAKnh4R/n/pwv8zpv+fOfP//Nn/583+P3P6/2lT/8+ZdaO6CgAv6s+i7HVbDAAAAABJRU5ErkJggg==" nextheight="572" nextwidth="1456" class="image-node embed"></li></ul><p style="text-align: start">Next up I think it’s quite relevant that we take a look at LayerZero, who’s really taken the general cross-chain messaging protocol world by storm, and has seen great traction. What’s important to note here again, is that L0 is not a bridge, but rather a messaging protocol that you can build bridges with or use to call cross-chain smart contracts.</p><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://layerzero.network/"><strong><u>LayerZero</u></strong></a></p><ul><li><p>Two entities— oracle and relayer.</p><ul><li><p>The oracle forwards block headers to the destination chains, while the relayer forwards the transaction proof from the source chain against the relayed info from the oracle, which attests that the transaction/message is valid</p></li></ul></li><li><p>Applications are given the flexibility to use LayerZero’s default oracle and relayer or create and run their own. They’re used as a cross-chain messaging protocol, not an actual token bridge. But you can build bridges with it, such as <a target="_blank" rel="" class="dont-break-out" href="https://stargate.finance/"><u>Stargate</u></a> and others, which use them for messaging.</p></li><li><p>Endpoint, which is their version of Axelar’s Gateways, or Polymer’s IBC logic smart contracts. They basically handle the verification as a light client would in IBC.</p></li><li><p>This does mean you, as with Axelar, are dependent on the LayerZero infrastructure and then the smart contracts connected to LayerZero.</p></li><li><p>If one of the two actors is dishonest the transaction will fail. However, if both are dishonest (which if you rely on centralized solutions or the application’s own could be a problem) exploitation is possible. As such decentralized oracle networks being used here are essential, also having multiple options and possibly using consolidated oracles - refer back to the oracle part further up if needed.</p></li><li><p>Doesn’t rely on a trusted third-party chain, but instead on a modular architecture that can have varying degrees of security and trust.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/52cee59055db6670f2aea079d4bc19d2.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEc0lEQVR4nJ2U/08TZxzHH21pLbc7+vTO6567noXi3Vl63q62FhoGiSwDf2FmSCcTyYYzmxo1sASHM859i784p8ZCoeAXKCh2AuoIG0Mc+6IQCS4xTpMZ/PLDxg/GJf4Fn6UtIxtmy9gr71zyefLc5/N5nvvcG9kXCcMwPM9raXw+X3EaXdc1TVNV1TAMTdOKi4v9fr9hGIQQtKjsGGOKonw+n2EYqqoGg8FQKFRYWFhSUqIoCsaY4zin00kI4TiO53mM8f8pUFlZKQgCRVHMM2SO+NdwcQUYhhHTUBSFMf4vr/ytAE3T/96+zWbLzc3lOO6fNmCMGYbhOG6+PMLYwbIczzuLi18MhYoMY40giHbswNixoHeLxVJUFA6Hw2azeUH7qd0YC4SsKy1dGwisKy1d4XI5MOZYB7JalpqWINMSZDUjmyX1NC1NhcusJrs9lYVhGIyxJ0VeIBDIzEZmca5xuz0rOxuZTCllZaFly5Apay60WtG6ijfqdsQ3bT2+aeux17edeK3+eNWWw5H6o0WlVQxDMUwOxliWZUKIt0Dzaat5frmiKKIoZmpgu92anf1KMNi1ZUtLJNIWqW6rro5XV7dENvbU1e0ur0AfHpv58g6cn4T+qTklr8Ol27B7/1WEEO8kuq6Xl5dv2PDqO7ve3bazoSpSo6RxOp0URXEYI5utr/5N6O+HvrNwvielZC/0JeDSwG8fHEB7D91MXofEV9D9DZz8GjqH4dQI9P4AB4/c8BV4NO0FXde9Xq+u62Uvr6+rf1s3/GVlZX6/PxQKSZL0PL8cmUzxSBUkotB2BFpPpBRrgWgUuk/fampC+z69c/o2ND54+P6Dp8kpGJ6GJ/fh6V041X5HcLEr82U2jdfrDQbXhsNhVVUMw5AkKTc3V5ZlURALSwoHPkvCLYAxgAtJSPZNTl4+Nz0IV/p/3deMmj+6G/sFdsz2b380PjoD048AZgEeQ1fLT2gpkuXUVczPqNVqoenUFNI07Xa7CSEU9VwOtnR9PgGPAR4CXJ+Ea9/tnB3b8/vI/WsDT/a+h/YcmLowDa0TEJuA06OpWxqZgPGb0N51Lxgo8HhWsiybTm3dtLmuef9BRVXNZjNFUR6Px+l0Oux41RpjKtoLQzMwdBc62iHeAhd7nl7sgstf/NzQgBo/uZm8AYkROPct9I5D7/dwahR6J6G+cdBiQrrhV1U1Pz+/ZnNt/9CV4Ss/fnzosK7rgiBk1lf7ChDNJGo2QncrxI/CmQ44cxI6OyDeBme77zU3oYb9Y4mrELsE8cvQkVb7IHSPwrY9PTYLYlne5/O53e6yspdinYmBobH6t7ZnvFPTtMwJUFZWtHYznO2BWAxirakvHItC9Dh0xId37UIulzs/f9UK90pRzCOCmwguQXRJ7jxCSOYvI4RIkqRpWkXF+pqa2nA4LEmSoijz1pJjt/McJxLC8/xynmc5juXmYDkO0TRNUdk0Tf2pDBTDzPkSTdM8z+u6riiyKIpeb4EsywusgmEY+llrTfMHgBOrLOscck8AAAAASUVORK5CYII=" nextheight="793" nextwidth="1456" class="image-node embed"></li><li><p>As safe as the oracle/relayer solution being used as well as the natural smart contract risks.</p></li><li><p>Does not provide or depend on any cryptoeconomic security per say. However, it does rely on crypto economical security of the networks used. So, the economic security of the oracle used. The security of the relayer is it a multisig etc. It also has trust assumptions in the smart contracts that are used too.</p></li></ul><p style="text-align: start">Next off let’s look at what has been coined “Optimistic Bridges” here I am particularly referring to Nomad and some of their partners. There’s obviously some connotation with this, but do remember that the exploit was not a result of the bridge mechanics, but rather a smart contract exploitation, which the security of the network failed to cover.</p><p style="text-align: start"><strong>Optimistic Bridges</strong></p><ul><li><p>Transaction/data posted to a contract function ala Endpoints/Gateways previously mentioned.</p></li><li><p>Bridge agent signs Merkle root of data being correct and posts it. Then any relayer can post it to the wanted destination chain. This agent has to bond tokens that are slashed if fraud happens.</p></li><li><p>After data is posted a fraud-proof window is started where any watchers (incentivised since they get the agent’s bond) of the chains can prove fraud on the source chain and as such the bond is slashed. However, currently, on-chain slashing as such isn’t possible so it has to happen in an off-chain network usually half-manually.</p></li><li><p>If no fraud-proof is sent within the time frame data is considered final on the destination chain and can call the contract on the destination chain.</p></li><li><p>This technique has a low trust assumption, however, it relies heavily on smart contracts and watchers working. If there are any smart contract exploits, the watchers are unable to do anything.</p></li><li><p>They just need a single honest watcher, since only a single party needs to correctly verify updates.</p></li><li><p>This does mean that the slashable stake that is bonded needs to not be extremely high since you’re relying on the fact that just one party is honest.</p></li><li><p>Needs decentralised agents, otherwise, a single one can halt the system.</p></li><li><p>Needs tax on watchers to prevent DoS, however, this means that if there’s never any fraud you’re also not gaining anything - needs different incentivisation schemes unless you’re just relying on the actors of the bridge to run them, but that leads to centralisation as well, since both watchers/actors and the protocol would be running everything.</p></li><li><p>Cryptoeconomic security is dependent on the specific networks used. It could be the cryptoeconomic security of the watchers or agents that have bonded tokens to be allowed to participate, etc. There are various ways to limit their reach, as discussed previously.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/b0992307a38b36aaa3515e43c1830e2b.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEqElEQVR4nI2UW4wTVRjHu+32xvScuXWmM6fTnpl22pmdrXRn253ZbrsMC5WyLLssW3ZBhKAsrEYxmiWCirB4iSESMZoYeVMSE2O8YIgPIIQXDaBGQxDkwYgXEl9MeDHwwsOYtrKIdAP/nEwyk8z/d77v/M/noe5b/k5PwOfxeT2+Dk9CispY5Dno72x88Xo9gWBAEGKWZem6blmWYRj5fF6SJM9CdswtURQFIWRZdmTd7tENr67dOLdy3YujU3OTm18Z37B/9eTesQ1zmzbNLhsYiHJctVodHBx0HKf1FEVxQQBxSxRFQwgFQfzsjHvsR/ena+6vN9xTl91j593jF90rN9wr190/rruvHDzn9XoYJtra07zaAxiGKTSVy+VaFQiCeOSEe/Sc++Fp98R59/cb7vk/3W9/c7+84H5yxv3igvvc65cDPg/Lxv5n1QYAAMAYV6vVer1eKpV4nocAsGy02F8r9g8ve3BqeGz62RcObn70CWPx0nxhea+13C6PZLsKAACKou8N0HVdVVWe51euWgUAyGqalEwSBLEo7McYlewCz1E8R+cXd/s7PUQ4GA75w0FvhAjf7f4vYP48IYSapiUw9gcCaVnesmJFKplMxON2oZDVtP7+0vT27QihUCiMEFJVlSRJhmFvrTtafxsAIQRNEQTB87yZXzw1NJSSkxzHrS6XEUIjtj251KkND2vZbC6XUxQFIYQxVmQZAMAyDN125/MAVVXNporFYqFYTMnyaHkgpShdipJWZEjTfcViqb9faaoFEARhZmbGcZZ6fb4IhBEIAYQLAgzDsCzLcRxN03RdBxDGpQTNsvVyecJZ4r7/3juzOz2hIE1RmUymUqnUajWGYUZWj37zw8VHtm7XpFhXAmGBJ0myPaDVegAAhFAUxayq7lgzpqfTyWRSz2TeWr9+1/jaPsPgeD4hSRRFsSwLAEAI7dv/8kR9MpsQHpDjiiC0t59PEcMwrXQiUSybpoDQhLNkwlniCYUGTDOfzSYxRgg1g9i4FqIoIoQ6OjoikCQaLVrI/z8xbfwmCOlMZllPT7VQSMnJnu7u+uBgVzodDIcNw2jkhKYpmgYQIoQ0TSMpshmf5kRZ4KDvuAcQgCTG49VqX3fOHwxSNL2mPJDv0tVMRhAEQBCQAJAAkUVELBZTZCUSCjeaSzQWbBZ3D0CrDpxKyYqSkCSO4zhRVFUVIQQhjMURkpNxBZNCNN9XqK+fikQZJGNJwfGULErx+wIwDEMQhGmatVqtUqmUSiVBEAiCiDJs7cjcxq/fnTr99rZLn+765dSBq+e2XTr60FeHJ08e2nT2cOXQTpaA5F2NajMqIISWZdVqNdu2h4aGRFEEAAhRbvLkoSevfrz77++ev/n941c+mvn5g2f+Or7v5sXZa2f3uBce+/yNGEGQbEOtsLWs2k/TFsBxnGKx2HgnKZZhi7NbBl57atWBnYW90717tvbume7Zvbny0o7xA7vG3tz78NOTCZroLRRs27Ysq1wu27bNcVwbAMMwGGOpKYzx7SETDNOBcKQzIADKzHb1qDpmY4S3c5EvEOkMhAMRkiTT6ZRhGKZp6rpumibG+B8ybSmjBzxyHAAAAABJRU5ErkJggg==" nextheight="886" nextwidth="1456" class="image-node embed"><p>The Architecture of Optimistic Bridges</p></li></ul><p style="text-align: start">Next off let’s cover Multi-Party Computation (MPC) bridges, some of which also rely on their own trusted third-party externally verified consensus network, such as a blockchain. Two examples of such solutions are <a target="_blank" rel="" class="dont-break-out" href="https://mobile.twitter.com/QredoNetwork/status/1511267337713840132"><strong><u>Qredo</u></strong></a><strong> and </strong><a target="_blank" rel="" class="dont-break-out" href="https://chainflip.io/"><strong><u>Chainflip</u></strong></a><strong>. </strong><a target="_blank" rel="" class="dont-break-out" href="https://synapseprotocol.com/"><strong><u>Synapse</u></strong></a><strong> also works somewhat similarly with their leaderless MPC valset.</strong></p><p style="text-align: start"><strong>Multi-Party Computation (MPC) With External Validators</strong></p><ul><li><p>MPC is a threshold signature scheme that allows several nodes to create signatures under a single key, this makes it harder to collude and take over an account.</p></li><li><p>External validators refers to the fact that the protocol is running a network or chain with validator nodes that verifies signatures and calls and controls the gateway smart contract functions on chains that the MPC wallet wants to bridge to. This can also be referred to as a middle chain approach.</p></li><li><p>Many MPC solutions also run various hardware security.</p></li><li><p>If an unauthorized attempt is used to access accounts the keys stored within that node are destroyed, social engineering is the only way to access (which we have seen succeed before)</p></li><li><p>This also means that these bridges are often limited to a few individuals and not as widely available. Typically focused on institutional use.</p></li><li><p>Trust assumption in that the bridge gateways contracts are set properly from the protocol in use. Security risks in the various smart contracts. Social engineering is also a valid concern here.</p></li><li><p>The middle chain is often used to record the ownership of assets for users.</p></li><li><p>The gateways should be controlled by a decentralized multisig/node network for optimal security assumptions.</p></li><li><p>The middle chain in these cases often is the cryptoeconomic security for the system, since it allows to record and change who owns assets, as such it is the trusted third party.</p></li><li><p>Keep in mind that with the number of signatories used the latency of system can increase, as seen below:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6883e0789e0c09c25f5b025e23dad587.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEVElEQVR4nJVVTUzjRhTOjWNOXLlw7oUDh21PXLjkUi6coq7qqqqlrcseUhWLSkHdWmgBVVUCmN0FUwgEsCCELTGwiflZb7fEIpDwM4hFFtLGQOImUOcH24FMtR6UHw4R/TSS39M8vW/e92aeLbACum5ACGVZttvtBEHY7XaHw4FhmNPpxHG8r6+PIIiWlhaXy0WSJI7jGIZRFEXTNG6CIAiWZVEqTdOQYUEf1USxeKNp16qqfmGiyURdXd1nJlpbW202W319fVtbG9pqbGxsamrCMMxms1mt1oaGBpIkIYSKopQJkCWKoscz4XaPuN0vMOxrmqYdDgfLspqmAQA0TUMnUFVV0zRFUSptWZZLriRJoonl5ZWqCiCEB4cHi/OBl0OvLBWgKCoajWo1gQSpdCGE4fAWsu8I4vGPk5OTC7Pe8bHRSgKr1cowTKWmtYG6CCF8/Xq5ikBVVb/fvxQIJJJJ2YRiQpIkRVFqENwWi/dSn57KLvdEb+8QhMUqiZB2DzlmJXTdKKVOpS4ZZs7lnjg7S0aju9lM9o5AEARRFGmajkaj8P9A1w1UWTp9Ne9709/PiNsHaGtjfbMsUXt7uyiKAIAaFdyaUhSMwr1mnp0lPZ7F/n7mr/e7SEklkTqPJ0JvQmUChmFEUWRZtkYFeoUUyI1EDl+Nzg0Pz8T2jhG3kkjJH89z2TwSvKrJEEKO42pUoJvZdd3Y3/8wO8sN0d6FhdDpqQxhMZ/Ln8cTSiKl60bBKKD4KoLSWwuHt8zdYmlpmpZOXR4fnwaD71EDPZ7F8FYseZHM5/L/XqoXF4quG6W7pGnaze1NPptZ4yskghBKkkTTNDM2Gxb31zfC6xvhwMrbsfEFJMLU9FIgsHl4cJJOX13nrvO5fDp9paqZy9Q/qcRFKnHxYX8PRCKHEXH77VpEWI8Im3Neb5kA1bWxvtn14y9+dmXe++fMH76F6aXtd+LW2ruj3RjY2SmvSATlQuuTu7OTiH9MxOPppFIw7vr0dzhcVYGiKGMM88O32EBvz+/Us4HenqHfegd6e5gX9PjIy1F6cHSYnp4YHx8dmfF6OS7g9y/4/f5giF8NBgOB5UBgGdk+ny8YCkWjUb/ff/8l8zy/vbObN/Tjk5Nnv1JqLle4vXUPDm4Kwm2xGAzxPc+f568/zVqSJM37VvROTf3c1ZXNZI6PjnAcBwBkMxm3242mC4Ll3owsGEY2kwEAFAyjYBgAgHQqhUrci8UghHuxmCAI6HSyLAMAUG/RTETtlCSp9FzK1/SBAACoqvrweEtb25etra19fX04jjscDoIgcBz/qbPT6XQ+7ejAsG9IspMkSYqiHn/1GMe/czqdKAz91NCPDMfx7u5ugiAwDLPb7RRFPfn+ydOODoZhLI8+f2SxWJqbm10ulyAIPp+P4zieXxMEgeM4lp3jeV4wwfO8KIq8CTS+OI5bXVldXFzkOA4F8DzPcVw4vGUm4QEA/wExBBWlGak4SwAAAABJRU5ErkJggg==" nextheight="555" nextwidth="868" class="image-node embed"></li><li><p>The various solutions end up looking somewhat like this:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/f3eb1b05ed2812aebe0409264b21b417.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEPklEQVR4nJWVTWwbRRTHN/Z6vDuxJ7s19q7X9trZj4mNY0zCRzC1G5kcMFAIhtgNViOljRR6SVXHVaFt3EZpgkg4RNBWggNCQCVEBGqhVchH21Rpg0oQBCRKTwRIBRckDtzgMsje1KSuQ+BpDvN2377fzrz3n6FsWxnDMOFwWFVVhmFs/9+oygwhVDMCIYQxVlV1s4CNkXfHUHZktyM7tEGGYRjIQBtECBkPbTYbhFCSJIyxLMtOp3Oz1PZyagjrGYaFEBquvQyj6pl6K23hOV4JKG7BzXO8xWRhAcsyLEIIABAOh1tbWxVFEUURQlgTwDDAQtOBgB9jPRhsstlYAGiGARBCyikJYqO7Mag88OiDza33KUHVo3o8mlf0ug1APB7XdV0QBJ7nYdnuTF7PcZzXp3h9jZre1BQMaRp2S6rPr7olD8fzVKz4WPfl7vSn6a7pdGYmnVvsm72xNPnj20+/u6uBtbsEFwCgUl6EkMPh4DjutttgNlHB5vi562TqCvnwCvlggXy8RL75gdxYI8s/k1TnAJWYSPUsPfPc+a6npl544kz66MrEyOrJoZuvDcwc3pnaaaJpo3QAAI7jZFlub29XFMVkMlUAociOCyvk7DJ5f568eY7MfU1W/yAXvyW//kmyu1+iksUnnz3bmZvcd3xk/MjIWP6VoVNr7wy/NzH86ngkGrGUARBCjHE4HNZ1HWOs63ooFDLANE01hds+WiRTl8mJ8dOj4ycLLw9f/Y58co2ceutMpruHcjldXsnjdDo1Xduzp1fTtW3ObZIkybIMADC2xeilQCAgCIIoipIkCYJQKQLHcY0K9gf0e8PNudxuvz8QCKiNiopxsyCIFISlBoUQAgCAFXh9Xq/HCwANAHA5nQ6HwyhAqYnLYZXJxkIDQNO0med5WZZNJhNYNxpCplpoCKFgMOjxeNra2tLPdyUSiWAwuKWGjW9dghDbvj0SiWiaVhHdPwBDVoIgxGIxVVUz2Wxf/76e3r54PP5fAAAAj8eDMZYkaaOe7wBUpJtMJtt37Ojd25fJ7pJleTN9VYxhGIfDkclmo9EoTdMbX1UDEEJGdCKRiMfjqqpumd34rWSy4/DQsf7+F6viqwEbGZquB/z+ezjODmEDQncPKygdBqIoqqoaCoVSqZQsy1X7WQOw3prlhVNW6yMdHRTLUnVmiqarhqbrTRjHYrFoNNrS0uLz+YzO3hpgMMws+0Yu99frk98fKtwsFH4qHrk1XLx17Oja8eJqceiXsdG9mQzvcCiKwvM8KK+mxnG9GaABIYqmfx89Qa4ukEszZG6azJ4nF2dKY+ZCyZ2bfrw5TNXVseU9qXkZbA34bXSELC2WkpYzkvnPyML8+uTSbOdDD1NmM3/77KtpmwLsNlud1TqWyazk93++f+DLg4NfHSosHxy8Pnjgi0J+KX/gWj5/P8Zmi+Xfb7q/AVuhMFcAN9LbAAAAAElFTkSuQmCC" nextheight="906" nextwidth="1456" class="image-node embed"></li></ul><p style="text-align: start">The previous two solutions can also be seen somewhat as an application-specific bridge, which is a type of chain we alluded to earlier as well. Another chain that fits into this grouping, is the one that people usually think of, Rune also known as THORChain.</p><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://thorchain.org/"><strong><u>Rune</u></strong></a><strong> (THORChain)</strong></p><ul><li><p>The THORChain essentially acts as an external validator that practically operates leaderless vaults on connected chains. This also means that it is the cryptoeconomic security of the entire network, as it acts as a middleman between the chains bridged. It is also one of the trust assumptions that need to be made.</p></li><li><p>A state chain coordinates asset and exchange logic while delegating transaction output</p></li><li><p>This works with an “endpoint” on each chain connected to handle the specific transactions</p></li><li><p>Each signer is required to run a full node on connected chains</p></li><li><p>Each chain’s client is relatively lightweight and only contains the logic needed to call contracts on particular chains. The main logic is in the observer clients that operate on the THORChain itself. Let’s sketch it out so you can get a better idea:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/e69eebda39eb0d5ed65279fca4792c10.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAVCAIAAACor3u9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAE3ElEQVR4nK2VXUxTZxjHjz2n9PS0b0/P27fn1NPSrsikdLViKx8aDB+BIgJFxWKyMcqHVT50m86pLNky3W6cixo0+0Cd0yotLbRSoEAK4madmcuSfZgs2YXLbsyS3WwuWbard2mLTpCIF/vnn3N33t/zP8/zPofQIMRBTb7V5nCuX51n4QUdRFoN0nL/kwiallAkoVJSGo4BihVSisgiCZoiOE697MsQQs1CLwHY3PhK18Gob39wz8FQ96FY75GJ3QdGvd3nBEHHsuzTTuc4BQCkXE7J5WTalEzOqheXRXxw4be7f+DbP+Ovf8XX7+JAAke+wBcif2dnGwEAcKmiMqcDlrXl5LiLCmvW2rc4HO7i4rqSEoTQorKI987e+/53/NUv+N5feDyJ+8+ND/iTR49fEfV6hmEAAEsCBIQImo7t7cW3buDxKJ4aw4k4joZNBoMSgMeLIva/HQ9/ji/G8KU49k/hYAIHZvC5MLYXrMvLy7NarUvmUKtUhEQSam/D02N4JICjIRwbxgH/EgAN5Hie06L5J0obQk6n01kslqqqKovFolQq2bQAACzLQgjXWK3QYEglmJnEkSEcDePRMA6HzEbjYgDLqhd6gURRtNvtubm5JpNJFEW9Xs/zvNPpLN240Vla+sPpU3gyhiOhFCA2jENBY3a2Mv1VH3WCeMqccBwHADCbza1e786W9oZtnpY2X+PWJrPZbM3Lo1SqgM/3X4LYMB4KrDKbVemIfFoQwmUAEEKaluVbbTUNTaWVNa767TW19fNNJskFgLEIHrzsrqtzu90ul6ssLVEUlwcAAPKtNu/unuYXvS0dXeUV1XKaFniekEqvLk4wuNZuLywqKi4udjgcJpMJALA8QMEw9oJ1u7pf9e7qbu/aV1ZZzTBMKoFU6vf58Owkjg7NT1E4aDQYZDQN0sq0YXkAwzAO5/rG5tbyLVsbm1ura2oZhs7cg1SC2YnU6Q+naJXJpGJZDZxXGgAhRBo1hBlzj/xQLKsS9QZP7SbP5g07Gyrz81M3Q4sQIZF82tGB42N46AoeHUn1IBzMMZmeGFNGyWUxSKZAMoWGVnBZNJdFs1l0JiBMNZku2Vh68aL/TP+ZwUBw23YPSUoQQivFle2tbR+dON1//OSlk2dxdBgH/c+lx3QBYPW2KtfHb1b0v1F55lDVh4ddA0dcA4dcA32CQa9gFBBCiiKrXbVTN+5cGZm8NnXT19UriuJa2xpWpzvf04NvJfHsLL5+Hd+YxVNjSwBKjnb3/Zk4cH+s78Hc3p8mu+KfvTxxvid+uWC9U+B5QRAUDFPt2jz35TfJO98m73z3+sHDmRmnZDJPyYaJ3b5gR9tQZ+dV367+Nq/A84uX3aZj+9765+aB+/G+B3OHf0wcGbn0WuRC1yenPM3NRYWFNpstJydnh2fn5ExyeHR6IpF8qcUrWbFCgxDkOEouJ0jycT+54YmCzh1N0RN1l9+p9x91B45tjxxvir7fMPiuVi8CRsGq1RRJlldUDccS5/2hkfGZts49FEUihDId0iL0uJ+cQ0Kr5nQsNED+eb0xV280CjqB5XhWnfmOEGqypNLa2vrpudv+0LXpudu9+/aT5DzgWZS6ByqWXSmKDqfzhTU2k9mc2VaPlFlHZeUVhUUlZeUVmTFN/3KeCfAvfFTW15Cpn3UAAAAASUVORK5CYII=" nextheight="961" nextwidth="1456" class="image-node embed"></li></ul><p style="text-align: start">To finish off our analysis let’s take a look at a type of bridge that’s often not referred to as a bridge, but rather an L2 rollup contract. These are the contracts on Etherum that L2s communicate with and where assets are locked and then “minted” on said rollup. These contracts hold, at this point in time, billions of assets. As such the validity of them is incredibly important. Let’s take a look at how they work, and what type of security they provide.</p><p style="text-align: start"><strong>Rollup Bridge Contracts</strong></p><ul><li><p>Function akin to a bridge in the sense that assets are locked in an L1 smart contract, and then become available on the L2</p></li><li><p>Rollup state and proofs are verified on the L2 contract, giving cryptographic security, that is somewhat derived from the underlying layer. If a validity proof is needed, it is sent and verified in a verifier contract on the L1.</p></li><li><p>Most rollups have upgradeability in their smart contracts, which is obviously a risk that needs to be taken into consideration.</p></li><li><p>Most rollups allow transacting via the L1, or force exit to it if the sequencer fails.</p></li><li><p>Essentially a trust-minimized bridge. However, there are significant smart contract risks, as well as trust assumptions around who controls those.</p></li><li><p>The <a target="_blank" rel="" class="dont-break-out" href="https://bridge.arbitrum.io/"><u>Arbitrum</u></a> and <a target="_blank" rel="" class="dont-break-out" href="https://app.optimism.io/bridge/deposit"><u>Optimism</u></a> “bridges” work like this.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6f2aa9e54eecf769b6e5c8f824201558.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEHElEQVR4nI2Uf2gbZRjHz9jcvXnT+/XuPC9J21yS21LDddbMpk0uae/S5NL8uKbpj9S6bms72Wxty1wnQ60WRVBQC6uiA5GyySwKNeLEza1Vkbo5B8L+WBkV9Y/hvwri/ydJ51anpPvy8PK+8PJ8eJ73+7yYnSQ5lg2HHlUjsbZgmxIK1btc5P+JLotxi6K8p11uDnEcR9MMuZ0wzGJZHB42Vy6YpUXzkxPm8sfm++/VCQIBALXlHoSQYeiFD8zlb82vz//1+apZ+t584umPajCsOgbDMOzixJPmlSvm2pL53Qnz8pp54ZzX6bT+C0BBCDlux7kfzau/m+a1X27+ZP7wp/ni69ctGEYzbDVADQCq3DTXk5+KJ2d0Y0bX35qY8LjdOI5vrQAAQJJUZuD5oYNv94y+2ze68MJr5/eEewi8hqSoagCapnEI768lMavV/gCqoSiMIDiOgxDevkTTtKMiQWAtGEYC7D4MY2ncWoORZLXsZUAgEEilUgG/3ykI3dnsI83NiGV5nt/afUEQdF0PBAJ+fyOLdiDE2UlKEBz39MgtLS2yLDMMw/O8JEnBYNDhcHAcxzDMXQBRFCtPzciyzFW0bfYyYDMFixDP8wAAjuPs9lqEuFtFUBRJUSxClf4IJEXxPC+KIovQ5vFeATZoYxFLAAKhsiUAAAixVtwKAAEAwHHcBm0Mw+C4FSGE4zgBCJIqW2t7AIQQIc75oCOt6Y2+nX5/QNrVWOeqV9qiwaZm0e3xeSWpztMZVSWPz7tzlyzv9ro9Dc76aEuY4/htGRgBCK/HN7ZyeurGZ2NrZ4rjE7mu3sL83Owfl5/5bdV46Xj/szNPXS9Nb5ztXXjZyPYXhkcOf7N05MaXxzYuNoVCVotlG5sCQHhF797SybFLp/etLuZGDsTjXd2vPje98cXRX1eM2aOZ6fFDV5fGLp0y3phNJLLpwaGxtQ+P3VwZv/ZpSFXtNhvN0FUrwHGP12cY/Xo826ml+7oHhwb2qdFkMmWUI51PpvNdSSOlG5qSGHn8YCE3EE9ktVSuu/exh5uDJEkKgsDz/G3XAQDgP7oDyBYGta5canCouPhm8cy88crxVKYnnsnHM/lEZU2m8/n5udGvTg2W3kkd2K92ZjKFYkDejeNWmqZRxYSCICCEGhoaXC6XIAgul4um6TJA9EndxeF4yigcPjS5Xjry89n9q4uZXF8yW9BzlTD60pnCUOnk5Pry5HrJmBqPJ3NGce9DARnHcZq+0yKHw6EoSjQaVRSltbVVFEUMAOB01UVi8VCkPRxVlfZ4h5roUBORmNbRqcc69ZiWjMS0SEyLKmososUiajiqhmNaTNM9Xt/mH3VX35mKNjflObDba8uTcEs2CEA5IJQkSZZlnyRtzsp/RZL26h6FEP4NsA0ZwZcM59EAAAAASUVORK5CYII=" nextheight="776" nextwidth="1456" class="image-node embed"></li></ul><p style="text-align: start">Now that we’ve covered the vast majority of the type of solutions that are currently used for cross-chain messaging protocols and bridges, let’s take a look at another very important part of the security of the protocols in question. Here we are referring to the economics of the protocol. In particular of interest here is the cryptoeconomic security of the protocol, if it has a token that gives governance powers or allows you to take over a vital part of the protocol itself.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-bridge-economics">Bridge Economics</h4></div><p style="text-align: start">Let’s start with an assumption - There’s a bridge protocol with a governance token that allows voting for upgrades to the protocol or allows taking control over core protocol functions. Now, if the total value locked in the protocol far outweighs the quorum to pass a proposal, then there’s clear value in attacking the protocol. This simple assumption is why bridge economics and governance functions are extremely vital to bridges. One way to mitigate this in regard to governance is to utilise a slightly more nuanced governance principle called Optimistic Approval, as covered earlier.</p><p style="text-align: start">Cryptoeconomic security is a crucial aspect of blockchain bridges and cross-chain messaging protocols, and requires a carefully designed and implemented system of incentives and disincentives to ensure the security and integrity of the system. This is why systems that don’t necessarily rely on trusted third parties’ cryptoeconomic security work best. In systems where you rely on a bridge’s cryptoeconomic security for securing assets on various chains, obviously isn’t as secure as relying on the chains’ cryptoeconomic security themselves.</p><p style="text-align: start">However, currently, most bridges and cross-chain messaging protocols rely on the economics of a trusted third party. Obviously, this can be quite ideal in a situation where that valset is incredibly secure, but could also falter in other situations. There’s also the usage of other mechanics that can be used to secure networks that are participating, such as Verifiable Delay Function, which could add randomness to participating oracles in networks that rely on such actors.</p><p style="text-align: start">Other economic aspects that need to be taken into account are networks where cryptoeconomic values are used often such as in multisigs, valsets, mpc or even thresholds. These often rely on an honest majority assumption, meaning that the cost to attack these bridges is the cost to corrupt/overtake 51% of the network.</p><p style="text-align: start"><strong>Trusted Third Parties</strong></p><p style="text-align: start">The use of trusted third parties in blockchain bridging has both advantages and disadvantages. On the one hand, these third parties provide a centralized and trusted point of coordination, which can make it easier to manage and secure the transfer of assets and data between the different networks. This can be particularly useful in situations where the different networks have different security and consensus models, or where there is a need for additional levels of oversight and control.</p><p style="text-align: start">On the other hand, the use of trusted third parties introduces a potential point of failure in the system. If the third party were to be compromised, it could potentially lead to the loss of assets or data. Additionally, the centralization of authority in a trusted third party can potentially undermine the decentralization and trustlessness of the system itself.</p><hr><p style="text-align: start"><strong>Rate Limiting</strong></p><p style="text-align: start">Another aspect that is also economically relevant and that could help limit the damage attack cause is the use of rate limiting for the bridges. What is meant by rate limiting is the concept of limiting the amount of total USD value that can be bridged per hour, so that emergency solutions can be put into place to save the rest of the bridge.</p><p style="text-align: start">Obviously, this causes issues on the UX side, especially for very popular bridges or for large bridging users, while obviously adding some security. For example, you could limit the total amount that could be bridged to 10M USD every hour. The vast majority of users/retail won’t notice, and it would limit the possible damage in an exploit to an amount that is much smaller. This would obviously have been quite useful in past exploits.</p><p style="text-align: start">Is there some magic number for what the rate limit should be? Not really, it depends on the adoption of said bridge, and it also depends on what chain is being bridged to. For example, on an Arbitrum&lt;&gt;ETH bridge you’d need a large amount that is possible to be bridged, as a result of its popularity. However, in the case of a gaming-specific app chain or rollup, a ton of value isn’t needed to play a game, and you’d rather ensure the security of users’ funds. In this case, rate limiting would make a lot of sense.</p><p style="text-align: start">The negatives are obvious - throttling and pricing out big players. However, does security outweigh those?</p><p style="text-align: start">One solution could be to implement a “highway of bridge lanes”. Different bridges for different solutions and people. One obvious downside of this is the fragmentation of liquidity and volume that this would bring. For a gaming-specific rollup it makes sense to rate limit lower amounts, you won’t need big amounts there, and you want to ensure the security of your user’s funds under any circumstance.</p><p style="text-align: start">Some other things to keep in mind are:</p><ol><li><p>DoS attacks, so you’d need to implement considerable fees on big volumes.</p></li><li><p>You want to optimise for growth, but this puts a slight stopper on growth.</p></li></ol><p style="text-align: start">As has been clear throughout this article, it’s trade-offs all the way down. So this is also the case when it comes to rate limiting. However, it is an area we would love to see more experimentation in. In most of these cases there is no clear optimum, but in general, trying out new and daring things in this space is worth doing. No final design is ideal by any measure, but safety and security should be the biggest concern for any protocol. You could say rate limiting allows us to sacrifice UX for the few and provide security for the many.</p><hr><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-interoperability-and-composability">Interoperability and Composability</h4></div><p style="text-align: start">Interoperability is often used to explain the seamless transfer of assets between applications and chains, while composability is used to describe the idea of a shared infrastructure between those specific applications, such as deploying an application on several chains with minimum work. This is the type of work being done by previously described cross-chain messaging protocols.</p><p style="text-align: start">Composability is really only sustainable if transaction costs are low between chains and applications, otherwise, it loses the principal value that composability grants you. Composability leads to more choices for the end-user and the ability to seamlessly do actions across various ecosystems and applications while removing prior obstacles such as building ecosystems from scratch.&nbsp;</p><p style="text-align: start">Applications become composable when they're able to interact with other applications such as automated liquidity positions, lending etc.</p><hr><p style="text-align: start">We’ve tried to be as objective as possible and provide a clear overview of the current landscape in regard to cross-chain interoperability, and hope that it provided some sort of value to you as a reader. If there’s any point that you disagree with or feel was misrepresented, then do reach out to the writer @0xrainandcoffee on Twitter.&nbsp;</p><p style="text-align: start">Thanks to <a target="_blank" rel="" class="dont-break-out" href="https://runtimeverification.com/"><u>Runtime Verification</u></a> for input on the smart contract part, as well as to the other readers of the article, who have helped.</p><p style="text-align: start">For further reading of trust minimisation in bridging, I highly recommend reading the Clusters piece by Mustafa from Celestia - <a target="_blank" rel="" class="dont-break-out" href="https://blog.celestia.org/clusters/"><u>Link</u></a></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>modularity</category>
            <category>cross-domain</category>
            <category>messaging</category>
            <category>bridging</category>
        </item>
        <item>
            <title><![CDATA[Beyond IBC]]></title>
            <link>https://paragraph.com/@Maven11Research/beyond-ibc</link>
            <guid>pbXHsr0X8QsaeV7EpGrC</guid>
            <pubDate>Mon, 25 Mar 2024 22:01:22 GMT</pubDate>
            <description><![CDATA[As may have been clear by going over some of our previous research pieces we are believers in the modular blockchain and application-specific blockch...]]></description>
            <content:encoded><![CDATA[<p>As may have been clear by going over some of our previous research pieces we are believers in the modular blockchain and application-specific blockchain design paradigm. A consequence of this is that we envision a world with a lot of different blockchains, for various applications, verticals and so on. We are convinced that there will be a wide variety of blockchains and that those will grow as the number of applications gaining traction grows.</p><p style="text-align: start">An inevitable result of more blockchains, either in the shape of a rollup or otherwise, is that interoperability will become exponentially more important. So as the world becomes more and more modular we expect to see a plethora of bridges pop up. One of the more exciting ones we see is Polymer. We will dive into how they are bringing IBC to all ecosystems below.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-ibc"><strong>IBC</strong></h3></div><p style="text-align: start">As a slight refresher, here is part of a section of a <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/i/64766542/ibc"><u>previous article</u></a> by us, on IBC.&nbsp;&nbsp;</p><p style="text-align: start">Inter-Blockchain Communication(IBC) is at its core a cross-chain messaging protocol for homogenous blockchains. This means that it connects chains that share similar functionalities, in this case, instant finality provided by the Tendermint consensus algorithm and ones that have light client functionality. The way IBC works is that two chains that are interested in having a connection with one another will put up a governance proposal on the destination chain. This is usually, to begin with, either through the Cosmos Hub or Osmosis (Currently Osmosis has 45 peers, and Cosmos 40). This means that there’s an agreement on a protocol level, and as such, there is no need for a trusted third party in an external bridge.</p><p style="text-align: start">These two chains then require a light client on each other’s chain to cryptographically verify consensus state between the two chains, as well as a relayer to relay information between the light clients on the two chains. The relayers are required for liveness - the ability to be able to exchange messages among nodes, with the nodes successfully coming to a consensus. Let’s explore how this looks in practice:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/771407798f6dc0e394a6723241e98987.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC/klEQVR4nK1UT2vbSBydXSWqB8sWVSeRpZ9GlhPrnz1SrMp2UlyDNpBuClsMQajoUEQuAUMIuJ/Ax3yNnnosPe1h7/0EJadl99xT2b306GKp8Wo3BZtt30GMmPm9N783bwYJG4Dn+ZOTk+PjY9d1GWOmaWKMNykUBAGtXSGKIsdxaZrO5/OXs9n19XWSJBuyfxHAd/CVdTnu79xHCHEc91WuuzyiKC4F5CUaOzu7+UBWFLVeqwtCtVxcr9VpS7cGnQfkQT77X9RqdUVRCSE5wxKyLGOMUbfT6Xms57Gj4XDQD8OHoaoRx21jXC3vpcJXrNCx+q5ht/418QVV09rTmrse80zHCZY0YRCGzPfR8c9P/Uc/md5AM0ynd4R+QL++/uP9u4+1+j0ATVEUFVRVUW3P2ffM7iOv3bMMc68hN+AWut6sVLnf3ty8fXWDEBo4nW6rRRuNKAimWYae/vKsOxgfPH4Ce/a++xAh9On3xeLvRbW+1dQNSikAFP22e1bnsGuFDgDQWwCAYbR+3EJ//blYfFgghB6z3vMoOnTdyWg0ffEC+b7n2O2Oa/UO/I5r2baz19YOjwaSJG1tb5Us4ncau86gK2vKNreNMeZ5vvgKgqAq6mAY7rd1x3Yc12W+7/m+6ThLizDGiqLoenO1WQBNFEVZlimlRUxXJ6m2tHrpF2NMCKGUijkKSzWApq5TSlVF+SemfI5yTItiAChHpcJXyuyyLJcXrMpXbGsuGsZYkqSij7sAgCKI33qTJUkCgJVRxfUBAELIJg/GegGcMxqGQQgRBIEQshpvgvUCwu0hFa8eIYTneYSW6fgOAmL+0jHGrq6ukiQJguD09HQ8Hl9cXDDGOI4rZ+x/doDzHI/H4yzL4jgejUZxHJ+fn0dRhBD6VgEx76Df7w+Hw8vLy9lsxhibTqfz+TwIgsK37yMwm81s286yLE3TwiKENjq/jSwCgCRJJjnSNI2iKMuyJEkMw1jbxEYClNLJZNLPEcdxFEVnZ2eTycQ0zbUCnwGTsrlNyjtLFAAAAABJRU5ErkJggg==" nextheight="921" nextwidth="1456" class="image-node embed"><p style="text-align: start">This means that the trust assumption lies within the two validator sets of the connected blockchains, as such there are much fewer trust assumptions than other types of bridges and messaging protocols. For example, with XCMP in the Polkadot ecosystem, the trust assumption lies solely with the relay chain (Polkadot).</p><p style="text-align: start">To show just how compatible and widespread IBC has become in the Cosmos ecosystem, and how many chains it connects - let’s take a look at a map of the current live connections.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/1a45d561709af0f3e408197b019597cf.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="1400" nextwidth="1415" class="image-node embed"><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://mapofzones.com">mapofzones.com</a></p><p style="text-align: start">With IBC there are two connotations that are important to note. Those two are connections and channels:</p><ol><li><p>A connection is two stateful objects on two separate chains - the IBC module in the CosmosSDK.</p></li><li><p>A channel is a specific connection to a chain/app and provides message delivery info such as ordering, this is what is referred to the relayer.</p></li></ol><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-ics"><strong>ICS</strong></h4></div><p style="text-align: start">ICS stands for Interchain Standard and sets parameters for transactions happening between chains using IBC. ICSs are basically module specifications for IBC transactions. For two chains to communicate using IBC they’re required to possess the same ICS specifications. One of the more interesting and unique ICSs is ICS-27, also known as Interchain Accounts.</p><p style="text-align: start">Polymer will be supporting existing ICSs. As such, chains that are connected to Polymer will be able to take advantage of much of the great work being done by the wider IBC community of which Polymer has been a long time contributor.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-light-clients"><strong>Light Clients</strong></h3></div><p style="text-align: start">Light clients are an essential part of blockchains. In their current form, they enable the ability for less hardware-intensive machines to participate in the verification process of blockchains and also help facilitate connections to others. They do so by only downloading the block header instead of an entire block. They trust honest full nodes to provide accurate information and hence are not trustless. There are several types of light client implementations, and one could even say that the rollup bridge contracts on Ethereum function akin to how light clients function for IBC-connected blockchains in the Cosmos ecosystem.<br><br>Light clients notably came into the spotlight with the emergence of the Cosmos ecosystem, and have gained significant popularity in regard to the possibilities it allows for in respect to scaling functions of blockchains. Here we're referring to how Celestia is utilising light clients to participate in data availability sampling to scale with the number of nodes in the network. This would allow light clients to have almost similar trust assumptions as full nodes while still not being required to download the entire block. This results in light clients, and consequently end-users, becoming first-class citizens of the networks they inhabit.</p><p style="text-align: start">In most primordial monolithic blockchains, users are required to run a full node, where they'd have to store the entirety of the blockchain data if they'd like to participate in verification. This puts a hurdle on decentralization since as the scale and history of the blockchain grows, so increases the hardware requirements for full nodes. This problem is often referred to as state bloat. With light clients, as long as they're connected to an honest full node they're able to participate by scanning block headers, instead of entire blocks as with full nodes. A block header is a section in a block that serves as a summary of the rest of the block - such as the time and difficulty of when the block was mined, and the root of included transactions.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/41e16ffa8d0e03f6b8a497c19dfd9448.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="995" nextwidth="1456" class="image-node embed"><p>The information needed for light clients to verify a block in PoS chains</p><p style="text-align: start">Light clients are used in bridging to facilitate the possibility for two bridging chains to verify the state of each other through the help of an off-chain relayer. By verifying each other's state machines the two connected chains are able to reach finality between each other on a protocol level. In the current setup of light clients, this does mean there is a certain level of trust involved, as just explained. In IBC the connection between chains is set up with a light client on each chain to verify the state of the chain.<br><br>The relayer builds transactions based on the state of the connected chains which are then submitted to the other nodes in the network. With IBC this is done via the Hermes relayer implementation. Some work is being done on the incentivisation of relayers to enable further decentralization and security. Currently, relayers are run manually and many are run by various validators that also run full nodes on connected chains, often enabling them to profit heavily from interchain MEV. There is ongoing relayer incentivization work to alleviate some of the issues this brings, which Polymer is also taking an active role in.&nbsp;</p><p style="text-align: start"><em>Light Client Block Verification in Tendermint is as follows;</em></p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/a0c5d82c0d1a3c013ad0d22881c6506a.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADJElEQVR4nJWUMYvcRhTH544JGRsW5MwGWZw2FigM1sGcozPCIijIVrEOB1eo2KBiiwUVKoZssQHZqBDIQcUUKgZUqFAh8IFM2LAfYIv9FAn5HoGkDdYk4uKEveRXDE9o9P7v/fVmwOQWiqIAAIIgEEJ0XZemaRzHeZ6vBrIs45yHYcg5L4piPp9DCBVFmRwFfCAAIdQ0LQzDKIoYY+v1WgixWq0Wi8V6vU6SZLFYLJfLIAgMw0AIHc/+oYDMTik1TVPqqaoKBmSxmqbpA4SQ/y2AEPI8z3Wfff3ypW3bTy8vTdMcTRhXwzBM03QcJ4qiMAz/q0UQQs/zHMdBCGVZzti379798ObN94PAg1FA1/Xt9sfXr14lSdJ1HaXU87zjGu8FEEKqqnreVwCAM904py6ePsRTbarOIPwI/oX0CgCgGbPJA+VkiC3LchwHQnhMAEJoWRalFAAwmxnWuX0CwAkAP/38yzdR5Lqu53m+7wdB8OL5819//+3CeUq+uJCFq6p6dXV1h4B0YD6fD62cPbn88qF2Np2qm+9eW5Y1/ljJiyCgz5zZ5++nAABAB+4WkE24rjudfvr4/NI6t03zMZ5q6B8AAD7B+P69e6fglBDi+/7xWfrbFOm67rruo0efIfQxhKfDCsfvb6ncP9P1JxcXtm0fSf0vAgAARVEIIbZty9NACNF1XR4IaZFlWXLeMMYAgLsFMMbKgDGAMUYI4QFKKSHEcRzP8+S02Lat6zrGGEJomqamadLesb/bwZ9F+75fVdXhcEiS5ObmbZ7nh8MhTdOmafb7/WazyfO8aZrtdisGqqqq6zrLsu12e3PzllJqGMbY3xhMJhM5HSCKIs55WZZN03DOd7tdXdfL5bJt27IsGWNlWcq8RVHEcSyEyLJMCBFFkdwg76u6rtM0Xa1Wu92uqqosy7quu76+BoyxzWZT13Xf9/v9njEm7VJVVdM0jLE2YJqmoijjIyFEFksIkX7KPTIwDGN8BeTF2fe9bCXPc8aYEKIoir7v5ZVQ13XbtoyxdKDve+mSECLP8ziOOedZliVJIttq25Zz3jSN67p/ANRzH/tiz0HwAAAAAElFTkSuQmCC" nextheight="742" nextwidth="1456" class="image-node embed"><p>Simplified Light-Full Node Relationship</p><p style="text-align: start">Keep in mind that this is a simplified picture of the relationship between a full node and a light client. In actuality, many nodes participate in the peer-to-peer network.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-zk-light-clients"><strong>ZK Light Clients</strong></h3></div><p style="text-align: start">So, light clients are clearly a great invention, but how can we make them even greater? In Polymer's case, they're making use of ZK light clients, a new invention. ZK light clients will allow for increasing trust minimization and efficiency of transactions. By utilising ZK proofs it is possible to encode light client verification logic into circuits that will allow for making verification of batches of block headers more efficient. We covered block headers briefly earlier on, but something important to note is that also present in block headers are the previous block(s)’s hashes, which is what allows us to create the “chain” of blocks. In essence, the block header contains any data that isn’t the list of raw metadata itself.</p><p style="text-align: start">A great example of the efficiency of light clients is that assuming your blockchain had 10.000 1MB blocks, you would be consuming 10GB of space on each full node (for the simplicity of the example, we are leaving out techniques such as data pruning etc). However, by just using block headers for those same blocks, you'd take up an order of magnitude less space. This is further increased by utilising ZK proofs, and their recursive nature. What's vital is that they allow for devices with less resources to perform validation and for blockchains that support light clients to read the state of another.&nbsp;</p><p style="text-align: start">With recursive zk proofs, it is possible to increase the efficiency of the relay process and use even less space. Recursive zk proofs are when you take multiple proofs that are then aggregated into a single proof. The single proof is only valid if all inherent proofs are valid, and it is much easier to verify and less costly. This is especially appealing when proofs are verified on-chain. Thousands of proofs can be compressed into a single proof, saving enormous costs in the verification process. This is because a recursive zk proof proves the existence of a previous valid proof. Since the verification is a computation itself, it can be expressed in a circuit. A single proof on this computation/circuit certifies the validity of an inner proof, which may include another proof and so on and so forth.</p><p style="text-align: start">Another reason for wanting recursive ZK snarks for on-chain verification, is that running a Tendermint “light client” on Ethereum is quite expensive, as you'll see throughout this article. Even if it is optimised, the actual cost of verification is expensive. If you were going to just verify Tendermint light client verification logic on Ethereum, it would even be possible to exceed the block gas limit. Recursively verifying ZKPs will allow for a much simpler on-chain verification process.</p><p style="text-align: start">The reason for wanting recursive proofs to verify block headers is to generate several proofs in parallel and then recursively proof them together. This means that the usual cost of verifying a single block header of which there may only be a single cross-chain transaction can be recursively lowered in parallel. This also means that you now just verify the proof of validity on-chain instead of the entire block header. Similarly to how we achieve scalability with ZK-rollups.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/f008f5c147689c45246e641d3eae83ab.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAIAAACMdijuAAAACXBIWXMAAAsTAAALEwEAmpwYAAADTklEQVR4nHWU70/bRhjHvVZHxWXllriTSawko2b1WhN24F4W58eFOICz5jISRExQEsxSk2Gps7ZZZWZLXgxNQpoydeNlI01Ie8n7vdmb7s/i3ZRYILpqH92L8z33+Pv80nEIhSM8j/5L+J2TG8IQQoTmBGG+lCWPkvHPcCqeSPB8BKG5UOh99DYchLP3ZmYgnL1e8H4oBOEs+h/uzcwQorbb7YymfeccdrZrTVbJaFnGWKGQj8ViCM29JfBESZFcXpaXlaXVR3LqobSYTC4oS6v8O2lBCAEAWpaW9HKwPxkMxuPXrb0WnMLzfNNsX6d4LcDqrV/GfzjfDirP9nY7Tq3RzVFjo7IdTyzcvgchFATBNHdfnpzttfcxXo7w/PV/IwghQRCazV33m0HTbIuieOPLZbLlXGH9p/Pf9vtfl9aqG0a9qD/LUSMmJm4LCILAWE1RlJPBkNKipmndTje4EGhTSgkhvv+jpmkY47XiWmDl8nRTWVJbna/+/PuvFy+HB71jfX2L6tUbAZ7nwx+EpY+lFXXlznt3ALgbhJzT8xE+EljVtKqmVY7jALgbeBXLxWB2uLRWSn2qVmudg/6Ln38fHx79sFHZKRQr8cTC/VAIAEApdRynXN3IlvIQwmgs2j883KrXv2g3xLi4uLjoeZ65v5fT80E0vYNe1+pWzdp8NAoh5Ei6kMmWev1js3Wkr29tm19ubR/glUw0Nqkjz/MAgOh8tPe8t9PcIYRMfDgOY/z4yePgEyGUL+TVp6okSUHzKaXP+zZjLJlMcqnU00kbqJHWirnCukqyytKqLC+L4kfTeYWyLB9/f2xNcV0XY8xxnOd5ruuORiNJkjDGwymWZQEALMvyff/Vr6983/c8j8MrGS1b2qw0Nit1otGH0iel8uetdv/Bgw8RQgAAXdfH47FlWfYUSqkgCO0pjUaDTGGMOY5DKeV5/sZkmiZjjKOUXl1dXV5evnnzz8XFRbA5cpxpMyddghAqiuK6ru/7mqYhhERRJIR4nscYwxgTQkzTNAxD07RkMimKImPMdV1CyKREsiyfnZ0xxgzDGA6Htm0Hdb/9fkAIbdt2JqogSEuSpNFoRAiZTg6wbfv09DQICAAgy/L5+TnGGADwL/2t5wady1QzAAAAAElFTkSuQmCC" nextheight="553" nextwidth="1456" class="image-node embed"><p>Recursive ZK proving</p><p style="text-align: start">The actual on-chain header verification will be happening under the secp256k1 elliptic curve parameters (for now, but there are other curves that are possible to use as well) with the ECDSA algorithm. secp256k1 was constructed in a systematic way which allows for especially efficient computation. As a result, it is often more than 30% faster than other curves if the implementation is sufficiently optimized. Secp256k1 curves are both used in Bitcoin and Ethereum. However, it is not the most SNARK friendly, and as such other curves will be researched as well.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/514f9ed93c67bdaf651d6d56c9eb40c3.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAeCAIAAADCaIt+AAAACXBIWXMAAAsTAAALEwEAmpwYAAACaUlEQVR4nGMQJBrw8PCoqalJSkoSr0VQUJCBeKVsbGxhYWFKSko8PDxIwkLUtCAwMBDNAmYWRhpaICYm1t4wXUxMjPoWiImJMTAwZCQXXj/1joGBAY8dFFlwcNv1pLhsmlggCA6fj0/+i4mJ49dFjgWCgoIMDAyZKSUHtl0FO1+c6hYIMTAwHN9zN9gvmoGBQVhImMoWsLGxyckpPb/9HzVDUGwBDw9PWFiYmpoaAwNDXUX3tL7lBMOHNAsYGBicXRwkJSUYGBjuXviioqLGw8NFWBcxRvPwcImJic3sX7V360kTY7PmusltDVPxp05SLeD5/+N/X/uCmVMWvbz/vzCnlpOLE3/cIizg4eFhww14eHgYGBjys2tb6qcwMDA4OtpzcLExMDCwsbHj0YWiXU1NLTY2NgwHiIyI9PRyP7b/UnlZlZub66JFi4qLi4OCgsOIALGxsaAUISYmJosbKCkp8QvwdbfMCA6I4OHhys3NNTMzk5SUkJaRUlBSkiUEQCUKDyHAwMBgamKza/1ZBgYGNzdXUVFhMTFxFRU1ZhZmHh5e/HqJimQxcLnW1jRt5YK9x/ZfWrv0wPyZm47vuWugZ8rKykK1CoeTi11YSDg5OdXE2IyVlcXW2mnRrC3MLIwE0xKxFggLCTMwMAQGBsrKyvLw8LCyMh3aeUNBXplgaUF+adrZOKO8qJVgdiPfgsiwZEjM06TKFAQDWIUjQH0LxMBJ69ntv77eIeCGhRBNLOhtm7tl5XH8hTZFFnh7Bb979J8mPhAEASFWVpYHl35ISkrxC/BTxwLMpiM1azQcjV98SUhQUBAAAAw913M6iDEAAAAASUVORK5CYII=" nextheight="1303" nextwidth="1387" class="image-node embed"><p>Graph of secp256k1's elliptic curve - in reality, it will look like scattered points.</p><p style="text-align: start">One thing to note is that the general calldata of all the transactions and their Merkle tree still need to be stored. We will get into how this can be made more efficient in the next section. If you're interested in reading a bit more into the reasoning behind the implementation of ZK light clients and IBC logic with ZK proofs in general, then I recommend that you head over and read the newly released <a target="_blank" rel="" class="dont-break-out" href="https://polymerlabs.medium.com/developing-the-most-truly-decentralized-interoperability-solution-polymer-zk-ibc-f0287ea84a2b"><u>Polymer article</u></a>, which covers parts of these questions.</p><div class="relative header-and-anchor"><h5 style="text-align: start" id="h-references"><strong>References</strong></h5></div><ol><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/tendermint/tendermint/blob/v0.34.x/spec/core/data_structures.md"><strong><u>https://github.com/tendermint/tendermint/blob/v0.34.x/spec/core/data_structures.md</u></strong></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/tendermint/tendermint/blob/v0.34.x/spec/light-client/verification/verification_002_draft.md"><strong><u>https://github.com/tendermint/tendermint/blob/v0.34.x/spec/light-client/verification/verification_002_draft.md</u></strong></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.rs/tendermint/0.23.7/tendermint/block/index.html"><strong><u>https://docs.rs/tendermint/0.23.7/tendermint/block/index.html</u></strong></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ipld.io/specs/codecs/dag-cosmos/tendermint_chain/"><strong><u>https://ipld.io/specs/codecs/dag-cosmos/tendermint_chain/</u></strong></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://pkg.go.dev/github.com/tendermint/tendermint/light"><strong><u>https://pkg.go.dev/github.com/tendermint/tendermint/light</u></strong></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://www.researchgate.net/publication/344663049_A_Tendermint_Light_Client"><strong><u>https://www.researchgate.net/publication/344663049_A_Tendermint_Light_Client</u></strong></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://medium.com/tendermint/everything-you-need-to-know-about-the-tendermint-light-client-f80d03856f98"><strong><u>https://medium.com/tendermint/everything-you-need-to-know-about-the-tendermint-light-client-f80d03856f98</u></strong></a><strong>&nbsp;</strong></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/0xPolygonHermez/pil-stark/blob/main/circuits.bn128/stark_verifier.circom.ejs"><strong><u>https://github.com/0xPolygonHermez/pil-stark/blob/main/circuits.bn128/stark_verifier.circom.ejs</u></strong></a><strong>&nbsp;</strong></p></li></ol><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-verkle-trees"><strong>Verkle Trees</strong></h3></div><p style="text-align: start">Verkle trees are a more efficient data structure for state commitments. The benefit here is that it allows you to have reduced proof sizes and verification costs on-chain for proofs. In general what Merkle/Verkle trees bring is the ability to make sure that the binding of data is identical down to the very last byte, which allows us to provide finality agreements to blockchain nodes.&nbsp;</p><p style="text-align: start">To understand how Verkle trees are different from Merkle trees, it is important to first understand the latter. Merkle and Verkle trees are quite similar in structure but have a few components that make them quite different as data structures for state commitments.</p><p style="text-align: start">In a Tendermint/CosmosSDK structure, Merkle trees are used to share transaction data between nodes, in particular between full nodes and light nodes for the light node to verify a certain block. In this situation, the light node gets a commitment from the full node and gets the witness which enables the light client to construct the root in the block header.&nbsp;&nbsp;</p><p style="text-align: start">In Ethereum, Merkle trees are used in the Execution layer in which block headers consist of 3 roots of Merkle trees. These are the state root, the transaction root and the receipt root.&nbsp;</p><p style="text-align: start">There is also the Ethereum global state tree that updates over time, and as a result, also increases in size as time goes on. This is one of the reasons why Ethereum is also exploring the use of Verkle tress in future releases to minimize the amount of state that Ethereum full nodes are required to hold. This is what is referred to as statelessness (weak), which we will touch on a bit later on. This similarly also cements why light client compatibility is so vital for blockchains, and why Ethereum is also looking to add them in the future since it enables clients that have lesser hardware to be able to verify the blockchain itself. The state bloat issue is also why <a target="_blank" rel="" class="dont-break-out" href="https://hackmd.io/@vbuterin/state_expiry_paths"><u>history expiry</u></a><a target="_blank" rel="" class="dont-break-out" href="https://notes.ethereum.org/@vbuterin/state_expiry_eip"><u> </u></a>is needed with the added amount of calldata (transaction data) that is coming as a result of <a target="_blank" rel="" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-4844"><u>EIP-4844</u></a>. In general, state bloat is a massive issue for blockchains if you're not interested or willing to increase the hardware requirements of nodes, as it hinders decentralisation. There are various ways to mitigate this, and one of them is Verkle trees.&nbsp;</p><p style="text-align: start">Let's take a look at how Merkle trees look on paper, which will then enable us to later see how they differ from Verkle trees.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/87bccec2fa081a63e8884b8395a694c7.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFhUlEQVR4nHWU708TdxzH69bgmWu58i3HtQcXrnftwUEqFMEdcKVSoC2lBYujtrSV2hYts9Aig6IOEZUOFck20ciPgjhJJkqKygRjtkdzmpg5t5jsH1g0M8bEbXHZHi3QOUG3dz4P7p58Xu/v+/u+E6CvlPHGYFioIzI+PhEMtnV19Rw61B+N9nb3RCOR/UMnhqPR3qETwzUGAwAgA8P+HfQtCTJQFMMwaXq6JC0tOQAASVqaTCYjKYqilSpmRSqGySYVFE1TCophchiGoWklTdMoigKQJkFSEbEYEYtf233FE5BZxNFgsM/vZ1WqHCVdmJ9HKxSsSsWqVPkqlZKiMlA0Hc3Yvssb6IhYXJ5sUiEFAF21hWFYJo7ztXVGu8PkdJvsbrlcLgVACoAEQcDqg0Aukx3Zu/dkOBwL7esPtI72dI32dIWbXYby8roKbWlRkVgkkmVmDo5Njk5dHBybrKiulstkJEkyDKPRaCiSLOBKHaGIye6OnDqzzWKrbGg0u7x8bZ0jFKlsaFwBMBSVNMvm5LA5OfkqFa1QoBiGYhiTm2s0mlq8Xo/Pn6WgPD7/TofTVFvLcRyO4zRNF2zebPG0NLa2WTwtFo8v9PHpxta2qu1NBEWvTHa2AEXRZPTS9HQcxzOzslAM2wRB+Xl54XC4qcnO81qCIMQikVwmo2ma57X19Q2hUHso1P5eWZlYJNJot9U1uy0en8Xjawq2oygqBVIpAP9EtLZFJEkSBIFhWKneMDJ9scbaIAVpJElqVkUQBI7jGIbhuFycKtbx/PVLs23NrqLc3BV/q+uS17OuRWtfCIIAABRsLjgzeznx9Tfjc/PFRUXYShnSMzAsGTrLsiRJbuU4m8V6f+nmnaVbH7b6hSkpOI6/3dF1gJXVhYW+3b7WvcFasyWvoPD9JrvX63O63apcluM4hmGS5WFZVoIglXr9Pl+A37KlN9q7leMgCFq18j8AAAAEQd3e3UuX59pdLgCAXCYTi0QwDB88NTJ9JdHS3iEFAMdxhmEAABZrfTw+HfwgBNLTh04Mnzs3bjAYkvj/ACAIkpeXX1ZePj8xeTU+NdDRIU5NVSlVcrkcgqAjn50dnoiHDvSlCIVKpRLH8Xc2bGiw2e7eux+LDREEMXx6ZHFxqe9wv0AgAG/fgQRBvF5fKNTucrspBeV1uXU6nTg1FUVRLc8f7Ik6nU4Igmw2W2d3r6a4GIZhtVp94OBHx2NDsdgQw+RwHDcRnwp1dAT27FGr1W8cQtDd0zM/n3A6mwUCgcVqHT07dn4sTtE0kEhuTE/fub5YzXEpGzeWVxmvLn/Ve3JYlpl5Y/HL2dnLi4tLS8u3z4+Nx+PTo2fPfXv3XmLh2vTMJZZlEQR5Dfjk0zNX5hPHjsU2QZDZbJ6ZuXhz+RZJklIAJmJDt+bmrJWVQqGworbuUuLGyYkpJA1EIp2T8QvdPdHJ+IW+w/2RSGdyw9HBwcTCdZIk1wYlKCsvN5vN9fUNMAwDAHY6HFarlWVZaJXnsNtLSkogCGIYJtS5f0dT0yYIMhgMLrdboykKBFr1ej3P80ajieNKDQaDz+/neS0Mw68BiYVrv7/8c/j0iFD4blVV9eMnT3989FOlXg/D8NLy7WfPXwwcPZ5M7+cnvzx4+KiqqvrBw0ePnzz97vsfXv7x1+ezX5wfG3/2/MXMzGxi4dqvv708MjCwLiKbbYfP79dWVAAAaFq50+H0eHbRNA0AMBpNXq9frVYLhUIcxy1Wq16vl8tkPK/V6bbxPF9jMGwpLlar1UajqaRkq0aj4XltLsuuiwiGYQiCkszk1wBBkFgk5qrKDM21JTWc3WGPxWLhcFin09lstkAg4FyV2Wz2er1mc20g4AsGgyRJwjCMrP6l17bob0QhsqkPbDUnAAAAAElFTkSuQmCC" nextheight="844" nextwidth="1456" class="image-node embed"><p>Merkle Tree Implementation</p><p style="text-align: start">The witnesses in Merkle trees have the size of lgxN(x-1). In a Merkle tree, the proof is the entire set of nodes in the tree that share a parent with nodes in the path down to the node being proven. This means that you have to include a lot of nodes in the witness that will allow you to prove a commitment. This of course grows exponentially in very big trees since the top of the tree that you need to prove would grow very large as well.&nbsp;</p><p style="text-align: start">The main difference between Merkle and Verkle trees lies in how they structure their witnesses and as a result their sizes. Before we look at the structure of Verkle Trees, let us detail how witnesses work in them. First off, what's important to note is that to all positives, there are tradeoffs. In the case of Verkle trees, by moving to a witness size of lgxN(2) you lose on compute efficiency. However, it enables us to reduce the proof size and as such also lowers the verification cost on-chain for proofs. This is especially vital if you're trying to bridge to and from Ethereum, where gas cost, for now, is quite high. A great example of just how expensive on-chain proofs are for bridging on Ethereum, take a look at the test calculations that Electron Labs did for their <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/bringing-ibc-to-ethereum-using-zk-snarks/13634"><u>"ZK IBC" idea</u></a>. To lower cost, verkle trees and recursive proofs can help immensely alongside many of the other scalability solutions in the works for Ethereum as a whole.&nbsp;</p><p style="text-align: start">In Verkle trees, instead of needing to provide all the nodes that share a parent, you instead only have to provide the path to the root. So in a very wide tree, the path will be quite small compared to all the <em>sister nodes</em> (witnesses) that would have to be provided in a Merkle tree commitment. Another added commitment that is needed alongside the path in Verkle trees is <em>vector commitments (polynomial, which can create a proof for any point, refer back to the curves further up if you want a refresher on points)</em>, which replaces the functionality of the sister nodes in Merkle trees. This means that they give verification that a certain child node (the node under the parent) is actually the correct node in the tree, while only providing the path itself.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0d7a2f40ce3f4886b966585a9ee6c6e0.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEmUlEQVR4nI2U/08TZxzHD9Pg4YHX3vV67bVHkepJoec4tsPji1ZaRCjjS+mOCVLB0mp1xVw5BoNBywALGnDydbQGEKVxbNnWTDYlbK4ajUtIFraYzf3En+GvS1tDHNZl75+ee/J5ntf7/fk8OQBLJgRBzrTY/f4hnm8UBK/T6ezwdLS1OXp6ej2XLwuCl6IoVI5i/0NA0l2CIHL0MVEUlZebZ8gvyH/3Pb1eT9N0nsFA07ROp3vzFIqgKIK+vkYRNDkgXoFgGJaRnp6tz+0ZCVzo7D6Uz2SkpyMIiiCIFJbuqleqlJpMQkXgBKFSawi1RqXWqDSZ6uQABY4jCALDUpkMrmts7hsb/+TKWJmlWiaTonJUgWMHsjMztWptNqk7qD14+IBaQxwpoGyt5rqWE7ZWs6m6sO600dZqLikvSAJAYwb3FxcVuz2u21/N9g0LBiaHYY+0nG1ud59zuM4WFrOIXIarFGqNSoErFLgicVCtIZQqpTabTHjP1KqVKuW/AHhcGI432u21VpvhnZxLYmsOfRDD5Bgml8KwUqnMPpDd1NTidLooilIplbtmEH8gKCqXo7FOxj53J4AgqO2y95ff/zxz8dKeFEAqg3fmhmExsyAIMkz+y5cvX7z4m6IOSWWymKe36xUAjzddrdHYeL6ltc3SYPt5c31mcZxlC2OmpLKdMhAETSaT3z8oil2OdhcEQf9x+yuAAsNAEMzK0kaj0UgkguN4Gri3ut7Y5GgMzAU/HZvQMzSGoRimkMKw2Vw+HwxZLBaSJO9++bXb7SYIQvH2EAASf44MUyB0itvb29FoNCsrC8MUaeBepUrl/3x6fnX1xtLVYycKMAyTSCS1tXXPft0UxS6appeXw/fWHqgJNQiCqFyeHECSpCB4eZ5nmAKapl0X3Il2cRw3NTVdXFKCIMi14Gizy74fhlmWFQTvgM//cXcPRVFNTc0eT0dvX7/RaCRJMuF1N2Bmdm59faOyqgoAgJsLixs/PTx1qhJBkK2tre3t7dLSUliGeAeHJkNLeUe5keHRp882Nx5GH0Yfh0ILa2v3Hz95+sfzv37bel5mMkEQ9ObAAUe768bktNlcLpFIbDw/MxvkuCIIgvz+waVbt/R6PQRBzc6Ld378Vhj8qKrqpCB0VlZViWJ3vbXhw9NNzvPn36+pGfD58wwGGIaTJBA6xVBoIZHA4+lYXg5brTYQBHv7+m+v3D12/Hjq3tR+T8fzR+tfBK/cmJkMh1fHJ65/F/nefckzNTU7dnXc4+n44f66KHbBMEwQxK4QwMxsMNGWtPilj548q7c27AP3DfT77609KOQ4AAC6HOe+mbjO0oZWR/t8MDQSGJubC1mtts+GRoavjPJ8482FRbv97J6UFCiu14cBQBCUKpEktiAIAkEwIz0jlzEcrSjSHaFsH9jqauuOl5UVl5RwXBHHcUajkWXZmpoao9FosVhOms2NPF8al91u53neYrEwDLPDAF79HuLaWZNaMpcxHKb1A76BcDg86Pevrq6KohgIBO6srPh8vkgkEgwGh4aGOI6rqKjgOI5lWWNcLMvqdLodwD/ytXgG5yoqIQAAAABJRU5ErkJggg==" nextheight="784" nextwidth="1456" class="image-node embed"><p>Simple Verkle Tree Implementation</p><p style="text-align: start">No sister nodes are required in proof construction in the tree. You just give the path itself plus a few short proofs to link each commitment in the path to the next.</p><p style="text-align: start">If you're interested in learning exactly how the Verkle trees are constructed in Polymer, then we highly recommend that you check out their brilliant presentation on the internals of Verkle trees presented in a visual way - <a target="_blank" rel="" class="dont-break-out" href="https://docs.google.com/presentation/d/1IZqyFgb6VwLBxieR0_wUFdzmAIC_ZAMicbKWL0fidMg/edit#slide=id.g11d85b9c7cb_0_54"><u>link</u></a>.&nbsp;In the beginning, Polymer won't be using Verkle trees. However, in the future as a result of state bloat and proof verification pricing, it makes sense to make the switch. As such, Polymer is preparing for the future.</p><p style="text-align: start">Beyond the basic functionality of Verkle trees and polynomial commitments, we can add even further optimisations that can allow for a myriad of other incredible future implementations. Let's cover them briefly:&nbsp;</p><p style="text-align: start">These optimisations come through properties that polynomial commitments enable. Primarily the ability to make fixed-size proofs that link the nodes in the path for any length or path. This is done through a deterministic source of randomness for non-interactive proofs via Fiat Shamir Heuristics(FSH). FSH enables us to implement multiproofs through random evaluation.&nbsp; This is also where the trade-off between Merkle and Verkle trees comes in - the proof generation of computing a polynomial. This single polynomial proof can then act to prove the correct path(s).</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/17b419845975627544c7474accf06342.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEG0lEQVR4nI2Ub0wbZRzH70XNyryWOx7kjt52o9emtHAdB+2WBzhS6o2x0ZlnoVBmjj+RjtZyYMfIGNZmwJiwIKFjQ2JdEaoSnIEgc5LBYlQ0S4bBOY2bcYm6jMVX84Uv5rtpaM0kE8e+eV48vye/5/nk9/09z4Nl/EcEQchy7fDwSDDYFgy2hcNhj8fT3n4sGGxTlNZgsK0zFFKUVggLAQAZmwnbcJXjOLPZsjMvj+f5fJstz2YXhAJzQjzPZ5vNNE2vzwcg/f/GxoDEHqDVaIg00HF64Oy7k44X0NaUFADSSYIkCTIdpCfT6ISMJr3JYjCa9HrDDoNJb7EajSa9IRFuAKBpOlE7ZTRxzjJnz1CkvavHqygGI8cZsij6Ob1hR3bO2hHJoWN0uYLJBnPz7BaL1WixGnMFk9Gkt+absnMMGwC0Gs1Oq1WW5am52DsfnNkFc7dtz9y3/3lvU2OTz+uurszUUdpULUVTFE09sogk0kgibROLaJom09L2VVYNjEYpnc4G+V2FAlhzgyIIUqvRkgSJ0MF4fNLj8TzWhqdq8taUlHyb/f2P52c/+6r8AKIyMtTPbElPXBWKphhGh+O4IAgPHvx5d/We2WxOTdU+JeCfSk/29naGQll6fQ5vRehgoPUVT6N3G5u1vvM1NYdcLldxcVFnKKzL1G1aB5bMUKlU4XD44cO/JiYmVCoVTdMYhh14sXZ+6WpN08tajUbHMFqNBiH03fc/KEqrJJWtXL9xbmQUx/FNADj+rMPhCDS3+P2B3t5ev9+P4zgAgOO44LGOCnfVYZ9fl5lJEqkEQZSWOqdnZhVFYRhmKBI5NzLK8/wmgCNH26dnZnmeZxjmRFd3X/9pgiAkSbq7ujo4OIhhmLu2Ljp1Ide+u8nnW1755vLClUufzJ869Xo0Gvto7tLK9RuDgxHqCYDzsbHPl74URZFl2emZuYsX5wEACKH7938fikTUarXLc2jx2rd7K6udpc6x8fjwyJvRaKy7uydy5uz4RHz0rWg8PvmEPwOT5dojR9shhGq1OtDc3BkKcRy3nWVP9vU3+Xxq9ZYiCN8bH3eUlEiS1NffH2huOdHV3dDQ8FLj4br6er8/MPDGEM/zAIDkq34ccHnhyi+/3hNFkWGYL5au3rz1I8dxEBbeufNbNPo2hmFV5eV/LH/dUlPT8eprP93+eX5h8dryyvHjnYuLn05d+PB8bOzmrdv7KypUKhVBEDiOEwn9C2BZlmGYJJlhGJZlKZrKhwWFzqLCkmIIYYkoSk5n2Z49JaIoCILD4XC7q+12u8PhEEURQigIQjKUJAkhBCGUJIll2aRva+9gvYMAgDVAUUF+UcFuESKE6urrUEJut7u01IkQkmXZ5XLJsiyKYnKelNvt9nq9CCGPx/MI8DdA3mCmD4FzBQAAAABJRU5ErkJggg==" nextheight="741" nextwidth="1456" class="image-node embed"><p>Efficient Verkle Tree Implementation</p><p style="text-align: start">If you're interested in digging deeper into how single efficient multiproofs are achieved we highly recommend you check out the great Dankrad's <a target="_blank" rel="" class="dont-break-out" href="https://dankradfeist.de/ethereum/2021/06/18/pcs-multiproofs.html"><u>article</u></a> on them.</p><p style="text-align: start">The implementation of Verkle trees is going to allow for some quite unique and interesting functionalities that can aid in both the scalability and decentralization of blockchains. Let's take a look at statelessness in particular and also touch slightly on another method, namely state rent. Both of these are methods to alleviate the state bloat that all blockchains suffer from. As Vitalik notes in "a state expiry and statelessness roadmap" from around a year ago "The Ethereum state size is growing quickly. It is currently around 35 GB for just the state and over 100 GB including all Merkle proofs, and is increasing by roughly <strong><em>half</em></strong><em> </em><strong><em>that amount per year</em></strong>."&nbsp;</p><p style="text-align: start">Statelessness or weak statelessness is the concept of only requiring block proposers to store state, and then having other nodes in the network verify the block without having to hold and store the state of the blockchain. This is something that requires Verkle trees and multiproofs, which will enable clients to verify the global state, without actually holding any state themselves. Another added feature that is planned to be added alongside weak statelessness on Ethereum is state expiry, which we touched on earlier. With state expiry, the state still needs to go somewhere. This could either be on archival nodes, or we could also utilise a method referred to as state rent.&nbsp;</p><p style="text-align: start">State rent is the concept of "renting" out state to be stored and having proof of accessibility of it on other chains or within specific nodes on the chain itself. There are various projects working on solutions that could allow for this, for example, Laconic, but the way Polymer is structured you could also envision a world where Polymer is used for state rent as well. There is also a method for which you could disperse state with provable retrievability. Joachim Neu presented a very interesting paper on this during the Modular Summit, which we enjoyed co-hosting with Celestia. If you want to learn more, you can read the paper <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/pdf/2111.12323.pdf"><u>[here]</u></a>.</p><div class="relative header-and-anchor"><h5 style="text-align: start" id="h-references"><strong>References</strong></h5></div><ol><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.google.com/presentation/d/1IZqyFgb6VwLBxieR0_wUFdzmAIC_ZAMicbKWL0fidMg/edit#slide=id.g119a168c71b_0_122"><u>https://docs.google.com/presentation/d/1IZqyFgb6VwLBxieR0_wUFdzmAIC_ZAMicbKWL0fidMg/edit#slide=id.g119a168c71b_0_122</u></a>&nbsp;</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.google.com/presentation/d/1zv26gsBiU-xsepXnrpmcBIFVP49QN9jvbbcI_AZKssA/edit?pli=1"><u>https://docs.google.com/presentation/d/1zv26gsBiU-xsepXnrpmcBIFVP49QN9jvbbcI_AZKssA/edit?pli=1</u></a>&nbsp;</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://vitalik.ca/general/2021/06/18/verkle.html"><u>https://vitalik.ca/general/2021/06/18/verkle.html</u></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://notes.ethereum.org/@vbuterin/verkle_tree_eip"><u>https://notes.ethereum.org/@vbuterin/verkle_tree_eip</u></a>&nbsp;</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://nethermind.io/verkle-trees/"><u>https://nethermind.io/verkle-trees/</u></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/o1-labs/verkle-tree"><u>https://github.com/o1-labs/verkle-tree</u></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://dankradfeist.de/ethereum/2021/06/18/verkle-trie-for-eth1.html"><u>https://dankradfeist.de/ethereum/2021/06/18/verkle-trie-for-eth1.html</u></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/lunfardo314/verkle"><u>https://github.com/lunfardo314/verkle</u></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ethereum-magicians.org/t/proposed-verkle-tree-scheme-for-ethereum-state/5805"><u>https://ethereum-magicians.org/t/proposed-verkle-tree-scheme-for-ethereum-state/5805</u></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://beamstart.com/news/merkle-trees-vs-verkle-trees-16609184619683"><u>https://beamstart.com/news/merkle-trees-vs-verkle-trees-16609184619683</u></a></p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://eprint.iacr.org/2021/599.pdf"><u>https://eprint.iacr.org/2021/599.pdf</u></a>&nbsp;</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/polymerdao/go-verkle"><u>https://github.com/polymerdao/go-verkle</u></a>&nbsp;</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://hackmd.io/@vbuterin/state_size_management"><u>https://hackmd.io/@vbuterin/state_size_management</u></a>&nbsp;</p></li></ol><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-ibc-in-solidity-on-ethereum-and-beyond-with-recursive-snarks"><strong>IBC in Solidity on Ethereum and beyond with recursive snarks</strong>&nbsp;</h3></div><p style="text-align: start">Something that has been researched by several teams lately is how to bring IBC to Ethereum before it adds light client compatibility. For example, Electron Labs has presented a "version" of IBC where they have a smart contract on Ethereum act as an on-chain light client (which IBC requires). This is similar to how bridge/rollup contracts work for Ethereum rollups. However, the problem with this is that you're essentially trusting a smart contract (which is often upgradeable or controlled by a centralized team) which obviously doesn't allow for trust-minimized bridging on a protocol level where the trust lies in the two validator sets of the two chains connected. The beauty of IBC on Tendermint/CosmosSDK chains is that they have light client support built in and that it enables chains to agree on a protocol level to open up a connection between them in a trust-minimized way. For now Electron Labs only have a circuit for ed25519 signature verification and not the actual light client logic. To enable the smart contract to act as a light client with IBC logic, they would need to make other necessary changes.</p><p style="text-align: start">So how is Polymer planning on providing IBC in the Ethereum ecosystem, incl. rollups. Let's dig into Polymer's GitHub to look at the work they've done so far.&nbsp;</p><p style="text-align: start">Currently, the best way to implement IBC in a way, so that it functions on Ethereum, is to implement a ZK-IBC structure. Here validity proofs are verified on-chain proving the validity of a transaction that has been done on a connected chain. As mentioned earlier, Electron Labs have a great <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/bringing-ibc-to-ethereum-using-zk-snarks/13634"><u>blog post</u></a> on how this can be achieved as well, but there are a few things that I do feel are important to note. The IBC modules need to be converted to solidity so that IBC transactions can be verified properly + we also need a solidity verifier for Plonky2 (which is currently the fastest proving system for recursive snarks - which is one of the things we need for an efficient implementation of zkIBC). If you're interested in following along with the development of the Plonky2 verifier that Polymer is doing, I highly recommend you check their <a target="_blank" rel="" class="dont-break-out" href="https://github.com/polymerdao/plonky2-solidity-verifier"><u>GitHub</u></a></p><p style="text-align: start">Presently, Polymer has already created smart contracts on devnets that acts as on-chain light clients for both Ethereum and BSC. This enables the smart contracts to receive IBC packets since they have rewritten the IBC modules in Solidity. Likewise, Polymer has also done testing for a variety of other EVM-compatible chains such as Binance, Avalanche, Fantom, Polygon and also Solana.</p><div class="relative header-and-anchor"><h5 style="text-align: start" id="h-references">References</h5></div><ol><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/polymerdao/plonky2-solidity-verifier"><u>https://github.com/polymerdao/plonky2-solidity-verifier</u></a>&nbsp;</p></li><li><p><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://ethresear.ch/t/bringing-ibc-to-ethereum-using-zk-snarks/13634"><u>https://ethresear.ch/t/bringing-ibc-to-ethereum-using-zk-snarks/13634</u></a></p></li></ol><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-polymer">Polymer</h3></div><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-ibc-e2e">IBC e2e</h4></div><p style="text-align: start">In addition to standard IBC, Polymer will also feature a by-product called <em>end-to-end IBC</em>. This is an excellent fit for the way we view the modular world taking shape, as connected chains are considered to be "rollups” in this product. E2E IBCs are remote VMs that allow for native IBC and light client support. E2E IBC can be adopted by all chains, both application-specific, other L1s, L2s and various execution environments.</p><p style="text-align: start">What this means is that connected chains can have their own “rollup” that works as a remote VM in which there is light client support and native IBC connections. As such, chains that usually aren't able to utilise light clients can have an environment where they can connect and use IBC logic, without actually implementing the modules themselves.</p><p style="text-align: start">These remote VMs will interact via Polymer through interchain account smart contract APIs on Polymer itself. Through this, they're decoupling the networking layer that chains usually rely on, and instead allow the remote VMs to operate as an extension of Polymer itself that supports native IBC connections. This means that Polymer is able to maintain an IBC connection on behalf of connected chains.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/f60761ead0783d6f9f3c2ef3dfdf088c.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAALCAIAAACRcxhWAAAACXBIWXMAAAsTAAALEwEAmpwYAAADW0lEQVR4nGPg4eHh4OAQEhKSkZOzsbEJCwvrrm+a0dbbUV6bGhYjIyvDwcHBQxzg4ODg5+dXUVGRlpaRk5NTV1fn4eFh4ODgkJaWNjU11dHVmVfTPrui+fjcVf/f/Pp//t62CbONTYzVVFV5eHj4+fl4eHh5eHj5+fn5+Pl5eHghJD8I8MEdERwc3Nbe3ds3qbCo3MnJVUhIkEFCQkJdXZ2Dg0NEWKQzo3jP3OWNxZV1uWVJQRHBXj4sLCwSEhJKSkoMDAzMzEwQxMLCAmcwMICcCFEjBw4DT09vD09vbx9fE1MzPh4eBlNTU5DvWNlUddVcA9ydXBz9I/zyyrP8I3zlFOTk5OQg/rOwsDAyMjYyMjE1tdTVM9DVMzAyMlFT13Rz87C3t5eQkIAEEQsLCzs7GysLCEC8xZCXl+fl7RUaEuqd7OMY51ranHv05tb5myYmlvpb2puJiYmrq6uZmpquX7921YaLmQWzJ848eOj4m4XLz+UUzcgrm9/aucjf39fT0ys7O1tbW5uFhZWfXwAcbvyQQGOwsLDg4eFhY2EzMDXsnzHFzsEmOjk8LDYoPCHUzMJMRUVFW1vbyMgoNjY2I6fKNzAlMCStsq4vOr7Q2T3K1jksNaPIwsLc1NRUW1tbTEwM4gmIb8Axx8+gpKSkqaHBxs5pqqs6t79h9byJK6a2bls2PSfGV01VFRK+2traQkJCnNwc7OyszMyMWloa1tYW6uoqWlpqJiaG0tLS/Pz88Gjw8fGpqKzp7p7Q1t6Rn18AiiIVFRVdPf34QJeccMeprYWHNswpTfRJDLRTVFSQlpa2sLAQEhLi4ODg4uDi5+VjYGBQU1WLiY5xcXLy8/EJCwkFhww0xHl4eJycnHr7Ji5evGzK1Bm5eQUMsPQrYKCnG+jvY2NjY29v7+bmZm1tpa6urqSkBI4wFn5+fqcAX2s/z5iCjPKulrCsZGsfN2s/T0NbSyYGJrTcIC0tLScnqwQGIAsggI2dnYubW0xMjJ+fX0hIiJ+fn4WFRUhIKBEMAgMCShdNTp/fvfzOyXP/353696Z2y+Kk2e2xdUU8nFyYOQ4OEBbwweR4eHi4kHKvBBjIyck1Lp9dNK+/efmc1VePLjq1t3zplIb1C7MaqzhY2fBkbwCGv+F8C15sjgAAAABJRU5ErkJggg==" nextheight="492" nextwidth="1456" class="image-node embed"><p>the remote VMs would be living on Non-IBC chains to enable IBC logic.</p><p style="text-align: start">The state of the E2E IBCs is going to be verified on Polymer, as is usual with rollups through light clients, which CosmosSDK and Tendermint support. On the Polymer side, there will exist IBC smart contracts (also sometimes referred to as bridge contracts on Ethereum). These will handle movement from Polymer to the non-IBC chain. The native light client support means that trust minimization can easily be achieved.</p><p style="text-align: start">Polymer will also feature what they call xApps, which will function as multichain applications in rollup form on top of Polymer. This will give them immediate access to a wide variety of chains on which to settle and handle transactions.</p><hr><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-"></h4></div><p></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>ibc</category>
            <category>modularity</category>
            <category>cross-domain</category>
            <category>messaging</category>
        </item>
        <item>
            <title><![CDATA[HMS Gyroscope]]></title>
            <link>https://paragraph.com/@Maven11Research/hms-gyroscope</link>
            <guid>9qXqL5WP4BkvejiBtuNy</guid>
            <pubDate>Mon, 25 Mar 2024 21:59:47 GMT</pubDate>
            <description><![CDATA[Preface&nbsp;The past few months have shown that certain implementations of algorithmic stablecoins with various percentages of backing aren’t scalab...]]></description>
            <content:encoded><![CDATA[<div class="relative header-and-anchor"><h2 style="text-align: start" id="h-preface">Preface&nbsp;</h2></div><p style="text-align: start">The past few months have shown that certain implementations of algorithmic stablecoins with various percentages of backing aren’t scalable. Because of this, we’re extremely happy to be supporters of Gyroscope - a dynamic stablecoin protocol that is fully collateralized and decentralized. We believe that they are building out a protocol with extreme fortitude that can persistently support a decentralized stablecoin through a wide range of eclectic events. In addition, we are convinced that decentralised stablecoins are one of the best use cases of crypto. We first met the Gyroscope team in January 2021, after reading their research papers online. After extensive back and forth we are proud to have partnered with them on building out the Gyroscope project from the earliest days and into the future.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-history-of-stablecoins">History of Stablecoins</h2></div><p style="text-align: start">To understand how Gyroscope is trying to revolutionize the way stablecoins currently function, it’s important to first take an in-depth look at how stablecoins have progressed over the years and what sets them apart from each other. First, let’s start with the history of stablecoins and then move down to the various types of stablecoins that exist and some of the death spirals that can arise.</p><p style="text-align: start">First off, let’s establish what a stablecoin is. A stablecoin is a cryptocurrency that is supposed to remain stable in value against a pegged external asset (usually USD). It should aim to minimize price volatility (in relative terms to the value of USD), either through full collateralization or other methods. The purpose of stablecoins is usually to negate the speculative nature of crypto and create a market for USD/Token markets on DEXs.&nbsp;</p><p style="text-align: start">The history of on-chain stablecoins started on a hot summer day in June 2014, when the first on-chain stablecoin was released — bitUSD on the BitShares blockchain. Suppose you’re familiar with the olden days. In that case, you might remember some of the people that were behind BitShares, such as Daniel Larimer of EOS fame and Charles Hoskinson, the champion fast eater.</p><p style="text-align: start">So how did BitUSD work? Well, it actually worked in a similar way to some of the “algo” stablecoins of recent years, let me explain.&nbsp;</p><p style="text-align: start">One could redeem and mint BitUSD, however, the price of this transfer was determined by the BitUSD vs BitShares price in a distributed exchange, which is not linked to actual green American dollars. As such the price references itself and tries to fix its peg on the basis of arbitrage. The only argument of why BitUSD should trade at $1 is thus “why would it be anything else, it’s a stablecoin?” — Which is very much the same reason as with the UST debacle.&nbsp;</p><p style="text-align: start">In this situation, should the value of the collateral currency (in this case Bitshares) fall, any BitUSD holder could redeem and gain $1 worth of BitShares. However, this assumes that the market price of BitUSD is still worth $1 and there are sufficient Bitshares in collateral. So, not quite the same as LUNA/UST (Where UST was always redeemable for $1 of LUNA). Regardless, the same issues that UST was presented with, also existed way before that, even back in 2014. And if you’re wondering how the story of BitUSD and NuBits turned out — well you can check the charts, it will show a very similar story to the Luna debacle.</p><p style="text-align: start">One of the earliest stablecoins, that even to this day has kept its peg is USDT (Tether). It came to the market in 2015 via Bitfinex. USDT is an off-chain collateralized on-chain stablecoin, backed by real assets and to this day is the most popular stablecoin in existence (MKT cap at ~$67.5B). Tether has seen various events and has had controversies around it since its inception. However, despite all of that, it has managed to keep its peg and become one of the go-to stables alongside USDC, for people seeking to offload risk.</p><p style="text-align: start">While Tether has been useful in solving liquidity issues, it brings a key fundamental issue that blockchain was intended to solve into the space: centralisation. DAI was created to solve this centralisation issue (although it is still relatively centralised). However, it brought its own unique problem — namely, during contractionary (and sometimes expansive) market events (i.e., market volatility), DAI could lose its peg to the $USD when the collateral which backs DAI (principally ETH) was liquidated. As a result, DAI is currently backed by around ˜75% USDC and is therefore almost a decentralized derivative of USDC itself, backed by some volatile assets such as ETH.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/868c78599a77a1684b50d920e6f1430d.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAADiElEQVR4nJVUXWhbZRh+knRJSpo2zXKa9CTnJOcnyck5aX5OcpI0abKdztR2Gmtjs1WZVLGXokO8UbxS9EJRrAxUhl45Owabd7JZZSJT1F0I0sWJRsbY7GTzQhARCj3yJWm7QlkrPBzeA9/7Pu/7vM/3AR5hT/CK8IVBifCKFkp0DIX7BwXbIN/j5p2Dgn2QhyvUBoeBEFz8VuKeqlMirH7A12dnTRhGX4D3ySmlGEkdYOSirIwF4iXEclBy4BQk84ikCdP/ILAGzFPT4oeLmQun5DMn6/rDfU4BjIy6jqPjGM2hWkL9IKQ0AjFIKoQE3BtDbCvUHXBz0hA8gsUZpN987THj2uPGzSeM1em/Vv54/oRy9nWnEDYFwqaoZA5GzFzULEbhFXaTKKRAyhJ+IUHGjKZhom3PPTNv3GqsNx/5d+WY8dviqU9euPDBU8a73OJxmDmISSQL5HA4DVmDT2xLelfNrcjNQ9FQ0pEoEBQOQC3ZaGmi9dWjRmt2rXnUuDrz95UT35yb/ueN7MVXlXOLzlwZTgYejmA/B3dwB3m3/bh5MqCbb0NAj7+veGh2rXnEuNrGT0eM6wtXvox/tBx953L65K3hqWeJGkLZRCfB5sHktqTf3UVeEQ7GMVbtEDTWCUdjraVf/jW/dEd921BfMbzVF+EKIlQCnQSjgS3As3cCSoArZGfkqZvfzhm/tCVqPXjn+8kby5M3zh/6+TP9hx+Hig/BMoQBlsDJErm6S+aIQYgY97apV4SJ3v/yS08at2fXVhrrzcOrX+vNT6utiw/cvhT9+C0LHUFEJbuVVLJnKUtWHU0jFCc2kVT4IvckoMhWrB5RWnpv3vj9mHH98OqliWvLtT+/y35+plfMkPxkAWoR8RwxSGqUfBUN/AghSxZAS7tdNEokHAMhLCxkzp/WvlhSzr5vPf60nY0TEXwRslUXD0owdTxCskhKVys3vxNBx0Uk4DYcxQPD5LUYCMERJGpkSygdRKaIYgW5EgqV9hxZ0ni+TO6TiyPN7bBkN9/LxB1MvMcXcbAj+4Ylaxs9AdnGyL1+2cElLP7YPr/sYEf6+ZSdkW1+2UrH7H65W5ESu8EOLqJE9AfZxFh5ci6qVdVKLVWuaeN1bbyeqdT02nymUpPyE5o+E4iXUuXa6H2Nscm5/Hg9q8/ECvd3npa92bTTBbUZbKAz4mazWye3d30X/gNIfwbCi5UFnQAAAABJRU5ErkJggg==" nextheight="260" nextwidth="512" class="image-node embed"><p style="text-align: start">Tantamount to algorithmic and essentially unbacked stables, TerraUSD’s algorithmically pegged stablecoin was a design that allowed for dynamic adjustments to market forces in real-time like the ones used in BitShares with some changes, eventually leading to its downfall.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/d1b040342d643a3ba580f63f76fbdc82.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAJCAIAAADcu7ldAAAACXBIWXMAAAsTAAALEwEAmpwYAAACnklEQVR4nG2SzU8TQRjGJ2YwOilTXHRLKwMsLLalJbAN29KlA3SDRbNCjSktKEtbapUAUUKBYiKQjZKIHyGaTSDag01MuZB4wRgSg0duHognjt74Czh4wNAF7IHfaeaZeeeZN+8DMC7nuHrB47M7mjAux6egIrgEQykVzeaKc++UKsDucD1f+rD3+2Au+1b0Bi5fvoQQusayTU57Pced1ZgQqq2rs7vchJASp/IbjU4TNhlb9hSr1frfQLkTeb2+ub75403u6/DIRHW1jZCau71dY9HQWOw2bfewrKWGEHdLa38yFZ+euzX0oNFuv26zVVmr+vsGfm7/SiUmMMaEEErpw/SjaGywOxhkmCsnBr39ylIuP/v+k/Z5Y2A00eR0UhoYVui3/Kq+9OReb8Dlbu6Rg365Z2ByavXLRjA6LHYEfF5vmyi+e/Xx6O/Rysu1hvqGUCjk9fpUNR6N3W8RPFcrK08MeKc9PjO5d/Dn6cqiq81jQugChM3OxnDQ1ye322xWAACEsMpqFQKdzZ3drX4/xris7CIAoKGeH388V1vDQQgBAJFIZGo6Mzg45PX6IIQYY4ZhQIXZLHb4u5Sb7Z3UYrEghNxut6qORGOxVDodjcWSySTDMJTSZ/PzqdHRyfFxrjgbnuflY4KSJBFCAACaph0eHu7v7+u6LkkSxvjYWFGUNV1fXFh4oWm6rhsf2d7+ns/nZ2dmEom4w+GAEKqqurOzo2laoUg6nZZleXd3t1AoZLNZSqlxJ5fL5fP5QqGwtbWVyWREUQQ8z1NKpVMQQsa4BEEwGkcIQQjD4bCqqsvLy5FIRBAEQgjLsqFQSJZlSqmiKCzLSpJkPMqyLCGE47jjzoz6M4xcGmumSGnGDQVCaIT93ELj6CzK/wCoLLuBMdJNxgAAAABJRU5ErkJggg==" nextheight="395" nextwidth="1456" class="image-node embed"><hr><p style="text-align: start">So let's summarise the type of stablecoins that are currently in existence and input them into a diagram to see their differences.&nbsp;</p><ol><li><p>Collateralized off-chain</p></li></ol><p style="text-align: start">Under this section lies the two most popular stables, namely USDC and USDT which have a combined market cap of ~$119B. These are backed by real-world collateral held by a central entity, and in some cases frequently verified by external auditors. Keep in mind that in most cases these types of stables are often backed by both fiat and commodities among other trad-fi instruments.</p><ol start="2"><li><p>Collateralized on-chain (+stables backed by yield generating assets)</p></li></ol><p style="text-align: start">These are stables that are backed by other on-chain cryptocurrencies and in some cases even backed partly by off-chain collateralized stables, such as with DAI. The peg is executed on-chain via smart contracts and is at the mercy of arbitragers to keep the peg safe, and for watchers/searchers to liquidate collateral when it reaches liquidation. Some of the collateralized on-chain stables are also backed by yield-generating assets, such as in the case of MIM and YUSD.</p><ol start="3"><li><p>Non-collateralized/Algorithmic</p></li></ol><p style="text-align: start">This is usually referred to as seigniorage style stables, which use algorithms to control the money supply of the stablecoin, often through an asset held by the entity issuing the stable itself. You can compare this type of stable to a central bank printing and destroying the currency, but on a global decentralized scale. In most cases, there is no collateral (unless raised to back the peg, as with Luna’s or Tron’s reserves) and the peg is defended by mints/burns made on-chain via arbitrage hunters through a system that in Luna’s case had an internal asset be the primary risk absorber, which in a death spiral event led to the hyperinflation of said asset.</p><hr><p style="text-align: start">To give a better overview of where the various stablecoins land in regards to their risk absorption and primary value let’s plot them into a table.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/3a817ebf990ad1dec3ac22b6ebfb1a69.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEl0lEQVR4nI2UTW/cRBjHvbu2a68zjsc78cw4tuN4xo69b4qy281iJexud9kNCU1LQ1GAphRQIxUoCCpET70gEIcee+mlghMXLlz4AKgXOFTixjfg0AvckYLsgRwRv8NoNG//mef5zyOZpmlZlvmfAAA8z8MYi5UQQsdxEELm/0AyTVPXdcMwrBJYIlTPRwAAeZ7PZrPJZDKdTjc3N+fz+Ww2y/McAHC+XrQQwvO9hQCldDQadTodxhilNIqiNE1RyfkegeM4ruvGcUwpdRzHLhEn4pIgCBzHMU1TTGGMEUKS67qTyWSxWHieV6lUAABhGKqq6rpunueDwaBTwhjTdR1CSClVVTWKojzPt7a22u12t9sVYSSEcM7H4/FuSZZlEELJtu29vb2jo6P5fH58fLxYLDjnEMIgCPL8hdFod2dnZzgcxnEMISSEhGFoWRbnfDgcjsfji/2L/X4foQZCiFIahuHJycn+/v7u7m4URYWA0JxMJrPZbDqdzkvaJasBXw14FMVrLE6zTAyOx+OkJIqicD1gbI0xlqYp5zzP82632+v1tre3+yW+70tJklBKZVnWdV1RFAhhlmW6rteNpf0dOtt2+dpKEtqWVXjBtu12u61pmnCItUzhsivio2lamqYYY0VRdF2XZdn3fc55IeD7PgBA13XTNAkh7XbbMAytDu69xd7cc7rx0jynK8gCwESNhpg1lwFcdvcXtxaXTuCyJ+SLu7ouKH0MAPB9P0kSKU1TSul4PL5+/frBwYF4r3BtTVYu9q7OJrercnHlwkgYdzodAEzLWraAd3Tlzuuv3rVM/1+BDZcSXa1aEALD8DwvjuNCwHVdhJBIuuM4WZZpmgZAXVZWnv7w6x+/PV9xWrouK7KsyUoSJ7JSxBMAgB2OVzgApmEYqqqthz71IytoG9qFarVGHPxPiDjnwukIoSAI+v2+4ziUUgtaL790/MZrH0AboUbj1unpF08ef/L5/Xdv3+n1+7YNCSWEUlI0FBOyvrZ669HPXz076924+83vzy7fe58gp3jB1tZWVJIkyebm5nQ6TdM0K0gd7EDbTjYSHq4//PbJL2d/PXj06MOPPju8epUxtsHDjHmtZrPZajVbrVZz4/D+d/d+PItHr3z8/ePhtQMXk0KAECJJkqqqlUoFQpimqaqqhmHIsowaSNe0miwrivLi+NKN09OTt9/ZP7i8Fq7XKhLtHpr992qKUoZIdSmFtn3BRHVFrkqSbcHCppzzZrPZ7XbjOO71eq7rNptNAIBt27Is3ywp7GtDRZZrlSrGTrVWNeoaWQ2mD54//ens2nBQLY3LGCOEAqNeVCfLIpQUAp7nMcZGo1Gv19vZ2eElwumVSiUIgtlsppR3BAA0UCOOYwCACZZkAD+9+eWfXz+80mlJqmbU66UAEXbXdZ1SyhiTWImoZbZtiyRjjGmZPVEaMcaEEIyx53mDwQAhRAhxHLSKllagBaFNCLEsq9vtMsZEmbNtW3x4SfysIqElSZJkWRbHsXiK6DDGhAtErQ2CIAzDIAj8IFwTHd93XZcxFgSB67q+73ueF0URxvhvD/zdsYk0pQ0AAAAASUVORK5CYII=" nextheight="792" nextwidth="1456" class="image-node embed"><p><strong>External</strong>: Exonegous assets, <strong>Internal</strong>: Endogenous Assets</p><p style="text-align: start">This makes it very clear that there’s a large variety of stablecoins currently on the market, with the primary ones being USDT/USDC which are both backed by a central entity. The only decentralized stable that’s somewhat close, albeit one order of magnitude smaller, is DAI, which has a market cap of around ~$6.4B. MakerDAO has recently had discussions about moving away from a principal backing of USDC towards more decentralized assets, such as ETH, which certainly makes for an exciting development. UST was the only decentralized stable, that was getting close to the market caps of the two large centralized ones. However, that was not to last.&nbsp;</p><p style="text-align: start">The problem with many of the fallen stablecoins over the years is the fact that when investor panic occurs, which can be caused by varying events in the market, it causes a “death spiral” and the stablecoin loses its peg and with it the trust that it had.</p><p style="text-align: start">Another great example of such an event is the fall of Basis Cash which at its peak had a meagre market cap of $30m. Basis Cash also utilised a seigniorage algorithm, as previously mentioned. In which there exists a stablecoin and a token that enforces the peg in the form of minting and burning - through arbitrage. There exist other examples, some of which tried to enforce a partial crypto-collateralized scheme, such as in the last months of UST. However, when the token enforcing the peg becomes overvalued and unable to enforce the ever-growing market capitalization of the stablecoin, it eventually leads to a death spiral such as with Luna and Iron.</p><p style="text-align: start">Another major part of keeping the peg of a stablecoin is trust. A great example here is USDD by Tron. USDD is technically overcollateralized by the BTC and USDC/T held in reserve, however, it is permissioned and fully based on the belief that it will be used to uphold the peg. As of writing this, USDD is trading at 0.98(July), which clearly shows a distrust in the way the system is operating and the inability for the general public to participate in arbitrage.</p><hr><p style="text-align: start">Now that we have covered the history of stables, both successful ones and fallen ones, let's turn our eyes towards possible events that can impact a stables price ‘positively’, as in asset appreciation, and then we’ll move onwards to Gyroscope itself.</p><p style="text-align: start">Deleveraging spirals are one of the ways that can lead to a stablecoin price appreciating, rather than keeping its peg as a result of arbitrage. This can happen during times of collateral shock and lead to faster collateral drawn.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/039d606f63a9ee1c446d07bde019462b.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAbCAIAAACSpRrNAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFg0lEQVR4nKWW72/TRhjHr2vcxL3cnX22YztxXTd2k5qkbZqSH00TWn6sLYW0AkYHW6HsR9mKCuPFWClDgxfTpIlNIOikTbzcNNEJJoEYEqJ0bAIJNk3apL3cvzFtTNM8OW7TAGUD8ZEjnS+2v/c8zz1fG3DPAF85PAIs22IYyWQyapoIoeo14CkeRylPqTcmHIcJgRgHESKEUEq70l2FfGFiaLNt2xAiunzlUwggCLGfJYQQjgtJoqlptmEkDCPE02RiTa64cX6yx/l6bDBl+lgsUP7pBDBCzYm2WF9ODYcxwiKlvanU5kKhmOpal82useMABG5NdTgXd5e7jPr/FnDX6K6Sq4YpSCKuZwofHJz965ZVyvAsbETITiQ+ffvI9qEhNRIRKQ/85MZUp3Nx17a1pg8SSaTe7Q8LSJKoKKosy25O0FIqCc+ROiY9u2/2/qLW3d7oY4DPtzWfd3795beTJwEAlCDA4MU3O51LbgR1/iBHMITwAQFKKYSwt7fn4zNzM0ePZzNLFAqFgaGhJhpKz07M/H4jVx4oZfPx9vaXN21ybly/Nz0dbmvbPrIVSZGF/e3OV7vGCnY6X+zvK5VKJVVVH46ALiMIgiRJ3iCkKHy9Pz37ytE/bibWF1rCESrLoz09zuLC7YPTflHssGM+JC7sTzoXxrakDMiHtEhYVdX/KbJXCY7jeIGSOqb73VdPOHdae9cGfQwINOzMF5wf7v587BhoaJAIBgz+8VDa+WbvcKde5w/ylVI+6S7iBYp8Dd1vvLjvpy/act2kEbIIlTo7//zo1IkdO5lgUBbFBogP9Ldeeb2jM6pBTAThMUUmhKDVCCJECSdzFCOMkPsLsCwAADAMRghCiCAETCN4rjHAumN3ptLPoDYVhBBN04zHoOt6k65XT6PRaKtpWqYZjUbNCvFYqx1rjcVaLcuKx+O6rhNCgCAImqYJFSRJsiwrmUzGaojH4yujCrX/WhVM07QsyzCMZt3Fk1dV1RWwbbtcLufz+WQyWSwWOzo6UqkUx3FejB7VcSX0lfkqmBCfzxeORLzg3CRWPMpNkSzLiqKoFUzTzGQykiRVk7bqDvZOMUeCGEOMXeNDKJFIDA0OTgwOFLLZ2puBqqqGYWgVbNseHR1VFIW4drm6hZBlMSMSjuvNKdOMhEItRvNAedv0lrxzbfzDnWnAILHqRQ9tG5ZlMUKkxtBr659sa9M1jRDCc1wyam3p6yv3r+/PZLKZbsCgPTndubLn3I4Y8JMVAe4RQlpYadFrZyilCMLOdPrQvomhwYEgQjzHEUk6NTl5dPcuzTRlUQB+PNHT7Fwen3vBBn4iCUte+YgAIW292dTI87IiE0KESsMIkhj0NaRHBo7/c2/96ZkgqGdRUFYU5+4dZ/4C8PsJgsAHX+ttca7unRuzAYMpR1Y3u3gsdmT2+Punz23YuLG7QrFY3Dw8bGq6tann2N83++dmNnTn1+bz7R0dzuVLzifnQk1N20fKTa2Jyd5m59rE2R3xWFd+eHCgWCxalrVKiniO8zaKt3xKqRiSiJ81+3Kz9xeLpw63iEpEbwpHIs6leef8Z408Hzejfi40tc50ru49u82sR2JYkVVVpZQ+mRdRihm/0Zd5z/m+78wRAnwQY0mSnIXrzvyXzzU2UoKBD761IeZ8O/n5eBz4gvTpzI7SYIBtTifHb5/PHZ7gGljCu/HdfmfmyoEpiN03qB/h3rj+3cHsS7koA9Eqr8zaJqr2FF2e8VKncFSmtNojgGFAIOA9iec4iAhgSAPE1W+ZFQFC3KKzLOudsizruQKEsLarSeWoIlIqPLgCkfLVta8IEEJUVS0UCqVSyevWdDqdWEaW3f36JJlclaUIJEny7NLTq7HO+DMK/Asu4VyzRVPJpQAAAABJRU5ErkJggg==" nextheight="1218" nextwidth="1456" class="image-node embed"><p>In liquidations, collateral is used to reduce supply. Stablecoin price rises in response to an imbalance in demand and amplifies the effect</p><p style="text-align: start">When speculator liquidations begin to occur, as with for example DAI where it’s automated by the protocol or in a situation where voluntary deleveraging happens — collateral is used to repurchase the stablecoin to reduce the supply. If you’re interested in the exact way deleveraging spirals function and happen, you should check out Ariah’s work in this <a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/pdf/2004.01304.pdf"><u>paper</u></a>.&nbsp;</p><p style="text-align: start">In elastic markets, this can have an adverse effect as it causes an imbalance in demand relative to supply. To combat the reduced demand, an increase in the stablecoins price is needed to reduce demand. This can further amplify the problem. In a situation where continual liquidations occur, more collateral is then needed to reduce supply by a similar amount to earlier because of the increased price of the stablecoin, and so on and so forth.&nbsp;</p><p style="text-align: start">The speculator of the protocol will then most likely desire to increase collateralization when the expected liquidation cost is higher after a shock has hit the collateral value or if an expectation of volatility is anticipated. As such, the collateralization of DAI is exceptionally high. Often ranging between 2.5x to 5x, even though the collateral factor is actually 1.5x</p><hr><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-gyroscope">Gyroscope</h2></div><p style="text-align: start">Now that we have established the history of stables, the current market of existing stables and how a deleveraging spiral can occur, let’s dig deep down and understand how Gyroscope is trying to change the spectrum.</p><p style="text-align: start">Gyroscope at its core is a protocol that allows for the minting of a meta-stablecoin. A meta-stablecoin is a stable that is composed of a basket of other assets, such as other stables, yield generating instruments or volatile assets. The basket of assets can then be used to acquire further yield.&nbsp;</p><p style="text-align: start">Gyroscope is unique in the sense that it is both collateralized and also has distinct defence mechanisms to restore the peg in the event of price downturns in currencies held in reserve. This is done through a method that is quite similar to the way ships work. For example, if there’s a hole in a ship, and a section of the ship gets flooded, the ship won’t sink. Why is that? Well, in most larger ships you have sections that can be blocked off in the case of flooding in one section. You can therefore limit the damage and spread of flooding by creating sections that can be blocked off. In the same vein, the stratified reserve of Gyroscope works similarly, let’s try to explain it with imagery.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/5995baf1f726b3623379e623d5cbc699.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAMCAIAAACMdijuAAAACXBIWXMAAAsTAAALEwEAmpwYAAADB0lEQVR4nK2SwW/TSBTGo1LXnUzHM56MaxexDVmnbrJpB5sMMUkT14lbk6QpJm3IgpAKK9RduHAC9cANCQmEkDghpJ5WQnDjgFb7T/BnsNJyWYkD4tqVM11W2tsKfoenN6Px++TvfRk4AWNcqVTcf/A8j3PueZ7jOKqqwq8gAyEEADDG4jgOgmA4HI5Go36/3+126/W653kAgG8j4Pt+r9frdrsrKyulUkkIUZkgBdT/j/zwWMAwjHw+L38CQogQks7Yti3fMcZM01xYWDAMw7Ks/1TTNGX90hiGQQg5FoAQWpa1tLTUaDSiKOr1emEYbm9vW5ZVKBRUVUUIya0kSWLbdpIkxWIxSZJyuZwkieM4cRxzzlsTOOdxHDsTFEXJ5PP5Uqlk27YQol6vCyHknjnnjuNwzguFgm3b1WpVCBEEgeu6YRh6nheGYbValX2z2RRCNCYIIVqtluu6vu9blpUhhJTLZTQBY4yQJvv0SEha03sNQZgFYDb1LasoCgBAVWcgzEqv5X3ap4anDyiljuNgjDOqqpqmKeNICNEJZhMIxmBaQUg7kTOzUJ8BWhblpqGuEcoYo5RqKIegzgw2zxgmehbRHNXnwBTGmhyIMQYAZOQ+FxcXUyuKzjIX39vFwunT7ajT27/eWV87KOnDnn/72may4f5y0d3qnCtXVl13dfuq+PFG4Nd8+t1is766G3tBGO/cfNiJ+qLqUUoBAAih4yXPqGqzXquFWz+/+mstHj57/Cgabv129Onh6yd/vh8/fXP56I/DD7/vH727dXg3tE4tt9pnftgt8r3xmTU/f7P/9tefjj4+6ybX37z8fO/2/SllCoI0iscpSnUymYODg+cvDsuNrbOiFobrG9FGMOi6m3FxtFcL1m+M25vN1eicE66JsN25ELXP7+y0BuPBYLDcae9dvvDgzqXd0bUr4/3SckVRFDn935gCAGzbdl1XgzNksltKKZlDVNPo7CzTdRWiOUSyiGCiy7ybjFnzzDDMk/OmTuezKGcYBtLQtDL9ZTqE8G8AQKPvc4dpGgAAAABJRU5ErkJggg==" nextheight="513" nextwidth="1317" class="image-node embed"><p>The section approach to diversifying risk is similar to how a ship diversifies its chances of flooding</p><p style="text-align: start">Gyroscope is for all intents and purposes a fully-backed stablecoin since it aims to have a long-term reserve ratio of 100%. However, it has some more unique functionalities on top of that, which we’ll cover here. It has all-weather reserves and autonomous price bounding, to make sure that the price is as stable as possible. So what is an all-weather reserve? An all-weather reserve in this case is a basket of assets that collateralizes gyro. In the beginning, most of these will be other stablecoins, however, the reserve will eventually move to add other tokens too. When those are added, the reserve will diversify risks, to account for all possible events. Autonomous price bounding is when the prices for minting and redeeming stablecoins are set autonomously so that it balances the goal of a tight peg to exactly the USD. This is especially important during crises. We’ll go more in-depth with this shortly.</p><p style="text-align: start"><strong>Arbitrage loop</strong></p><p style="text-align: start">Gyroscope, like basically any other stablecoin, has what we call an arbitrage loop. In Gyroscope's case, this is permissionless, unlike most centralized stablecoins. This is because the stablecoin itself is mintable with $1 worth of assets. When the price rises above peg, for example, more stablecoins can be minted and then sold on the market with proceeds. These proceeds can go to growing the reserve behind Gyro as well.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/2209b3c57c79fb72b426aa84b89d814e.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAVCAIAAACor3u9AAAACXBIWXMAAAsTAAALEwEAmpwYAAADq0lEQVR4nLVVQU/jRhSeGNcMayaPidfBaRpFlt1YVoqQRbSyvKSsV7uURRUmCwGyLdqkDVRdlaqNFBFRhFwiFCEURYicOFXNgV574cSB8/ZW9cf0tlUy4M0Gtr3Q72A9vTfjb95735tB5Bqj4mjkfkT+SCF3ChRY90ZGosq4+eATYeiDMITvmAAA8NBw9qsn679+o018PMwLYYAgFCDwBN8B9DuZ3SUAAJGIETxW+uWHxt+nj1aehlAIxq6WYowFQRBFURAEQggzult6GGDFGLOjiKKIMRZFsUvArGg0urz8olT6Ppt9xPNDwQZVVU3TlCQpnU5jjCVJMgyD53ld1zVNQwixf3EcBwCGYWCMWTSVSsXjccRx3Obmpu/7EUoXllbWShv2w4eSJNm2zfZXq9V2u73Tg6ZpzWbT9/1KpdJqter1+tnZWTabnZmZqdVqzWazUCgsLCwcHx/7vn9wcKDrOqKUtlqtarUai8U+95bXXm442U+DDABAkqRED6qqyrI8MTFhGIZlWYZhpNPp6elpTdOSySTzK4qSTCZt206lUrquA8BVkzmOUxRlaW39629/zLruUC9fFhKvq8k6wfO8IAjsKwgCx3GCILCysAWsXCz6jooAwLIs9/FjVVUxxgPaYBgQ1b84g9DbOSCEsKOJokjuDuh9J/1fCPC15PudlNKb4/M+3IxeDRobDVVVJy3rw3g84AAAhBBrVzBlLNp/jn4J3ELA+k7I6PP82ovSxuzcvCiOsP0Y43w+b5omm9toNDo5ORmPxymliqIAAKWUEBKLxXRdp5RmMpkBboQQchxna2sL4+HFpVVv9cvZuXkAUBRFkiSM8fn5eafTKZfL9Xq93W4fHh7atl0sFvf39xOJxM7OTq1Wq1Qqp6en9Xr95OQkk8kEGXcJeJ73ff/i4gIgvJhbWf2iOPvZ3Pj4+NTUVDKZJISk02lWK8/zVFVlFWN5IIRkWXYcx/M8Qohpmpqm6brer3IEAIlEQpblMQg/WVh6sJh3n82PiiNsfGRZ7nQ6jUZjb2+v0Whsb2/v7u5allUoFI6OjorFIiGkUqlcXl4ygeAebulBmBAUCv3u//zm9R8/FV+iUCjSEw8ApFKpXA+e55XL5Vwup2maoiiu6zqOAwCu61qWFYjldhXJlCKEfvvu1Zu//nw19wwhRK+XCoLQbVQfru5h1L0o2TVzUzzvEARSk6T767NP792QNgPtof8B6L8n/puAEDIGoMXjd/Za9gj+AW6i5qc8T+MJAAAAAElFTkSuQmCC" nextheight="696" nextwidth="1050" class="image-node embed"><p style="text-align: start">This also works the other way around. When there’s a drop in the stablecoin’s price, they can be bought on the market, and then redeemed for $1 worth of reserve assets. The arbitrage loop coupled with the all-weather reserve is the first line of defence in regards to keeping the peg of Gyro stable. This is something that has to happen permissionless, otherwise, the peg will never be arbitraged, just take one look at USDD. Furthermore, the peg cannot be restored purely with endogenous assets but has to be backed by exogenous assets too, hence the all-weather reserve of Gyroscope. In case of larger events and shocks to the reserve, more lines of defence exist to keep the peg and ensure stability. We’ll cover some more underneath.</p><p style="text-align: start"><strong>Stratified Reserve</strong></p><p style="text-align: start">As mentioned earlier there are several lines of defence when it comes to keeping the peg of a stablecoin stable. The first one is the one described before, the stratified reserve that stores all issuance proceeds and diversifies risks in DeFi. The goal of this reserve is to keep a full collateralization ratio at all times. In the beginning, this will primarily be composed of stablecoins, but as sketched out in the ship painting, it will eventually hold other assets too. These assets would start fully backed, but in the case of the underlying asset dropping in value, then the represented asset would be under-backed. However, when there exist leveraged loans in the system, then those would be over-collateralized. Those would be built on top of Gyro.</p><p style="text-align: start">These vaults exist to provide contained risks and should have as little overlap between each other as possible. This means that in the event of a failure of a vault, it won’t overflow to the other vaults. Even in the event of a vault failing, the system will still remain stable through the autonomous price bounding, which is backed by unaffected reserves. These reserves also serve to gain yield on assets, which eventually will lead to the reserve recovering back to its original strength.&nbsp;</p><p style="text-align: start">This can also be explained in the form of triangles holding a plank, let’s draw out an example:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/5efde70c1b196dea0513460e4439e32b.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAKCAIAAABaL8vzAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC6ElEQVR4nHXQy2/cRBwH8DFe72S83pftjB/jmfgxfuzsrt3Ym+22gbxok6ZRQ4pEigRIgaiCSs2lSK3UErigqqqAA5w4INELJ07ckDhw7S3/C3eCtulWUYHPbTS/33xHX4Bm1HPQv0AINU3Lsqzf72OMFUV5beD8+vl3wNm1oii1/6coiiRJjDEhBGMsSRJZliGE/zksz5x94mWAbduu63ozhBDHcdwZQgjGWAixsbExmUyqqtJ13bIs27admVfr9AxjhmlCCKcBiqKUZXVte1sIkee5EGKYDze3t7IsSZIkjuOI85XVVZ4kQoiiKFzXHS+NsjR2HIcxRggpy6KsFn3f55xHUTQcDtfW17CFXwZACLHRos48QkiSJCCBbhvTbqCizvQkSU1V07WWhhB4AamqjkldM2uy/KLAWkd3zY531g8AwMLY87xmU5sGwLm5Bnxj5ZPHlw4eU9tQEQRa98Gb3skPeHKFSwApsjy4fPGjp1+Od9YbENYUGAbBs+PVhweLQEaailB7/vud+lf3CGpjpKJmHVzcvbPz9Dn1faVWmwZYRkvsHJHrn7faBlJVo9Ue729d+W4zGTAVtTqqmiyPvjj5I9y9MVdXkdbpBcbpyacnv9yCqIUQ0tv2ytHWYD+15kkd1rodY55fjtZvM3cBIXVaUVWVhJDNBNx/T8A5rcyHNCs+/vnZrSfHTU0jhCwtXcqHwY+HwdYk6uhm8tb+YjlYHWceDbFpLPbxwDe/OSyWRzGQGsuVXXLgj8DyHjZNA+i6fvPm3uGdo9+Ps79+vcEoLcsq66fvPLk//nCPhyFj9LO79+6+v3H629uPPhhZJLj29Z+9dx/1sziMeFUOHh4oPx33Tv/+9nC31zCC/auNB7fr5nYCrl91Ax/4vh8EgUu8IvVHmZf2+nHMqed1W20HW1mW9Xo913EoW+hzkqZpUeQ04H4QMOpxzvP8Ag/pIA331qIkjvI8pyyk3gIrS5pd8Fz3H6ncgfzRDi7sAAAAAElFTkSuQmCC" nextheight="450" nextwidth="1456" class="image-node embed"><p>As seen, even in the case of a triangle defaulting, the plank will still be held up by the remaining vaults/triangles.</p><p style="text-align: start">The reason for this is to isolate risk as much as possible so that if a problem occurs it won’t cascade into other vaults. This means that the reserve of Gyroscope is separated into vaults (the triangles) that help contain risks. Such that if there’s a failure or cascade in one of the vaults, it won’t contaminate the rest. If a vault fails, then the dynamic price bounding which is backed by the rest of the reserve kicks in to help keep the peg.</p><p style="text-align: start"><strong>Further Measures</strong></p><p style="text-align: start">The second line of defence is the one I just mentioned, dynamic pricing. In the event that a stablecoin unit turns undercollateralized, the bonding curve of the redemption market will then start decreasing redemption quotes. This means that it acts as a circuit breaker to maintain stability. This mechanism most likely won’t be used very often, unless in the case of extreme market events. Although, it’s important to secure the stability of the protocol in any situation, and thus Gyroscope aims to maintain stability in any event.</p><p style="text-align: start">The reason for decreasing redemption quotes is to have it work as a deterrent to bank runs and attacks on the peg. In the same vein, it rewards users who wait out downturns in the market. Although, it is important to remember that while holders can still exit their stable position, there are now reasons to “bet” on the return of the peg to the targeted price. In due time as the redemption price autonomously works to recover towards peg, outflows will turn towards zero or through the reserve recovering through yield.</p><p style="text-align: start">There also exist other stability mechanisms that can help stabilize the peg. One of them is because Gyro works similar to the way Maker’s Peg Stability Module operates. However, it does have some different functionalities. While Gyroscope allows for the exchange of its stable with $1 worth of assets, it does also allow for the ability to diversify risks in the reserve backing the stable. Furthermore, in the long term, it won’t be primarily backed by custodial stablecoins (such as the 70% USDC backing DAI). It also allows for the ability to flexibly survive depeg events, even in the event of a fluctuating reserve.&nbsp;</p><p style="text-align: start">This is through a leveraged loan mechanism that kicks in, in the event of the reserve becoming under-collateralized. If the price of the stable falls under the peg significantly (during a market crash for example), then leverage loan holders will be able to deleverage their positions at a discount. This will reduce the supply of the stable and help the price of the stable return towards $1 (This is quite similar to the way MIM operates — MIM always assumes 1MIM is $1, even if the price falls under the peg, and allows for the ability to redeem $1 of assets for 1MIM).</p><p style="text-align: start"><strong>The Last Resorts</strong></p><p style="text-align: start">Last resort is used only when all else has failed. The way last resorts works on Gyroscope is that the reserve can also be recapitalized through the auctioning of governance tokens or the promise of future protocol-derived income from the reserve or trading fees. This is quite similar to the way Maker’s backstop works and is only supposed to only happen in the event of last resort during a difficult crisis, through governance. In the same vein, while the prices are good and the valuation of the governance token is high, governance of the protocol is also incentivized to auction off tokens early on to boost the reserve for darker times. This is similar to the way Frax operates by utilising FXS to control the peg in harsh market conditions. However, unlike with the FRAX/FXS mechanisms, this is a tertiary line of defense in Gyroscope, not a 1st line of defense as with Frax.&nbsp;</p><p style="text-align: start"><strong>Oracle Feeds</strong></p><p style="text-align: start">The way Gyro’s oracle feeds work is quite different from other protocols. They rely on several on-chain consistency checks as well as circuit breakers and manipulation-resistant methods for pricing LP and shares of the vaults. Here of particular importance, are the Consolidated Price Feeds. Correct price feeds are extremely important when the stablecoin is being used in DeFi. A great example is, that during the UST fiasco several protocols were exploited as their oracle provided the wrong information on the price of UST. This consequently allowed exploiters to seize advantage of incorrect prices to take out huge loans. The same goes for the latest Inverse Finance exploit, which also made use of bad oracles. The exploiters manipulated the price of a single oracle, which fed info to the protocol.</p><p style="text-align: start">Layered Price Feeds are when you get on-chain references from AMMs and then ground the price received from AMMs by cross-referencing it with several oracles.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0d70cd10888092fa9073ee5ee447cc66.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAIAAAAUMWhjAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD9ElEQVR4nK2VwU7qTBiGJxAmM2nTITW0NKUBUqaQQqChTTuhlCAEiaChRjCwcKHuXOrGeAF6CV6GW3dujHHjhbjwCkzMyWGMP/H8J/L/57wLQpqZed75vvdrgbSUKIoIIf6fEIIxzuVytm0jhMhSoijm83lCCF8jSRJCCGOMEIIQCoIgLrW6gAsQQgRBUBSlVquJoihJEsY4m82WSiXf9+v1OoQQIWQYhud5lFJ+kCRJlmUVi0VKaaPR0HV9Y2NDVVWM8RcMwBirqloulwuFQrlcxhgXCoXFYnF2drZYLM7Pz8vlcr1ePzk5CYJgPp+HYcivOBqNgiCglA4Gg2q1GoZho9GwLEtRFEEQPhmgUChsbW3NZrPJZHJ6ejocDm3bPj4+Zow5juN5XrfbPTg4ODw83Nvb29/f397e1jQNQri7u9tqter1+mAwGI/H0+m02WxWKpXhcEgpTaVSnAE0Tet2u5PJhDE2nU4ZY4lEwjRNy7Kq1Wqz2UQIybIchmE2m6WU5nI5XvF+v99utzc3Nxlj8/m8WCzatt1ut3u9nmmamqbxewBBEGRZtm27XC4PBgPXdRVFSSQSiqI4jlMqlQD4aWI0GvX7fcMwMMbcGsbYMAzf9yGEqVSK+/M8b2dnZzAYhGHIW/XRZFVVm82mJEmU0iiKGGMbS8VxvLu7O51OecxWGyiKoizL19fXtVqtUChYliUIgud54/G42+0ahhEEAcYY8Fzy/YQQfophGHEc39/fv7+/393dVSoVCGE6nV7NHyEklUo9Pz+/vb09PDxQSnkNx+Ox4zi+77daLdd1weoG/ksIgRAqijKbzV5fX0ejEQBAluUvASeEJJPJm5uby8vLq6urXq+Xy+UMw2CMeZ7n+/5kMslkMv8AvmwWRREAQCnl2f11AULINM1qtQqWghBijAVBSCaT+Xw+CAJFUT5K9DuGJEnZbDaKotVcr057p9PRNE2SJFmWyYp4hz5S9DvAp03GGM/cl+elUikIAgjhr6+HVX0PoMuXwepBPHidTkdV1VXwfwZwpdPpVqv1hWqapud539r/HkCWta5UKrquc7PcfhiGiqLwUfrTGwjLMSyVShBCWZZ59V3XXcf+WgBpyQiCQNf1ZDKJEFrf/loAWZYBALe3ty8vL/l8/vHx8enp6V9H7/8AyLLihmHM5/M4jtPpdBzHFxcX6XT62/ysBRBFMZPJuK6bTCYBAAghAH5+oxhjf6FEPJGWZem6zhg7OjqKoiiO40aj0Ww2/06KBEHQNC2KIlVVDcOwLCuKImepdeyv1QOEkG3bjuNwy4qitNvtfD7/+eX5I8DnrGUyGdM0a7VapVLJZrNrni5J0g8Ua/Y3h34t4gAAAABJRU5ErkJggg==" nextheight="880" nextwidth="1175" class="image-node embed"><p>Consolidated Price Feeds</p><p style="text-align: start">Therefore by layering prices from various sources you can easily detect discrepancies and issues on-chain. This also means that manipulating the prices would take a huge amount of capital across several platforms to have an effect. If a discrepancy is detected the system can stop trading and wait for the issue to be resolved. Most projects usually just rely on a single oracle provider for their price feeds, this is much more exploitable.&nbsp;</p><p style="text-align: start"><strong>Dynamic pricing and beyond</strong></p><p style="text-align: start">Before we continue onwards to the unique governance mechanics of Gyroscope let’s dig a bit deeper into the dynamic pricing modules of Gyroscope and what they can enable for the protocol.</p><p style="text-align: start">Gyroscope makes use of two unique and different automated market mechanisms. The first one is the Dynamic Stability Mechanism (DSM), which works to quote the minting and redeeming prices of stables while accounting for shocks to the assets that back the stable.&nbsp;</p><p style="text-align: start">The second pricing module is the Concentrated Liquidity Pools (CLPs) that help to concentrate liquidity within particular pricing bounds through customized Balancer v2 pools. This is done through a partnership with Balancer, which will allow for the logic needed for the customized AMMs. &nbsp;&nbsp;&nbsp;</p><p style="text-align: start">The CLPs concentrate liquidity where needed according to the information that is given by the DSM for the stablecoin pairs backed by Gyroscope’s reserve assets. CLPs are like Uniswap v3 but on Balancer and specialized to the most-traded range. This means that there will also be liquid paths both in and out of stablecoins from Gyro. Furthermore, the CLPs are independent, which means that just as with the stratified reserve any failures won’t affect the rest.&nbsp;</p><p style="text-align: start">These pricing modules enable some rather unique designs when it comes to building things beyond the basic mechanics of the Gyroscope protocol. It enables building a DEX that can withstand asset failures through the Gyroscope design, something that Osmosis could have made use of quite efficiently during the UST fiasco.&nbsp;</p><p style="text-align: start">The design allows for secondary markets to act as AMMs, Reserve Pools and so on, which can route trades as efficiently as possible. In essence, the various pools would look something like this from a birds-eye perspective.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/37c454598dd04e870eb0ca2dfffd191f.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAgCAIAAACDyf9SAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFGElEQVR4nH1WXYjcVBS+SPSCmbkzt3truG3K2NRgKoE8DNy2gWhTpjISbHDbjQQanEoesiV2rPMwONDUUVcszMNUF12csgvbxRWkxbZbWiyFglAEX/ogFaSKFBRE9MWfBytUJnc7Teen31N+br57zne+c0+A7/u2bTPGyuWybdtuClVVMcZkMiilqqoqiiLLsqIouq6rqloqlUC9Xj979uz8/Hyr1fJ9v9Vqdbtdy7IQQmOJJEkqFIqMsYWFhV6vx79tNpu9Xq/VagEIoSAIGGNd1xFCQgqMsSRJY7kQQjxwSZLwOoqiKEopgCRJxULh1NLyjz//FgSvYFyUJCmfy+VzuVE6hNAz27eXSqU+R6FgWc92P/zoud27MS4SQjDGgBBSLBRemt5/5eo1z/MA6G8weziemfGG5EMIMcaufvX1mXNrlFIAwLHkrd//+vfNY8d5dISQPh0hRBRFQkgcx6qquq77552717+5QSmdytBhjFVV7S0un1u76Lru05r2sudFUUQpHWwMsqLEcdztduM4fnHfvp27do0Wt5jmKAhCrVabS5FK/cjUhg28dABjzG9M0+x2u3Nzc+VyGQCAUH5SZSGEjuN0Op1Wq+W6bhy/tri8sqdSQQgBWd68svr5t9/dCsNQVVXf9z3PQwiNrSxPmRBSq9XK5TJC6Klt2xaXTt+6/Wt85HVRfBxs3rSpt7h85tyaoijcNJ7nmaY5UHcoNFEUgyBgjEEI+S0hxDTNde24xSilPCLupjiOZVke0m6Qpuu6nGsQryiKfHG/FNyLWUOoqhpFUbYxeCCMsVqtNhr4xo1PPFDZ0Yyq1arrunxblEJRlCiKyEMBJr3gGum6LsuyYRiSJIVhWCqVJvXyw+i4DVVVbbfbnuc5jpMkied5giBQSgdryIOf9Ht2LB1/HYahpmmDQ8H3fcYYAEBMgVMRRFGEEPILURTH0yGELMuqVCoQQtM0GWM8qEajYdt2pVKxLEtVVcaY4zie5zHGbNt2HGcineM4hmEQQlZXV3u9HmMMIZQkSafTWUrhOE673U6SZGFhIY7jEydORFE0kU7TtDAMAegfiP0sANB13fd9APpWFdNkeaaCIPBMIYQTSwEhdF232WwyxgzD8DwvSRKuNy+CdK8U2YfrdEPHL8aYUlqr1QaimKYZhmH2LBoL3hVF3mSDpwihKIoMwxAEgXtYEASe7GhL4MwGACE0ezi+cPnLvXufRwhRSiGEfLxlv+St4vu+YRhDTqaZUEA+lzvefufGzVtzc++BFNVqdXp6OtvkgyhkWQ7DkIczlXbO2+++f+Hy1R07duZzuXUbT5EpRVH22HYYhnEc8/NuVBceoG3b1WqV73Rg//7zFy9duXbdsiyeChis03W90WgEQTA9PT32+OTlo5QmSdJsNhuNRrlcliRpiyzfT5YLDwCwbbvT6TQajYG5hjLl7rNtu91uVyqVOI4BGPZZvxQHZmaWlle4D7bI8smTH5z+9LOs5HyGHX2jcejQq54347puvV73fd80TT5zs3T58xcv/fH3HdveAyHEGM9//MnNH24fDAJRFGkKCOHs4fif/+5+cX4Nwsf64xmAKJr9/qdflpZX0qrco8MYG4bxguNwsTDGW5/cats2xhjegyAIpVLpYBBomlYsFPgA0DTt1NLp+MhR/gvwgHYQwqxMEEIueZIk9Xrd8/p/BI+mls4uQyg/ND/vj+2hCkqSxM9313WDIBg8HzVQlu5/j66ogWDMjY4AAAAASUVORK5CYII=" nextheight="1600" nextwidth="1324" class="image-node embed"><p>The Connections to Gyro’s E-CLP from various sources, both reserve and outside pools</p><p style="text-align: start">Once Gyroscope has accumulated a strong enough reserve with the widespread acceptance of the stablecoin itself, it will in any market situation be stable at $1. During extreme events, it’s possible that the peg could vary, however, the system by design is made so that such an event is extremely unlikely. Even in the event of a short-term depeg, the stratified reserve and yield mechanisms will aid the stable in the recovery to its peg.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-governance">Governance</h2></div><p style="text-align: start">Gyroscope is also trying to innovate on the governance front by implementing a new governance system called Optimistic Approval. Optimistic Approval aims to help align the governors of the protocol with the long-term interest of the protocol itself. So instead of being focused on the short-term and rapid ideas and concepts, the governance of Gyroscope will help to tie the best interest of the protocol together with the governors.</p><p style="text-align: start">So this is all fine and dandy, but how can we make sure that the governors can’t abuse their power in other ways? This is especially pivotal, when you look at the last few months and how some of the governance proposals taken by Solend and Juno have turned out.&nbsp;</p><p style="text-align: start"><strong>Optimistic Approval</strong></p><p style="text-align: start">Optimistic Approval is a new form of governance proposed by the Gyroscope team that incorporates a veto mechanism into the governance of the protocol. Which is invokable by other parties in the system like vaults, stablecoin holders and so on, in the event of malicious governance proposals (something that I’m sure SOL holders wish they would have had during the Solend proposal).&nbsp;</p><p style="text-align: start">The reason for the adding of a veto is that it lowers the success probability of a governance-based attack, since if the malicious attackers are expecting a veto to be put in place, then the chances of this attack happening, to begin with, are already lowered by a wide margin.</p><p style="text-align: start">Optimistic Approval relies heavily on the concept of timelocks and is indeed derived from it. Optimistic Approval enables proposals to be quickly passed unless a veto is initiated by some party. These parties could be members of the community at large, so not necessarily governance token holders, but rather other players that use the protocol such as a vault or stablecoin holder like DAI holders, LPs etc. If a situation arises where the minimum required number of users initiates a proposal veto, then the original timelock duration is then increased to enable more users to voice their opinion via voting for or against it. This means that unlike the majority of other protocols, Gyroscope is able to ship updates rather frequently, while still giving the wider community a chance to partake in the governance of the protocol.</p><p style="text-align: start">The two major reasons for the implementation of optimistic approval are that it enables recourse. Let’s say that a malicious upgrade is being passed in a timelock-based protocol's governance forum, it will lead to the holders running for the exits. However, the chance of vetoing leaves actions on the table for the community.&nbsp;</p><p style="text-align: start">Likewise, it also acts as a fail-safe of the protocol. In the event of another malicious proposal, an absentee user doesn’t need to worry about losing funds (cough Solend), since only a small number of users are required to increase the timelock and keep the protocol safe.</p><p style="text-align: start">However, there’s obviously one contrarian view on the concept of optimistic approval and that is determining what “the wider community” entails when it comes to being allowed veto powers to extend the timelock. Does this apply to holders of debt positions on protocols like Maker which allows for the minting of DAI, or should it lie in with the holders of DAI or MKR itself? There’s also the possibility of a wider community member wanting to fight against a proposal being implemented quickly and extending the timelock through vetoing. One thing that's very important to remember is, that there are many vital voices beyond large token holders, and basic token-based voting mechanisms might not incorporate them. Optimistic Approval helps alleviate some of these issues with current governance in crypto protocols, and it would be great to see more protocols utilise a similar scheme.&nbsp;</p><p style="text-align: start">Here’s how a timelock could look from a protocol using a traditional governance method, and how an Optimistic Approval-based timelock works on Gyroscope.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7841213c7d36527d9151e30acf3d38ea.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFY0lEQVR4nHWUf0wTZxjHr63gtXftHXellZiMiHXUqZux4saw4uFx/XFcaUFKsa0gBUqbVqDyowjMzeynmdtEZ0zc5h/O4bbgD6zVDigqLP7YcNGIM8NodDFuZsv+4I9l2x/v8l4J4g+efPLkeZ7v875v8t49L0I/YyqVCsdxDMNUKhVBEDMphmEajYaiKFw0FEUpiiIIAsMwHMfpOQx5KqcoyuFwOJ3OgoICo9HY1dXl8XgYhikqKmIYxmQy6XS6+vp6lmWNRmNKEkQjSfL5B6jV6kyNdgaKVuv1y/LzC+z2srq6hsrKTSaT2VW1qbLSVVvrY4rYTI3WYMgzm6wtkUgovNXuKAsEAuXlFRT9xD4paLUaIUkSQyUKuVREopBL0HQkPQ2RSRGZBJEgyHwxliCQdBkiRyUpFUHEHhkiFb0clT6JRI5KSJJA9EuXh9sOhNoOBiP768Of1gT3eBp2V/l2bQ587AvvC7TsD7VCtTFyoDFysDFyMNj6WaD1UFP0SKS7r6W7LwI5Guk+2iKmKZq3f9W0/cuW7sPLV6xEGK48cRsM3AInb0JO3ATHJiAnUukESN4DV/8CE1PgxhS4PgV+eAQm/wW3/gFjD0HsNjgzi8QsztwGI/eA1eZByp2+M7+A/uvg+A1wcgKcugmJzeL0LZCYBMk74Mrv4PJD8N0kuPArGL4DBibA8etwYf81yLc/Qb4Zn6bvRxD/GdgcHuTFpSu9DXs8DR96G3Z5Gz7wNrznrXvXW/eOu+5tj+8tt+9N95Y3qrb0ODd3b3R3bnRHK9xRu6vd4dpW5mouczU7nFvtFWGhPCSUBXl7wFrqNwv1ZqHWavOVlPl0uiUISRLPfB+pQi5TyOfNRgm9TCRNiafj2GPk6Exz2uy6Qp5GkiRCq9UajXYGtVpD02qVisBxOGY4rlSqVARJKnElRaspURIHS4njUMFx5YKsLI0WLnwWmlY/Z9A8Ho/b7fb7/YIgGI1Gm81WXV3tcDh0Ot3ixYubm5t5nrfZbIIgMAyzdu3a4uJirVZLUdSck/zkaGSyrKklEqlyeyorXU5xvpyiGQwGvV7f09PT29vrcDjMZrMgCBUVFXl5eXO9E/AAiqIU6PSIpZgnReSobPY0KeQohmGpl4cgCJqm5XI5hmEpn6rMecAL2Tmt3Yfadx6LvhNr6T4W6jjqjxyua/q8MfJFU/TIth1f73i/nymy0FSGFl60miAIjUazcOFCjUaTnZ09c7Ez/ukDDGsKbkyBoftg5ME0wyKpePAuuPY3qPHvXPXyUpYpcjmdJTyfZzCsLyxcvWpVUWHhBoZ5ZcUKuyDUeL363Fw1RcFfJTMzhZqmEd0Sfc/ea20fTbZ/Mtmx525H7/3OvQ869/3Wue9R1/4/eg78ubvvv9WFdpliPkbRGQsWaLOz05RKjKIwikJQVJGRgZIknpmZkZWFqlRShUKG4xClUqpQwN/0pdzcsHl9qPDV8Ib80Lo10wHzmkh+eN2aMJPfyls6rHyU59tKStos1ijPR60W6Hm+o6QkarV0WMztZnOU5zutlseU2pfp9YjTZALxOBgfB7E4uHQFJEfAUBKMjoF4AlYuXgLDI7BhbBQMJkQGwegFMJIE8dPgwnlwagAkh2Bl9DyIxWAlxWACjCSr7XbE8no+OBuHTacGwOXL4soY3OVsHG5x8Xtw7hyIDcAgOQT6+6E6NgouXYTBSBIMnITx1XEwPAgSiWlpbBRKg4kamw3JWbSoqby8qbS0qbR0q9US5vmg1RrgOD/HBc3mAFscYItTQZDjQhZLkONScYDjgiwb5DgIywbYYj/HNbLF9RvYeo6rM5lqeV6Xk/M/AgmC96WJTSwAAAAASUVORK5CYII=" nextheight="675" nextwidth="1074" class="image-node embed"><p><strong>Trad. Timelock-based governance proposal vs Optimistic Approval based proposal</strong></p><p style="text-align: start">This means that Optimistic Approval gives users and token holders of the protocol the ability to veto changes that they disagree with, as long as they meet a certain quorum. As such the stability of the protocol is ensured, since it adds checks and balances on the power of those who hold the governance token, ensuring that no malicious crypto-economic attacks are carried out by actors acting against the long-term interest of the protocol. This should of course always tie into the concept of allowing governors of the protocol to earn sufficient profit or other positives so that it outweighs the expected proceeds from a possible crypto-economic attack on the system itself.&nbsp;</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-why-stablecoins-matter">Why Stablecoins Matter</h2></div><p style="text-align: start">Stablecoins are incredibly important for the wider crypto ecosystem since they allow for the linking of the traditional financial world and the decentralized world of crypto. It furthermore enables the ability to have USD-Token pairs on DEXs, which is also something that’s very vital. In risk-off periods to which crypto is very prone, the ability to seek shelter in safe and uncompromising stablecoins is also vital for the health of the ecosystem.&nbsp;</p><p style="text-align: start">Stablecoins are also a vital key to unlocking global transactions that can’t rely on volatile assets. The nature of blockchains means that these transactions can be enabled with extremely low transaction fees and fast settlement.</p><p style="text-align: start">Furthermore, we have seen an increased interest in having stablecoins used for cross-border payments and remittances from traditional finance players such as JP Morgan and Wells Fargo. This means that we could see a possible future where stablecoins are used to cut out intermediary financial institutions and enable truly global payments. However, if such a future is to exist it needs to be with a governance mechanism that is aligned with the long-term health of the protocol, as with Gyroscope.</p><p style="text-align: start">The scalability of the stablecoin is also extremely important. We saw how UST and many other stablecoins outgrew their internal risk absorption mechanisms, which eventually led to their downfall. With the stratified reserve of Gyroscope, we are no longer constrained by a single system and can rather grow stablecoins as DeFi itself evolves.&nbsp;</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-algo-stablecoins-are-dead-long-live-autonomous-stablecoins">Algo stablecoins are dead, long live autonomous stablecoins</h3></div><p style="text-align: start">For an “algo” stable to truly succeed it needs four major functionalities</p><ol><li><p>Acceleration — The ability to scale fast and still be resistant to major market shocks</p></li><li><p>Solvency — Trust and confidence in the backing of the stablecoin</p></li><li><p>Liquidity — Major liquidity flows and pairs to enable large swaps and easy transfers.</p></li><li><p>Exogenously secured with endogenous protocol profitability</p></li></ol><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/012c2778ed363190b5b56b484802cdf8.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAADwElEQVR4nK2V32/bVBTHM5RiMauWrhTpyorkbSGbtwzcYBbqbsmWeEkqt96aNY3X5YcbJ5iliXFIBrQZWtfCpK0KXYoC3aQKjWhUi6DMoI4IFCniBWn9H5DyMOC9LzyBhGZDJH4oCSLfR+ue8znH53vuNVn6EADAarXabDaLxUJRFITQpqufWFPPExBCBEFqtVq73dY0rd1ub29vN5vNRqOhaZrNZgMA/C+AIYIgrFYrRVEOh4MgCBzHOz11V78AoMtsNnMcJwgCiqLGl4EBIIQoirIsyzAMy7Kz0SiGYRDCwQCgPoZRl0tOpc+fm6RpWk6lQ+emEATpyehryGazeYLjvnz06J0PVu9888WVO2vy8sInnz0QRbEnwwR1da+dGx9/2PqWeyPFSGE6yp+6fDH4Znrq+uubX30uxhMIgnQDoLowDDPmhmFYZ3TGf6dHnPcfbgfUJCOF/WoyoCb9ajJYSHkyFwNqcuP+PX5ichjDOiF/B7jdbp7naZpmWdYwIkVRAAAIIYZhDMMUi8XUu4uj0vTEYsaXS/jVOY8sBN+Sz+YSbCEpl5cjMzM8zxuVIQhilGvoKUAUxWq1WqvVNF0bGxskSZpMTzvz+Xwet+dM0C/dunry1cjopSlv5pI3E+MWXwsUUn51zl+QwtdUbzDwMk1HhIjVauV5PhQKGVU6HA4IoUkQhFKpJEnSzs6OLMv5fL5SqaysrLhcrnK5DAA44/Mmb15lpLBHFtypiJ497ZEFv5o8nY1Nl5Tc21ee2bdvtbzqcDiMDa/X661Wa3d3l+M4E8MwiqIsLS2VSqVKpVKtVmVZ1jRNFEW73V4sFqPRqLJ+43Q29srsFKvO+XIJJj6t95EZk8Ly7euz8Vg+n3e5XCiKIro6kyAIwoRhmPmvMg5ZLBYURZ0vOe9tfrywfvPFmXGvPMuqc0z8gjsVCRTS4/nkicT5tXqtWq3SNI2iqGFICGHHJgCAP2z6T3Vc9MLx463Wd/OVlVOXBY8suCKT7lTELQsnEvz8++89+elH5whlZP93m3axcGcP6BHnDz8/WX6weTaX8GZj3mwsmJeufXr3l99+PTk2NtR11/ra5Of27z929OjXjUZl8+7C+q3Fj9ZufHj7+8ePnSPOoWeHemxyT4BFZwxjwwcPHAhfmD52hLTbbMp89sjhw4O5iwwZe3fw0CFFUeKJ+PN2+yBvU8ufDARBAAAkSRoP2cDeAyN1KBRqNBpbW1vNZnNvb69er+M43pPxHzrAcZymaY7jSJIkCIJlWRzHe0b9DiuGdsdqEgkQAAAAAElFTkSuQmCC" nextheight="993" nextwidth="1440" class="image-node embed"><p>The Four Pillars of Importance for stablecoins</p><p style="text-align: start">It is also of absolute importance that the backing of the stablecoin is majorly exogenous, we’ve seen how a primary endogenous backing can have extremely negative effects during market shocks.</p><p style="text-align: start">We believe that Gyroscope has the ability to solve these four major hurdles and we’re extremely excited to see where the future of Gyroscope takes us.</p><hr><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-references">References</h2></div><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://arxiv.org/pdf/2006.12388.pdf"><u>https://arxiv.org/pdf/2006.12388.pdf</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://arxiv.org/pdf/2109.08939.pdf"><u>https://arxiv.org/pdf/2109.08939.pdf</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://arxiv.org/pdf/2004.01304.pdf"><u>https://arxiv.org/pdf/2004.01304.pdf</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://Docs.gyro.finance"><u>Docs.gyro.finance</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://medium.com/gyroscope-protocol/gyroscope-a-new-crypto-native-self-stabilizing-money-22d111b76aab"><u>https://medium.com/gyroscope-protocol/gyroscope-a-new-crypto-native-self-stabilizing-money-22d111b76aab</u></a></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>stablecoins</category>
            <category>governance</category>
        </item>
        <item>
            <title><![CDATA[The Application-Specific Chain Thesis]]></title>
            <link>https://paragraph.com/@Maven11Research/the-application-specific-chain-thesis</link>
            <guid>5JDpIe5n8uNKdEUTgXq4</guid>
            <pubDate>Mon, 25 Mar 2024 21:58:18 GMT</pubDate>
            <description><![CDATA[And Why The Customisation and Specialisation for Applications is set to flourish]]></description>
            <content:encoded><![CDATA[<p>The wider Cosmos ecosystem has seen a renaissance in the past few weeks as both applications and builders have either made the decision to build their own application-specific chain or expressed interest in doing so. This comes after the demise of the Terra ecosystem, which also had some spill-over into the wider IBC ecosystem. However, what we think is important to note, is the fact that the entire stack, tech-wise, held up extremely well. It proved that despite incredibly volatile volume action that it was able to handle both internal and external transfers of messages and assets both through IBC cross-chain, but also on chains internally through the Cosmos SDK with Tendermint, ABCI and customized VMs. In this article, we aim to explain the thesis behind the rise of application-specific blockchains and why the sovereignty, composability and interoperability they bring are vital to building out the next “killer apps” and ecosystem(s) in the coming cycle.</p><hr><p style="text-align: start">Before we dive into the thesis itself, it’s very important that we’re on the same page, and as such, we’ll briefly be covering some of the various technical aspects that make the Cosmos ecosystem unique in an easily digestible way.</p><p style="text-align: start">The overall architecture in Tendermint-based chains that use ABCI and the Cosmos SDK looks like this:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/283d7ce556f60f6c071067125a84bd2f.png" alt="Cosmos Architecture" title="Cosmos Architecture" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEaklEQVR4nJWUb0wbZRzHj66XHrcedz1CaSlXyt2VttD5h/bWKK1QRv/Rv/zpP1ooiiTDRDuCL0xMfEMMM2ZZIjGaEFcZm8QZwRhFJwYQkfBiSA2j8UVVwsI0EzNfmJm4mMfcnRvoeME++ebJ8zx39/zu9/397iCG1j+deKm3+8VU53Cq44VE6EwyMtzTwSsZGk6GzqQ6no+HT3cFnu0ODjC0QSaTYRiGoqhcAMMwHMcPzjEB8QYcxyHvqcgfa+D2iqBl8NfWv7rzLfj7e/BnHvy+An5bBrcWwZ11MNj7chleWqmspGlao9FQFKVWqzEMoyhKpVKRJIlhGCmg0+nUajVJklDE33NrEex+Bn75ghe4AcBtcLfAn363AMAPYE+4evMq2FsAp/tfecx6grNyyWRyaGgok8m4XK62tjaO4/x+f0YgnU7HYrFsNjsyMkJRFOR1dewugR8/B8VPBX3Ca3sObN/b2b4Kdub58eclEHT3QSUQjhMkSSqVSpIkCYJQqVQ4jhMEoVQqNRqNUqBcgLeovLycplmaZhlaz7IGo6GeZfVOZ6vL5dazhoYGs8Fg1LMGlmFrdbUVFRWEAIZhB00XR7lcLlovlkHch8SCCJTykqMSiYRhGKPRCEGQRFICw1IEQWBYKhO4/+QRgcTs7kOSJIqiJgGj0WSz2bSUtqKigmXYqqoqi8WiVquVSiVBEA8R4CAEQaAoqtPpTCZTNpsdHR0NBAJms3lwcDCbzcZisWg0OjAwoNVqxS48QgCCwBX7UpAKDC+r1mlplikVHMXwMlxBlOFlZDmJIIiY5UNkcBxF0WPw8XuSS+FjEMRUU3W1NAxBchkil8pQKYxKYUQixeT7VT1qAMrA6r3NOqet5ilrTctJ1t1k8jQ7+6LugZ5H21stIY815LEEXY+3n3rE26LRarGjObMfwP5MLLM7Ey/k4oVcqjjdtzObKk4nCpfiW5OxzVxsc7J7YyKavxDbzKWKV0602uUy5KBFBxvkUN+gulBL+Jtz/oVX/Quj4dXz6eJs3/Zc/+58/80v+3bm0sWZ4PJYYOlsYHEstPK60cHJSiSlKIogCI7jKMr3tEQikQrAMHxIAC4RzNyYi2+9lyhcSRSm41uXhfkHicL70e+mYtenYtcvx7cuJQrTvdsf2cO+2mqqvqGeZVmapn0+n9PpTCaTLoHOzs4Huwt6Ih5MFT+M5nPR/MVo/iJ/4uaUsJyM5ie719+JbuSEZS5dnHky4KmqrGRYhqZpgiDMZrPP5/N4PF6vl+M4m80m/vv+E6AxGey8Ns6bsDQWWX3jub2vh379qvenj3mXdufTxdnw6vnA0tng8mvh1XN1zTZEIkWFXwKO4wiCiOaI/sAw/GCDQZZkKF7IRdbGI2vjXdfeFF9W0EQ0PyEkd6Fr/a3ujbfjhXcbQ265VKYgFWI9/1fhw4tcVaM1t9qNDludg2MdHGO30k0WusnC2q11jpOsg2totTe6W7h2V1OkvYZleIuP+pHxAf4BHmWiABC4SoIAAAAASUVORK5CYII=" nextheight="698" nextwidth="1248" class="image-node embed"><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-cosmos-sdk">Cosmos SDK</h2></div><p style="text-align: start">The Cosmos SDK is a set of modular tools that allow blockchain developers to build their application layer logic in a VM agnostic manner. The Cosmos SDK is designed to connect to Tendermint through ABCI. Beyond being the framework that allows for creating application-specific blockchains, it also allows for various customization options such as protocol-agnostic governance, transaction and staking mechanisms and much more. The SDK handles most of the tasks that are required on the application logic layer which means that developers aren’t required to build things completely from scratch. It handles transactions received from the Tendermint consensus engine via a router that sends messages to the appropriate processing modules alongside the state changes.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-abci">ABCI</h2></div><p style="text-align: start">ABCI is the interface that connects the application part of the blockchain to the Tendermint state replication engine which provides the consensus and networking mechanisms. ABCI enables the splitting up of the blockchain stack, which means the application part of the blockchain can be virtual machine agnostic, and as such, any virtual machine and execution environment can be used for the application part of the stack. Examples of this are Junowasm, Cosmwasm, Agoric’s Hardened Javascript and even Secret’s version of Cosmwasm which allows for the usage of TEE. Tendermint itself creates three ABCI connections to the application part. These are the validation of transactions when broadcasted in the mempool, the connection between the application and the consensus engine for block proposals and the ability to query the application’s state.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/70bef8736922d7ee94a23688e0ab9cbf.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="924" nextwidth="1456" class="image-node embed"><p><em>The functionality of ABCI</em></p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-tendermint">Tendermint</h2></div><p style="text-align: start">Tendermint Core is what takes care of the consensus and network layer of chains in the Cosmos ecosystem. <strong><em>The consensus layer</em></strong> is what guarantees the validity and order of transactions through a consensus algorithm process between network participants, in Tendermint’s case - validators in a proof of stake setting. <strong><em>The network layer</em></strong> is responsible for facilitating peer-to-peer communications between nodes in the system and enabling third-party applications and nodes to interact with the consensus layer.</p><p style="text-align: start">Tendermint uses a byzantine fault tolerant (BFT) consensus model and enables instant finality. The BFT process goes through three phases before <strong><em>the final commitment</em> phase</strong> of the proposed blocks. These are the <strong><em>propose phase</em></strong> where a block is specified at a specific height, the <strong><em>prevote phase</em></strong> where 2/3rds of validators prevote for a proposed block and the <strong><em>pre-commit step</em></strong> where 2/3rds of validators pre-commit for the proposed block.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/1451c38c7921634612d0093c84855bb0.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAWCAIAAAAuOwkTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEQklEQVR4nJ2WX0wcRRzHt7LcDruzs3O33O3d3h3LHVf2jj/nbpZdjjsRS1uV1kIpHEIqbVMMRhpKUxMgrS1RaTXUVG1rSoMNpJr4QDS1MagPxT99qLHpQxtNH0BjTHjxxRdN0MSsud27gwI1wCeTyWQ3O9/f9ze/+WUJlIOmaZCDpmkIIYsQdjq5Inr7O0PpmUu7Pz7b8slY6/XzL3z7wbah3gKCYCBECGGM0aMh8rsHg0FFUVRVtWdVVePxeHtHx+F0Z+fshXPm/Jvm3Jj561vmL6PmnebpsUqpLFgqYYztgB6lROR3TyQSYg5BENwWW+XySLBk3/WLAwuf9/82c/z32WMLXw7/eWvvxGiA9yiqahiGqqqhUAhCCABYrZERAABELEiShBDa+bEBVniiKAZLJbEk6C0J+EqCgVLJJ/rsZEII/X5/PB5PJBKRSMS2skaKsNMZjcqrDWIrIkjDIlC0bABI0xzOkD88jLGmaYqirPCRFYCQ4XkewZX6NhzmcgPn5odSYe9IkqSmaeFweLkPAkImFKnSEk3lMeOJxs7yWA2EDNosPM+rqgoAWBIAAJAkiVhOELwcdjsclAM4VgS4TjjMARqknqyvfryaogF2ZuwSkbJIMpXSDL25pSVWGTMSiWhEpmn6/6t7NSxii1ExfIzZWb+jbde+QoLEDo4BDHFq+uoZc/7VxXun/71/1nzwuvnTyP0vArxgX6J1wiLWzRXvOZNOf3r42avte651NE207/ow3XBoO/HKzNRpc3bE/GHEvPOGee/E318dW7hZUVKW8bhuEwxkRN7bdiN9cvHEqcWx4b9GX/vn3aE/jtQNNhJtfT2Ddz87fnt6dP6bvq8/Grx74+j4205mA+GjTBFCj8v9zHhr182OrtmeA7eP7P/upYPfv1jX20DQhRS/hYoGSnvSz3uLkJdCbIEDbiQ/eXw+X7HbI4VCyVTKJ4qhUEgQBILDmEasW/CoNVoRhDSHOOdmSghZPrb6/WWBQHU0Wur1cpnUwcxFsxuWruuCIGwu9jyJWGyvkWg1alvragM+L4PYpW7q9/uTyaTdgtBmKaQoFmMpHC4gC9mHepFlIhwO67puP3HmWs2G4BDiXS7DMJy5b7MCeQ1RFCVJghCSFEVZbdV+yyLWHplldrEGGGMIoSzLPM/b3y4JZDVoukKSmjQtXZd8Oh6vr6gCtHXwHO92eXns4dhijuXdLh+HuOVNLdvbAXA4HLIsu1yuNQRsnBj7PJ6qUKjBMMqk4BaiQK2tGJhs7L5Qc+iSvv897eD7xsDkDq1W4V0eVw7RqstwOKyqqizLeetrCNjhFFJUIBjUDL26Mt7U9tTFB11Xfj5wea77/I/py3PdJ289NzI23Ly7RVUV3UJRlKiF3+9fXiZrC9jHlc0Ay1Xrcu946uWJ+v6pxqPXGvsm6/untsVrKhHLMZChc+R/GJbv8x8eWhc9FKtIHgAAAABJRU5ErkJggg==" nextheight="1023" nextwidth="1456" class="image-node embed"><p><em>Tendermints’ BFT Process (Timeout: Small wait time to receive a proposal, or establish skip)</em></p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-ibc">IBC</h2></div><p style="text-align: start">Inter-Blockchain Communication(IBC) is at its core a cross-chain messaging protocol for homogenous blockchains. This means that it connects chains that share similar functionalities, in this case, instant finality provided by the Tendermint consensus algorithm and ones that have light client functionality. The way IBC works is that two chains that are interested in having a connection with one another will put up a governance proposal on the destination chain. This is usually, to begin with, either through the Cosmos Hub or Osmosis (Currently Osmosis has 45 peers, and Cosmos 40). This means that there’s an agreement on a protocol level, and as such, there is no need for a trusted third party in an external bridge.</p><p style="text-align: start">These two chains then require a light client on each other’s chain to cryptographically verify consensus state between the two chains, as well as a relayer to relay information between the light clients on the two chains. The relayers are required for liveness - the ability to be able to exchange messages among nodes, with the nodes successfully coming to a consensus. Let’s explore how this looks in practice:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0969105b99d8269b331bd9ec011d267a.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAADAElEQVR4nK2UTWsaQRjHp2wycXB1iZlk3R1XV+O+6bhxs2pijdQsKWlDQViWBSFh8SKkByH4BQI55lP01Gt76q3HfoJSeijtuceWQo8WdxNjm4CW5HdYFmae/3+elxnALgCE8GmIYRiUUk3TEEKLBLIsC+bu4DiOYZjj4+Pz8/PRaHR5een7/oLqVwboFnfsC1ldXwUAMAxzp9ZtHY7jJgb8hPT6+kb4wwuCmEwkWTY+G5xMJKV8VrX1NbwWrv5LIpEUBBFjHCpM4HkeIQTKpVK1QqsV2mzu1Gu2vW2LGawbRYTis2eJwZhq61rdyBuFvxauiCtqIZNLV2hF0fXtiYxt2XbFNMHB4fOtxwdqpZ6RFb26Cx6Bd6+/fvzwM5FcISQjCIJIRFEQy9tUqarlZqVYVWWlkObT5JpsNheLM+/ffH776hMAoK6XyvlNKZ3uWNbLfh88O3pBd56Ye4dS0dg0tgEAv7+Mx7/G8eRSLitLkkQIifJVbb3crKi2LhJRmkGW88wK+PFtPP4+BgDsmVZvf79plLqt1unJCTBNU9fUkqFWt8ySoWqani+Q3d16KpWCcGmmRHA9vaHXy3xGWGaWEUIQwujLsqwgiI1GdbOYNQxDL5epaZqWpeg6NU2AEBIEIZvNTQ9LSIbjOJ7nJUmKxnTaSTGfSXI3HUYIYYwlSeJCopJmCJHlSeqiINyMKQyZHdMomBAyOyoxGJtV53l+dsM0fKo256IhhFKpVHTA26uEkGgQ73uT8XURpq5hNQjGeJEHY74BChVlWcYYR37T/0WYb8BeN4njOAghxhhCCMBkOh7AgAtfOkrpcDj0fd+yrKOjo06nMxgMKKUMw9zZnv/LAIVz3G63gyDwPK/Vanme1+/3HccBANzXgAszqNVqjUZjOByORiNK6enp6cXFRa1Wi27ZAxhYlnV2dqZpWhAEvV6v3W4PBgMAFurfQiUihPi+3+12Xdft9XqO4wRB4Pu+LMtzk1jIQJIk13VrIZ7nOY7jum6321UUZa7BH55OuknkjGUnAAAAAElFTkSuQmCC" nextheight="921" nextwidth="1456" class="image-node embed"><p style="text-align: start">This means that the trust assumption lies within the two validator sets of the connected blockchains, as such there are much fewer trust assumptions than other types of bridges and messaging protocols. For example, with XCMP in the Polkadot ecosystem, the trust assumption lies solely with the relay chain (Polkadot).</p><p style="text-align: start">To show just how compatible and widespread IBC has become in the Cosmos ecosystem, and how many chains it connects - let’s take a look at a map of the current live connections.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/ab0bf839f94843fea5dd7524d9fcef73.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="633" nextwidth="603" class="image-node embed"><p><strong><em>Source: </em></strong><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="http://mapofzones.com"><strong><em>mapofzones.com</em></strong></a></p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-ics">ICS</h3></div><p style="text-align: start">ICS stands for Interchain Standard and sets parameters for transactions happening between chains using IBC. ICSs are basically module specifications for IBC transactions. For two chains two communicate using IBC they’re required to possess the same ICS specifications.</p><p style="text-align: start">One of the more interesting and unique ICSs is ICS-27, also known as Interchain Accounts.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-ics-27">ICS-27</h4></div><p style="text-align: start"><a target="_blank" rel="" class="dont-break-out" href="https://github.com/cosmos/ibc/blob/master/spec/app/ics-027-interchain-accounts/README.md"><u>Interchain Accounts</u></a> enable composability as opposed to interoperability. They allow for chains to exchange not only data but also write state from one smart contract on one chain to another. This means that instead of requiring a user to move across various interfaces as an asset or message moves, he or she will be able to utilise a single interface on the source chain, as long as the transaction’s endpoint is specified.</p><p style="text-align: start">ICS-27-enabled chains create accounts on other ICS-27-enabled chains and are able to control these accounts via IBC transactions. Interchain accounts keep all of the abilities of a normal account but are instead operated by a separate chain or end-user through IBC such that the owner on the source chain maintains complete control over any interchain accounts it enlists on destination chains.</p><p style="text-align: start">When initialising an Interchain Account transaction you make use of IBC to send a non-IBC transaction (non-IBC transactions within an IBC transaction) - An example often given to illustrate this, is the concept of "a letter inside of an envelope inside of a box”</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/e459c8eabc019858c81f308558dc3c2f.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAELElEQVR4nK2Tb0waZxzHr+7hduV2WQ21M2q94WEgkIuRYDopyD+BkxNhpWctq0qtXTemruu6MvtHUUTUWmbTpNuSumWFic4KBAkFmYmdJjqN3Z80vtiLLnuxJc36bi/2ZsktwHRt2hpf+M0vT37JPd/n83t+9/wgZFsBAEpKSkiSFIvFFoulurq6vLwcx3GxWAzDMLIDQdt8Q1EUAMDn8wmCIEmSYZjGxka5XI7juFAo3DWAQCAgCALHcaVSWVFRIZFISJIUCoUAgF0DlJaWCgQCk8lUVVUllUolEolIJNq1G+A4ThCERCKprKyUSqUymYwkSYIgdgGQ+8nFxcUikUgsFm81RyAQ4Di+OwAEQeCsAAAwDGMYlkt2ePpzACiKvmgriqIFBQU7P/opQK6orUpfBMjPz98e8Gx9GcDLCPLqpgoLC3MJmhXytJnH4z0J2Mvl7uVyUQzLWTAMe9aVAWAYqlAorFYrZTQyDFOjUMjl1TRNSySZcd0yvIKi+3k8BEa4m2YY5kAQJBGLGeZolUz2xqFDen2tgCAgCOIAAEAeAAAyUDRjb7HYGAtz3GI79n8wxw20hW44SpstuR5yEATFsD2b88UBwNHW7hn29w4MeYauub1X+3xXB0fHvCOfeIb9Ht/otRufv9XcAumNJg1lVmiMKgOtoczq/9Z6tYHW0lYd/aZWX4dhKIJwiw/s5+P4AR4veycuDHM8Pn80tRiKzk3GUqHo3amZZCiSDEXnQpG7E+FEbH7pvOsSVN9wpKn1VOMJh4G2KnVUjd6k1FHZpO5wjVKpVml0BgiCVrsvsg8esNNT7L2FVFcnBEEvQdDHPe6JcHQ8+PV4cDowHf8snfwqPHt7MjoRjt8K3glF597pOAs12psv9/s6z7msjF1LmQ20tcFmt9lbNVS979P164E/Gqy2PVxu8qML7NISGwyw6dRUx3ucffuI1/E+342Vh2x8hZ2OJn2/rTofxd99mJ5fXr/3/Q/xbxeX72+c/dCVAVy43HfyTMeJtjN2R/uRpubW087uHvfpzoH1P9lf/mGvDH5Txi8uwvmFBw+WlpXhfP5rRUUyWZXNahqf2tj4m137nV26/6vrr9WOx3Hno3hkdW1l7efkwvLCyo8ZQHPryQ9cl+yOdrPtmEJj3OxSnVytdjh9XVcCcoUCAMDJRl5eXl42ybw/COrucc+vPY7MrX15OzSamD31U8SzlAjH0+nvVr6YmJmKpZzvn4coU73Z1mSyMlraoqHMWqohE7RFS1uUOt1hjUalNWw98CcFwxy3d3QmkQrOzE7G0ncic7HIfDiSCoQTwZlEIJyIpRe7zrkghUpTZ7aodZROX6eppVRavVKdC51Ka6yl6uUK5XOHFgDwtrNr+PrNi+7B3oHh/iF//5B/YMTvHRnzjoz1ekfHbt5qcbT9Cxcjc06/wKPwAAAAAElFTkSuQmCC" nextheight="877" nextwidth="1456" class="image-node embed"><p>Interchain Accounts Transactions</p><p style="text-align: start">The procedure after the IBC transaction happens in accordance with the ICS specifications that each chain is required to possess. This means that it allows transactions to go from being application-specific to being application-agnostic, in other words - it enables true composability across a range of different networks.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-interchain-security">Interchain Security</h2></div><p style="text-align: start">Interchain Security allows a Chain or Hub to produce blocks for other chains. Validators run two(or more) nodes, one on each chain, but only have to stake their native token on the main chain. This is enabled by Cross Chain Validation, which is an IBC-level protocol. The child chain uses IBC to communicate with the main chain to keep track of which validators are participating in Interchain Security using Cross Chain Validation. In this way, the security gained from the value of the stake locked on the main chain is shared with the child chain. As such, the consumer/child chain receives security from the main chain and doesn’t have to spin up its own validator set. This enables less capital-heavy applications to easily bootstrap their own chain while retaining a strong level of security from an existing validator set.</p><p style="text-align: start">The main chain is in charge of producing blocks for a set of child chains. The validators will receive staking rewards from the chain(s) they’re validating. Slashing works to facilitate that no validator behaves maliciously.</p><hr><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-the-thesis">The Thesis</h2></div><p style="text-align: start">Application-specific blockchains enable what we’d like to call “warehousing” of blockspace. If you view a blockchain stack as a supply chain, then the blockspace on various parts of the stack are technically being “bought” by the application(s) on the chain/layer that it inhabits. This means that it pays for gas alongside a myriad of different applications all inhabiting the same blockspace, which causes it to be highly congested and competitive and as such drives fees up. This fee spike caused by the heavily congested monolithic chain inhabited by thousands of applications is then pushed onto the end-users, which have to bear the heavy cost. On an application-specific chain, the application itself is able to better control the fees that are paid by the end-user and give them the ability to keep it at a constant. A great example of this is Osmosis. It also allows for easier subsidising of fees for applications that want to remove spiking fee structures completely. For example, one application could subsidise the average fees for a certain time period without having to worry about fee spikes as a result of heavy congestion.</p><p style="text-align: start">This means that the application owns its own warehousing instead of being reliant on renting out one pallet in a corner of one.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0d2c1c9b9a400c48c26fa7bdb33a3e50.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEkUlEQVR4nI1TX2zUdByvHhTSWfhR1nRdzgsHXcrGTTu7K3es9HZAvVHWUbjtssrqDip1HR2TmxwXMj1zYYEw6AMcZglkBIciTQa55MKCRszYkIfFhRjHi0QhMUZflAcffHJm1zDnZgifp++v+X6+n36+fyB8CTAMI0kSwzCCIPAXAwCAoigAwFIKtPBBEASCIJkSvF7vi2gQJYqmaY7jJBIJGIYXUf4VIAgChuFUKmUYBkEQuq77fL7na7jVFUXJZDIIgmSz2WQy6fF4FlKghamyLOu6jiAIhmF+v1/X9ef4cCkcx2mahqIojuP/qwHNp0qSFI/HEQQhSgAA+P1+0zR9Pt/S5rp2RVFMpVIIgsx/dzV0XZ/XgEiShGFYUZRcLgcAIEnSFSBJEgBA03Rvb6+rsejfBUHI5/PucyFQFM3lcoZhuPOAEAThef7UqVMIgqD/BQAAgiCv16vrOkEQGIa55VAUZRjGtm0AAAzDi1goikIQlE6nVVWdiwOBgOM4bAmSJCmKEo/HE4mELMtuLIqiaZpuOVfG6/XeuXPHsqx4CaqqapqWKEFRFFmWY7EYwzDDw8PhcBhSVbW3t5fjuLGxsUKhkM/nr1y5Ytv2+Ph4oVCYnJxMlnDx4kV32hiGURSl6zpFUdls9saNG+l0OpPJDA0NFYvFqakp27YdxykWi2NjY9FoFOJ5nqZpHMdt2+7v73ezJUnieZ5hGPd8YBiWJMkdAAAgEAiYpunxeFRVHRgYMAxD0zTTNKurqymK8vv9bkHDMARBgKLR6OZQiCRJURQVRdmt7G5LtG0VBHdZcRyvICtIkkwkEvMCDMOkUqmVK1bUMYwgCM27djXLcrMsl+N4GYquWr0aKy+HIKjbsuYcSJJUx9RBz/DSs2B12SsYWLNyxcrlL3vKECQejy8UsCwrtrNpT9ueLQ0N9cHgKhTdsG5d7caN1Pr11VVVVRRVWVFxrK9vzsHeePzMp5fTZwfSp0+8ne7Zl+45enrg2OkTrV37W97tzJw9+cH5M90fHd+X7Cxfu9a9D5Zluwxj8OZVZ/ruVzPTI7cK1wdOzD58ODHyyfTn17+88PG3jvPrN/f+fvyY4zgomUz2D548cLTnQOpwq9HJ72rSjx4+9GGmRXsruC3S0X2w84jZtl/bf1B3BVAUZVm22zTXVhCvUhuoQM0m9g2CICoIohzHy0sWKysrly9b1m1ZjZEI1GWau9VEQ5Mo7m2p2xquCbLRlubw9saq1zfR9XW1fCgcEWpDnGVZ8y2iaToajWpNO9/r6DjeZR5pV9u277Da23NWTz6TOdfX905ra/bQoYnR0bk1PfJ+6vGfv098/+Deoxn7s8v5W86Dp788mf3r6x9mRm4Xv/hu6tHT3x78/NOl4eE1z+6AoqihoaGr58+N5PO3rl2bGB29NDg4Pjo6ffv2j/fvP7k7fu3Chbs3b84+/WOuRTRN72xq2hIOsyz7Wm3tpprqQE1NPcs2bhXEbduikcbGSORNUeR53l0q95hjsVhjaf3qg8H6YHBzKLSloYHn+c2hUF0wyHGc69Ln8/0D6x+SvXD5DEwAAAAASUVORK5CYII=" nextheight="584" nextwidth="1122" class="image-node embed"><p>Warehousing of blockspace</p><p style="text-align: start">As such applications don’t rely on x or y chain as a warehouse which would mean taking on the risk of average fees being loftier for the application, similar to how a store has inventory risk. This means the application itself and as an extension of this, its community, can participate in and carry out inventory risk management. This causes resource pricing efficiency which in turn leads to a better economic model for the application(s).</p><p style="text-align: start">As a result of the application being the owner of the chain it inhabits it allows for self-governance of fee structures, which means you’re no longer at the whim of the chain that you inhabit, you decide what each resource on your chain costs.</p><p style="text-align: start">Beyond this, the flexibility allowed by the underlying tech stack allows for optimisation on the application layer while retaining composability between chains in the wider ecosystem as a result of its native cross-chain messaging system. This composability doesn’t require trust assumptions with third parties but instead allows for the validator sets of the two chains communicating to be the trust assumption.</p><p style="text-align: start">Before the prevalence of Cosmos, there was a clear divide between applications and infrastructure (chains), application-specific chains with IBC break down this barrier and allow applications to become connected and composable infrastructure.</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>cosmos</category>
            <category>modularity</category>
            <category>specialisation</category>
            <category>customisation</category>
        </item>
        <item>
            <title><![CDATA[The Fuel for Fast Execution]]></title>
            <link>https://paragraph.com/@Maven11Research/the-fuel-for-fast-execution</link>
            <guid>rV9nj7Fh5c8s01Iq8SMv</guid>
            <pubDate>Mon, 25 Mar 2024 21:56:54 GMT</pubDate>
            <description><![CDATA[An updated thesis on Fuel for the modular world]]></description>
            <content:encoded><![CDATA[<div class="relative header-and-anchor"><h3 style="text-align: start" id="h-preface"><strong>Preface</strong></h3></div><p style="text-align: start">Fuel is the most interesting execution environment we have come across and we are proud to be supporters of Fuel. Fuel situates itself as the fastest execution layer for the modular future, which is one that most blockchains now realise they have to move towards, to provide the scaling that is needed for global use. Furthermore, it takes full advantage of the flexibility modularity offers to developers by not replicating the EVM. In this article, we will cover the uniqueness of Fuel and how they’re trying to provide the best possible experience for users, developers and block producers. If you’re interested in building on Fuel, don’t hesitate to reach out to us, we’d love to hear from you</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-introduction-to-execution-layers"><strong>Introduction to Execution Layers</strong></h3></div><p style="text-align: start">In our <a target="_blank" rel="" class="dont-break-out" href="https://maven11.substack.com/p/the-modular-world?utm_source=substack&amp;utm_medium=web%2Creader2&amp;utm_campaign=substack_profile%3Futm_source%3D%2Fprofile%2F87511287-maven11&amp;showWelcome=true&amp;s=w"><u>last piece</u></a>, we discussed at length the unique functionalities that Celestia enables. We also touched upon various modular protocols and their architecture. So for this next piece, we’re going to be looking at a different type of modular protocol. This is not a modular data availability layer that enables the building of clusters, but rather a modular execution layer.</p><p style="text-align: start">So what is an execution layer even? An execution layer is a chain that purely handles the execution of transactions, while delegating the rest of the functionalities of a blockchain to other chains, such as consensus/data availability and settlement. An example of an execution layer is the current implementation of rollups on Ethereum, such as Arbitrum and ZKSync. So how is this different from a settlement layer? A settlement layer is also an execution environment, but one that has trust-minimised bridge contracts on it, that rollups use for unified liquidity. These rollups also send their various proofs and block headers to the settlement layer, which acts as the source of truth for the rollups.&nbsp;</p><p style="text-align: start">If you’re unsure of what a rollup is, then let’s break it down quickly. A rollup is a scaling solution that operates off-chain from the main L1 (in most cases, Ethereum). This solution performs transactions off-chain, which means it doesn’t have to compete for precious block space. After executing the transactions, it will send a batch of transaction data or proof of execution to the L1, where it will be settled. Because of this, the layer 2 scaling solution is secured by the same layer 1 security measures, since the DA layer or settlement layer acts as the source of truth for the rollup.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/42bcf217296467c9b94a98ab437b9382.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEuklEQVR4nKWVX2zTRhjAb11o/jSJfU7sHK5rPMt13QZXhXW4ZYsWQtPUpAmhNEkNaUhbqiYZnZqG0rIW1pWCBBrSJiGxN1ZtTNrLBENDQkxME0NoIK0DoQGaxB6mPfA6pL3s4abGUFKte9pP1snf+fR9/v4e4HlekiSKouj18Pl8yOdjGGZlpWnzxdw0eb5P/ydA1/XZ2VmWZVGF6m8MTQOHA9Ta7G43sNQ63W670wms1g11dasrsFrdJElSlMfrXd9AMBgsl8uGYWSzWV3Xq7XXkeTfS5/iK5c+Hh3DD+4P9vTMDg3hn+5cO7GAb33/xfSRW2fP4h9vT/QnZ1LJzbJMkKSv4m41IBwOl8vlZDJZKpWKxSJCyAwXQ9MOgvhr6QK+euXDkYP410f7uruP5nL4l/tXjh/Dy3cvTEx8d+Y0Xr5b3JM4feid3q4ugiSJCi6Xy+FwuFwuCCEwDOPUqVPj4+OapgmCQNM09QKvxwMcDp8oNra0AKfTTZJ2p9PBMHxjo83rtdjtG+rqyIaGRkVB9fX9ySTHcZFIpLOzMxwOx+PxaDQaCASAoiiapkUiEVEUIYRiFZsEoUPTSuPjhXw+EY8PpNORSORQoVDI5+O9sYF0OpVMHp6czOVysd5oOp02VafT6Ww2m8lkEomEoigAQmg6RVEUQkgQBI7jViPI8zxFUZqmbeJ5mqZNsUPTtrS1IYRYlq1n2VBohyAIDMO8HQhEo1GCcDtesBKiVV1m+Gw2G8dxPbF4TzTW3ROFELZu3XpwrJAyMm9s2wYh7InGhkbH8sVxlmW3aZ27+5MHx4qvt2sc17A3te/dUnlXLM6yrKlzpYoIglBVdXFxsVgs5vN5wzBCoZ2l6WMT08dnji1ACPtSA1NzJyaPzmeyQxSEM+8vHpp678jcgqq2xvqS08dPHp77YFdsd7PfPzV3ojA5MzE128Bxq40FaJpGCHEcpyiKqqqiKMqynNp/wHwghNvffGtktDA8WggGQxSE/QP7jQPDxuCwKIodndsHcyODuZGOzu1+v98YHDIGh/em9rEsu8aAWTmwAsMwLMtyHMfzPFfB6/HoeiQUClEUZaaHJMlYb1RRFK/Hw9A0QRBtbW26HrHZrJU6dUMIXzaaWZGmgBCS1tIkN0uSHA53Nzf7JUmSZblJ8W9WW/f07W1S/LIst/g3N8rKjtDO/ZkDEV1PJBI7u7ra29tfGmBZVhRFiqLMnKw2AVXpfksNYLxOQfDZLMDlchEEAQBAtFsUNlZ23AAASGxoqKd5ziuKrzUpK0iS9NJAIBAolUoIIQjh8x6uWPL5fAThuHj52fIT/MlnT5af4Bb/lkZp06Xr+Kvr+ORHNx/8gVVVPb/06Id7+NzS46u3MM8L7kq5rwmRrusLCwujFRKJRNWoYwjCcf7z3y/fwBe//vPeb9ivtreqyo07+NK3+NyFxw+fYk3Tvvzm2c2f8bXb+OFTrDSrJEma/7fGg2w2SxCEmdK1o5CxvApeAcBeC2prgFkGVguwWYDTVlNbs9KktRZgtQC7beXMujMfZDKZ+fl5Xdd5nq927UXaNyJUb05+M3qVK+D5pUAztA9VieuOa1VVg8FgX1+fqqr/NvD/+QdAN1uful8pfAAAAABJRU5ErkJggg==" nextheight="815" nextwidth="1456" class="image-node embed"><p>Optimistic and ZK Rollups on Ethereum</p><p style="text-align: start">Rollups come in two different flavours primarily (However there are other types of rollups too). These two are ZK rollups and Optimistic Rollups. <strong>Optimistic rollups</strong> assume that transactions are valid by default (hence the name Optimistic). However, in the case of a malicious or wrong transaction, fraud proofs are generated and sent to the L1 to roll it back, while the transaction proposer gets slashed. <strong>Zero-knowledge (ZK) rollups</strong> run complex computation off-chain as well, through a circuit which provides a validity proof (snarks, starks, plonks, kimchi etc.). This validity proof is posted to the L1 to show that the rollup has executed the transactions correctly, without actually posting the transaction data itself.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-modular-execution-layer"><strong>Modular Execution Layer</strong></h3></div><p style="text-align: start">Now that we have established what an execution layer is, and how various current rollup scaling solutions work, let's take a look at what it means to be a <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/fuellabs_/status/1518963774627008512"><u>modular execution layer</u></a>. Fuel defines a modular execution layer as <strong><em>a verifiable computation system designed for the modular blockchain stack. </em></strong><em>So what does that actually mean? </em>It means that Fuel is a blockchain execution environment that is able to leverage a lazy/modular blockchain for data availability. Furthermore, the verifiable computation part of the sentence refers to the flexibility of being either fraud or validity provable.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/543d8041393efee7e8f6cb62e530683c.jpg" alt="" blurdataurl="data:image/png;base64,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" nextheight="1082" nextwidth="1456" class="image-node embed"><p>Note that the DA attestation refers to the proof of DA being sent to a contract on the settlement layer - With Celestiums through Gravity Bridge, or IBC with ICS enabled chains.</p><p style="text-align: start"><strong><em>So why is Fuel, like many others, moving away from monolithic design principles?</em></strong>&nbsp;</p><p style="text-align: start">During heavy congestion on monolithic blockchains, L2s or rollup transaction costs rise to outlandish amounts. One of the examples of this happening recently is during the Otherside land sale by Yuga Labs, which catapulted even the transaction costs of L2s to two digits as a result of having to settle transactions on a monolithic chain. This is just one of the reasons why Fuel wants to move away from monolithic designs where consensus, data availability and execution are combined. The execution that Fuel wants to provide will be enabled by data availability and consensus from Ethereum’s rollup centric roadmap, and from other modular protocols such as Celestia. As a result of not being hindered by monolithic entities, Fuel is able to specialize at the execution layer which can immensely increase the capacity of execution. Where Fuel stands out is that they are working to provide fast throughput and complex smart contracts through their own distinctive VM, transaction design and domain-specific language. They do this by optimizing for the future of blockchains, where data availability capacity is no longer the bottleneck.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-fuel"><strong>Fuel</strong></h3></div><p style="text-align: start">As mentioned earlier Fuel has been a layer-2 protocol for Ethereum, but is also situating itself to become the go-to execution layer for the future of modularity. Fuel's strategy to become the place to-go-to is to provide high throughput of Ethereum-style composable smart contract transactions.&nbsp;</p><p style="text-align: start">They’re still an optimistic rollup. However, Fuel has a very unique design compared to existing optimistic rollups. The uniqueness comes through their UTXO-based design, which allows for parallel transaction execution, which we’ll get more in-depth with later on. Fuel will also implement the ability for operating nodes to accept fees in other tokens than ETH, if they're willing to accept it for transaction fees. This is done by allowing nodes to set up non-primary mempools, where fees are paid in the token that the nodes want to receive.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/7d7b47aab22d8efb241e89bbd7bbb561.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD7UlEQVR4nJ1U309bVRw/g/vjcDicQ7nAPZc2pdzCbVnLz0vLKKO0Qyi0lAuFCql1bIyQZS4hU3RDI+xhGw9bNEt8UWK2aMw0JuNJEmKMnYlGt2iccQ+abDEx+ugf4EvN7XHIk2H95CT3+3Dy+dzP9/s9H4AxliQJIQQhxBjvFxyKong8HsYYLheAUqp7vaqqulyuOkWhlDLGKKVcLBKJPJ/NWpZVvoDb7V5YmO/t7YxHB2czVi6XTyaTDocDIcTNBYIdZbPbArIkNLJmb1tXT2jMjEygEjDGlFIAQH7xzHc//5Z/cQkA22s5AqJwxBeIXN/+tfCoWPilaPj8msYQQpIk1SvKcOy5tUsbQ9EoY0wQBEJIGQ4qsyev7D4ofvFj8cnfxdzSltrowLiGMbb9wafv3f5EY+z6zXfv7Ozpui4IQhkOwPETix9/Xtx7UPzhz+LrW4UGRzWhtY7a2tVX1tfWN02z7+z5C29cvsoYczqdfPjP5EBgWvPm2w9v3v7rs/vFM6vv1yvVhFCEEAAgu/DC3lffz2YXAAAQQlVVdV1XFOU/jVLTCKnBmB/Mi1Iz7QLwSwjJlRVAc7YYRpuqNiKECCEQwoHI4FvvbEcGo5IkUUohhB6PJxaLYYxEUZBliR8OWZIghPKBAkJoCxAblBAqyyIh9MC21IiCzSKKwtO/s+GorTV8/mR6ZjAaN0P98dHkUDQ+nrISyamu7u6J9Ex8dHwgMjgxNdcXPmYLQAj5Y0Z2XQVL4E2AEFZUVB5824RSQRAMnz89Oz8yOh6Ljyan54ZjI4mJ9HjKMkOhZHpmbDw1FI2lpuZCxwbs7Xa73W1GW5OrqaGxocnZpGma2+3WNA1j7PP5wuGwruv7Tefy3Ac3Va8opclDjHnM8LjhBQJer7e7tzsznZkcS7W2eFOJVC6XsyyrtbUVY9xnmlZ60jRNTgohDAaDnZ2d3DGX/P+lAgghURBJI/WPdQQTPV0zYYSR/DT+zFD/5tUbR4MdEEJKqcvlCgQCmqYdflMBoUQEYnjh+KXH105/eG7l3prR7nM6nXxN86eWv7z/aMrKAGCnlqqq++M5rAAmWDoijKxPbvxxY/XhxrlvLvq62plqp8XJpZX84pK/vX0+f+r08tlSi6oOT/2vQA0lMhCSW9mLj6+tfX351d+vRM+PNSmszWfc3S3c+minxdN8687O3d2Cx+ORJOlZ48h2IEsya9aW770cyQ/3r0T9I50B/1FJlnSv15rOXHjtzRMjCcMwymAvCdi7jaukqjqlDqFqGQiw0iYihAAAllde+vanJzwqyoxr/iGEVJdGRyjh8cJBCekx+2pKF8pgxxj/Aw6I7pD1f/RrAAAAAElFTkSuQmCC" nextheight="896" nextwidth="1456" class="image-node embed"><p>Different mempools operated by Fuel Nodes which can choose to accept various tokens for the fee the end-user pays</p><p style="text-align: start">So let’s dig deep down and analyse how Fuel works.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-optimistic-rollups"><strong>Optimistic Rollups</strong></h4></div><p style="text-align: start">The way rollups work is that anyone is allowed to construct blocks off-chain and then submit them to Ethereum as calldata (which we severely lack, hence the development of blob transactions and eventually the move to sharding). This is done through a rollup contract that keeps track of the block headers of the rollup on Ethereum. In the case of optimistic rollups, a fraud-proof can be submitted and roll back the chain, burn the bonded amount and reward the fraud prover.</p><p style="text-align: start">Now let’s look at how a rollup node operates, both off-chain and symbiotically with Ethereum.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/fcb4974b6de2593813afda4619f5a55d.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAIAAAAUMWhjAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFE0lEQVR4nJ2Uf0wbZRjHK9wd16Pv2+OoJe0aUpketbdbx1gxa6gDRn9daT0ovY4NNn4tdpuLjEkLgwIuQWMc6mT+ypztRvwVXeYWBtkvZG5BxB+JickSk+kfLtOlkqCAxGCsaQ86YLrhnnxzed73fe793PO8z3sSsGA4jmu1WqVSieN4chIAICMIOZoGEWyZ5GjafwmgmIwgxNclyd1pms7JydHr9VlZWYS4DCGWiug2bqgbjdSOvlM3Gr5T9WORBT8iqn4ssuNKOGeNPg3BAIS3ATqdTgSo1Wocx+MMCFIlktxNj3XMXOz883zX3KXuv0YSz0uh2QvtU0PtU0Ntvw+2Tw11zAx2zJwNzc4/gxODuQXr0RQkDoAQKhQKgiAUCkVJSUl+fj4AgCRJiqIyFZkPyklrjRCcOF8d7nV2tZS277N2t7hCz9QMR9omBwPRM+3Tw4HoQDB6seuXsebrw60/jLROXGm+8Qmdvw5LTQCUSqXT6SwoKGBZFgBA07TZbKZpmmGYNSzL5Orqgk2HYzfC/R/0Hz52uOeVt3vfOrT/YHDovWf/Hg398VlP7LtDsesvTV2LTcembk7HorGPf/2x5dbp3CRALDdJkllZWSaTiWVZkiQBAARBSAkpgWKPC+5AdMgTOdR4vM9/8mjdR28Ir/bsuNwfiJ5pvnkyODHYcutUMPrp8z9/FY79dGTyWjB6dUkGyTNYvXo1y7IMw1AUJVIhhKjkgUeLTe3T57rmLnbMnO2cvdo5+0XX3KWOmXj145ocSDgDrZOnuuZGDkwNtP12OhA9m2vMmz+DJIBhGJVKpdfrVSrVfKcudFHD+In6sUj9+LG+r0cuj33z5Lcf1o+FG8aPL9KJutHw3u8HGr98t2H8eO3V8MPxLloEEL9Xp9NpNJpl9wACoJCTCjmZIYNqlaq2tpYCUJxZLGUGxeqZbJVaHCZfvw0AAGAYtmx30dJl6emydCkh1eZoKysrs7XZKI6Kk6LS8LRVmlUWq2WtYW0ajqfLZP8OgBAuHi5bghCq1Wqj0ajRaAiCWBIMAYqg9VW19EM0giBisBiwBHCX3TEMkyRMp9MhCbudKwQETqzK0dQcbCiqtsjSZTiOi8ErAuA4rlar/X5/VVUVz/MOh8Pv9zc2NtI0jWEYhFBOylFJ6kbB3DG5p+7zBhfnDIVCpaWlgiBQFLWiDEiSNBgMPp8vLy+vsLDQaDSyLKvVasUk4vmlosymvJoLu12vbTGwhuKSYpPJZDab4eIuurulpKQmS4RiWEpKypJ2gECKSTcw6zVKNYIgYuRKSyQaScozSBICYDAYFIpMUi5PniSEkCRJBEE4p2Nd3loMwyiKgnC+Ze4NgBDaHNwTFV4X73HxHt+27aJzpwbODfe9ftTudPOVQqHZTCRSvAeAIIhMivL4qm28YE/I5vbGHbfXwfucFVs43sfxPjsvcBVb2rqf293canN7nd6tdqdL/N/cG0BRFF8Z33GxOF6wcOXmUq7IVlZkK9vs4O1ub5GtrNjmSqz6rHbn/QA4Xtjs4PfubzvW/35v35svvHzk4PO93T0vNgc7LVw5l8jM7vbcP8Du9lrLPEJ1Q+Oupp179j0dOPBUU3BXU6Bq+86l+f1/gKXMY12QhSsvtrmKbC5zoj5FNtdmB59ctZZ54t+xckAGSVZ4fby3mvduS6pcEIfVCWfJEu/d6q3abrU5CEK60nuQnZ1N0/QjKzaaplUqlZjBP41b7bKOlLlyAAAAAElFTkSuQmCC" nextheight="832" nextwidth="1131" class="image-node embed"><p>Fuel’s Operating Nodes</p><p style="text-align: start">Rollup users send transactions to a Fuel node, which is done automatically through whatever dApps you’re using on the rollup side. The client/sequencer will then roll up transactions together into a Fuel block, which then gets sent to Ethereum, which confirms the block. The client also handles deposits from Ethereum, which is what I’ve called a bridge contract previously, which enables unified liquidity between the rollup and Ethereum.&nbsp;</p><p style="text-align: start"><strong><em>So how does Fuel’s fraud proofs work which ensures no malicious actions?</em></strong></p><p style="text-align: start">Once a fraud proof is submitted to the rollup contract, it needs to be validated to check that it has the correct formatting. This is done so that it can ensure that the proof wasn’t maliciously sent. Since if that was the case, a valid block could then be reverted as the result of the illegitimate fraud-proof. The proof verifier contract verifies that the fraud proof is correctly formatted and valid, and if so, processes it to slash the offending rollup block.</p><p style="text-align: start">This scheme is unique since it does not require state serialization. Which is the action of computing the <a target="_blank" rel="" class="dont-break-out" href="https://en.wikipedia.org/wiki/Merkle_tree"><u>Merkle root</u></a> of the state (which we covered in our previous article) after each transaction or block. This is made possible since Fuel uses UTXOs which means that transactions don’t need to be executed in order. This is because you can simply check at the end that every input that was computed, was previously unspent and unique. As a result of this, transactions are able to happen all at once and do not need to be ordered.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-utxo-based-transaction-and-account-design"><strong>UTXO-based transaction and account design</strong></h4></div><p style="text-align: start">UTXO stands for unspent transaction output and is the transaction data model used for Bitcoin. UTXO represents an N amount of a coin/token which is allowed to be spent by an account by another. UTXO makes use of public keys to identify and transfer ownership of holdings. UTXO addresses are formatted by a public key which has an associated private key, which allows for spending on that particular account. This allows for having atomic amounts of tokens or state, which can be controlled by a spender.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/25edbba70ed4d46ebf24ddfb5611758e.png" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAIAAAD4YuoOAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFbUlEQVR4nF2Ua0xTdxjGTzsvUHo55/Rcenoo1JViYXMIiHLnVCy9DKSiViZ4YReH2Uw2k5mYxWkW56cx4wIKWiy0QEdpaWlroZZC5TLYXHRtwBj3YZtzm5qxbHP7/C6lbot783z4f3p/eZ/3/T8IvloEQaCoZKNGs9fSbLFYXmlpMe9qsliajaYGkiQJgqiq0dbqDHV6A6fVcVqdrs6oVCpFIlFWdrauTq/V6lLS6Qw1NVqCIFJtcRxH/gUIBAKjqaHPHbZ7I9fnvnaFZqzDofMXbQzDUBR9qddhGxgZj874w9Ge/gGXL8RpdQiC1HC1/Z6xXpd7fO5z+6jv4sBgd/8Aw8hRDP0/IEMg0BvrfSOfuft7xpw2/5DN77R1dXXJZAxJElZHwBO544ssjcfuDfnjwenlao7j83jl1VWJ8A/L/p++i/3+TWTlnn/F74xJaSmGYc8ASIIQpKeZdjaB9w2wboceDi5zcLV2vvs4LttAEwJH8IknDmMJCN8B2zyMJ4DjKnkIr0xbAREAD0AYYALABd+6nkhkIikmfQpI+SXF8QxBeuPufTDYnGzdw0GvFhw75rrfQ+ksGSl0+Fe8cYjdg2Achr+EyBJUV1cgCFKurYIpSDIWIfkIw7LnRwkl/schHKEoKisrS6FQ0DTdevDQbHQ8OGSdGff6h2zXRgZcrhGO05aUFF+xjzh9Md/E3OTMratDoYnpm0279yQBFVVOb6jT6hi7HrUP+y7bXb0Ol0qlYhgm5VLSIoIgSJKkKGrPHoszEHWMTYZmb/qiC52O0fMXbWWlpZWVlf1Dnsu2QW8gfC0yZbU7HcO+fc0txcWFFkuzYzjY5/SHJhc8wajV4e28Yler1RUVFWq1WiwWIyRJyuVyDMOEQqHeaBp0eAd6XTPh+UhgatDm+eR8d2lZ6eHDh7yh6AVHcDAw64ne7HJO2DyTlVWcTCY70n7U5Qta7Q5fMOQNBLpt/Z09vcxqsSyLYVhyArlcnpOTo1KpTMb6szOhtrD9+Ozo21OuY7GRc322TEa+taw8Fpn4wnYm4e64G+ia7z6xHLTW6gwIgph3mRcSf3iiv4bm/nJHVnyxP+3uBZomxGIJhmEEQSQBKIoqFIr8/PzW/a3tP99oe+g5eH/kwPfDbQ89Z0PuTIrOwOkpRwcE6yHYCB4j2OvA22RqaEQQZEdt1fhtGInD/AMI3QXPEjgjwNASDEte6tMJUmtgWdZkrD85NnjE33vEZ233Wd8M9p288LGcpqW0/Pro0G/uE4/sRx8PvfOov/0X7wepCXS67TNxiC3BdBxicQh/Bf2eOzIaxzBcqVSyLJsEYBim0WiKioqSF0XSGyjm+VXlUIyMJAmSNOj1rQcPM6oX2dwiNreAzS3K1GxeTRd006aCJrNp25YXlFm0aoM8VyXPzpbjOJ6bm1tSUsIwDIJhGLtaKdJ6EcYTYPwMlC+QIBk4ikvz8/MKC4toikpfiwjXI4J1SQnXITQtKygoyM7KJiiSl8bnpz/HT1vDS+NniISZbKZSqVQoFCiKPrUIw5I/L0MkeVW/2Xas9lK7tueYsfNAoba8uGGn2aDXs5nZx89MnOq4fbpj8eynibdOuPPz1AzDrE1ba9raGPvolv/9aODDqcjpxUPG13EKI4hkRP4XFTiOU4SUL0Cn3y2GcCMMG6CvDvrq9FtycJrN02xkFcprCVh8DDfuQ/QB2MIgFq4nCRkvDTm19xwkABYA5gBm4JO2HmQNQpGyZ7Jodc+4RIJWbc59zcwdMG7bX61pqX1JqWBFYolYLCZJsqTMsF1nrqip31ppLtiixTA0FfIqpdrE7TRyL9dtMxjL6jWqPIlEIk2mTxLwN1sgMXD/D/UWAAAAAElFTkSuQmCC" nextheight="576" nextwidth="1128" class="image-node embed"><p>Bitcoin’s UTXO Model</p><p style="text-align: start">In a simplified model, each UTXO has two fields: 1. amount of coins, and 2. script hash that defines an owner. A contract UTXO has four fields, 1. amount of coins, 2. contract ID, 3. contract code hash and 4. a storage root — which is quite similar to a normal account-based contract. Keep in mind that, unlike non-contract UTXOs, contracts don’t have a defined owner similarly to contracts on Ethereum. Since each contract UTXO is uniquely identified by its contract ID in addition to its UTXO ID, each contract can be used multiple times in a single block by simply referencing it by contract ID.&nbsp;</p><p style="text-align: start">The reason for using UTXOs is that it enables something incredibly powerful, which is parallel transaction execution. This is because transactions have no interdependency and as such can be executed in parallel with one another. While this was tried previously, it depended on users signing over on the effects of the transaction being spent, resulting in contention. However, by not forcing users to sign every effect of a transaction, you can allow for much more streamlined execution. Since the atomic nature of UTXO transactions define each area of state a transaction is going to, it allows nodes on Fuel to determine which transactions have no interdependency and thus execute them in parallel.</p><p style="text-align: start">This obviously makes Fuel extremely unique, since no other optimistic layer-2 uses a UTXO-based transaction system. But this is also their strength since it allows for parallel transaction validation, which should increase scalability compared to account-based rollups.</p><p style="text-align: start">So why is it that using a UTXO based transaction system provides such incredible scalability? This is because each transaction can spend and process up to several inputs and outputs.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/bc5836af0640944bb743933921a756c7.png" alt="" blurdataurl="data:image/png;base64,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" nextheight="495" nextwidth="585" class="image-node embed"><p>Several Inputs and Outputs are enabled in each transaction, as a result of using a UTXO-based transaction model</p><p style="text-align: start">As a result of this, it allows Fuel to conduct atomic multi-user transactions, which unlocks a new world of possibilities for dApps on top of Fuel. On Fuel, each input in a UTXO-based system is only produced and consumed once, which means that the rollups chain’s state is stored as a key-value.</p><p style="text-align: start">Since computing state elements with UTXO IDs is deterministic and stateless, once consumed, it allows for long chains and ‘trees’ of pre-signed transactions as well.&nbsp;</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/94151495ff32617fa2b436bf676d5af7.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABcAAAAgCAIAAAB2N3TiAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFAklEQVR4nJWVT2zTVhzHX50Xx36JXx7BtZvUdU3SuGlcN01duy5NlioEk7WlDf1LqoWO0tK1oInCNkBj3aZpYwgJLnAa2g6goUloSBObxAUO2yTELojDtB0mrpt22WESmjSpkxtU2q5d2VfvYMv2x7/3+/N9gHsxURRF0zTDMNVbjPHap2Db7zHGEMKBwf2GZUWkeowxs6K1oO0phBAAQF82//6p0wf2FgEAqqrm83kI4SpoGwpCCADQEIsO3rxw4NaF0duXm4xUT1d3pVJBCL1QLAghURSTzYlMce/S0++W/rp/fvlRe9+e9qSe7c1tR8GYDfj9gYAgCI7jLC4uRqPRWDLR3K4n2tt2hEKqqgqCsJrpzSlsDSWwOCLWpVIpRVFCoRCE0AdpLwW9FEQI0TS9NpB/UTBmPNA+dODEk6/bnF5YQ7Erb7tZXF2baSOF89D2zPjrv3xlll6mAEAM2urLrSkcxyI2hAKq1AgA0HZbjYm4D8JtQesoGGMAwJGZmUwmU79L+Wj58fSDG4LfTfb/oDAMk0wmh4eHTdPstm17frJjrM/ve16LF6IghCRJsizr8PR0uVwGADAeyAYCHPd8RxsmaBMKTdOyLGez2Xw+b5omG/AHvT6eRj5Ir6aGoqgNZV5HwRjTNF3tEcMwwpEIBCB7Zq5y/9OGRrk6fggh0zRrBWFDUOtiIYTouq5pmiRJgKrpSXce/OLSiSd3Em26F8IdoVANAIenXn3v3Dv5l3IAALQitybVdFT/I0lSakWyLBcKhfn5BQGTcIinaRpjTFEUh3GbbRVKA0Yug0lQVVXHcSCELoUQ4l4BkEgkLMuSZVlRFMdxksmkB3pYQHEemkWoNdFiZLvf//vh23/e/Xj5Uaov39VhVKam3B1BCBdPnpydO2p125qmGYYRj8d1XRdFESHkZxjn4mnr2GRTgzw2MtLc1jpw/fzA9Q+Gb12KpVs7Ozq6e3pc94AQNkWksb798fpGURQLhYKqqqIoWrY9NjI2Ozf35q93px98Xk9qayjKnWMAMfBwAPpoOh6P8zzPMAyo5Ws7j44nF8ZTMyPRaNSyLFVV0+l0LpcrlUoiLzTIciQS8UJvkBCOw34SrC5upabVqoMGSZp//OXZP+4d/+lOU7xp3959uq4TQmKxmI+m/YGAh6K8a8xxrdY5Zm3QLcROHBQEQRTFWCymaZpt20FCKACi0Wi4Lry28TbvXRYh10cwx/O8YRiKoti2XS6XZ2dmEy0tp3+/N/XtZ4If+7eeyWddxzAMz/O2bRNC4vF4sVh0HKdBkpoiDcWLb+w+Nb2DDfjdgfpPCiFEkiRBEEzT1HXdcZyFY8d6TLt4bWnw5oWdlI9FrJuGFW1JQQhpmpZOpyORSH9//+joaDgSbhTqDt39ZPzO1Ug4/KwWwO2Mqm9vPkc0TUuSlMlkhoaGZueO9may0VzXW7/dy5RLEAAOY0LI9JEjrak2WVE2HI/rZrrqUhMTE69UKkEK5idHZn64YU4O+T0Qk6CXggf7Bs8eP6EpMY7jSqXSlmcjIaQuXFfM5cu3ryz8eEtTmjwABDDn9zGJHrN47d3C1TO9F0922l2HKhVZdh1ji/MIsT5Qkz332sQ3V+p3KRB6+wb69+zOGJNDl5d//nD54dLT73N78vsch7jdvFksq0KAIjVeL4Q8zyuKEkAoLNW39na3ZKxmy+0pSZKqjsFx3D/PkReNaqp7ewAAAABJRU5ErkJggg==" nextheight="996" nextwidth="705" class="image-node embed"><p>A ‘Tree’ of pre-signed transactions that is able to go to various IDs</p><p style="text-align: start">As a result of the state database only needing to be checked for the existence of consumed elements, it allows for interesting possibilities and interactions between users and transactions.</p><p style="text-align: start">As with Bitcoin instead of having accounts you have atomic amounts of x coin/token/state that are controlled by a spender. These state elements can represent different assets, such as allowing ETH and ERC-20 tokens. Furthermore, because of Fuel’s various spending conditions, you can create<a target="_blank" rel="" class="dont-break-out" href="https://en.bitcoin.it/wiki/Hash_Time_Locked_Contracts"><u> HTLC</u></a> outputs (allows for one cryptocurrency to be traded for some amount of cryptocurrency on another blockchain) which will allow for instant withdrawal between Fuel and Ethereum for example. This is done through LPs that can offer up liquidity to users wanting to withdraw quickly, for a fee of course. However, there’s zero systematic risk if they fully validate Fuel blocks before executing the withdrawals.&nbsp;</p><p style="text-align: start">So to sum up why a UTXO-based design is distinctive:</p><ol><li><p>Parallel transaction validations</p></li><li><p>Unique fraud proofs without requiring state serialization</p></li></ol><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-security"><strong>Security</strong></h4></div><p style="text-align: start">The security of a blockchain can be defined as the cost of attacking the network’s history. In most cases making it prohibitively expensive to attack the network is what secures it — cryptoeconomic security.</p><p style="text-align: start">In the case of a Layer 2, such as Fuel, the rollup must also be trustless with state liveness and state safety. This is the case with most rollups on Ethereum, as they inherit the security of Ethereum itself and are thus trust-minimised. Furthermore, there’s also the fabled ‘decentralization’ which can usually be measured in the cost of running a full node (which if, too expensive, will cause the decentralization of the network to falter). This is usually why we don’t increase block sizes. Lastly, it must be permissionless to participate in the rollup’s ecosystem, which is what is enabled by the rollups’ bridge contract on Ethereum.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/a12a58139f93c9b368d016607e50d71d.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAPCAIAAAAK4lpAAAAACXBIWXMAAAsTAAALEwEAmpwYAAADqElEQVR4nJ2TT2jbVhzHFcdV5SdLlhVNlm0ldWTZsuQ/kmU7sWMnjuMmtmu7wnZip01Ku7LRsbVjtIw2ZbWzkpoNdho77dS1Yy2M7VCywQ7rYVsIo3SMwsZOO+5SShlbS2EHjVipKe5Ky748frzH0/t9fr+n74OwAeE4bobDpw7XP79UvtyuXOnsjKvr1U93J5UrHe2zi/MfnbWTJAAAe56gwfyEDYNMjS8++FD/fUP/savf7uo/X9K3u/qtrn57Q9/a0Lff1396+4+v7TSFWv4nYLh69eJ7+p0Lf32//mi783Br/dGt9oMfOg+33vnzZvvBd139zqnfviReoqwo+oIA3NYThmEoYcMhc/ly+91/bp67e+P8/a/O3980xtq9zXN3b6zd27zw9zdv/HqNommAvEAHAAALsCAIAgDYYeC4FUVZye9JKmJ2UsymXLLoSchsLDwWC6ul/dyE6pmIjkZDRkFPq1/rLoBhnGNjHp/P73K7YBgGwGIBFvOQaRiC7FZsBCccdtI/7uVG98FDppisjuDEMAQhw2Yjl5EF9IRhqDF5vOwBeN6XSEzsny+IUlCSgvFEgud9oVA4GArLStThcLjZ0cRkUlYUDMddbndYieZyc8l0JhQKR9VYLB4PBAKTqSlZicqKElVVSQrOzuajamwXQJLUCEWRJGkn7TTtcDqdDOM0ol8Q3CxrAYCmHQRBoBjmcjojEfngwfrMTDaZzqRSU5nMTC9Oi6LkF4RkOjOXy6tqLJOZnp3N8Ty/8w+MHq2o0aAFAIAgeyEIcjG05PeaTEP7PB6CIMxmM0kxAMMRBMFwnCBIgiBIcifanlJ/a9CmBszNsh4Pp06Xp8qHxzmO9/nGOS/v883FeSXoHeO8bpZ9XNBzjDQIsNlsMLwnmy80Dx058/G3a9d/qdaahWqjqC21VlY/aS92Th/Vlo8vFCtPeuZJPRPQ/wIAMFco15ePFkuVYunAsRMnT54++8rrby2tvpwrN+crDa25slCqUhRltIsge0HP6IbX/+MdAABQ1IogCAzDFEURNtt0bkFrrhS15oFa69CxV19788zq8RPVxnK11ixpS+VaK5svUL0rDkfkdDojCAHDVKIoDQI4zhuJyIIgKEo0lUpznHeP2ZzNL9SXj5RrS5VGq6QtFqr1krZoLCuNltZcyc0XjfM0TbMsyzBOiqIYhnE4HIMAnufj8YQQCIiiFE9MRNWYJAUZhjFs8CwRBNF3hKVnvIH31Qf8C/BG8Hb5VJtcAAAAAElFTkSuQmCC" nextheight="700" nextwidth="1456" class="image-node embed"><p>The underlying security is provided by the Layer 1, which provides data availability among others.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-the-three-pillars-of-fuel"><strong>The Three Pillars of Fuel</strong></h3></div><p style="text-align: start">The Fuel roadmap and concept are that of an execution layer that specializes in the future — a modular future. This is seen through their focus on specializing in providing the best possible execution layer for both Ethereum and other DA solutions. The three pillars of the Fuel design are:&nbsp;</p><ol><li><p>Parallel transaction execution</p></li><li><p>The Fuel Virtual Machine (FuelVM)</p></li><li><p>A superior developer experience (with Sway and Forc)</p></li></ol><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-parallel-processing-execution"><strong>Parallel Processing (Execution)</strong></h4></div><p style="text-align: start">Parallel transaction processing was heavily popularised by Solana, through the Sealevel runtime which sorts incoming transactions to run in parallel across several cores which means they don’t affect the same state in the VM’s memory. This is because Solana transactions describe all the state transactions will read or write when it’s being executed — similarly to UTXOs— thus enabling parallel processing. Solana is like Ethereum, account-based. However, unlike Ethereum, each node ensures that accounts accessed multiple times are only listed sequentially in one queue.&nbsp;</p><p style="text-align: start">So how does a rollup like Fuel benefit from this? It does so since it’s able to execute transactions in parallel by using the UTXO model. Therefore Fuel is able to use more threads and cores of a CPU, that in single-threaded blockchains are usually idle. As a result, Fuel can provide more compute and transaction throughput than other rollups on Ethereum.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-fuelvm"><strong>FuelVM</strong></h4></div><p style="text-align: start">The FuelVM is the virtual machine used on Fuel for building out various applications and smart contracts through the Sway language, which we’ll get into in a bit. In the FuelVM, transactions happen through UTXOs, as covered earlier. Where you have inputs that get destroyed and outputs created. A virtual machine is basically a state computer that allows smart contracts to interact with one another. It also specifies the rules for changing the state of each Fuel block. If you’re interested in how the FuelVM works and want to start building on Fuel, you can check out the<a target="_blank" rel="" class="dont-break-out" href="https://github.com/FuelLabs/fuel-specs/blob/master/specs/vm/main.md"><u> GitHub</u></a>, which has all the info you’ll need as a developer.</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-sway-programming-language"><strong>Sway Programming Language&nbsp;</strong></h4></div><p style="text-align: start">Sway is the language for building out smart contracts and applications on top of Fuel. It is heavily based on Rust, which is an already hugely popular language for building out blockchain applications (primarily used in the Cosmos ecosystem and on Solana and Near as well). Sway is optimised for use through the FuelVM and has a toolchain named Forc (the Fuel Orchestrator, pronounced "fork"). Forc provides tools and commands that developers can use within the FuelVM. You can compare Forc to Cargo, which is used as the Rust build system. This means that it is extremely easy for Rust developers to learn Sway, and start building on top of Fuel. Sway also has a vscode plugin, so it is extremely easy to get started with. Furthermore, Rust (of which Sway is a DSL of) has been voted the <a target="_blank" rel="" class="dont-break-out" href="https://insights.stackoverflow.com/survey/2020#technology-most-loved-dreaded-and-wanted-languages-loved"><u>most loved programming language</u></a> year after year by developers, and one of the <a target="_blank" rel="" class="dont-break-out" href="https://www.tiobe.com/tiobe-index/"><u>most used</u></a> as well.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/f2bc9114b889d06902ada26d324d66ad.jpg" alt="" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAIAAAAUMWhjAAAACXBIWXMAAAsTAAALEwEAmpwYAAAF0ElEQVR4nIVW34vj1hW+hfkbCtNAu3nI28ZQ2OxDZ7fEocmy07x0mc7DpNls3a3jOj8YlmE7XTrDPAzGDAyDWQbXuM6ADcIonmuvuIxQhcKNURVHQdo1RhGdalWhrmNUUWtHEUbgLbfYd9YZQjv5HsTlwL3fud859zsC5Lvwnylm61nkLM7ZDsIwlCSp0+noum4YRnsKQRDiOOZ5vl6vR1FECHEcxzRNQshoNKKHjsfjeIooikajURzHLMtCCOkhpVIJYzwej8Hx8XEqlVpdXU2n03fu3Ll58+by8nI2myWEsCy7uLi4sHBla2ur0WgkEonr168nk8ml51heXl5ZWVlcXOR5nhAiiiKEMJPJbGxsiKIoy/KEYDQa2bZtmubxFN1uV9O0fr9PCAnD0HVdQRA6nY7jOIIgSJIkimKhUMAY8zwvCALGWFXV8Xg809CyrOFw+I1EQRC0Wq1Op9Pr9Wq1WqfTaTQahUKh0Wi0Wq16vS5JElUpiiLbth3HsW07jmO63/f9zhTGFL1er9vtmqapKIpt26cECCFaAAghxpjjOIQQhJDneYSQqqqEEFVVj46OTNN8bNu6rjebTdxuPz05MQwDTaFpmqIosiwzDEO1MgxjQuD7fqvVUhSF3lrXdYZhMMaSJLXbbQihrmlP/vnki88+f2xZh2zjQbP1mfzXRw8fSn8RP8WfPnr4aH9/v1Kp1Ov1VqsFIZQkqVwu073VavWUAELYbrdFUazVajzPU31o7s8IaR4hSW4fIu7PtSpzyDaP0Mdc0+q7H3MP/vHkieu6T0+e0taKoiiOY7qO4zgMw1OJaL6KotAbIIREUeQ4LvT/3dBl8M4CyLwBPnxz8v3gTfDbn4FfXgbv/xykfvr7Bx8RQk6+Dh3HcV3X8zzXdQeDgeM4tE7AcZxKpUI7RFGUXq+HEBIEQVGUQwjdY+tPmAO/emXC8dYr4N0k+N1r4L3Xwa8XJpHll3/DFAghf/v78dLSUjqdXl9fX1tby2Qyt27dCoJgQnDOIxw/e0YI4Xqfg19cAn98+3u5NHj1JfDj74OFF8Ef3gJ3l8HbV3c+OSSE/Mv3WZblOE6SJHYKhNDpDc43CTJtxB9e+NFj23Zc5ydXrvzghRcAAIb55fDkJPla8utpB59nFaIoFovFSqWSz+crlQrDMLtTMAyzs7PjeV4QBNeuXbNtu9lsgucol8tf9b9aWlqiOtCS0hPpYmZQoN/v3717d319fXt7+/bt25ubm7lcLpvN5nK5QqFA+2F+fr7dbvu+PyOQZdl13atXr06UnD5jXder1SrDMAcHBzs7O5qmUZqJRBjj1dXVYrF47969vb293d3d1SmoYRBC5ufnGYaZpPMctm13u91Lly7NCOI4DoIgDMMoijzP++YG/0/9WS8TQnK53IULFwghiUSCEoRhePny5ZWVFUKIpmnUQkzT1DRtOBwOBgPLsnzfPyWgr1xVVcMwlOcYjUYzKS3Lmpub29jY0HXddV3TNFVVBQCoqirL8o0bN9bW1rLZbCaTyWazqVQqnU6nUilFUU4JVFVlWfb+/fuZTGZ7e5tl2VqtRh1xOBxaliVJUj6fn5ub29zclGW50WgAAC5evKjr+ng8phaAEOI4TpZljLEoijzP0xTBLM0gCDDGZxMfDAbFYhFjrOs69fB8Pp9MJhOJxNbWlud5oij2ej3Lsuiu/9nlYDwef2vmzabgaDSiommaNgsGQXA2iTAMNU0bDAa02nTSUZwSdLvd3d3dvb29/f19OkMQQqVSqVqtQghrtRpC6GxGdEE752xkNke/fQM6RgaDQb/fHw6Hvu97nmfbtmEYnufR7DqdDsMwsiy3Wq2DgwM6YRiGqdfrEELHcSCEgiD0+31BEEqlEjU0hmF0XQfn/xNQdLtdURR1XZckied5VVVpBGNMbZGOMEmSaMHiOB5OEUXRaZHPR7vdphaLMUYI0cLQsUWDuq6Xy+VarQYh7PV6Zwv5X/ZU7A+BaSCBAAAAAElFTkSuQmCC" nextheight="505" nextwidth="680" class="image-node embed"><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-l2-tokenomics"><strong>L2 Tokenomics</strong></h3></div><p style="text-align: start">To better understand how Fuel is trying to change the way rollups work currently, it is very important to look at their views on tokenomics for rollups. Tokenomics for rollups obviously work quite a bit differently, since you’re still reliant on Ethereum for settlement, getting unified liquidity and inheriting the security. Fuel has discussed three major token models that should be avoided for rollups (but that might be fine for other systems such as sidechains). They are:</p><ol><li><p>A Proof-of-Stake model where validators can censor new rollup blocks, which isn’t needed since you inherit the security of Ethereum. A lot of rollups are trying to go this route with off-chain DA, such as ZKSync.</p></li><li><p>A model where you’re required to use the native token to pay for fees, thereby tying it to Ethereum. However, the rollup nodes themselves are still required to hold Ethereum to settle. This just adds further UX hurdles for users using the protocol. An example of a rollup going this route is Obscuro.&nbsp;</p></li><li><p>A governance token that provides control over the rollup contract, which could be attacked via cryptoeconomic attacks.</p></li></ol><p style="text-align: start"><em>So what model does Fuel see as the way forward?</em></p><p style="text-align: start">The block space on the rollup is a limited resource, just like it is on Ethereum. However, the block space on the rollup is quite a bit different from Ethereum’s. This execution space is scarce, just like Ethereum’s, but it exists independently from it while still being correlated as you’re dependent on the underlying layer’s data availability. Fuel sees a future where this execution capacity can be tokenized, but not one where the token creates a higher fee or friction for the end-user. So how would you tokenize the block space?&nbsp;</p><p style="text-align: start">You could <a target="_blank" rel="" class="dont-break-out" href="https://fuel-labs.ghost.io/token-model-layer-2-block-production/"><u>tokenize the scarcity of block space</u></a>, by giving token holders the right to collect fees as a block producer. This moves the token demand to block producers which have demand for being able to collect fees on future block space. In this way, the end-users can utilise whatever token that block producers want to accept for fees, as specified earlier in the article. Furthermore, by using a model in which you tokenize scarcity through the right to collect fees, you can decentralize the block production. This means that the node operators of the rollup will bond tokens, for the right to produce blocks and collect fees from end-users, which creates a marketplace for the token — but doesn’t require the end-user to use that specific token. This means that the token is used for leader selection, the right to produce blocks and collect the fees associated with such. I have actually talked about this in regards to what I would like to see other rollups on Ethereum do, but so far most of them have decided to go with the previous three models discussed further up.&nbsp;</p><div class="relative header-and-anchor"><h4 style="text-align: start" id="h-mev-capture"><strong>MEV Capture</strong></h4></div><p style="text-align: start">This capture of the value of block space also relates heavily to MEV, which is also a huge issue with centralized block producers. However, by moving towards a token model, as the one described, you’re able to decentralize the operating nodes and their leader selection. This means a token model like this one, is also able to in a way ‘tokenize’ MEV, which is part of the value that the holders of the token derive the right to claim. By tokenizing the future cash flow of block space, the protocol is also tokenizing the future cash flow of ordering execution within that block space.&nbsp;</p><p style="text-align: start">Other rollups are also doing fascinating research in regards to minimising MEV within their protocols. For instance, the auctioning off of MEV, which essentially allows you to tokenize it, has previously been discussed <a target="_blank" rel="" class="dont-break-out" href="https://ethresear.ch/t/mev-auction-auctioning-transaction-ordering-rights-as-a-solution-to-miner-extractable-value/6788/5"><u>here</u></a> by Karl Floesch from Optimism. Arbitrum and Chainlink are exploring a fair sequencing service (<a target="_blank" rel="" class="dont-break-out" href="https://blog.chain.link/arbitrum-and-chainlink-fair-sequencing-services/"><u>FSS</u></a>), that should increase the fairness and predictability of transaction ordering on a rollup.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-fuel-in-a-modular-world"><strong>Fuel in a modular world</strong></h3></div><p style="text-align: start">A modular world where most of the functionalities of an original monolithic blockchain are separated into several chains creates the possibility to optimize various parts of those layers. This is what Celestia is doing by optimising for Data Availability, and what Fuel is doing by optimising for Execution in a modular paradigm. This is also what enables the various layers to create optimised nodes, whether that is full, light or bridge nodes. These nodes are able to be optimized for their specific purpose, which should increase the capabilities of the various layers immensely.&nbsp;</p><p style="text-align: start">Something I’ve talked about extensively over the various articles and threads I’ve done is the advance of state bloat, and how building modular can help alleviate some of that. This is what using a separate data availability layer that is stateless helps with strongly. Fuel thus seeks to go beyond the limitations of monolithic design principles.</p><p style="text-align: start">Outside that, the transaction design is also extremely unique, since Fuel makes use of UTXO. This is quite unheard of since you’re basically using ‘old tech’, but also one of the reasons why Fuel is so interesting to me.&nbsp;</p><p style="text-align: start">Instead of building for the current climate on Ethereum, Fuel is building the engine for the autonomous future of modularity. This sets them apart from all current rollups. As I mentioned at the very beginning of the article, if you’re interested in building on Fuel, learning Sway or similar, do attend the <a target="_blank" rel="" class="dont-break-out" href="https://twitter.com/fuellabs_/status/1524721059705937921"><u>Fuel Hackathon</u></a> and reach out to us — we’d love to talk to you.&nbsp;</p><p style="text-align: start"></p><p style="text-align: center"><a target="_blank" rel="" class="dont-break-out button primary" href="https://twitter.com/Maven11Capital">Follow Maven11 on Twitter</a></p><p style="text-align: center"><a target="_blank" rel="" class="dont-break-out button primary" href="https://twitter.com/fuellabs_">Follow Fuel on Twitter</a></p><p style="text-align: start"></p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-references">References</h3></div><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://fuel-labs.ghost.io/introducing-fuel-the-fastest-modular-execution-layer/"><u>https://fuel-labs.ghost.io/introducing-fuel-the-fastest-modular-execution-layer/</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.fuel.sh/v1.1.0/Introduction/Welcome.html"><u>https://docs.fuel.sh/v1.1.0/Introduction/Welcome.html</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/fuellabs"><u>https://github.com/fuellabs</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://forum.celestia.org/t/accounts-strict-access-lists-and-utxos/37"><u>https://forum.celestia.org/t/accounts-strict-access-lists-and-utxos/37</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://github.com/FuelLabs/fuel-specs/blob/master/specs/vm/main.md"><u>https://github.com/FuelLabs/fuel-specs/blob/master/specs/vm/main.md</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://fuel-labs.ghost.io/token-model-layer-2-block-production/"><u>https://fuel-labs.ghost.io/token-model-layer-2-block-production/</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Transaction%20Architecture.html"><u>https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Transaction%20Architecture.html</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Block%20Architecture.html"><u>https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Block%20Architecture.html</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Security%20Analysis.html#commondefinitions"><u>https://docs.fuel.sh/v1.1.0/Concepts/Fundamentals/Security%20Analysis.html#commondefinitions</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://fuellabs.github.io/sway/latest/"><u>https://fuellabs.github.io/sway/latest/</u></a></p><p style="text-align: start"><a target="_blank" rel="noopener noreferrer nofollow ugc" class="dont-break-out" href="https://fuel.network/blog"><u>https://fuel.network/blog</u></a></p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>modularity</category>
            <category>execution</category>
            <category>rollups</category>
            <category>utxo</category>
        </item>
        <item>
            <title><![CDATA[The Modular World]]></title>
            <link>https://paragraph.com/@Maven11Research/the-modular-world</link>
            <guid>jRLzCwsm9aTWdlxoCIPa</guid>
            <pubDate>Mon, 25 Mar 2024 21:52:16 GMT</pubDate>
            <description><![CDATA[An article on the novel functionalities of Celestia and the future of the modular world]]></description>
            <content:encoded><![CDATA[<div class="relative header-and-anchor"><h3 style="text-align: start" id="h-preface">Preface</h3></div><p style="text-align: start">Back in 2019 when we invested in LazyLedger (now called Celestia) the word modular wasn’t popularized yet in relation to blockchain designs. Over the past year, it has been popularised by people like polynya, a ton of L2 teams, countless others and of course also the Celestia Labs team - who coined the term in their first LazyLedger blog post in relation to separating consensus and execution.</p><p style="text-align: start">Because of this, we are excited to put forward an updated overview of our investment in Celestia. It will offer insights into the modular world we envision, the various layers and protocols in such an ecosystem and why we are so excited about the potential functionalities it offers.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-architecture">Architecture</h3></div><p style="text-align: start">Currently, most functioning and public blockchains are all monolithic entities. By monolithic, we mean a chain that handles both data availability, settlement and execution all on its own. Now, there are some variations of monolithic chains, especially in regards to rollups on Ethereum and subnets on Avalanche that have modular components. However, those aren’t modular blockchains in the most genuine sense of the word.</p><p style="text-align: start">Let’s define what we mean when we say ‘modular’ so that there are no misinterpretations. When we say modular we refer to the fact that the usually combined layers, are decoupled. So what does this mean? It means that one of the three components of the chain is decoupled, so either execution, consensus or data availability. This means that you can put the term modular on rollups, since they only handle execution. While Ethereum handles everything else, as a monolithic entity.</p><p style="text-align: start">In the case of Celestia, we can put the term modular on it since it only handles data availability and consensus. While it delegates settlement and execution to other layers. These layers are also modular since they only handle part of the components themselves. This means that in the case of Ethereum we can’t call it a modular blockchain, since the outsourcing of components only happens on its current rollups, in regards to execution. Nonetheless, Ethereum is still able to handle execution on its own, while also allowing rollups to batch transactions off-chain. This means that in its current implementation, Ethereum remains a monolithic chain. Although, Ethereum still remains the ideal settlement layer while being the most decentralised and secure smart contract chain at the same time.</p><p style="text-align: start">Now, you might say what about Polkadot or Avalanche? In Avalanche's case, it's not modular, but rather just split up networks that are all capable of handling all the components of a blockchain. This means that they don’t scale modularly, but rather scale by utilising other monolithic chains horizontally. Polkadot's parachains handle execution, similarly to rollups, while sending blocks to the relay chain for consensus and data availability. However, the relay chain still ensures the validity of transactions.</p><p style="text-align: start">Over time as monolithic chains grow it causes immense amounts of congestion and inefficiencies. Being confined to using a single chain for all purposes is simply not feasible, if we want to onboard more people. Since it causes extremely high fees and delays for the end-user. This is exactly why we’ve seen more and more chains deciding to move towards splitting their chains up. We’ve all heard of the fabled Merge, which will move Ethereum to a Proof-of-Stake chain. However, they also plan on moving to sharding eventually. Sharding is when you split the blockchain horizontally into several pieces. These shards will purely handle data availability.</p><p style="text-align: start">This together with rollups is how the Ethereum community plans on fixing its scalability issues. Now, are there other ways too? There are certainly — we’ve also seen Avalanche move towards a slight modular future with Subnets, however, as explained earlier we wouldn’t categorise it as complete modularity.</p><p style="text-align: start">To better understand how each of the various 'modular’ architectures function, let's try to draw them out so that we can get a better overview of the differences.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-architecture-comparisons">Architecture Comparisons</h3></div><p style="text-align: start">First, let’s take a look at the biggest smart contract blockchain in existence, <strong>Ethereum</strong>. Let’s look at how their current architecture looks, and how it's going to look in the future when sharding is enabled.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/522553c66df933c598a6385a861fd06b.jpg" alt="Current Ethereum architecture with rollups " title="Current Ethereum architecture with rollups " blurdataurl="data:image/png;base64,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" nextheight="1290" nextwidth="1456" class="image-node embed"><p style="text-align: start">Currently, Ethereum handles all the components of a blockchain. However, it also offsets some of the execution to L2 rollups that then batch transactions to be settled on Ethereum. In the future, with sharding, the architecture will look a bit like this:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/bc2412d5024ed3a4cb14f72649e94803.jpg" alt="Ethereum after sharding" title="Ethereum after sharding" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAATCAIAAAB+9pigAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEGklEQVR4nKVUXWjbVhjVg+Gyiim74O2iKXEcWda11dpzVJuYRavBMC9qtKLFidqINmsHGXHs5cfGctylYU6dLpDQbElr1iR1CSV92EM74sAesnajL+sYhZa03eNgMLqX/TxtsJcM+3ZuCW2yssNFfHwS3zkcffdQ9mcDIQQAUBRF13UAQL0PADBNMxQK2Ww2hNAOE+x2O7Xz9FQqdffu5vLFS4uLizRNI4QY5sVKpXL12tpaZb2v710AwJMc9bpePJPAbrczDBMOh4vFM+dLFzRNYxgGIQQhPHHivfmF0srK5UgkwjBM/XsIIfMvIIS7EyCEbDabJEnxeJyiKCIKIURRlKZpgiBss0gQ3IryhmmaqqpKkkRePZ2gLoSmaYyxoigAACIQQggA0DQNY0zTdF2p1+Npbw9PT58pTEyMnzpVLpcVRamqeapwWZb9NfA8r2laMploamyUJAljLEmSw+FIp9OqqvI8L7rdCCGO444eO76yul6cmn1hz578yMhP31y/fP5cWzj8mADVAADQdX0sP96pHUokkqPpTHbsQ8vKJZIfjKYz5KSGRsfy45lMbmQknbXyWSvncDSuf3nz97+2/vx7yyUIc4WPth7+/OOtbx8RQAg5joPwJYQQTdPRaPRAJNrkcDpbXF7JJ2Kvs8XFC6LPH9jnf80j7SMdlyCSon8g8SrLqurBja/vJIcyFEW9o+szk5NHDh9mWZaCEPb3958uTvG8i2EY4m+n9raIPcFQm88f8Eq+gBwMhtrIUGeLS8Qenz/gb5W9ks8r+RKDgyzLAgAEgZ+bO1sul2dmZgRRfLRFw8PDv/72x9m5hYcPfxlMJGKxWKlUOqR3eaS99en37/+wee/B7dt3rt+4ubFxYzSdEbE30Lrf3yo7W1yzs5/k8/loNPrp/Pyt776/eu2LjY2v6gtGsSxrmmap9JmiKCzLMgzT19fXY/SK2BOQgz5/ICAHO9SDb8Y6jh473mP09hi9ByLRgBysntb9Tl6wrBzGmGGYWOyt1dUrhcJUPB6v/9qqRRBClmVpmiYxYBhGh9pZs8IrYq+7ajTf3MI3OZzk8FX3PV7J55H2NjmcmUzO4XCQ9eU4TpIkm832mKD2fHnbFn08PZNIpiwrl7VyY/nxkycnsrW6ukKpIVJ0dxu63mUYRwqFSZZlIYTEE3LhtxFshyAIotuNMeZ5XlXV9/v7iTSMMcdxuq4PDAwg9IqzuZnneY7jdoiD/3STX29vBwA0NDTUO+FwmFxjgucm2JZFuq6TLCKdUChkGEY9nXbGLmmqKMrS0nLWykWjUZJFkUikUllfvnjJNM0no/S5CYjY08Xi5r0HV1Y/X1papmuwLGutsn5hsbywcO5/ERDQNO33+7u7e8gssmayLHfF42StdyX4ByX8YB7+N2n+AAAAAElFTkSuQmCC" nextheight="875" nextwidth="1456" class="image-node embed"><p style="text-align: start">This would turn Ethereum into a unified settlement layer while shards would handle data availability. This means that shards would just be DA environments for rollups to submit data to. On shards, validators only need to store data for the shard they’re validating, not the entire network. Sharding will eventually let you run Ethereum on light nodes, similar to Celestia.</p><p style="text-align: start">For <strong>Avalanche</strong>, their main scaling proposition is through singular blockchains that can easily be created — their subnets. The Avalanche architecture looks a bit like this:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/96103a889907135ebb42064f1acceb9f.jpg" alt="Avalanche with subnets" title="Avalanche with subnets" blurdataurl="data:image/png;base64,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" nextheight="1153" nextwidth="1456" class="image-node embed"><p style="text-align: start">A subnet is a set of new validators that validate a blockchain. Each blockchain is validated by exactly one subnet. All Avalanche subnets handle both consensus, data availability and execution by themselves. Each subnet will also have its own gas token, as specified by the validators. An example of a subnet that is currently live is the DefiKingdoms subnet, which uses JEWEL as its gas token.</p><p style="text-align: start">Before we move on to look at Celestia's architecture let's first look at <strong>Cosmos</strong>. From which Celestia borrows heavily and with which there will be heavy interaction through IBC since it’s also built with the Cosmos SDK and a version of Tendermint - Optimint. Cosmos architecture is quite different from other current architectures, since it enables dApps as the application of the blockchain itself, instead of providing a VM. This means that a sovereign Cosmos SDK chain just has to define the transaction types and state traditions that it needs while relying on Tendermint as its consensus engine. Cosmos chains split up the application part of blockchains and use ABCI to connect it to networking(p2p) and consensus. ABCI is the interface that connects the application part of the blockchain to the Tendermint state replication engine which provides the consensus and networking mechanisms. Its architecture is often propagated as such:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/86effa1a285b45bf885c81b8f85a3e46.png" alt="Cosmos Architecture" title="Cosmos Architecture" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEaklEQVR4nJWUb0wbZRzHj66XHrcedz1CaSlXyt2VttD5h/bWKK1QRv/Rv/zpP1ooiiTDRDuCL0xMfEMMM2ZZIjGaEFcZm8QZwRhFJwYQkfBiSA2j8UVVwsI0EzNfmJm4mMfcnRvoeME++ebJ8zx39/zu9/397iCG1j+deKm3+8VU53Cq44VE6EwyMtzTwSsZGk6GzqQ6no+HT3cFnu0ODjC0QSaTYRiGoqhcAMMwHMcPzjEB8QYcxyHvqcgfa+D2iqBl8NfWv7rzLfj7e/BnHvy+An5bBrcWwZ11MNj7chleWqmspGlao9FQFKVWqzEMoyhKpVKRJIlhGCmg0+nUajVJklDE33NrEex+Bn75ghe4AcBtcLfAn363AMAPYE+4evMq2FsAp/tfecx6grNyyWRyaGgok8m4XK62tjaO4/x+f0YgnU7HYrFsNjsyMkJRFOR1dewugR8/B8VPBX3Ca3sObN/b2b4Kdub58eclEHT3QSUQjhMkSSqVSpIkCYJQqVQ4jhMEoVQqNRqNUqBcgLeovLycplmaZhlaz7IGo6GeZfVOZ6vL5dazhoYGs8Fg1LMGlmFrdbUVFRWEAIZhB00XR7lcLlovlkHch8SCCJTykqMSiYRhGKPRCEGQRFICw1IEQWBYKhO4/+QRgcTs7kOSJIqiJgGj0WSz2bSUtqKigmXYqqoqi8WiVquVSiVBEA8R4CAEQaAoqtPpTCZTNpsdHR0NBAJms3lwcDCbzcZisWg0OjAwoNVqxS48QgCCwBX7UpAKDC+r1mlplikVHMXwMlxBlOFlZDmJIIiY5UNkcBxF0WPw8XuSS+FjEMRUU3W1NAxBchkil8pQKYxKYUQixeT7VT1qAMrA6r3NOqet5ilrTctJ1t1k8jQ7+6LugZ5H21stIY815LEEXY+3n3rE26LRarGjObMfwP5MLLM7Ey/k4oVcqjjdtzObKk4nCpfiW5OxzVxsc7J7YyKavxDbzKWKV0602uUy5KBFBxvkUN+gulBL+Jtz/oVX/Quj4dXz6eJs3/Zc/+58/80v+3bm0sWZ4PJYYOlsYHEstPK60cHJSiSlKIogCI7jKMr3tEQikQrAMHxIAC4RzNyYi2+9lyhcSRSm41uXhfkHicL70e+mYtenYtcvx7cuJQrTvdsf2cO+2mqqvqGeZVmapn0+n9PpTCaTLoHOzs4Huwt6Ih5MFT+M5nPR/MVo/iJ/4uaUsJyM5ie719+JbuSEZS5dnHky4KmqrGRYhqZpgiDMZrPP5/N4PF6vl+M4m80m/vv+E6AxGey8Ns6bsDQWWX3jub2vh379qvenj3mXdufTxdnw6vnA0tng8mvh1XN1zTZEIkWFXwKO4wiCiOaI/sAw/GCDQZZkKF7IRdbGI2vjXdfeFF9W0EQ0PyEkd6Fr/a3ujbfjhXcbQ265VKYgFWI9/1fhw4tcVaM1t9qNDludg2MdHGO30k0WusnC2q11jpOsg2totTe6W7h2V1OkvYZleIuP+pHxAf4BHmWiABC4SoIAAAAASUVORK5CYII=" nextheight="698" nextwidth="1248" class="image-node embed"><p style="text-align: start">Now let’s take a look at how <strong>Celestia’s</strong> architecture will look, once the ecosystem starts to get built.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/1237c112680c94b16da3d1de871f252a.png" alt="Early Celestia Ecosystem" title="Early Celestia Ecosystem" blurdataurl="data:image/png;base64,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" nextheight="1170" nextwidth="1248" class="image-node embed"><p style="text-align: start">This is how an early ecosystem could look on Celestia. Celestia will operate as the shared consensus and data availability layer between all the various types of rollups operating within the modular stack. The settlement layers would exist to facilitate bridging and liquidity between the various rollups on top of it. While you would most likely also see sovereign rollups functioning independently, without settlement layers.</p><p style="text-align: start">Now that we have established the different degrees of modularity, how they function and how they look, let’s take a look at some of the unique capabilities and functionalities that pure modular blockchains such as Celestia enable.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-shared-security">Shared Security</h2></div><p style="text-align: start">One of the beautiful things about monolithic blockchains is the fact that all users, applications and rollups that make use of it, receive security from the underlying layer. So how does this work in the setting of a modular stack?</p><p style="text-align: start">It’s quite simple really — Celestia provides the rudimentary functionality that chains require to establish shared security — data availability. This is because every single layer that utilizes Celestia is required to dump all their transactions data to the data availability layer, to prove that the data is indeed available. This means that chains can connect, watch and interoperate with each other effortlessly. By always having the security of the underlying DA layer it makes it extremely easy to hard and soft fork too, which we will get into later.</p><p style="text-align: start">Likewise, Celestia allows various types of experimental execution layers to be run simultaneously, even without relying on a settlement layer, while still having the advantage of a shared data availability layer. This means that the rate of iteration will become much faster since it would likely scale linearly with the number of users. Therefore our thesis is that, in time, this leads to compounding improvements on execution layers, as we’re not restrained by monolithic entities with centralised execution layers, since execution and data availability is decoupled. The permissionless nature of modularity allows for experimentation and gives developers the flexibility to choose.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-data-availability-sampling-and-block-verification">Data Availability Sampling and Block Verification</h2></div><p style="text-align: start">Celestia’s block verification works quite different from other current blockchains since blocks can be verified in sub-linear time. This means that throughput increases with a sub-linear growth in cost, compared to linear growth in cost. So how does this look on paper? Let’s take a look.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/952c50a5ec1a9bd523ae3c50d6470b89.jpg" alt="Sublinear vs Linear" title="Sublinear vs Linear" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAARCAIAAAAzPjmrAAAACXBIWXMAAAsTAAALEwEAmpwYAAADn0lEQVR4nIVUb2gbZRw+k4a7yy7vujfXN7m797IjtzVND8utrmC2gOagrXZVdkivjkM9LNeRWg62QM0EAxId+WCnlILoFDk6KE6H+6MftGyIVBHKQKtU/DLYl/ph4DfnPiiR9E1vMcnm8/F47/c8v+d53pcSBAFC6Pu+rusQQqEDoiTycR72QlESyRcIoeu6mqYhhIT/AyUIAkJoe3vbMIxOAowx4EBholB8bR5wQJREjHE0Gl1bW7NtGwCAMX7QaLyDBgGE0HEcRVHaFBHtBwb6f/nnt+HcYT7OBxvYtj0yMtImiExMJpMQ9vbu20szEQC4JoHneaqqthEkUEIQhJt//nSkkOeYqChJzZ0AsG271VKyB8v20EwkraQLT44/e2zq9fLbL0y7FMYYIdSVoDe29/rtb6dmptkeJrU/FcwiGwcEGMtcLIpQ36un3/rx++1fb/5x/erme+98cn750pmFsxRCKBKJtBFgjDkmemH94lzFY3uYNqMpirIsi1gkyzLNRF5+6ZX63frl1e+eyI+KkkQzEZalaSbExfZQhmE4jlMqlYIMMMZ0mK6tnHvjgzfpR+jW6QghVVVN06xWq5qmCYIQClNnFs7eu1PPDjwaClMQ7iM7kTwaIedyOdM0Pc8jBBhjtoeZq3jLV97v1C4IgqIojuPUajVdPxQKU3OzC/fu1GkmwvfFZVnuUtPAorSSFiWRY6JTM9MX1i8CDjyofxRFOY6jaYOHHztav1vHWCbKuh8OQj7Yf5BjuCOF/Oeb14JGdoKEPD83L6ekjRu3nztu00wE4y7aCZo1PXX6FBbxgYH+qz9/mdqf4uN8cG/bsFvTEyeef/HW5l8AcA+Z3iTg+/iTsyezg9nVHz4bGh7i43zrvrgFwQZPT4x9urK2+uHXoTDVlQDtoEEgSiKEsFQqrXyzqj9+iKXZRDIB/wsAAEJot/UYwvjEM0/9fuvvSvkcF4sqikJsaFWjqmomk2lmwNLs+Usfvfvx8vDQ8OjYqGEYlmVNTk6apmlZluM4tm0vLS1tbW2RWXycHx0zvvpifXZmPp8/Oj4+7rqu7/vlcrlYLHqeVywWyXlVVRsWEaSVdHYwizHOZDK+75umqaqqtgtjB60OcLE9RDUAgNztRuupRi1bX4T7BIlkEiGk63oulyNPcSuIV21pkzx0XV9cXPQ8r1qtdj459wmILtd1NzY2fN9/SDHaftE0rVarua5brVYrlQqxMSD4Fx3IMSS+6MjrAAAAAElFTkSuQmCC" nextheight="789" nextwidth="1456" class="image-node embed"><p style="text-align: start">This is possible since Celestia’s light clients do not verify transactions, they only check that each block has consensus and that the block data is available to the network.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/59b916d82ad9c9d4ceff60c3301a328b.jpg" alt="Block Verification" title="Block Verification" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAUCAIAAABj86gYAAAACXBIWXMAAAsTAAALEwEAmpwYAAADwUlEQVR4nK2V0WvbVhTG7Vi1pt5JlSJ0hYSEsLHNRRcj4dhI2EjEZFoMrlV7rh3Iw1gTAusg3ZKNbKNhf0ChTxsM9rBug9HS0QaWpCVrx9KSh41Q1ocEBiFlMLLtqXvZ42DDusFzQmi6dj+EOPci9HHuOee7MZ7nBUEQDzIsikIPXpIkWZY1TSP7sixDCMlb13X+KYjxPM/QdCIxRJ54PDYUj1NUgk4mqUQCQmiaZr1er1arjuOEYdjtdpvNZhiGruuyLHu8wIsAnO1OvPn2u+dmzr9+fvaN2bnZt965MLdwYW5h4b2LhcIIwzAcdypKSOA4jud5juP6cZ9evtGbBP8KUFTi0y+u/vnX39u7vz386ZcH249ufbe58u33S2sbdzYettqdoXj8FM+zEdwAh3YAAGSHpmkSAAA4jovRyeSlyx/e2fhx6fb69a/vXl365vPrK1euLV+5tvzVynqr3RHF4XQ6rUeoEUrEYAwhxBinIxzH0SIQQoqixBiavnT5o7V7m1/euLV0+/7N1fWbq+vLdzdurK6v3dtsNF8xDGOkVMrn8xhjhFA2m81EIIQwxoVCwXEc27bDMJyfn/c8b2pqanFxcXp6enJyMp1OxxjmhY8/+Wxr59f7P2zt7j3++fc/tnb2Hmzvbu/sPdp7/NrUTCwWAwOQ9MkJDC4VReF5HgDAMIwoiuTQekfEcdxLwctnmu0zrbPtzsT7Fz/oTkyeDlunw9ar52ZGSiUAgLjftfv0qzpYT1LzQx/stylNJymKOkFRVCJhWxZN0xSVONFbDZ0EJwX+QFf8V3oCgiAMR3MkCEKlUpFluT96wsGee0aBfmocx7muCyF8zp8ekQEpGsuyjuNACGmaJtPE/y8CAADDMIrFom3b7XabtJ2iKACAQY1n0+u1IMa4XC4Xi8VSqaSqaqlUyuVyruvqus6yrCiKEMK+E0iSJIrika5wtICmabZtF4vFdrstiiLpaM/zJEkyTTMfYdt2pVIJgqBardZqtWq1qqoqE3HIkY4QQAilUilFUTDGuq7H4/FMJmNZFsbYMAzXdcfHx33fb7VaQRAghHzf73Q69XrdNM2xsbFGo6Gq6hNsNWZZlud5ruuaplmpVEZHR8vlMkKo0WhgjHO5nCzLqqpqmmYYBrkeMpmMYRiapum6Tgb4SRmkUqkgCHzf13UdIVSr1fL5vO/7jUajVqtBCMnEE/scNM7+zjECLMumUqlMJqOqKvEQSZJ0XbcsS1GUp7lSjhEgNkISz+fznueVy+VsNksK/vyT/A8XFQ0mEJ9cAQAAAABJRU5ErkJggg==" nextheight="909" nextwidth="1456" class="image-node embed"><p style="text-align: start">Celestia removes the need to check transaction validity since it only checks if blocks have consensus and data availability, as seen above.</p><p style="text-align: start">Instead of downloading the entire block, Celestia light nodes just download small random samples of data from the block. If all the samples are available, then this serves as proof that the entire block is available. Basically, by sampling random data from a block, you can probabilistically verify that the block is indeed complete.</p><p style="text-align: start">This means that Celestia reduces the problem of block verification to data availability verification, which we know how to do efficiently with sub-linear cost using data availability sampling.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/6edc15d4f7c89006401554bdad7d1228.jpg" alt="Data Availability Proofs and Sampling" title="Data Availability Proofs and Sampling" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAANCAIAAABHKvtLAAAACXBIWXMAAAsTAAALEwEAmpwYAAACo0lEQVR4nKWT3U/TUBiHm3o4elLpKHXWNbPWUVp6MRskDVlOhbWwrQ7IZB+lIN3sxtj8mGYG1BgjMdzgFTfe+RGjIcRo9MI/wz9Ks1XnghiIPhftyemb9znnd04J+j9gunBdYrEYz/PRaJRlWZqmQ11omib+uTtCSBAEx3Ha7bau65ZlNZvNarVqGAZJkhBCgiAoiiJ6th5/9gr9mu8fQAhVVS2Xy5qmua6raVqxWMQY27aNMXZdN5/PC4LQkQAAYBcAAEmSCKH+7lS3gCTJYNVBQSgUQgixLGvbdiQSkWVZURRRFOPxOMZYFEVd1w3D4DiOEEUxmUyOj49rmpZOp1OplCzLPQdFUTzPt1oty7KcpaWNB5srKytjqnoCAIZhbNuemJhAXSCEwRMAgBAK1tSJKBKJTE5OYpyQJCkej+u6LklSvwAhpCiKJI2cj0YVRR4bHT1FnOTOcI7jqKoKITyQ8IEwCQCAIAjZbDadzmSz84ZhAACCbwghnucrN6rmbAZPTc/YWcvKNDfvvP629+bzu+Gh4QE4cOiZ9UNACBOJxCXtsijGZGUslc5QFNU7Rkkavbv5uLBccStry/56vlB+tr/76vve1qcdSAwMMUNHXraOAGN8MTZyljsXjQqWNRsIgh1cEEWv1lgouHOLTmahMLdYKnl+895G2a8PDp4+zm3uCHRdX131TNO8mp0vFotBrDQd7EDy/MbT7Z2Xb/ee77748OXr+/2PudKqX2scGc5PQfAKh8MMw7AsyzBMMBNEJMvy+u32QsF1K2terVmp3/JqjVzpev1m6zjdfwuCWHrh9ASKojza2i55/rK/7lbWHK/qeNV66/7Gwyf9xUcLDoWiqHA4nLFtPDU9lTTN2dSVpGlaM7lri6ZlHfgf/yb4ASL3pVMEu9pZAAAAAElFTkSuQmCC" nextheight="552" nextwidth="1362" class="image-node embed"><p style="text-align: start">DA proofs are when you require that blocks being sent, are to be erasure coded. This means that the original block data is now doubled in size, and the new data then gets encoded with redundant data. Celestia's erasure encoding expands the block sizes by 4x, in which 25% of the block is the original data, while 75% is the replicated data. Consequently requiring a misbehaving sequencer or similar to withhold more than 75% of the block’s data if it wanted to commit fraud.</p><p style="text-align: start">Hence it allows light clients to check with a very high probability that all the data for a block has been published, by just downloading a very small piece of the block(DA sampling). Each round of sampling decreases the chance of data unavailability until it's certain that all the data is available. This is extremely efficient since instead of every single node downloading every single block, you instead just have many light nodes downloading small pieces of each block, but with the same guarantees of safety as before. This means that as long as there are enough nodes that are sampling for data availability, it is possible to increase throughput, as the number of sampling nodes increases. You may be familiar with this type of network in your daily life(DA proofs), even if you haven’t used blockchains, by using protocols such as BitTorrent.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-scalability">Scalability</h2></div><p style="text-align: start">When we talk about scalability the first thought that comes to mind from most people is usually transactions per second. However, this should not be the actual discussion being had around scalability. When talking about scalability in a specialized DA layer it should rather be mb/s, instead of transactions per second which should be the major hurdle to overcome. Mb/s becomes an objective measure of the capacity of a chain, rather than tp's since transactions vary in size. Here Celestia stands quite well, since it unbloats the DA layer and utilizes data availability sampling to increase the amounts of mb/s the system can handle.</p><p style="text-align: start">By that, we mean that the real limitation of how many transactions a blockchain is capable of processing is based on input and output. So, by decoupling data availability from the input and output process, which rollups will handle, Celestia will be able to produce much higher bytes per second than monolithic entities.</p><p style="text-align: start">This all stems from the data availability problem. Which is the number of data in a proposed block that a sequencer or similar can verify is available while being limited by the data throughput of the underlying DA layer. Now with monolithic blockchains that utilise full nodes, the normal step to take to fix this would be to increase the hardware requirements of full nodes. However, if you do that, there will be fewer full nodes and decentralization of the network would falter with it.</p><p style="text-align: start">Therefore by utilising the technology we touched upon in the block verification part previously, we can increase scaling without increasing node requirements by making full nodes equal light nodes with DA sampling. This in turn causes node growth to cause more throughput since DA sampling causes sublinear growth — since it scales with the number of light nodes being added. In monolithic design, a block size increase equally increases the cost of verifying the network, but on Celestia, this is not the case.</p><p style="text-align: start">Although, Ethereum is also looking to fix some of its scalability problems with <a target="_blank" rel="" class="dont-break-out" href="https://eips.ethereum.org/EIPS/eip-4844"><u>EIP-4844</u></a> which would enable a new transaction type — blob transactions. Which will contain a large amount of data that cannot be accessed by EVM execution, but still be able to be accessed by Ethereum. This is done because presently, rollups on Ethereum rely on a minuscule amount of available call data to exercise their transactions. Sharding will also help but is still quite far out, but when released should dedicate around 16MB of data space for rollups per block. However, it remains to be seen how competitive the battle for the blob transaction space will become. Although, once you solve one of the scalability dilemmas, another might pop up. So by moving towards modular layers, we can allow the various parts of the stack to specialise for the specific resource they utilise the most.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-forks">Forks</h2></div><p style="text-align: start">In most cases when a hard fork takes place on monolithic chains, you lose the security of the underlying layer, since the execution environments don’t share the same security. This means that usually hard forks are not feasible or wanted since it would mean the new fork won’t have the security of the data availability and consensus layer. It's the same idea when we say that you could submit a change to the code of a blockchain, but you’d have to convince everyone to agree with your change. Take Bitcoin for example. Bitcoin’s code is changeable quite easily, however, getting everyone to agree with a change is the hard part. In the case of you wanting to hard fork a monolithic blockchain, you would also need to fork the consensus layer, which means you lose the security of the original chain. The amount of security lost depends on the number of miners or validators that don't validate the new canonical chain. However, if all the validators upgrade to the same fork, then no security is lost. On modular blockchains, this is not true, since if you want to fork a settlement or execution layer you would still have the security of the underlying consensus layer. In this case, forks are viable since the execution environments all share the same security. Although, this isn't possible for rollups on a settlement layer, since the settlement layer acts as the source of trust for the added blocks.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/22ac4089951553e51f34b9f50403620e.jpg" alt="Hard Forks w/ Celestia as the DA layer" title="Hard Forks w/ Celestia as the DA layer" blurdataurl="data:image/png;base64,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" nextheight="1086" nextwidth="1302" class="image-node embed"><p style="text-align: start">The case for hard forks being unlimited and easily accomplished for execution environments, is that wild ideas can be tested and tried. As well as making it feasible to work on top of the work of others, without losing the base layer security. If you think about the ideas of a free market (and some might not agree on this) it can often create competing implementations that can give better outcomes.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-modular-stack">Modular Stack</h2></div><p style="text-align: start">The modular stack is a concept unique to Celestia. It refers to the decoupling of all the various layers of a usual blockchain into separate layers. So when we say stack we refer to all the layers functioning together.</p><p style="text-align: start">So what layers exist? There’s unmistakably the consensus and data availability layer Celestia, but there are also other layers. Here we refer to the settlement layer, which is a chain which rollups have a trust-minimized bridge with for unified liquidity and bridging between rollups. These settlement layers could be of various types. For example, you could have restricted settlement layers that only allow for simple bridging and resolution contracts for the execution rollups on top of it. However, you could also have settlement layers that have their own applications on them, as well as rollups. Although other types of rollups exist as well, that don’t rely on a settlement layer, but rather function on their own solely with Celestia — these are called sovereign rollups, and we’ll talk about those in the next chapter.</p><p style="text-align: start">Now, it is also possible to have a stack where the execution layers don’t directly post block data to the settlement layer, but rather directly to Celestia instead. In that case, the execution layers would just post their block headers to the settlement layer, which would then check that all the data for a certain block was included in the DA layer. This is done through a contract on the settlement layer that receives a Merkle tree of transaction data from Celestia. This is what we call attestation of data.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/9bb07aa455565e70423abb3be67810e3.png" alt="The Modular Stack" title="The Modular Stack" blurdataurl="data:image/png;base64,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" nextheight="1101" nextwidth="1181" class="image-node embed"><p style="text-align: start">Another huge advantage to the modular stack is its sovereignty. In the modular stack, governance can be compartmented to specific applications and layers and does not overlap with others. If there is an issue, governance can fix it without interfering with other applications in the cluster.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-sovereign-rollups">Sovereign Rollups</h2></div><p style="text-align: start">A sovereign rollup is a rollup that operates independently from any settlement layer. This means that it doesn’t rely on a settlement layer with smart contract capabilities where it would provide state updates and proofs, but rather function purely with a namespace on Celestia. Usually, rollups function within an ecosystem, like Ethereum, where it has a rollup smart contract (resolution contract). This rollup's smart contract also provides trust-minimized bridging between the settlement layer and rollup. However, on Ethereum, all the rollups compete for precious call data. This is why EIP-4844 is being worked on, which would provide a new transaction type— blob transactions. This would also increase the block size. However, even with blob transactions, there will most likely still be heavy competition for settlement.</p><p style="text-align: start">Most monolithic blockchains are capable of handling smart contracts. On Ethereum for example there is an on-chain smart contract that handles state root, which is the Merkle root of the current state of the rollup. This contract constantly checks that the prior state root fits the rollup batches of its current root. If that is the case, then a new state root is created. However, on Celestia, this is not possible as Celestia won’t handle smart contracts.</p><p style="text-align: start">Rather on Celestia, sovereign rollups post their data directly to Celestia. Here the data won’t be computed or settled, but rather just stored in block headers. A block header is what identifies a particular block on a blockchain, and each block is unique. Within this block header, a Merkle root exists which is made up of all the hashed transactions.</p><p style="text-align: start">So how does it work? The rollup has its own peer-to-peer network from which both full and light nodes download the blocks. However, they also verify that all the rollup block data was sent and ordered on Celestia (hence the name data availability) through a Merkle tree — which we’ve seen examples of earlier. Thus, the canonical history of the chain is set by local nodes that verify that the transactions of the rollup are correct. The implication of this is that a sovereign rollup is required to post every transaction on the data availability layer, so that any node can follow the correct state. As a result, full nodes that function as watchers of the rollup’s namespace (think of a namespace as a rollup’s smart contract) can also provide security to light nodes. This is because, on Celestia, light nodes are almost equal to full nodes.</p><p style="text-align: start">To elaborate on namespaces: On Celestia, Merkle trees are sorted by namespaces which enable any rollup on Celestia to only download data relevant to their chain and ignore the data for other rollups. Namespace Merkle trees (NMTs) enable rollup nodes to retrieve all rollup data they query without parsing the entire Celestia or rollup chain. Furthermore, they also allow validator nodes to prove that all data have been included in Celestia correctly.</p><p style="text-align: start">So why are sovereign rollups a unique prospect? Because prior rollup implementations, such as on Ethereum are limited, since Ethereum nodes are required to store execution-related state as a result of being monolithic. However, in a modular design, we can have specialized nodes for various purposes, which should make it much cheaper to run the network. Thus the costs of running the network scales with the cost of light nodes rather than full nodes, since as we explained earlier - light nodes = full nodes.</p><p style="text-align: start">Let’s take a look at how some of the rollup implementations could function as sovereign rollups. First, it is important to clarify how the various rollup proof systems function on Celestia.</p><p style="text-align: start"><strong>Optimistic rollups</strong> depend on fraud proofs. The fraud proofs would be gossiped between clients peer-to-peer via full nodes and light nodes on the rollup side. We will look at an implementation of this further down. Sovereign rollups change the way fraud proofs are distributed. Instead of verifying them on a settlement layer contract, they're now distributed in the rollups peer-to-peer network and verified by local nodes. With Sovereign Optimistic Rollups on Celestia we can possibly also minimize the challenge period, which means we fix one of the major hurdles with current ORs, since they're currently very conservative with their dispute windows on Ethereum. This is possible since currently, all the fraud interactions happen on-chain in the highly competitive block space of Ethereum, which causes protracted finalization. However, on a sovereign rollup, any light node has full node security if it’s connected to an honest full node, and therefore fraud interactions should be much quicker.</p><p style="text-align: start"><strong>ZK rollups</strong> depend on validity proofs (zksnarks for example). ZK rollups acting as sovereign rollups would function quite similarly to how current implementations work. However, instead of sending a ZK proof to a smart contract, it would be distributed in the peer-to-peer network on the rollup for nodes to verify. Sovereign ZK rollups much like ZK rollups on unified settlement layers allow for various execution runtimes to function on top of each other as sovereign chains, since their transactions aren't interpreted by Celestia. Here the runtimes on top of the ZK rollup could function in a variety of ways. There could be a privacy-preserving runtime, an application-specific runtime and much more. This is what is coined as Fractal Scaling.</p><p style="text-align: start">Now that we have established the concept of sovereign rollups, and have an idea of how they will be implemented on Celestia, let’s take a look at how two different rollups’ architectures could look:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/cddfc8019d29a3a6761172020b7d6224.jpg" alt="Sovereign Rollups on Celestia" title="Sovereign Rollups on Celestia" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAaCAIAAABZ+cloAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFSklEQVR4nJ2WbWwURRjHp9e727vd27mbm3X39va2WA4Pj9bTeoWl0rM0gZ62QioxtSlNBBFL9AOJxBfAEkwqhKgBoeWtKiBiExEKpRZKpbz16NEqr+VFUBAI+sHoB6iIUXnM7tLS2FZb/3my2Z3MzG/mmf88d8gzHGGMMzMzHzEUDoc1TcvJycnIyPB4iIcQ80n0l3tCw5qdUhqPx4uLi8vKygoKCmKx2LRp00pLS2VZ5jgW6+J5nv+fAI9HX585B8dxfI84jhME6vP5vJSKoijL/r6bGB6gV71TeCl1MJYJ+aUHv4XWc3DgIjR2QvrIURzHmn0GAdxNpi4v9XqpLi+lHtKf5HU6bWMnFNbuhC1NsGkX1Hz6S0AdwWNe7z8YwO3gMcNihnXZHC6r04lsdmRxoFQ3j/t3xrzbgiwIoTRVZJkUhBDm3byDZ+2sx0MQGUglNRWvHVz2cn1lRcObc+oryzfMnV33+uzt8++PhjnH3b2bG3U5XSMy0udtnfdM1bOPj8+Z/sb0t04sm/nOrPmNlRUfziGERxzH2e12xhDrdNrtdux2/9n0MVw5Cl374Zs2uLAfrh2BCwfhcqKzapGVcXh7AIQQh93+kDY+CXDsDtR8DnUdkLgFB65By8/QdhPmVjajrKyseDyuaVosFotGo4WFhWNzHoNVNbCrCZr2wCd1UN8Ajc3QuBsOJeD95RaW9fYcBSHE6WRC4ext7fBFFzR/B62XoOUcJK9D+/dw9Cd4b9OvKBQKaZoWMRQMBiORSFTTYN0a2NUA+/bC0aQe+/ZCMgHnzsL6tVaW7T1pQgjrZEaNztpxHJouQtN5OHQNDl+HA1ch+QOc7IaVm2/oKWIYxmmI53nGzrAYQ3U1NDdDww7YtAHqtsDu3bBjOxxuu7O62uZy9QVwnGPkA5GNzdByChq+gs+OQH0nJC7rz+3HYOG7XQMcMqU0XVXTFSXg8wVkn18UR6WlpcuyKkkBWR7A0oRIkk+UZFn2h0KjFSVN9quKkqYoAVGUBrYpx/NmuDBmXS4P1S8q63LxWLdp71LuOdW43dS4yRzH9ozmMcYDA8zRfUNVVUqpOaVZHjiOu4chxO3xqAGVCoJe9cwwhg6pVGCMjSIjY4wJIcFgMNOQient4Pf7sbHFvhpqLSKEKIoiCIIsy9nZ2eXl5fF4PBaL5ebmiqJIKVUU5R+FengAjLEsy5IkCYIwbtw4TdOKiopKSko0TcMY+/1+RVH6L3+oAEK8XkJFwyh6Nu6TBEGUJFmSfAIVMW+yfUbShw8gHmJnrBYrQilozJiwJEkoBaXakMWqB0JIDagPhkejFOTkHKQf4z8AxEN4ns0b/1Rx/KWiic8/EZ86MT//ybznivJnTpn8QvHkOcUFFfmTY1OnlJROeeXRh3M5V59SOBQApQKyoNaNAFcALkHr1pub13fCeYBTAKcBzuqN61YcOrIN4DqsWPAlsiBKhYEB/a+P/oNFqMWKGmtuwxnoboe/vgY4ATrgoj777Q64ldRb/ugA6IKlrzai1MEBZjkyfW3ahhDik2SX29q49hache4k/NYBtzsBLgP8qK9dBySgOwE32vQ9LZm3898AkUgkKysrFApRSk3nqaqqBtJsDtRS+ztcNdJyxohTPWF+mi1XYfmCPYOmiOf5eDxeVlY2Y8aMaDQaDAYFQTDyRRhn6otlb3+w5OTqxcl1VZ21VcdqlxyvrTq+ZnHnqsrk8vmJlQvbVy1q+2jp6acLZ9kZKyHeAQAYY/OP1KRJk/Ly8sLhcG+uiIfYmBSUisww3akbtKelNxxOW3+b/g2DeCq2jZ45vQAAAABJRU5ErkJggg==" nextheight="1178" nextwidth="1456" class="image-node embed"><p style="text-align: start">So why do they need Celestia? Optimistic rollups require DA so that fraud proofs can be detected and ZK rollups require DA so that the state of the rollup chain is known.</p><p style="text-align: start">It’s also important to always be contrarian when you look at something. Because if not, you can often get blinded by your own conviction. In this section, I will try to explain some of the negatives that come with sovereign rollups.</p><p style="text-align: start">Sovereign rollups are going to be heavily reliant on new ecosystems being built on top of them, similarly to the often touted L1 playbook. This means dApps etc. However, if the rollup has a VM implementation that already has a lot of development activity and dApps that are open source, then this becomes much easier to do. Despite this, liquidity is still the major issue to overcome. Liquidity will often be compartmentalized to the sovereign rollup and its runtimes. Thus the rollups would be heavily reliant on secure, trust-minimized bridging to other layers, such as other sovereign rollups or settlement layers. We’ll look at some possible implementations of this later on. Furthermore, the implementation of sovereign rollups is heavily dependent on infrastructure being built that can support its various functionalities.</p><p style="text-align: start"><strong>Optimistic Rollup Implementation</strong></p><p style="text-align: start">In this section, we will try to explain how a possible Sovereign Optimistic rollup implementation could work. This part borrows heavily from the<a target="_blank" rel="" class="dont-break-out" href="https://arxiv.org/pdf/2203.15968.pdf"><u> Light Clients for Lazy Blockchains</u></a> research paper written by Ertem Nusret Tas, Dionysis Zindros, Lei Yang and Davis Tse.</p><p style="text-align: start">One way to construct a unique way of providing fraud proofs for an OR is to have full and light nodes on the rollup to play a bisection game. A bisection game is played between two nodes, one that is a challenger and one that is a responder. The challenger would send a query to a responder through a third node acting as a verifier. The responder's reply to this query would happen through the same channel. After receiving the challenge, the verifier would forward the query to the responder, who would then produce a response that would be sent back to the verifier and the challenger. The verifier will consistently perform checks to make sure that there aren’t mismatches between the two, and that they aren’t malicious. The verifier acts to ensure that the responder isn’t sending the wrong Merkle trees, and the challenger acts to ensure that the responder is following the correct root. If the responder can defend himself, then the game carries on as usual. As a result of this bisection game, an honest challenger will always win, and an honest responder will always win.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/0ea07b4be9b443f4375b5ee88818caea.jpg" alt="Bisection Game for Optimistic Rollups" title="Bisection Game for Optimistic Rollups" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAIAAAAUMWhjAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFhklEQVR4nK1Vb2jUZhx+ba3XJO+9ufe9NMk1uaRpcr3LpUmv17trsXf2elhr9Xq1tqeVtatWqlYZEyrFsb91f/0kY7hNhY2BOBF14Mb2QZ0TBhvI3IdN5mTML0PYPo192reMXLQ4OrcKe3gJIcn7e355fk+eAPZ/AkIIY1yubFlXLNEUhTH2r4OVl8AYhx9sW34LIZRIJKZ3zmwuD/M8jxBaKQGuFeXDYQZC0NAQxpgso4EMs6myZdfs3uZIZGR0fHpmN8dxPse/Efh9QQgJxqCuTte0mcENgGECNL2kgFcdwkgk0lcstsUTktSczmSq1aq/HWP8zwT+fgihKIpRWV4TDM4ODrrvve9evHj7mcNtLS0MQk0cx7IsRVGa1rJjauf4xCTP8zRNG4Zx5NWjw5UtqwBAEHoEGOMQub/8cXldEyLL8tbR0YFy+cS+fe6Pt93rX7jXr7nf33KvXMl2dCQtK51O79qzv1wZEUXRcTpM01xXLJXLw/l8Pp3JbNi4qVXXQQhjZk0ju6ohVB9g6htYlhVF0TTNnp6ebDZrWZYoikY0em7/nHvhgnvhvHvqxPb+IsYYMgzP85lctyRHaZqiaVpV1W0Tk91reyGEqqpOz+zu7MoAtpGO5zPdz+1Nvzxnjw+lku0TExP5fN4wDEEQvEEhREMI6uqGurtfGx9jWBbU1/tKIoQCgQCC0JdU13VBEERRlGUZoaCiRCGEwBwdmL5zetfPZ2bufjhz92z/0fltwyOaoVM1oJq7McZ8OLwGBkGjN3COkIen5VcPc2EjZsg1iKKIMZYkyXNR8tDU039e2/fr1T33Lh/4/erwZ2+u7847nSnLsnRdF0WREIwxgTBIrwHBAICQIYR/2BEhz2ysgEKxqCpJkqIoHMfxPB+JRBBCQBCFzOsHql+/PXHz5NBHbziDxe3Vara727Is0zRzuVylUqECdSEWzc6fnTt8VRAlAACEkGVDfnWGojnEVi69te6lpwgNW/VWQoivlUfgKdhARVs1o8MSCUfXN1A0zXGcqqqmaaZSKdNM7J8//sk37qd3vHXphnvw+Y8lKcqy99XjpIiTzfTObh+d25m32hVVZVlWkiRCiEcQwiFEMGQgHWhELMI1RViWpWkaQsjzvKoq8y+cu/GLe+sP96t77re/uUff/S6e8Dwa1TQKgL5jCyOX36kD4IfFRffUqYgsIwhlWb5PsKRj6O8BsDQ9CCEAQJbVg4tfzr/+k5HI1SRigl5Pgdberr4nx/hmkef5Tiv54uRkV9KkEVJU5TGyKMw1QYYKrAZUAFDUakL4EBsSZalNbR344JX+48+SAAWoxnbLci+eP7l7dhUAsiCix0pT4iFMCE9IGEEYjek7bp7uX9gTrg9Em6Wm5ubPFxaOTE1RoVCsPVk+c7S9sh42BDB5RBYtB/0ADPSAEBLNGIkINEUFEaIRWhzburGzEwDQJDfnjx0y+nuCjVToUWG3vH3btp0a2pPJZDyRTCSSbXEzYcZisUgkksvlxJYW23EGCoW16bQV1drb4qlUyjCM/yZACPE8H4vFOI4TImK8kGvLZ/SuDl4QeJ43TVOrAUIYk6NP5AvFdhsRjGua6rq+IgJBEFRV9ZgEQWxR9JTd3NYq1H5bfnVN04jnBS5Ye8b/kjHGK30DjuMcxxmqIZkwK5vL/X195XK5UCgYhqEoSldXV2VkpFQqZbPZsbGxUqlUrVZ7e3tX+gYcx9m2XSgUhoaG1g8M5HI527Y3l8uO47TquqIojuPk8/lisRiLxUqlUqFQ8FNS07SVSpROp+PxeKyGdDqtaVoikVBV1bZtwzCKxaLfQSqVsm3bNE1JknRdt217RS7CGJumGa/BP1k6GobhD1NRlKWsFgRBlmVd12VZ/gt+GFBABESqgAAAAABJRU5ErkJggg==" nextheight="1097" nextwidth="1456" class="image-node embed"><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-data-availability-on-celestia-settlement-on-x">Data Availability on Celestia, Settlement on X</h2></div><p style="text-align: start">It’s also possible to neither use a settlement layer connected purely to Celestia for bridging, nor function as a sovereign rollup. Since Celestia just provides the underlying DA layer with shared security, any settlement layer could be used as long as Celestia can send a Merkle root of available transaction data to a settlement layer contract. This means that any settlement layer could be used for rollups, if they so desired. So why would they do this? Many existing settlement layers, such as Ethereum, have an already existing and thriving ecosystem. Thus there’s already liquidity, and users to take advantage of. This is especially advantageous for rollups that don't want to rely on building an entire ecosystem from scratch. Now, this is not purely limited to Ethereum as a settlement layer. You could also make use of Mina as a ZK rollup for example. That means you could send your transactions data to Celestia, while sending state updates and zk-proofs to Mina. By doing so, you already have a settlement layer that’s validity proven by default.</p><p style="text-align: start">If you’re a rollup operator and want to take advantage of liquidity and users that utilize other blockchains, then this type of solution is highly attractive to you. It’s also possible to sorta become a plug and play type of rollup operator. You could have different sequencers plugged into different settlement layers. For example, one ZK rollup sequencer could be connected to Mina and provide state updates and validity proofs. While another sequencer on a different zk-rollup could be connected to Ethereum for settlement through the Quantum Bridge (the fabled Celestiums). What they would all have in common, is that they would send all their transaction data to Celestia, and then Celestia would operate a smart contract or similar on the settlement layer where it would send a Merkle tree of available data (attestation).</p><p style="text-align: start">Let’s take a look at how this could look architecturally with a ZK rollup as an example:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/347934079e897100c01a2a534cb8f389.jpg" alt="Settlement on X, Data Availability on Celestia." title="Settlement on X, Data Availability on Celestia." blurdataurl="data:image/png;base64,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" nextheight="1309" nextwidth="1449" class="image-node embed"><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-value-accrual">Value Accrual</h2></div><p style="text-align: start">The source of revenue for Celestia itself is going to be transaction fees from various rollups’ submitted transaction batches. Celestia’s transaction fees are going to be quite similar to how Ethereum currently operates with EIP-1559, so a burn style mechanism. This means that there will be a dynamic base fee that will be burned, as well as a “tip” for validators to push a certain transaction through quicker, these validators would also get value from the issuance of tokens after new blocks. However, this is from the perspective of Celestia’s validators, so what would it look like from a user’s perspective? Let’s first establish how the various fees would look depending on what layers you’re using, and then we can conclude how the user experience would look.</p><p style="text-align: start">The fee structure for execution rollups will primarily be the operating cost + the DA publishing cost. There will likely be an overhead cost too, so that the rollup makes a profit. That means for the user you would likely pay one fee that encompasses those 3 + a congestion fee — which will likely be much lower as a result of less congestion.</p><p style="text-align: start">The source of revenue for the settlement layer is the settlement contract fee that the rollup would pay to be able to settle on it. Furthermore, there will also be enshrined trust-minimized bridging between rollups through the settlement layer, so it would also be able to charge bridging fees.</p><p style="text-align: start">Then what about sovereign rollups that function without a settlement layer? On sovereign rollups, users would have to pay a gas fee to access computation on the rollup. The rollup would set a fee, most likely decided by governance, and then you would likely also have a congestion fee that would have to be paid for as well. These fees on the rollup would cover the fee of publishing data to Celestia, and a small overhead for the rollups validators. You would forego the settlement fee, which will likely produce extremely low fees for the end-user.</p><p style="text-align: start">So to conclude, we can create a fee structure of how the various fees will look for the end-user. The end-user of a modular stack would likely get 3 constant fees, with 4 being possible. These are the DA publication fee, the settlement contract fee and the rollup execution fee. The fourth possible fee would be a congestion fee during heavy loads. The user only pays a single fee on the execution layer, this fee would encompass the costs of all the layers in the modular stack. So let’s take a look at what the fee structure would look like from the users' perspective:</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/4df6337d8db4c4de96f4420c23534b41.jpg" alt="Fee Structure" title="Fee Structure" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAASCAIAAAC1qksFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFHElEQVR4nH2Vf0wTZxzGX+nv9u17vbbpYQ/hsOVajju6a4utrcUWRMFlQ9mm2XQ/YpzTjCzTRCdLJmEzLtmGGLd/DGZGURCkVgjDoIKIoAQn4mbAOU3cksVkM9NlZtnmzHe5ljGSOZ88eZNLLve573P5Poeo/xchxO/3C4IQCoVkWfb5fJIkOZ1OQ1omkylzYoxnX86chBCKotATABjjRCJRU1MTCoXC4XBVWqWlpR6PJxgM8jwviqIkSS6XKxgMejweWZbdbrckSYIg+P1+p9OJMX48gKbpzAQ8z0cikXnz5rEs6/V6c3NzJUlyu92CIHg8HkmSMgyfzyeKYigUygDcbrff72dZ9vEAQojZTCwWq8ViNZnMOp2REAshlMlkyKSBMc4kY0qLEPJvLGYKm8xmMzEaMEVZaNo6DSCE4LQIIQzDcFweZdaasYYiWoposTGLmI00baXTIulXwNikWEEYZobW6pHWiPTGOXqcpTUig1EzDZjLMHm5ijguP4fNjiVW7m2DxhZoOgIfH3jU1Ao1axo0akRRFq1WW7GsaudHe+p27Kyr37n13Yb3Gj6UZb9arSr0FLftvt25525yr+L+A1D/VguiaVpvMDjy88VAIJ/jnGyOXy6q3byrewqSX8Pxa5C8Cj23YMfuUZ/kKgktZFnnq+s29AyMtaZOtXf1tx0/3TMwFk9UIITCJQmYgGlfBrgJx5ruIEKIzeGY3L69cfVqJi8vLzfPQhmDkRXJcTh0EVouwuGLCmnrB2dLo3Jl5dP5HLdhY21798C+g8f2H041tyTbUqdipQlCcHxR5b1heDACv47AvfMAV+Hgrm9RltF4s/ETmJqEc0PbqldYGCYgF728rq7jMpy8Dn3fwPFxSE3Cm9t7Clxzw+GoIBS+sam2f/jKiZNDJ04OdnSd6R0YrVhaFQj6qpY9pwAuKIz7acDR3d8jI8ZLAwFobr7xfkOopMTne8oviy+89Hb7JRi4CUPfwekbSlAbtqXmMqSAL4xGI5u3vHNhfKrv3NjAyMTZCxN958ZWrXpRlqUliWcfTQLcBrgOf14B+BE6P/sBWWlaT4iDYRw5OW6vVxCKMNYVl1Slrir5tIwqEXVNwZpNh7IQom0OhNDzq9Yke4f2HUzub+1qbkm2d/eXlS9FCC0sKf9tDP74En4fU+aAKej89A6y2WwMw9jtdk9BAc/zsj8QDgXWb6rvGIe2S4qPjCoRvVJ7RKdGDke2Wq1a+9r6ZO/Q/sOpA23dn7em2rvOZADRBRX3h+HBMPxyHn4eVD51R9NPyJ4Wle4NiqLMZqLXqZZXr/viGhwdhWOXoPMy9N2C17cc1aqQ3c6o1aqNtZv7Rybau/uTvYPJ3sEzwxNVy59BCC0KL3v0Ffw1Dg+vwMNxJajk3rvKHjgcDrvdzsySIIjB8BKxOCbJZZJctqRybTxRRYjZZrMZDIb5812L42WKE+Wx0sTieDnHcWq12sMX1tc1xhdWJyLV5dGVicjK4qIFiOf5eDweCoWEtLKzszOLrddq9DqNXqfSaebodSrX/HxBEERRFATB5XLZ7TbaYsHYpNGoVSoVxpjjOEEotNstKjVSa6ZtMOiQ0+nkOI5lWaUA/gnKojSCdbZxWhRFMQzDsqwgCLIsB4MlsuwPBoOZHrXZbIRQVto6Y5qmlUXLVNATenumajIdTgiJRCI+ny8Wi4miGIvFeJ7X6XSzb5vRk/4HT1A0GvV6vQaDUnOZ0f/76Azgbxi63YocyFfjAAAAAElFTkSuQmCC" nextheight="836" nextwidth="1456" class="image-node embed"><p style="text-align: start"><em>So what does this mean for the future?</em></p><p style="text-align: start">Well, if Celestia proves to be a cheaper and faster data-availability layer for rollups to use, while still providing decentralized and shared security, then you could see rollups increasingly use it for data availability. If we consider<a target="_blank" rel="" class="dont-break-out" href="https://l2fees.info/l1-fees"><u> how much</u></a> rollups are currently paying to use Ethereum for security, then the rollups on Celestia would pay much less. However, there are fixes coming to fix the congestion issues on Ethereum, primarily blob transactions, staking and sharding.</p><p style="text-align: start">Then what about MEV? Rollups currently utilise sequencers to collect and order users' transactions in a mempool before they get executed and posted to the DA layer. This is an issue in regards to MEV, since the sequencer is primarily centralized in current implementations, and is therefore not censorship-resistant. The current solution to this is to decentralize the sequencers, which a lot of current rollups plan to do, though this brings with it its own set of issues. Another way to solve this in some form would be to separate validators and the ordering of transaction lists (take a look at Vitalik’s<a target="_blank" rel="" class="dont-break-out" href="https://notes.ethereum.org/@vbuterin/pbs_censorship_resistance"><u> paper</u></a> if you’re interested).</p><p style="text-align: start">To conclude, the layers of the modular stack receive revenue through transaction value. Users obtain value from transacting on a layer and are thus familiarised with paying fees. The value thus refers to the value a user receives from having their transactions included on a layer.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-bridging">Bridging</h2></div><p style="text-align: start">As we’ve discussed previously, if a rollup has a settlement layer, it will have a trust-minimized bridge to other rollups via the settlement layer. But what happens if the rollup is sovereign, or if it wants to bridge to another cluster? Let’s look at cross-rollup communication.</p><p style="text-align: start">In the case of two sovereign rollups that want to communicate, they can actually make use of light client technology, much like how IBC functions. The light clients would receive block headers from the two rollups and with it, the proofs that the rollups use, via a p2p network. This could both work via a lock and mint mechanism, such as with IBC, or via the validators through a relayer. With chains built using the Cosmos SDK and those who leverage Tendermint or Optimint bridging becomes much more seamless, as you can take complete advantage of IBC with ICS. However, this requires the two chains to include the state machines of each other and have the validators of the bridging chains write off on transactions. Other ways to bridge can exist as well. We could, for example, imagine a third chain that functions with some sort of light clients. On which the two chains that want to bridge can stream their block headers, which would then function as a settlement layer for the two. Or you could rely on a Cosmos chain to act as an “intercluster rollup hub”, where the validators of the chain could operate the bridge by following the conditions of the rollups. There also exists a wide variety of bridging as-a-service chains, such as Axelar, and many others.</p><p style="text-align: start">However, by far the easiest way to facilitate bridging, is for execution rollups to use the same settlement layer since they would have trust-minimized bridge contracts on it.</p><p style="text-align: start">The reason why bridges between layers are so important is that it allows for unified liquidity. Secondly, by allowing protocols and layers to be composable with one another through sharing state, we unlock new levels of interoperability. State sharing refers to the ability of one chain to make calls to another chain. Here is of special interest, particularly the abilities of interchain accounts with <a target="_blank" rel="" class="dont-break-out" href="https://github.com/cosmos/ibc/blob/master/spec/app/ics-027-interchain-accounts/README.md"><u>ICS-27</u></a>.</p><p style="text-align: start">So, therefore, we can conclude that light clients are crucial in interoperability standards like IBC. Celestia light clients’ will as a result enable more secure interoperability between chains in the various clusters. In regards to Celestia’s connection to IBC, then they’re planning on using governance to whitelist certain chain’s connections to Celestia, to limit state bloat.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-end-user-verification">End-User Verification</h2></div><p style="text-align: start">While all the various monolithic and modular design approaches of the last few years are innovative, and the amount of talent building it, is astonishing. There is one fundamental question underlying various trade-offs that has been around in our space for quite some time. We believe it centres around end-user verification and the need thereof.</p><p style="text-align: start">You can argue endlessly, and CT will, about the various trade-offs different designs make. But in the end, it perhaps comes down to the question - if having the possibility of end-user verification matters. A lot of design trade-offs (e.g. blocksize) centre around the ease of running a full node, and DAS enables light clients to be “first-class citizens”, comparable to full nodes.</p><p style="text-align: start">The underlying assumption in thinking that, is that users will care about being first-class citizens at all. The fact that users can easily verify the chain by running a light client/full node does not mean they will, or that they will value the ability to do so.</p><p style="text-align: start">The argument in favour of this is rather straightforward. If users do not care about verification you might as well run a centralized database. It will always be more efficient as decentralisation often comes at the expense of efficiency. Hence the reason why we are building crypto protocols at all, is that end users are able to verify the compute.</p><p style="text-align: start">The argument against, is that as long as the network is sufficiently decentralized, end-user verification in itself does not matter. Users won’t care about it, as long as UX is good. There is no clear answer to how important end-user verification is for now. However, we think end-users being able to verify the chain is a worthwhile goal chasing and the reason why many are building in this space.</p><div class="relative header-and-anchor"><h2 style="text-align: start" id="h-the-future-of-the-modular-stack">The Future of the Modular Stack</h2></div><p style="text-align: start">This section will serve as a way to envision what the modular stack built on top of Celestia could look like in the future. We will look at an architectural overview of how we view the modular stack, and what kind of layers we might see.</p><p style="text-align: start">Underneath is a diagram of many of the possible layers that can function within a modular stack. They all have one thing in common, they're all using Celestia for data availability. We will likely see various sovereign rollups, both Optimistic and ZK rollups, which will function without a settlement layer. We're also likely to see rollups utilise Cevmos as a settlement layer, alongside various app chains. There is also the possibility that we might see other types of settlement layers. These settlement layers could be restricted, which means that they would either have pre-set contracts just for bridging and rollups, or rely on governance to whitelist contracts.</p><img src="https://img.paragraph.com/cdn-cgi/image/format=auto/https://storage.googleapis.com/papyrus_images/3e865e447d85a01390be97e73690e663.png" alt="Future of the modular stack" title="Future of the modular stack" blurdataurl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAPCAIAAAAK4lpAAAAACXBIWXMAAAsTAAALEwEAmpwYAAAD50lEQVR4nJVUUWwUVRSd7u7s7M68eTNvZvpmtrMz292ZTnenbVp2aV3SArbbUtAWSkLRQAslimLRyhZjaUzQGIOBLTRpq6J+VGMkgsHaWhorEUOJ8QMlQTH6w1f9oQk1wcQPxDyzbdWqNODJ+XnnJe/ce9+9lxLuA2gB/9UhFHgOAg4K8C8lDwCAqqq5oTezz79ArfioKEpIRKIoCALHcQzDAAD++bxQqEmaJekWRhKCMB+HugAIoappZ6c+P3J8ZEUDDkAfA3goiAila9c3b9pc4pRCnl9MRZIQ6+dXb7T7p1oOfNCcWGUrMrYsK5PJJJNJjHEsFpuYnskNnby7AQ8FU1fWVJkaFhkf1dCYad/ZVV5R6aFpPp8cgjwLeaibmlUZirhqoSoLgiDLsq7rilIIAMBY7ent29G5598GSEJYVija93bHk+T7+W9zkwNj5PCJ67ZlsYBtSCTieohh2SLTgRAWFemqHGIKAOuHkM+XPhgMchy3mOj6+qZUdQ0lIVFeoIREyPOM3xf0+30Mvb266cqzwy9v78++eq3jiffceGnTloMbqmoebu6sre9o3NDFQ6gX6dESs6wuYtdooTBWsWZZlmmaEkK6Hl76A29QoHyQoqGHZk3TbN+6tW1zq21Z3gAT0CRaYEUpgFSINTVkOo81NjyYTLVnMm3JSoYHqqyFXWn/6bq9p9Jlaw0NF7llruM4GGPDMD4cn37l2CC1N1M8uMMe2OlseyCUcJzW3Qce6sqm4o5UbrV9dqJl8mjruYFtM8PFu7fsq5W/eCn9yeH6qb6KltUaL6kYFyqKUhwt1jQNIbRYIgAAx3Gqqp4Znz6SG6JuDx4kV94n350Z62qu39Vz6OPZnrOz3S+O8in7qRsfPT3/6f6b5565Ne72dh7bFPrl3cyN0Y1zudo961UghQoVpGlavvN5uHxiIISyLDc0Nlen11ATj3eTobdIbiSbTsfasodmSPd5si57SinV153sW/vGc3Wv9daP9ofamh5J4ZF9VUd3lQ08ajQmDSipphG2bfuuMygIAu3zBRiG8gRoVgSU30sH/EF/AWAoPuhhfBTHBVivRxGgyLGs18MytD8YLPD5gCB4A6ysqKZhyHK+O1ccVSQhhCgzbFUkakqi5VbUjUbcuLPKjaeiEXfhmHDjqdKSymgkYUVdK+JaZqIsnrJjbixWjDGG8M8VsTKoydd/v/UVmbtA5i7+zZszeS5X5hZ5gfz8JflhghhGeGFz5BfJPQwuvUPINXL7MrnzzRJ/u0zIj4RcJ+QqubNMX7q6SmaniZRfPvcOP28wNvzr/CXy0/n75dxF8vXp/2HwB/4uYGsonjOrAAAAAElFTkSuQmCC" nextheight="702" nextwidth="1456" class="image-node embed"><p style="text-align: start">On the right side of the diagram are other non-native settlement chains which could also have rollups that utilise them for liquidity and settlement while relying on Celestia to provide an attestation of transaction data to the settlement layer.</p><p style="text-align: start">All of these clusters would all be connected through various bridging services, both new and old.</p><p style="text-align: start">What you don't see is also all of the infrastructures that will be built to provide easy access to the various functionalities of Celestia, such as RPC endpoints, APIs and much more.</p><div class="relative header-and-anchor"><h3 style="text-align: start" id="h-endnote">Endnote</h3></div><p style="text-align: start">If you’re looking to build on top of Celestia, whether that would be in regards to rollups, or other types of infrastructure, then do reach out. We would be happy to talk to you!</p>]]></content:encoded>
            <author>maven11research@newsletter.paragraph.com (rain&amp;coffee)</author>
            <category>modularity</category>
            <category>celestia</category>
        </item>
    </channel>
</rss>