header-langage
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
Scan to Download the APP

Is the “unconditional safe withdrawal” mentioned by Buterin really only possible with Rollup?

2024-01-17 10:58
Read this article in 15 Minutes
总结 AI summary
View the summary 收起
Original Title: "Correcting Vitalik's Inaccurate Statements on DA and Anti-Censorship Withdrawals"
Original Author: Faust, Web3 Enthusiast


On January 16, 2024, in a tweet initiated by Daniel Wang, founder of the Ethereum Layer2 project Taiko, and interacting with AA wallet Soul Wallet founder Zeng Jiajun, Vitalik said: "The key to Rollup is unconditional security: even if you are targeted by everyone, you can still withdraw your assets. If DA relies on external systems (outside of Ethereum), this cannot be achieved."




Due to Vitalik's discussion of his views on Validium in the latter half of this tweet (Validium refers to ZK layer 2 that does not require Ethereum to implement DA data publishing), it has received a lot of attention (previously, there were rumors in the community that the Ethereum Foundation believed Layer2=Rollup).


(Note: The DA concept discussed in the Ethereum community refers to whether you can access the new data generated on Layer2, not whether you can retrieve historical data from a long time ago. If new data is not published on the Ethereum chain, Layer2 nodes may not be able to parse the latest L2 blocks smoothly.)


However, the "Ethereum Layer2 Definition Debate" and "DA War" have long been heard by countless people. This article does not intend to discuss such topics, but aims to focus more on the first half of Vitalik's speech, which is the remarks mentioned at the beginning of this article.


Vitalik states here that Rollup can achieve trustless and censorship-resistant withdrawals, even if all Layer2 nodes are not cooperating with you, you can still withdraw your assets from Layer2. Moreover, he points out that only Rollup can achieve this "unconditional secure withdrawal", while Layer2 relying on other DA data publishing methods cannot do so.


However, in reality, Vitalik's statement is not precise.


Firstly, only assets bridged from Layer1 to Layer2 can be transferred back to the ETH chain. Native assets on Layer2 cannot be transferred to Layer1 directly (unless a bridging contract for native Layer2 assets is deployed on Layer1).



If, as Vitalik said, "everyone is against you," you can only withdraw the L1-L2 bridged assets, but you cannot withdraw your "Layer2 native token". At this point, whether you withdraw normally, forcibly withdraw, or use the Escape Hatch, it will not work.


Next, "No-Condition Secure Withdrawals" do not have to rely on the DA system. Early Layer2 solutions before Rollup, such as Plasma, which implements DA data publishing on the Ethereum chain, also allow users to submit asset proofs through historical data and safely escape Layer2 in the event of a DA system failure (i.e. data withholding occurs, and except for the sorter/committee, no one else can receive new transaction data/state transition information).


In other words, the secure withdrawal of Plasma does not depend on the DA system, and anti-censorship withdrawal does not necessarily require dependence on the DA system (but historical data must be accessible); moreover, these words were spoken by Dankrad (the proposer of Danksharding at the Ethereum Foundation) and are widely accepted as true.




Reference to previous articles on Web3 by Geek: "Data withholding and fraud proof: The reason why Plasma does not support smart contracts."


Secondly, aside from Celestia and Blobstream, the issue of data withholding/DA failure can be resolved even without using ETH as the DA layer. Specifically, the Arbitrum team and the Redstone team are working on the "data availability challenge", which allows the sequencer to only publish a DA commitment (which is essentially a data hash) on the chain, declaring that the data has been published off-chain. If someone is unable to obtain the newly generated data off-chain, they can initiate a challenge against the on-chain DA commitment, requiring the sequencer to disclose the data on the chain.


This mechanism design is very concise, and does not rely on third-party DAs such as Celestia, Avail, or EigenDA. Only the Layer2 project needs to set up off-chain DAC nodes, which can be called the Celestia killer.


In the following text, the author intends to interpret Vitalik's "unconditional secure withdrawal" and the "data availability challenge" that he did not mention, and try to tell everyone: why are third-party DA projects such as Celestia, Avail, and EigenDA not the necessary options for Layer2 that are not DA offchain and pursue security?


In addition, we previously discussed the "Bitcoin Layer2 Risk Assessment Index" in an article, and mentioned that resistance to censorship is more fundamental and critical than DA system withdrawals. Today's article will further explain this viewpoint.



Escape Pod: "Unconditional Safe Withdrawal" in Viatlik's Mouth



Actually, Vitalik's words are not difficult to infer, he is talking about the escape hatch of ZK Rollup. The escape hatch, also known as the Escape Hatch, is a withdrawal mode that can be triggered directly on Layer1. Once triggered, the Rollup contract will enter a frozen state, refuse to accept new data submitted by the Sequencer, and allow anyone to present a Merkle Proof to prove their asset balance on Layer2, and transfer their own assets from the Layer2 official bridge deposit address.



More specifically, the escape hatch mode is a "trustless withdrawal mechanism" that can be manually triggered by the user on Layer 1 after their transactions have been rejected by the Layer 2 sequencer for an extended period of time.


However, before activating the escape pod mode, users rejected by the sorter must first call the forced withdrawal function in the Rollup contract on Layer1, initiate a forced withdrawal request, and throw an event to let Layer2 nodes know: someone has initiated a forced withdrawal request.



(As Layer2 nodes all run the Ethereum geth client and receive Ethereum blocks, they can listen for the triggering of force withdrawal events.)


If a forced withdrawal request is ignored for a long time, users can trigger the escape hatch mode (Loopring Protocol defaults to a waiting period of 15 days, while the StarkEx solution is 7 days). Then, the operation process is the same as discussed at the beginning of this article. Users submit the corresponding Merkle Proof of their assets to prove their asset status on Layer2, and then withdraw their assets from the relevant Rollup contract.


However, to construct a Merkle Proof, it is necessary to first obtain the complete L2 state, and to request data from an L2 full node. If the extreme situation described by Vitalik occurs and there is no Layer2 node to cooperate with you, you can start a Layer2 full node yourself and obtain historical data published by the L2 sorter on the Ethereum network. You can synchronize from the Layer2 genesis block one by one until you calculate the final state and construct the Merkle Proof, which allows you to safely withdraw funds through the escape hatch.



Obviously, at this point, the "anti-censorship" is equivalent to Ethereum/Layer1 itself. As long as an Ethereum full node provides you with historical data from a long time ago, it is close to being trustless.


However, after EIP-4844, Ethereum full nodes will automatically discard some historical data, causing Layer2 historical data that exceeds 18 days to no longer be backed up by ETH nodes across the network. At that time, the anti-censorship of withdrawal from the escape hatch will no longer be as close to trustless as it is today.


After 4844, we need to trust Ethereum nodes that store all historical data, which are limited in number and willing to provide data to you (excluding Layer2 native nodes for now). At that time, the trust assumption for searching Layer1 historical data or withdrawing from Layer2 escape hatch will change from today's trustless or 0 to 1/N, which means that out of N nodes, one can provide data for you.































Welcome to join the official BlockBeats community:

Telegram Subscription Group: https://t.me/theblockbeats

Telegram Discussion Group: https://t.me/BlockBeats_App

Official Twitter Account: https://twitter.com/BlockBeatsAsia

This platform has fully integrated the Farcaster protocol. If you have a Farcaster account, you canLogin to comment
Choose Library
Add Library
Cancel
Finish
Add Library
Visible to myself only
Public
Save
Correction/Report
Submit