<?xml version="1.0" encoding="utf-8" standalone="yes"?>

<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Talks</title>
    <link>https://soap.coffee/~lthms/series/Talks.html</link>
    <description>Articles in the series "Talks"</description>
    <atom:link href="https://soap.coffee/~lthms/series/Talks.xml" rel="self"
               type="application/rss+xml" />
    
    
    <item>
      <title>Scaling Etherlink Without Compromise</title>
      <link>https://soap.coffee/~lthms/talks/ScalingWithoutCompromise.html</link>
      <guid>https://soap.coffee/~lthms/talks/ScalingWithoutCompromise.html</guid>
      <pubDate>July 12, 2025</pubDate>
      <description>
        
        &lt;h1&gt;Scaling Etherlink Without Compromise&lt;/h1&gt;
&lt;div class=&quot;markdown-alert markdown-alert-important&quot;&gt;&lt;p class=&quot;markdown-alert-title&quot;&gt;&lt;svg class=&quot;octicon octicon-report mr-2&quot; viewbox=&quot;0 0 16 16&quot; version=&quot;1.1&quot; width=&quot;16&quot; height=&quot;16&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;Important&lt;/p&gt;&lt;p&gt;The content of this article comes directly from a talk I gave at TezDev 2025
(Catalyst) on July 3, 2025. This is a personal transcript, and any mistakes
in it are my own.&lt;/p&gt;
&lt;/div&gt;
&lt;iframe src=&quot;https://www.youtube.com/embed/2zezFuUBXkQ?si=d1y9aZXErWAjKHuq&quot; class=&quot;youtube&quot; title=&quot;YouTube video player&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; referrerpolicy=&quot;strict-origin-when-cross-origin&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;
&lt;p&gt;Good morning everyone! Today I’ll be talking about Etherlink—and more
specifically about how we are scaling Etherlink without making any compromise.
And before I dive too deep into the details of this talk, I think it is always
a good idea to start from the beginning. That is, what is Etherlink, really?&lt;/p&gt;
&lt;h2&gt;What is Etherlink?&lt;/h2&gt;
&lt;p&gt;First and foremost, Etherlink is &lt;em&gt;the&lt;/em&gt; EVM-compatible layer of Tezos. We have
implemented this layer as a Layer 2 blockchain powered by a Tezos smart rollup,
but that’s an implementation detail. What matters is what we wanted to achieve
with Etherlink: bringing EVM-compatibility to the Tezos ecosystem, at a time
where it could make a difference.&lt;/p&gt;
&lt;p&gt;Now, we still ended up implementing a Layer 2 blockchain no matter our main
motivation—and one we want to be attractive. But as an EthCC speaker put it
earlier this week, there is a new L2 chain being launched every day, which
means we need to bring new things to the table that our competitors don’t, if
we want to make Etherlink a success.&lt;/p&gt;
&lt;p&gt;This is why we have built Etherlink according to three core values, summed up
in a very simple motto: &lt;em&gt;fast&lt;/em&gt;, &lt;em&gt;fair&lt;/em&gt;, and (nearly) &lt;em&gt;free&lt;/em&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Etherlink is fast.&lt;/strong&gt; Its sequencer is creating new blocks at a competitive
pace (every 500ms), providing low-latency to the chain’s users. You only have
to wait 250ms on average for your transaction to be included, which enables
exciting opportunities (typically in DeFi).&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Etherlink is (nearly) free.&lt;/strong&gt; As of today, it only costs around a tenth of
a cent to make a tez transfer on Etherlink. This is necessary for Etherlink
to be a welcoming platform for a wide range of use cases including some
requiring the injection of hundreds of thousands of transactions every day.
Paying 20 cents once is okay, but with high volumes, every cent counts.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Etherlink is fair.&lt;/strong&gt; In this area, we probably are pioneers actually.
What we mean by &lt;em&gt;fair&lt;/em&gt; is that Etherlink treats all its users equally, by
being a permissionless platform where no arbitrary set of third-party
entities holds dedicated rights. There is no committee, no chain owner
capable of doing executive decision. On the contrary, we have entrusted the
governance of Etherlink to Tezos bakers, making it &lt;a href=&quot;BeingStage2Rollup.html&quot; class=&quot;hover-rose&quot; marked=&quot;&quot;&gt;the first non-custodial
rollup&lt;/a&gt;. Anybody can become a baker, which means anybody can engage
with &lt;a href=&quot;https://docs.etherlink.com/governance/how-is-etherlink-governed/&quot; class=&quot;hover-periwinkle&quot; marked=&quot;&quot;&gt;Etherlink governance&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Etherlink in July 2025&lt;/h2&gt;
&lt;p&gt;We have been building Etherlink for a while now, and it turns out that July is
a pretty busy month for us. In 2023, we announced Etherlink publicly at
&lt;a href=&quot;EVMCompatibleTezos.html&quot; class=&quot;hover-lavender&quot; marked=&quot;&quot;&gt;EthCC&lt;/a&gt; and TezDev and launched the &lt;a href=&quot;https://testnet.explorer.etherlink.com&quot; class=&quot;hover-rose&quot; marked=&quot;&quot;&gt;Testnet&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;. One year
later, we had &lt;a href=&quot;https://medium.com/etherlink/etherlink-mainnet-beta-paving-the-way-to-launch-14606e29cc8b&quot; class=&quot;hover-periwinkle&quot; marked=&quot;&quot;&gt;launched our Mainnet&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; and it had been non-custodial
from day 1. It was of significant importance for us that as an Etherlink user,
you didn’t need to trust us in gradually decentralizing a custodial solution.
If you are familiar with the Ethereum rollup space, you already know that this
approach is actually quite singular.&lt;/p&gt;
&lt;p&gt;Now it’s July 2025, and we have once again exciting news to share. This is
especially true if you are a Tezos baker, since July will be &lt;a href=&quot;medium.com/@etherlink/its-voting-month-for-etherlink-two-governance-votes-coming-in-july-2025-301ae7bcd29f&quot; class=&quot;hover-mint&quot; marked=&quot;&quot;&gt;a voting
month&lt;/a&gt; for you with two key votes for Etherlink’s future&lt;label for=&quot;fn1&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn1&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;Oh, and we have also announced &lt;a href=&quot;https://research-development.nomadic-labs.com/seoul-announcement.html&quot; class=&quot;hover-sky&quot; marked=&quot;&quot;&gt;Seoul&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;, Tezos’ 19th protocol upgrade
proposal since then. &lt;/span&gt;
&lt;/span&gt;!. One
in particular—and I mention it because it is actually a good transition for the
topic of this talk—is about a new proposal upgrade notably changing how the gas
price is computed to align it better with Etherlink’s real
capacity&lt;label for=&quot;fn2&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn2&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;Turns out that we were a bit conservative in Dionysus. When
testing more thoroughly, we noticed the chain was behaving better under
load than what we previously thought. &lt;/span&gt;
&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;That being said, I would not say that we are happy with the capacity of
Etherlink today. It’s enough for the current activity of the chain, as hinted
by how stable the gas price is nowadays. But it’s not enough for the kind of
ambitions we are having for Etherlink in particular and Tezos as a whole.&lt;/p&gt;
&lt;p&gt;This is why we are committed to increase the capacity of Etherlink in the
short-term (the next six months) at least tenfold.&lt;/p&gt;
&lt;h2&gt;Making Etherlink Blazing Fast&lt;/h2&gt;
&lt;p&gt;Software developers in the room are probably familiar with this expression 🦀.&lt;/p&gt;
&lt;p&gt;But when facing such a claim, it’s only natural to ask: how do we achieve that?
In my opinion, there are two aspects to consider.&lt;/p&gt;
&lt;p&gt;Firstly, we need to execute transactions faster. For each transaction submitted
to Etherlink, we want to spend as little time as possible executing it. For
this endeavour, we have several plans that will allow us to increase the
throughput of Etherlink.&lt;/p&gt;
&lt;p&gt;To give a few examples:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;We are not particularly happy with the EVM implementation we are currently
using (&lt;a href=&quot;https://github.com/rust-ethereum/evm&quot; class=&quot;hover-coral&quot; marked=&quot;&quot;&gt;SputnikVM&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#github&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;). We are making great progress in transitioning to &lt;a href=&quot;https://github.com/bluealloy/revm&quot; class=&quot;hover-periwinkle&quot; marked=&quot;&quot;&gt;REVM&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#github&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;We want to introduce parallel execution where it matters. It is a hot topic
in the industry, with already solid results that we can leverage.&lt;/li&gt;
&lt;li&gt;We have identified for a while now the shortcomings of the current runtime
our smart rollups are built upon—and we have a team tackling this challenge
to deliver a new RISC-V-powered runtime that will come with its own storage
backend designed, implemented and optimised for optimistic rollups.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After combining all these efforts together and throwing a few more
optimizations to the mix, we are confident Etherlink will be able to process
transactions significantly faster.&lt;/p&gt;
&lt;p&gt;Which brings me to the second side of making Etherlink fast: volume. Processing
the transactions that we already have will make Etherlink more responsive, but
we really want is to increase the overall capacity of Etherlink so that when
you bring more activity to the chain, the system is not congested. To do that,
we need to consider the amount of transactions that you will bring. We already
have hundreds of thousands of transactions sent every day, but what happens
when they become several millions? And several dozens of millions?&lt;/p&gt;
&lt;p&gt;As of July 2025, the sequencer publishes Etherlink transactions inside Tezos
Layer 1 blocks, but sadly block space is a scarce resource. To give you a few
numbers, Tezos Layer 1 bandwidth (provided by its block space) is around 500
KBytes every 8 seconds. We can increase the block size, we can reduce the time
between blocks, but the order of magnitude will not change. This becomes a real
concern when we want to scale Etherlink without compromising with its
non-custodial nature.&lt;/p&gt;
&lt;h2&gt;Scaling Without Compromise&lt;/h2&gt;
&lt;p&gt;We need to keep in mind what it means to increase both the speed of your system
and the amount of data that you are processing with it. On the one hand,
processing transactions faster is first and foremost an optimization challenge.
It is a hard one, but ultimately it’s about using the hardware at your disposal
in a more clever way. Processing more transactions on the other hand raises a
&lt;strong&gt;security&lt;/strong&gt; challenge, because it requires to &lt;em&gt;publish&lt;/em&gt; more transactions. If
Tezos Layer 1 blocks are not an option, where should the sequencer publish
those?&lt;/p&gt;
&lt;p&gt;One popular alternative to Layer 1 block space for a Layer 2 to publish its
transactions is to rely on a Data Availability Committee (DAC). In this model,
a small group of trusted entities is tasked with ensuring the data is available
to participants.&lt;/p&gt;
&lt;p&gt;But would Etherlink have stayed a non-custodial rollup if we had done that? The
answer is a loud and clear “no.” Why? Because optimistic rollups rely on at
least one honest participant that is willing to protect its state. That
participant must have access to the full transaction data. If that data is only
available via a closed committee, we introduce trust assumptions. And the
moment you need to trust a small group for security, you&apos;re no longer truly
decentralized.&lt;/p&gt;
&lt;p&gt;This is why I am saying processing more transactions raises a security
challenge. We knew that in 2022, when we started building the Data Availability
Layer (DAL) of Tezos..We nicknamed the DAL the &lt;a href=&quot;https://research-development.nomadic-labs.com/data-availability-layer-tezos.html&quot; class=&quot;hover-coral&quot; marked=&quot;&quot;&gt;Rollup Booster&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;, because the
goal of the DAL is to increase the available bandwidth for Tezos’ smart
rollups, and it is &lt;em&gt;now&lt;/em&gt; live on Tezos Layer 1 Mainnet.&lt;/p&gt;
&lt;p&gt;In a nutshell, the DAL is a proof of publication system. Anyone can send
arbitrary data to the DAL’s peer-to-peer network and get back an attestation
that this data has indeed been published. The same way Smart Rollups have been
&lt;em&gt;enshrined&lt;/em&gt; to the Tezos Layer 1 protocol, the DAL is enshrined to its
consensus. That is, the body of the DAL’s attesters is the same one that is
participating in the consensus of Tezos: the bakers.&lt;/p&gt;
&lt;p&gt;Now is actually a good opportunity to celebrate that more than 85% of the
baking power of Tezos is running a DAL node. DAL is already here today for
Etherlink to use in order to increase its capacity. And since Dionysus (the
current version of Etherlink), the sequencer can already decide to publish
transactions to the DAL. It’s not doing it at the moment, because going through
the DAL instead of Tezos Layer 1 blocks has a small impact on the latency of
Etherlink’s bridges—but as soon as we need to, we’ll able to enjoy the
additional bandwidth provided by the DAL&lt;label for=&quot;fn3&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn3&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;x10 compared to Tezos Layer 1 blocks today, x200 by the end of
2025. &lt;/span&gt;
&lt;/span&gt; without any loss in
decentralization.&lt;/p&gt;
&lt;h2&gt;It’s All Coming Together&lt;/h2&gt;
&lt;p&gt;If you have been following the work of core engineering teams from Nomadic
Labs, Trili Tech and Functori working on Tezos and Etherlink, 2025 is a really
exciting time. Everything we’ve been hard at work delivering our scaling
roadmap for the past four years is now in production. Etherlink is live, bakers
have enabled the DAL, and every piece of this technology stack remain true to
the decentralization ethos of blockchains.&lt;/p&gt;
&lt;p&gt;July 2024 to July 2025 was about bootstrapping this EVM-compatible layer of
Tezos we call Etherlink. I want to emphasize how much work that entails.
Launching the chain was actually the easy part. Having the chain being used,
having an ecosystem in place, having the tooling, the partners, the projects
landing: that was the hard part. It’s now done—as much as “being done” in the
rapidly evolving landscape of blockchains means anything.&lt;/p&gt;
&lt;p&gt;But we’re not done. We’re still preparing for the future to come. This talk was
about discussing Etherlink’s capacity and how we intend to increase it tenfold.
This will allow to create more room for more users to come, for more projects
to be deployed. In the meantime, I do hope you find in Etherlink a welcoming
platform for your projects!&lt;/p&gt;
        
      </description>
    </item>
    
    
    
    <item>
      <title>Being a Stage 2 Rollup from Day 1: Etherlink’s Journey</title>
      <link>https://soap.coffee/~lthms/talks/BeingStage2Rollup.html</link>
      <guid>https://soap.coffee/~lthms/talks/BeingStage2Rollup.html</guid>
      <pubDate>July 11, 2024</pubDate>
      <description>
        
        &lt;h1&gt;Being a Stage 2 Rollup from Day 1: Etherlink’s Journey&lt;/h1&gt;
&lt;div class=&quot;markdown-alert markdown-alert-important&quot;&gt;&lt;p class=&quot;markdown-alert-title&quot;&gt;&lt;svg class=&quot;octicon octicon-report mr-2&quot; viewbox=&quot;0 0 16 16&quot; version=&quot;1.1&quot; width=&quot;16&quot; height=&quot;16&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;Important&lt;/p&gt;&lt;p&gt;The content of this article comes directly from a &lt;a href=&quot;https://ethcc.io/archive/Being-a-Stage-2-rollup-from-day-1-Etherlinks-journey&quot; class=&quot;hover-sky&quot; marked=&quot;&quot;&gt;talk&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; I gave at EthCC[7]
on July 11, 2024, as part of the “Rollups &amp;amp; Scaling Solutions” track. This is
a personal transcript, and any mistakes in it are my own.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;My name is Thomas Letan. I’m working for a company called &lt;a href=&quot;https://www.nomadic-labs.com/&quot; class=&quot;hover-lavender&quot; marked=&quot;&quot;&gt;Nomadic
Labs&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;label for=&quot;fn1&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn1&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;Nomadic Labs is one of the largest R&amp;amp;D centers working on the Tezos
ecosystem. &lt;/span&gt;
&lt;/span&gt;, and today I am here to talk about &lt;a href=&quot;https://www.etherlink.com&quot; class=&quot;hover-mint&quot; marked=&quot;&quot;&gt;Etherlink&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;. More
specifically, I will talk about our journey to be a stage 2 rollup from day 1.&lt;/p&gt;
&lt;h2&gt;What is Etherlink?&lt;/h2&gt;
&lt;p&gt;Before going any further, it is probably worth giving a bit of an introduction
for Etherlink, because you might not already be aware of what it is already.
Etherlink is a newcomer in the Layer 2 landscape, and has the particularity of
being part of the &lt;a href=&quot;https://tezos.com&quot; class=&quot;hover-sky&quot; marked=&quot;&quot;&gt;Tezos&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; ecosystem. That is, it is not an Ethereum rollup. Our
Mainnet has been available in Beta since May 15.&lt;/p&gt;
&lt;p&gt;Etherlink has been built with three core properties in mind: we wanted it to be
&lt;em&gt;fast&lt;/em&gt; (with a 500ms soft confirmation time delivered by a sequencer), &lt;em&gt;fair&lt;/em&gt;
(as we will discuss during this talk), and nearly &lt;em&gt;free&lt;/em&gt; (your typical
transaction costing one-tenth of a cent).&lt;/p&gt;
&lt;p&gt;Our main focus during Etherlink’s beta is onboarding new partners. We have
already onboarded several infrastructure partners, and our immediate focus now
is on bringing dApps to the chain.&lt;/p&gt;
&lt;h3&gt;Etherlink is (nearly) a Stage 2 Rollup&lt;/h3&gt;
&lt;p&gt;Besides, what we think is interesting about Etherlink is that it is already
(nearly) what &lt;a href=&quot;https://l2beat.com/scaling/summary&quot; class=&quot;hover-peach&quot; marked=&quot;&quot;&gt;L2beat&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; calls a &lt;a href=&quot;https://medium.com/l2beat/introducing-stages-a-framework-to-evaluate-rollups-maturity-d290bb22befe&quot; class=&quot;hover-periwinkle&quot; marked=&quot;&quot;&gt;stage 2 rollup&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;, and it has been since
its genesis block.&lt;/p&gt;
&lt;p&gt;To support this claim, let&apos;s go back to the definition of what L2beat stages
are, and what a stage 2 rollup is about.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Etherlink naturally fully qualifies as a stage 0 rollup. Every transaction is
posted on Layer 1 (Tezos in this case), along with L2 state root hashes.
Besides, you can recompute the state of the chain locally using free and open
source software (released as part of the &lt;a href=&quot;https://tezos.gitlab.io&quot; class=&quot;hover-lavender&quot; marked=&quot;&quot;&gt;Octez&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; suite).&lt;/li&gt;
&lt;li&gt;Etherlink fully qualifies as a stage 1 &lt;em&gt;optimistic&lt;/em&gt; rollup as well. We have
the full implementation of the optimistic rollup infrastructure, including a
trustless bridge and a fraud-proof system.&lt;/li&gt;
&lt;li&gt;Because this fraud proof system is permissionless (and has actually been
permissionless since the genesis of Etherlink), we also meet a crucial
requirement of stage 2 rollups. We are missing a 30-day exit window for users
wanting to leave their funds out of Etherlink to fully qualify as a stage 2
rollup. This is because we favor a shorter feedback loop with our early
adopters during the course of our beta&lt;label for=&quot;fn2&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn2&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;While the exit window is currently 24 hours, it is already fully
permissionless. Users do not need the help or authorization of a
third-party to remove funds from Etherlink. &lt;/span&gt;
&lt;/span&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Etherlink is a Non-Custodial Rollup&lt;/h3&gt;
&lt;p&gt;Meeting the main requirements of being a stage 2 rollup has been a direct
consequence of our primary objective for Etherlink: to be a non-custodial
rollup. That is, it was always clear to us that no closed set of third-parties
should ever be granted exclusive, irrevocable rights on Etherlink. In other
words, we wanted Etherlink to adhere to the same standards as Layer 1
blockchains, like Ethereum or Tezos.&lt;/p&gt;
&lt;p&gt;To that end, we built Etherlink on top of two cornerstones: a permissionless
fraud proof system, and a decentralized on-chain governance. My goal for the
remainder of this talk is to give you a peek into the kind of solutions we came
up in these two areas.&lt;/p&gt;
&lt;h2&gt;Etherlink is Powered by a Permissionless Optimistic Rollup&lt;/h2&gt;
&lt;p&gt;I was at EthCC last year to &lt;a href=&quot;https://www.youtube.com/watch?v=0eRhAyE_B_8&quot; class=&quot;hover-mint&quot; marked=&quot;&quot;&gt;introduce Tezos optimistic rollup stack&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#youtube&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;.
We won’t revisit the details of our solution in depth, but let’s use this
opportunity to give you a refresher.&lt;/p&gt;
&lt;h3&gt;Optimistic Rollup in a Nutshell&lt;/h3&gt;
&lt;p&gt;We are in the rollup track, so we can skip the 101 course on optimistic rollup.
To me, the three points you need to keep in mind from now on is that an
optimistic rollup&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;offloads computations away from a layer 1 blockchain in a new layer&lt;/li&gt;
&lt;li&gt;enables bi-directional communications between the two layers with a
&lt;em&gt;trustless&lt;/em&gt; bridge&lt;/li&gt;
&lt;li&gt;relies on an interactive fraud proof system to ensure the safety of your
assets while they are locked in this second layer.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You cannot remove one of these properties without making an optimistic rollup
either unsafe or useless.&lt;/p&gt;
&lt;h3&gt;Smart Rollups are Optimistic Rollups as a Common Good&lt;/h3&gt;
&lt;p&gt;Etherlink is powered by Smart Rollups, a one-year-old feature of the Tezos
protocol. You can think of Smart Rollups as a general-purpose framework for
building optimistic rollups. I like to think that we have implemented the full
optimistic rollup infrastructure once (and —to the best of our knowledge—
correctly), and now every member of the Tezos community can benefit from this
effort.&lt;/p&gt;
&lt;p&gt;This is not the first time I’m tasked to give an introduction to Smart Rollups,
and I like to put forward the following properties:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You have understood it by now, but Smart Rollups are permissionless by
default. By default, any XTZ holders&lt;label for=&quot;fn3&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn3&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;XTZ is the native token of Tezos, that is used to pay gas, validator
fees, and participate in Tezos governance (more on that later). &lt;/span&gt;
&lt;/span&gt; can post and defend L2 state root
hashes&lt;label for=&quot;fn4&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn4&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;It is also possible to create permissioned Smart Rollups, for
use cases that require it. This is not the case of Etherlink, obviously. &lt;/span&gt;
&lt;/span&gt;.&lt;/li&gt;
&lt;li&gt;Smart Rollups are not implemented by means of smart contracts. They are
directly enshrined in Tezos protocol, making them a first-class citizen of
the Layer 1 blockchain. This was instrumental in enabling several
optimizations to increase performances and reduce end-users costs.&lt;/li&gt;
&lt;li&gt;They are fully programmable. Smart Rollups are not about creating
EVM-compatible Layer 2 blockchains, they are way more general than that.
The same way you provide a script when creating a smart contract, Smart
Rollups come with a (WASM) program that decides the semantics ruling the
newly created Layer 2 rollup.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Etherlink is not the only use-case for Smart Rollups! To name a few examples,&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;We have been able to demonstrate Tezos can support &lt;a href=&quot;https://www.youtube.com/watch?v=2EgjMvEIGww&quot; class=&quot;hover-lemon&quot; marked=&quot;&quot;&gt;one million transactions
per second on a public testnet using 1,000 smart rollups&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#youtube&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; last year.&lt;/li&gt;
&lt;li&gt;We are working on a Javascript runtime (called &lt;a href=&quot;https://spotlight.tezos.com/jstz/&quot; class=&quot;hover-periwinkle&quot; marked=&quot;&quot;&gt;jstz&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;) for Layer 2
blockchains powered by a Smart Rollup.&lt;/li&gt;
&lt;li&gt;Engineers from &lt;a href=&quot;https://www.plentydefi.com/&quot; class=&quot;hover-lemon&quot; marked=&quot;&quot;&gt;Plenty&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;, a DeFi platform deployed on Tezos, have been
experimenting with &lt;a href=&quot;https://rollup.plenty.network/&quot; class=&quot;hover-coral&quot; marked=&quot;&quot;&gt;Plenty Rollup&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; to exchange assets with
low-latency and high-throughput.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Etherlink Decentralized Governance&lt;/h2&gt;
&lt;p&gt;Smart Rollups are the technological foundation of Etherlink, but they are not enough to
make it a non-custodial rollup. The same way you can create a centralized smart
contract on top of a decentralized blockchain, you can definitely build a
custodial Smart Rollup by embedding a public key in its code.&lt;/p&gt;
&lt;p&gt;This brings us to decentralized governance.&lt;/p&gt;
&lt;p&gt;If you were aware of Tezos before this talk, it is probably because of its
on-chain governance system. If you don’t know, Tezos is a Layer 1 blockchain
officially launched in 2018, with a track record of 16 forkless upgrades. This
is possible because the governance of Tezos is embedded in its protocol. We
definitely wanted to leverage this when we started building Etherlink.&lt;/p&gt;
&lt;h3&gt;Etherlink (Absence of) Governance Token&lt;/h3&gt;
&lt;p&gt;It was clear from the get-go that Etherlink would “inherit” from Tezos strong
and vivid governance. One consequence of this choice was to XTZ as its
governance token, instead of introducing a new token. Besides, Tezos governance
is larger than XTZ itself, because it is built on top of a pioneer liquid proof
of stake mechanism. For Tezos upgrades, only the validators vote, but their
ballot’s weight is determined not only by their personal stake but also (and
sometimes mostly) by the balances of individual holders who have “delegated”
their XTZ to them&lt;label for=&quot;fn5&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn5&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;It is clearly out of the scope of this talk, but for your
information, Tezos liquid proof of stake has been significantly amended
with the Paris upgrade to include a new &lt;a href=&quot;https://tezos.gitlab.io/active/adaptive_issuance.html#new-staking-mechanism&quot; class=&quot;hover-lavender&quot; marked=&quot;&quot;&gt;staking mechanism&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; which
complements the existing delegation approach. &lt;/span&gt;
&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;This should give Etherlink a head start, because the ecosystem of Tezos has a
clear and well-established maturity when it comes to on-chain governance.&lt;/p&gt;
&lt;h3&gt;Handing over Etherlink to Tezos Validators&lt;/h3&gt;
&lt;p&gt;Similarly to Tezos, Etherlink governance happens on-chain, and once the vote
is finished, there is nothing we can do to prevent its consequences from
becoming a reality. Everything is embedded in Etherlink program.&lt;/p&gt;
&lt;p&gt;The voting process is a lightweight revisit of Tezos’ one. The governance of
Etherlink is carried through the Layer 1 blockchain, because this is the place
where the voting power of the governance body (Tezos validators) is determined.&lt;/p&gt;
&lt;p&gt;The vote proceeds as follows.&lt;/p&gt;
&lt;p&gt;Firstly, &lt;em&gt;any&lt;/em&gt; Tezos validator can propose a new upgrade during the &lt;strong&gt;proposal
period&lt;/strong&gt;. I believe this is a significant rule to highlight. Proposing a
candidate is not a right limited to —let’s say— Etherlink core developers. On
that, we follow the footsteps of Tezos, and what happens on Tezos during the
proposal period is often quite interesting. We have seen time and time again
the community using this opportunity to engage very actively with the
governance process. For the Ithaca proposal for instance, a validator had
submitted a counter-proposal disabling a feature they didn’t like. For the
Oxford proposal, validators proposed a variant of the proposal tweaking some
parameters of the key feature introduced at the time. This is “governance at
work,” and the governance body can then select the proposal they find the best
fit for the Tezos network.&lt;/p&gt;
&lt;p&gt;Secondly, the &lt;strong&gt;promotion period&lt;/strong&gt; starts with the proposal that has received
the most upvotes. Obviously, winning an election among many participants does
not ensure to the victor a majority of support&lt;label for=&quot;fn6&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn6&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;For context, I gave this talk in the midst of France almost
seeing a far-right government taking power, and the left “winning” a snap
election with too few parliament members to apply their program. &lt;/span&gt;
&lt;/span&gt;. The question asked
to validators boils down to: “Do you approve this proposal?” The goal is to
verify that the selected candidate can gather a supermajority of support. This
additional step was designed to alleviate the risk to see unhappy validators
fork Tezos.&lt;/p&gt;
&lt;p&gt;Finally, the &lt;strong&gt;cooldown period&lt;/strong&gt; gives an opportunity to (1) the ecosystem to
adapt to the features and changes brought by the new software, and to (2)
dissatisfied users to exit Etherlink.&lt;/p&gt;
&lt;p&gt;The current parameters for the governance of Etherlink are as follows.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;Regular upgrade&lt;/th&gt;
&lt;th&gt;Security upgrade&lt;/th&gt;
&lt;th&gt;Sequencer&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Voting period&lt;/td&gt;
&lt;td&gt;~ 2.5 days&lt;/td&gt;
&lt;td&gt;~ 7 hours&lt;/td&gt;
&lt;td&gt;~ 5 days&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cooldown period&lt;/td&gt;
&lt;td&gt;~ 24 hours&lt;/td&gt;
&lt;td&gt;~ 24 hours&lt;/td&gt;
&lt;td&gt;24 hours&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quorum (proposal)&lt;/td&gt;
&lt;td&gt;1%&lt;/td&gt;
&lt;td&gt;5%&lt;/td&gt;
&lt;td&gt;1%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Quorum (promotion)&lt;/td&gt;
&lt;td&gt;5%&lt;/td&gt;
&lt;td&gt;15%&lt;/td&gt;
&lt;td&gt;8%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Supermajority&lt;/td&gt;
&lt;td&gt;75%&lt;/td&gt;
&lt;td&gt;80%&lt;/td&gt;
&lt;td&gt;75%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;I will not spend much time discussing each number individually, and instead
focus on the three kind of votes.&lt;/p&gt;
&lt;p&gt;Firstly, and this is probably what you had in mind when I started to mention
decentralized governance, is voting on the next version of the software
powering the chain. We distinguish between “regular” upgrades (the default
case), and “security” upgrade. The latter can be used exceptionally if a bug is
found in Etherlink that can endanger the assets of Etherlink users. The
security upgrade has shorter periods of vote, but requires a higher
quorum&lt;label for=&quot;fn7&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn7&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;Did you know? &lt;a href=&quot;https://medium.com/etherlink/post-mortem-how-and-why-etherlinks-first-security-upgrade-on-mainnet-beta-happened-600ef64622ab&quot; class=&quot;hover-lemon&quot; marked=&quot;&quot;&gt;Etherlink has gone through a security upgrade
already&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;. The patch deployed fixed a critical issue in the
withdrawal precompiled contract, which was found by &lt;a href=&quot;https://spearbit.com/&quot; class=&quot;hover-sky&quot; marked=&quot;&quot;&gt;Spearbit&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; during their
audit. &lt;/span&gt;
&lt;/span&gt;. It is worth mentioning that we do not have a security
committee, as it is often the case for other Layer 2 blockchains.&lt;/p&gt;
&lt;p&gt;Secondly, and I think it is a unique thing in our industry, Etherlink’s
sequencer is elected by Tezos validators. This brings a clear incentivization
for the sequencer to behave correctly. Otherwise, Tezos validators can simply
vote them out of Etherlink. It does without saying —so it’s better when
reaffirmed— that the sequencer power is limited to proposing blocks, the
validation of said blocks remains permissionless. In particular, in the context
of Etherlink being a Smart Rollup, only valid transactions that are actually
posted on Tezos can lead to funds transiting from Etherlink to Tezos through
the permissionless bridge.&lt;/p&gt;
&lt;p&gt;Another interesting fact about Etherlink and its relationship with the
sequencer is how Tezos consensus algorithm and low block time enables
Etherlink’s blocks to become final under less than a minute. Tenderbake (a
variant of Tendermint) features a 2-block finality property that is
incredibly rollup-friendly. Since the sequencer typically posts its block
proposals directly after their creation, it is not unusual for an Etherlink
block to become final in 30 seconds or so.&lt;/p&gt;
&lt;p&gt;For partners and institutional entities that cannot rely on soft confirmation
from a sequencer, we believe this can be a game changer.&lt;/p&gt;
&lt;h2&gt;Why Non-Custodial?&lt;/h2&gt;
&lt;p&gt;This talk is slowly coming to its end, and one way to conclude it is to come
back to this idea that we wanted Etherlink to be non-custodial from the get-go.
This should raise an interesting question: why? Why was it so important for us
to make it a priority that early in the development process?&lt;/p&gt;
&lt;p&gt;This is particularly relevant when we take a step back and have a look at our
ecosystem. To this day, the leaders of our industry are still powered by stage
1 (Arbitrum, Optimism) and stage 0 (Base) rollups.&lt;/p&gt;
&lt;p&gt;The origin of our decision lies in our long term goal for Etherlink. Etherlink
as a Layer 2 blockchain is important, and we have invested a significant amount
of effort and time to make it as successful as we can, &lt;em&gt;and&lt;/em&gt; it is also a
component of a larger scalability roadmap we coined &lt;a href=&quot;https://spotlight.tezos.com/tezos-x/&quot; class=&quot;hover-lemon&quot; marked=&quot;&quot;&gt;Tezos X&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;. Tezos X
aims to bring the full Tezos ecosystem into a scalable, decentralized
optimistic rollup compatible not only with Michelson (the home-grown smart
contract language of Tezos) and EVM, but mainstream programming languages as
well (as suggested by our efforts on jstz).&lt;/p&gt;
&lt;p&gt;In the meantime, I can only encourage you to take interest in Etherlink today.
As mentioned, its Mainnet is already there and will soon move out of the beta
phase. Our fast, fair and (nearly) free Layer 2 blockchain awaits you.&lt;/p&gt;
        
      </description>
    </item>
    
    
    
    <item>
      <title>Can Tezos Become EVM Compatible?</title>
      <link>https://soap.coffee/~lthms/talks/EVMCompatibleTezos.html</link>
      <guid>https://soap.coffee/~lthms/talks/EVMCompatibleTezos.html</guid>
      <pubDate>July 20, 2023</pubDate>
      <description>
        
        &lt;h1&gt;Can Tezos Become EVM Compatible?&lt;/h1&gt;
&lt;div class=&quot;markdown-alert markdown-alert-important&quot;&gt;&lt;p class=&quot;markdown-alert-title&quot;&gt;&lt;svg class=&quot;octicon octicon-report mr-2&quot; viewbox=&quot;0 0 16 16&quot; version=&quot;1.1&quot; width=&quot;16&quot; height=&quot;16&quot; aria-hidden=&quot;true&quot;&gt;&lt;path d=&quot;M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;Important&lt;/p&gt;&lt;p&gt;The content of this article comes directly from a &lt;a href=&quot;https://www.youtube.com/watch?v=0eRhAyE_B_8&quot; class=&quot;hover-lavender&quot; marked=&quot;&quot;&gt;talk&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#youtube&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; I gave at EthCC[6]
on July 20, 2023, as part of the “Core Ethereum &amp;amp; Scalling” track. This is
a personal transcript, and any mistakes in it are my own.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;My name is Thomas Letan. I work for a company called &lt;a href=&quot;https://www.nomadic-labs.com/&quot; class=&quot;hover-rose&quot; marked=&quot;&quot;&gt;Nomadic
Labs&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;label for=&quot;fn1&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn1&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;Nomadic Labs is one of the largest R&amp;amp;D centers working on the Tezos
ecosystem. &lt;/span&gt;
&lt;/span&gt;, and today I am here to talk about our work to bring EVM
compatibility to the Tezos ecosystem.&lt;/p&gt;
&lt;h2&gt;What is Tezos?&lt;/h2&gt;
&lt;p&gt;Tezos is a Layer 1 blockchain that has been around for over five years. One of
Tezos’ key differentiator —at least initially— is its on-chain governance
system. The governance system is a voting procedure to propose, select, and
automatically deploy core upgrades for the blockchain. This governance system
enabled the Tezos network to seamlessly go through 14 upgrades since the
beginning of our Mainnet. These upgrades allowed us to keep innovating at a
strong pace, and today Tezos notably features &lt;a href=&quot;https://www.youtube.com/watch?v=0eRhAyE_B_8&quot; class=&quot;hover-sky&quot; marked=&quot;&quot;&gt;its own smart contract language
and runtime&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#youtube&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;, a 2-block finality consensus algorithm called
&lt;a href=&quot;https://tezos.gitlab.io/alpha/consensus.html&quot; class=&quot;hover-rose&quot; marked=&quot;&quot;&gt;Tenderbake&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt; since April 2022&lt;label for=&quot;fn2&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn2&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;Tezos was initially deployed with a different consensus algorithm,
which means we have hotswapped Tezos consensus while it was live. &lt;/span&gt;
&lt;/span&gt;, and a first-class citizen framework to
deploy and operate so-called &lt;a href=&quot;https://docs.tezos.com/architecture/smart-rollups&quot; class=&quot;hover-periwinkle&quot; marked=&quot;&quot;&gt;Smart Rollups&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Smart Rollups are optimistic rollups enshrined in their Layer 1 blockchain
(Tezos). We are today at EthCC[6] because we believe they can be a game-changer
for Tezos, and we are excited to share this with you.&lt;/p&gt;
&lt;p&gt;The starting point of Smart Rollups was the scaling roadmap of Tezos. It has
been our main focus for the past months, leading us to demonstrate on a public
testnet how 1,000 rollups can process 1,000,000 transactions per second
together. But Smart Rollups as they came to be also enable us to explore brand
new use cases. One of them is EVM compatibility, something Tezos itself does
not provide to our users.&lt;/p&gt;
&lt;p&gt;During the remainder of this talk, I will provide you all the keys to get a
grasp on what Smart Rollups are, and how we intend to bring EVM Compatibility
to our ecosystem through one Smart Rollup.&lt;/p&gt;
&lt;h2&gt;A Primer on Smart Rollups&lt;/h2&gt;
&lt;p&gt;The selling pitch for Smart Rollups is to present them as new ways to implement
decentralized applications. They offer a trade-off that is slightly different
than smart contracts already propose. In a nutshell, Smart Rollups get more
computational power compared to a smart contract, but since these computations
are offloaded from the Layer 1 blockchain, you need to bring your own
infrastructure to carry it.&lt;/p&gt;
&lt;h3&gt;Optimistic Rollups Done Once&lt;/h3&gt;
&lt;p&gt;Under the hood, Smart Rollups are an optimistic rollup framework with three
critical properties.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;They are &lt;strong&gt;permissionless&lt;/strong&gt; by default, meaning that any Tez holder&lt;label for=&quot;fn3&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn3&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;Tez is the native token of Tezos. &lt;/span&gt;
&lt;/span&gt; can
create a rollup, and compute, publish and defend the state of any rollup
created on Tezos. That is, we have permissionless interactive fraud proofs
already!&lt;/li&gt;
&lt;li&gt;They are &lt;strong&gt;enshrined&lt;/strong&gt;. A Smart Rollup on Tezos does not rely on a collection
of smart contracts, but is instead of first-class citizen of the Tezos
protocol itself with a dedicated address. Optimistic rollup maintenance
operations are dedicated operations of Tezos, optimized for performances and
gas efficiency. Besides, they benefit from Tezos being able to evolve and
improve over upgrades&lt;label for=&quot;fn4&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn4&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;It’s more than a promise already. Smart Rollups have been enabled
on Tezos Mainnet on March 2023 with the Mumbai upgrade. Since then, Nairobi
has been activated and has improved the developer experience for every Smart Rollup
developers. &lt;/span&gt;
&lt;/span&gt;.&lt;/li&gt;
&lt;li&gt;They are &lt;strong&gt;programmable&lt;/strong&gt;. The same way you create a smart contract by
providing a script, Smart Rollup are provisioned with a so-called &lt;em&gt;kernel&lt;/em&gt; (a
WASM program) when they are created, and this program will dictate the
semantics of the rollup. This is the key property that makes Smart Rollups a
solid contendent for addressing a wild range of use cases, from generalized
Layer 2 blockchains to specialized AppChains.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;The Smart Rollup Runtime&lt;/h3&gt;
&lt;p&gt;But what is exactly a Smart Rollup, from a developer perspective? The best way
to answer this question is to provide a high-level description of the runtime
used to execute its kernel.&lt;/p&gt;
&lt;p&gt;The first component a kernel can interact with is the shared inbox. The shared
inbox contains messages coming from the Layer 1 blockchain&lt;label for=&quot;fn5&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn5&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;I want to insist on that: the inbox is &lt;em&gt;shared&lt;/em&gt; in the sense that
all the smart rollups deployed on the Layer 1 blockchain have access to all
messages sent at a given time. &lt;/span&gt;
&lt;/span&gt;. These
messages can be sent by wallet-owned accounts or smart contracts alike, but they
they must compete for Layer 1 block space to do so. This is fine until it
is not —in case of significant adoption for instance— so we equipped Smart
Rollups with an additional way to import data from the outside world: the
so-called reveal channel. At its core, the reveal channel is a primitive which
allows a kernel to retrieve an arbitrary data, provided it knows the data’s
hash. Although a smart rollup cannot guess a hash out of thin air, the
competition for block space becomes a lot less fierce when the competitors only
need 32 bytes per block each.&lt;/p&gt;
&lt;p&gt;Similar to smart contracts’ storage, a kernel can read from and write to a
“durable storage.” The key difference between the two is how a kernel does not
pay for bytes allocated in the durable storage. The rationale is the same as
for execution time: since everything happens offchain, the cost for allocating
more Layer 2 state is higher requirement for the hardware infrastructure.&lt;/p&gt;
&lt;p&gt;A kernel can send back messages to wallet-owned address and smart
contracts of the Layer 1 blockchain through the outbox. Smart Rollups being
optimistic rollups, the usual limitations apply for this communication channel.
Messages of the outbox can only be triggered on the Layer 1 blockchain once the
Layer 2 state advertising them has been published &lt;strong&gt;and&lt;/strong&gt; cannot be contested
with an interactive fraud proof anymore. For Smart Rollups, this means waiting
for two weeks as of today.&lt;/p&gt;
&lt;p&gt;Finally, Smart Rollups get free execution time for every block created by the
Layer 1 blockchain. This is a very different model than gas-bounded computation
of smart contracts, and enables new use cases. For instance, you can imagine
having a kernel reorganizing its storage across several Tezos blocks in a
transparent manner, without the need to inject any message to the shared inbox.&lt;/p&gt;
&lt;h3&gt;Smart Rollup’s Adopter Starter Kit&lt;/h3&gt;
&lt;p&gt;Implementing a kernel is only the beginning of the journey. You still need to
&lt;em&gt;execute&lt;/em&gt; it, which is more involved than deploying a smart contract.&lt;/p&gt;
&lt;p&gt;If you work on Layer 2 solutions yourself, you may know that optimistic rollups
can be tricky to operate, and it would not be reasonable for every Smart
Rollups adopter to have to reimplement from scratch their own daemon. From this
perspective, our pledge has always been to make that as easy as possible, and
to that end, we have invested significant efforts to provide a software suite
that lets you focus on your business logic. In particular, we provide&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A high-level, type safe Rust framework to implement your kernel. This makes a
very interesting alternative of the low-level, C-like API exposed by the
Smart Rollup (because that is how WASM works).&lt;/li&gt;
&lt;li&gt;A debugger to test, inspect, profile and benchmark the execution of your
kernel.&lt;/li&gt;
&lt;li&gt;A general-purpose daemon responsible to track the state of your rollup,
publish it on the Layer 1 blockchain, and defend it if need be.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;A Generalized, EVM-Compatible Layer 2 Blockchain for Tezos&lt;/h2&gt;
&lt;p&gt;The main reason why we have been eager to comme to EthCC this year is because
we are about to bring EVM compatibility to the Tezos ecosystem, thanks in large
part to Smart Rollups.&lt;/p&gt;
&lt;h3&gt;Building an EVM-compatible Blockchain&lt;/h3&gt;
&lt;p&gt;When we started working on this a few months ago, we have quickly realized that
“building an EVM-compatible rollup” does not mean much... or rather, it can be
interpreted as many different things. When you build a rollup, you are
confronted to a lot of design decisions. The first of such decisions that comes
to mind is your requirements in terms of latency: do you need a sub-second
block time, or are you fine with sticking to your Layer 1 blockchain latency?
The answer to this question has a direct impact on the decentralization of your
rollup. As of now, the de facto solution to sub-second latency is the
delegation of block production to a single entity (the sequencer). Another
interesting question is about data-availibility. Are you fine with being
limited by the block space of your Layer 1 blockchain, or do you know your
requirements will far exceed them? And what about gas price in your Layer 2
blockchain? Smart Rollups do not have a notion of gas, but if you are building
a generalized rollup emulating a full blockchain, you will need gas and a gas
price to constraint what your users can do according to your infrastructure
capacity. On the other hand, if you are building an AppChain with only a
handful of Solidity contract whose execution can only be triggered by yourself,
you probably don’t need that.&lt;/p&gt;
&lt;p&gt;What was clear to us is that we did not want to take too many decisions like
these too soon in the development process, but rather built a versatile
solution which can be adapted to end-users need. As a consequence, what we are
working on today is a twofold project&lt;label for=&quot;fn6&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn6&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;We are providing a &lt;em&gt;layered&lt;/em&gt; answer to a complicated question. &lt;/span&gt;
&lt;/span&gt;, with:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;A customizable “template” for generalized rollup, compatible with the
Ethereum ecosystem at large.&lt;/li&gt;
&lt;li&gt;A community instance of this template, focusing on &lt;em&gt;decentralization&lt;/em&gt; and
&lt;em&gt;cost-efficiency&lt;/em&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;The key idea of this approach is to leave the door open to potential adopters
whose requirements are not addressed by the community instance we are working
on. It should be straightforward to deploy a dedicated instance that is tailored
to their needs.&lt;/p&gt;
&lt;p&gt;To achieve this, we have drawn inspiration from the block proposer/block
validator paradigm. Our rollup program is divided into two “stages.” The stage
1 interprets messages coming from the shared inbox to reconstruct block
proposals. Then, the stage 2 validates these block proposals, and publishes the
Layer 2 history. From this perspective, most of the work required to support a
sequencer setup is focused on the stage 1, while manipulating gas fees is done
by modifying the stage 2 for instance.&lt;/p&gt;
&lt;h3&gt;Ensuring Compatibility with the Ethereum Ecosystem&lt;/h3&gt;
&lt;p&gt;This architecture has proven itself to implement the semantics of an
EVM-compatible Layer 2 blockchain, but this was only the beginning of the
journey. For this new chain to be usable, we also need to be compatible with
the galaxy of tools and solutions that is the Ethereum ecosystem. This is
achieved by implementing the &lt;a href=&quot;https://ethereum.org/en/developers/docs/apis/json-rpc/&quot; class=&quot;hover-mint&quot; marked=&quot;&quot;&gt;JSON RPC API&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;. To be clear, this was unknown
territory for us at the beginning of this project. The nodes participating in
the Tezos network uses a different approach&lt;label for=&quot;fn7&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn7&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;We have settled on a REST API. &lt;/span&gt;
&lt;/span&gt;. As a consequence, we are
developing a new node to fill this gap, and we are now capable of serving the
API to tools like Blockscout and MetaMask, or dApps from partners. To give you
a concrete example, &lt;a href=&quot;https://x.com/ArianeeProject/status/1681644775005364225&quot; class=&quot;hover-sky&quot; marked=&quot;&quot;&gt;we had an improvised workshop with Arianee today&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#twitter&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;
to deploy their application on our brand new Testnet&lt;label for=&quot;fn8&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn8&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-left sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;It was deployed the day before the talk, and it is still used
&lt;a href=&quot;https://testnet.explorer.etherlink.com/&quot; class=&quot;hover-rose&quot; marked=&quot;&quot;&gt;today&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;. &lt;/span&gt;
&lt;/span&gt;. As far as I
know, it worked! And &lt;a href=&quot;https://research-development.nomadic-labs.com/evm-tezos-testnet.html&quot; class=&quot;hover-lavender&quot; marked=&quot;&quot;&gt;maybe your dApp is next&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;?&lt;/p&gt;
&lt;p&gt;I mention we are building a community rollup, and I am happy to unveil today
that its name will be &lt;a href=&quot;https://www.etherlink.com&quot; class=&quot;hover-mint&quot; marked=&quot;&quot;&gt;Etherlink&amp;nbsp;&lt;span class=&quot;icon&quot;&gt;&lt;svg&gt;&lt;use href=&quot;/~lthms/img/icons.svg#external-link&quot;&gt;&lt;/use&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;What’s coming next?&lt;/h2&gt;
&lt;p&gt;Our journey to scale the Tezos ecosystem and open it to new use cases and
opportunities is far from over. In the meantime, if there are two things
that you should remember from this talk, it is that:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;EVM-compatibility is coming to Tezos this year, starting with
Etherlink&lt;label for=&quot;fn9&quot; class=&quot;sidenote-number margin-toggle&quot;&gt;&lt;/label&gt;&lt;input id=&quot;fn9&quot; type=&quot;checkbox&quot; class=&quot;margin-toggle&quot;&gt;&lt;span class=&quot;note-right sidenote note&quot;&gt;&lt;span class=&quot;footnote-p&quot;&gt;This promise was a tad optimist. The Mainnet Beta of Etherlink was
eventually launched on May 15, 2024. &lt;/span&gt;
&lt;/span&gt;.&lt;/li&gt;
&lt;li&gt;You can already test to deploy your dApp on our brand new Testnet.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Thank you very much, and see you on Tezos!&lt;/p&gt;
        
      </description>
    </item>
    
    
  </channel>
</rss>
