bartek.eth Profile picture
Jun 25 14 tweets 3 min read
By now you must have heard that Rollups derive their security from Ethereum. Even Rollups that have a centralised Sequencer. So why would you want to decentralise Sequencers ? Surely it adds complexity and can slow down the L2 block production ? 🧵👇
Let's have a look at the zkRollup as an example. They commit periodically L2 state root to Ethereum with Validity Proof. Once L2 state root is submitted to L1 all L2 transactions are valid and final so the safeness of the protocol is guaranteed /2
But security is not just safeness - it's safeness + liveness (see for more details). Can you have liveness with a centralised Sequencer ? /3
In practice liveness means that:
- individual users' transactions are not censored
- L2 Sequencer keeps producing non-empty blocks
/4
You can achieve basic censorship protection via several techniques, e.g. commit-reveal schemes or forcing transactions via L1. However when L2 sequencer stops producing blocks, things get more tricky /5
There must be a way to take over the responsibility of producing blocks from frozen (or malicious) Sequencer. This can be done via some sort of handover protocol, but it will most certainly mean that L2 will be down for some time /6
Decentralising Sequencers is certainly another strategy for achieving liveness and it may improve users' experience as one censoring (or down) Sequencer won't do much damage as there are others that will keep producing L2 blocks /7
There are two more reasons why you might want to decentralise Sequencers even though safety is guaranteed by L1. The first is to have faster L2 finality /8
With a single Sequencer, when it confirms the transaction (typically happens almost immediately) you need to trust it that it will submit it to a L1 block. With more Sequencers they need to reach consensus on the next L2 block /9
Once there is a consensus, L2 block with your transaction will be included in L1 as long as you have honest majority on L2. If this security assumption holds, your transaction should be treated as final ("L2-final"). If you are a coffee vendor, that should suffice /10
If you are a car vendor, or you simply don't trust L2 majority, just wait for L1 confirmation. You get to choose and you get to pick which security assumptions you are comfortable with. /11
Finally you may want to decentralise Sequencers if you don't want to have one single entity responsible for block production for regulatory reasons. This is obviously an important consideration but not for all apps/use cases. Again - app-specific Rollups have a choice here /12
There is a discussion going on on @StarkWareLtd forums regarding #StarkNet decentralisation: both "propose-and-vote" protocols like Tendermint and "longest-chain" protocols like Ouroboros are considered. Check their forum for more details: community.starknet.io /13
The TL/DR - decentralising Sequencer is not strictly necessary for the security of a Rollup but it may improve liveness, adds L2 finality and splits the responsibility (and potentially - rewards, including MEV) of producing L2 blocks amongst many participants. End /14

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with bartek.eth

bartek.eth Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @bkiepuszewski

Jun 23
Security = safety + liveness. Most users intuitively understand safety (no fraudulent transactions, no double-spends, no minting of tokens out of thin air) and they treat liveness as a second-class citizen. Here's few examples why they should not: 🧵👇
In many PoS protocols acquiring 1/3 of the current stake allows you to freeze the entire chain. One some chains that's just one whale validator. If you have a malicious intent to freeze the chain, instead of acquiring the stake you may also try bribing validators /2
Freezing your assets may look less scary than stealing your assets, but if the assets are frozen/stuck forever with no hope of retrieving them the effect is exactly the same - you lost everything /3
Read 12 tweets
Jun 5
This is the second part of the thread on what happens if L2 does not post data on-chain. For the first part see: . Now let’s talk about L2 transaction finality 🧵👇
When data is posted on-chain, this data can be considered final. Neither OR nor ZKR can change it. This means that L2 transactions are final on a Rollup when data is posted. You can see for yourself how often data is posted: /2
Read 17 tweets
Jun 3
What does it mean that the L2 "derives its security from Ethereum" ? On ETH you can run unstoppable smart contracts with transparent and verifiable logic. These can act as independent courts that will resolve a potential dispute. Examples: 👇🧵
ZK Rollups with validity proofs. You do not need to trust Sequencer to post a valid block - L1 smart contract will verify that the block is valid. All data is available on-chain, you can always reconstruct full L2 state from it if needed /2
Optimistic Rollups with fraud proofs. These are more nuanced, now Sequencer can post an invalid block but independent (!) observers can dispute it and L1 will judge who is right and who is wrong. Again, all data is on-chain, anyone can always use it to see if dispute is needed /3
Read 9 tweets
May 27
Rollups put tx data on L1 chain. This is costly now (note: fees will go down after EIP 4844). Let's see what can go wrong if data is not posted on-chain 🧵
Imagine Optimistic Rollup that is not a Rollup. In this construction Sequencer is not obliged to post tx data on-chain, but it does post L2 state roots, like in a typical Optimistic Rollup /2
How independent Validators can know that this state root is valid ? If it is not, they should post fraud proof. But w/out tx data they just don't know, state root may be valid or not /3
Read 15 tweets
May 16
In the wake of $Terra ecosystem collapse there is a lot of discussion how this may have effected the rest of @cosmos ecosystem and how the concept of "sovereign blockchains" and IBC is built to prevent the crash of one chain to affect other chains. But is it really so ? 🧵
Any multi-chain communication protocol ultimately relies on the "destination" chain reacting to something happening on the "source" chain. Typical case - you lock some tokens on a "source" chain and on the "destination chain" you will have some tokens minted /2
Obviously if the message on the source chain can be forged, the destination chain will be fooled, if there is no mechanism on the destination chain to validate the message from the source chain. So, what are the options for the destination chain to validate messages ? /3
Read 16 tweets
May 12
Is your bridge censorship-resistant ?

Most cross-chain bridges operate in a lock-mint mode (you lock an asset on a source chain and mint a “wrapped”, or synthetic asset on the destination chain) 🧵🌉
Good bridge should never mint a synthetic w/out you locking your asset first and should never allow you to lock an asset w/out minting the synthetic /2
The second property requires censorship-resistant bridge infrastructure (because you want to make sure that the mint request after a lock cannot be censored) /3
Read 13 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(