
Sửa lại phát ngôn thiếu chính xác của Vitalik về vấn đề DA và việc rút tiền chống kiểm duyệt
Tuyển chọn TechFlowTuyển chọn TechFlow

Sửa lại phát ngôn thiếu chính xác của Vitalik về vấn đề DA và việc rút tiền chống kiểm duyệt
Việc rút tiền an toàn của Plasma không phụ thuộc vào hệ thống DA, và việc rút tiền chống kiểm duyệt cũng không nhất thiết phải phụ thuộc vào hệ thống DA.
Tác giả: Faust, Geeker web3
Vào ngày 16 tháng 1 năm 2024, dưới một bài đăng trên X do Daniel Wang, người sáng lập dự án Layer2 Ethereum Taiko khởi xướng và có sự tương tác từ Zeng Jiajun, người sáng lập ví AA Soul Wallet, Vitalik nói: “Chìa khóa của Rollup là đảm bảo an toàn vô điều kiện: ngay cả khi bị toàn bộ thế giới chống lại, bạn vẫn có thể rút tài sản của mình ra. Nếu DA phụ thuộc vào hệ thống bên ngoài (ngoài Ethereum), điều này sẽ không thể thực hiện được.”


Do nửa sau bài đăng của Vitalik đề cập đến quan điểm của ông về Validium (Validium là giải pháp ZK Layer2 không sử dụng Ethereum để công bố dữ liệu DA), nên nhận được rất nhiều sự chú ý (trước đó trong cộng đồng đồn đại rằng Quỹ Ethereum coi Layer2 = Rollup).
(Cần nhấn mạnh: Khái niệm DA mà cộng đồng Ethereum bàn đến là liệu bạn có thể truy cập được dữ liệu mới phát sinh trên Layer2 hay không, chứ không phải liệu bạn có thể tìm kiếm lại dữ liệu lịch sử lâu đời hay không. Nếu không công bố dữ liệu mới trên chuỗi Ethereum, các nút Layer2 có thể không phân tích thành công khối L2 mới nhất)
Tuy nhiên, "cuộc tranh luận định nghĩa Layer2 Ethereum" và "cuộc chiến DA" đã được quá nhiều người biết đến; bài viết này không định thảo luận bất kỳ chủ đề nào như vậy, mà tập trung nhiều hơn vào nửa đầu lời phát biểu của Vitalik, chính là câu nói ở phần mở đầu bài viết.
Vitalik khẳng định rằng Rollup có thể thực hiện việc rút tiền chống kiểm duyệt một cách phi tin cậy — ngay cả khi mọi nút Layer2 đều không hợp tác với bạn, bạn vẫn có thể rút tài sản khỏi Layer2; hơn nữa, ông chỉ ra rằng chỉ có rollup mới có thể đạt được loại “rút tiền an toàn vô điều kiện” này, còn các giải pháp Layer2 dựa vào phương thức công bố dữ liệu DA khác thì không thể làm được điều này.
Nhưng thực tế, lời phát biểu của Vitalik không hoàn toàn chặt chẽ.
Thứ nhất, chỉ những tài sản được cầu nối từ Layer1 sang Layer2 mới có thể di chuyển ngược trở lại chuỗi ETH, còn các tài sản gốc thuần túy trên Layer2 thì không thể di chuyển lên Layer1 (trừ khi tài sản gốc Layer2 đã triển khai hợp đồng cầu nối trên Layer1).

Nếu như lời Vitalik nói, “mọi người đều chống lại bạn”, bạn chỉ có thể rút được tài sản đã được cầu nối L1-L2, nhưng không thể rút “Token gốc Layer2” của riêng bạn, lúc này dù dùng rút bình thường, rút ép buộc (forced withdraw), hay thoát qua lối thoát hiểm (Escape Hatch) cũng đều vô dụng.
Thứ hai, “việc rút tiền an toàn không cần điều kiện” không nhất thiết phải phụ thuộc vào hệ thống DA. Các giải pháp Layer2 thời kỳ đầu trước Rollup, như Plasma thực hiện DA bên ngoài chuỗi Ethereum, khi hệ thống DA gặp lỗi (tức là xảy ra tình trạng giữ dữ liệu — data withholding, ngoại trừ sequencer/hội đồng, không ai khác có thể nhận được dữ liệu giao dịch/trạng thái mới), vẫn cho phép người dùng gửi bằng chứng sở hữu tài sản từ dữ liệu lịch sử để an toàn rời khỏi Layer2.
Nói cách khác, việc rút tiền an toàn của Plasma không phụ thuộc vào hệ thống DA, việc rút tiền chống kiểm duyệt cũng không nhất thiết phải phụ thuộc vào hệ thống DA (miễn là dữ liệu lịch sử có thể truy cập được); hơn nữa, đây là chính Dankrad (người đề xuất Danksharding) của Quỹ Ethereum đã trực tiếp nói ra, đồng thời đây cũng là chân lý phổ quát.


Tham khảo bài viết trước đây của Geeker Web3:《Giữ dữ liệu và bằng chứng gian lận: Lý do Plasma không hỗ trợ hợp đồng thông minh》
Thứ ba, bỏ qua Celestia và Blobstream, vấn đề giữ dữ liệu/DA lỗi, ngay cả khi không dùng ETH làm lớp DA, vẫn có thể giải quyết được. Chỉ cần xét đến cơ chế “thách thức tính sẵn sàng dữ liệu” mà đội Arbitrum và Redstone đang triển khai: cho phép sequencer chỉ công bố một cam kết DA (DA Commitment – thực chất là datahash) trên chuỗi, tuyên bố đã công bố dữ liệu bên ngoài chuỗi. Nếu có ai không thể lấy được dữ liệu mới tạo ra bên ngoài chuỗi, họ có thể thách thức cam kết DA trên chuỗi, yêu cầu sequencer tiết lộ dữ liệu lên chuỗi.
Cơ chế này rất gọn gàng, và không cần phụ thuộc vào các hệ thống DA bên thứ ba như Celestia, Avail hay EigenDA; chỉ cần dự án Layer2 tự thiết lập các nút DAC ngoài chuỗi là đủ, được mệnh danh là "kẻ giết Celestia".
Trong phần sau, tác giả sẽ giải thích về “việc rút tiền an toàn không điều kiện” mà Vitalik nhắc đến và cơ chế “thách thức tính sẵn sàng dữ liệu” mà ông không đề cập, nhằm lý giải: Tại sao các dự án DA bên thứ ba như Celestia, Avail, EigenDA lại không phải lựa chọn bắt buộc đối với các Layer2 offchain theo đuổi tính an toàn?
Hơn nữa, trước đây chúng tôi từng nói trong bài viết trình bày về “chỉ số đánh giá rủi ro Layer2 Bitcoin” rằng việc rút tiền chống kiểm duyệt còn cơ bản và then chốt hơn cả hệ thống DA, và bài viết hôm nay sẽ tiếp tục giải thích sâu thêm quan điểm này.

Lối thoát hiểm: “Việc rút tiền an toàn không điều kiện” trong lời nói của Vitalik

Thực ra, lời nói của Vitalik không khó suy luận, chính là đang nói về Escape Hatch của ZK Rollup. Escape Hatch (hay còn gọi là lối thoát hiểm) là một chế độ rút tiền được kích hoạt trực tiếp trên Layer1. Khi chế độ này được kích hoạt, hợp đồng Rollup sẽ chuyển sang trạng thái đóng băng, từ chối nhận dữ liệu mới do Sequencer gửi lên, và cho phép bất kỳ ai cung cấp Merkle Proof để chứng minh số dư tài sản của họ trên Layer2, từ đó rút tài sản khỏi địa chỉ ký quỹ cầu nối chính thức của Layer2.

Nói rõ hơn, chế độ Escape Hatch là một “cơ chế rút tiền phi tin cậy” do người dùng tự kích hoạt trên Layer1, khi giao dịch của họ bị sequencer Layer2 từ chối trong thời gian dài.
Tuy nhiên, trước khi kích hoạt chế độ Escape Hatch, người dùng bị sequencer từ chối phải gọi hàm rút tiền ép buộc (force withdrawal) trong hợp đồng Rollup trên Layer1, gửi yêu cầu rút tiền ép buộc và phát ra một sự kiện để các nút Layer2 biết: có người đã gửi yêu cầu rút tiền ép buộc.


(Vì các nút Layer2 đều chạy client geth của Ethereum, nhận được các khối Ethereum, nên có thể lắng nghe sự kiện rút tiền ép buộc được kích hoạt)
Nếu yêu cầu rút tiền ép buộc bị phớt lờ trong thời gian dài, người dùng có thể chủ động kích hoạt chế độ Escape Hatch (giao thức Loopring mặc định thời gian chờ là 15 ngày,方案 StarkEx là 7 ngày). Sau đó, quy trình hoạt động giống như phần mở đầu bài viết đã nói: người dùng nộp Merkle Proof tương ứng với tài sản của mình, chứng minh tình trạng tài sản trên Layer2, rồi rút tài sản khỏi hợp đồng Rollup liên quan.
Nhưng để xây dựng Merkle Proof, trước tiên cần biết được trạng thái L2 đầy đủ, tức là phải yêu cầu dữ liệu từ một nút L2 đầy đủ. Nếu xảy ra trường hợp cực đoan như Vitalik nói, không có nút Layer2 nào phối hợp với bạn, bạn có thể tự khởi động một nút đầy đủ Layer2, thông qua mạng Ethereum lấy dữ liệu lịch sử mà sequencer L2 đã công bố trên Ethereum, đồng bộ từng khối từ khối khởi nguyên Layer2 cho đến khi tính toán ra trạng thái cuối cùng, tạo ra Merkle Proof, và qua đó rút tiền an toàn bằng Escape Hatch.

Rõ ràng, lúc này “khả năng chống kiểm duyệt” tương đương với bản thân Ethereum/Layer1. Chỉ cần có một nút đầy đủ Ethereum cung cấp dữ liệu lịch sử cũ cho bạn là được, gần như đạt mức phi tin cậy.
Nhưng sau EIP-4844, các nút đầy đủ Ethereum sẽ tự động loại bỏ một phần dữ liệu lịch sử, khiến dữ liệu lịch sử Layer2 trên 18 ngày không còn được sao lưu toàn mạng trên các nút ETH, lúc đó khả năng chống kiểm duyệt khi rút tiền qua Escape Hatch sẽ không còn gần mức Trustless như hiện tại.
Sau 4844, chúng ta cần tin tưởng rằng một số lượng hạn chế các nút Ethereum lưu trữ toàn bộ dữ liệu lịch sử sẵn sàng cung cấp dữ liệu cho bạn (các nút gốc Layer2 thường rất ít, tạm thời không tính đến). Lúc đó, giả định tin cậy của việc truy xuất dữ liệu lịch sử Layer1 / rút tiền qua Escape Hatch Layer2 sẽ thay đổi từ mức Trustless hoặc 0 hiện tại thành 1/N, tức là giả định rằng trong N nút sẽ có ít nhất 1 nút cung cấp dữ liệu cho bạn.
Đội EthStorage dường như đang nỗ lực mở rộng con số N này, khuyến khích nhiều nút hơn lưu trữ dữ liệu lịch sử lâu dài. Nếu mẫu số 1/N đủ lớn, phân số vẫn gần bằng 0, gần như không thêm giả định tin cậy nào. Điều này có thể phần nào giải quyết vấn đề truy xuất dữ liệu lịch sử sau 4844.

Mối quan hệ giữa Escape Hatch và DA — Tấn công tống tiền đối với Validium
Ở đây chúng ta tóm tắt lại một lần nữa: Escape Hatch cho phép bạn thông qua Merkle Proof chứng minh tình trạng tài sản Layer2 của mình, để rút tiền một cách phi tin cậy trên Layer1.
Lý do Vitalik đề cập rằng việc rút tiền liên quan đến an toàn tài sản cần có DA làm tiền đề, chủ yếu là vì giải pháp Validium có thể không thể rút tiền do “tấn công giữ dữ liệu” (chỉ công bố stateroot, không công bố dữ liệu giao dịch tương ứng).
Nguyên lý cụ thể là: sequencer có thể giữ lại dữ liệu giao dịch, chỉ gửi lên chuỗi Ethereum một Merkle Root (Stateroot), sau đó thông qua bằng chứng hợp lệ cố gắng làm cho Stateroot mới được xác nhận là hợp lệ.


Lúc này, mọi người đều không biết trạng thái đầy đủ tương ứng với Stateroot hợp lệ, không thể xây dựng Merkle Proof tương ứng để thực hiện rút tiền qua Escape Hatch. Trừ khi sequencer chịu tiết lộ dữ liệu cho bạn, bạn mới có thể rút tiền, điều này được một kỹ sư trưởng của Arbitrum ví von sinh động là “vấn đề tiền chuộc” (cá nhân tôi thích gọi là tấn công tống tiền hơn).

Nhưng lý do Validium với DA offchain dễ xảy ra “tấn công tống tiền” là do thiết kế cơ chế của nó chưa hoàn thiện, nếu đưa vào cơ chế thách thức liên quan đến hành vi rút tiền, hoặc đưa vào thách thức tính sẵn sàng dữ liệu, về mặt lý thuyết có thể giải quyết được vấn đề tống tiền.
By the way, như đã đề cập trước đó, Plasma, cho phép người dùng rút tiền thông qua dữ liệu lịch sử lâu đời, sẽ không gặp phải “tấn công tống tiền” như Validium, trong khi Plasma cũng có DA offchain (DA offchain + xác minh bằng chứng gian lận onchain).
Tài liệu tham khảo:Giữ dữ liệu và bằng chứng gian lận: Lý do Plasma không hỗ trợ hợp đồng thông minh
Do đó, việc rút tiền chống kiểm duyệt / Escape Hatch không nhất thiết phải phụ thuộc vào DA, mọi thứ đều phụ thuộc vào thiết kế cơ chế quy trình rút tiền. Lý do Vitalik cho rằng việc rút tiền chống kiểm duyệt gắn liền với DA là vì ông xuất phát từ các giải pháp sẵn có như Validium, Rollup dạng hợp đồng thông minh, trong đầu đã hình thành một kiểu tư duy định kiến.
Nhưng điều này không có nghĩa là tất cả các Layer2 offchain trên thế giới đều gặp phải vấn đề giống Validium, không có nghĩa Rollup dạng hợp đồng thông minh là điểm cuối của mọi thứ, sự đổi mới luôn có thể xảy ra (ví dụ như thách thức tính sẵn sàng dữ liệu được đề cập sau này).
Ngược lại, nếu giải pháp Layer2 của bạn từ đầu đã không tính đến thiết kế Escape Hatch, rút tiền chống kiểm duyệt, thì Layer2 của bạn chắc chắn chưa đủ phi tin cậy / an toàn. Nói cách khác, DA tốt và hệ thống bằng chứng là điều kiện đủ để đạt được việc rút tiền chống kiểm duyệt, nhưng không phải điều kiện cần.
Vì vậy, trong các bài viết trước đây của chúng tôi, khi đề cập đến hiệu ứng thùng gỗ (một短板 kéo cả thùng) của Layer2, chúng tôi cho rằng việc rút tiền chống kiểm duyệt là điểm yếu cơ bản hơn cả DA và hệ thống bằng chứng, là có căn cứ.
Tài liệu tham khảo:《Phân tích mô hình an toàn và chỉ số rủi ro Layer2 Bitcoin/Ethereum bằng lý thuyết thùng gỗ》

Kẻ giết Celestia: Thách thức tính sẵn sàng dữ liệu của Arbitrum và Redstone
Sau khi nói về mối quan hệ giữa Escape Hatch và DA, giờ hãy quay lại bản thân DA: Layer2 cũng không nhất thiết phải công bố dữ liệu DA lên Ethereum để tránh tình trạng sequencer “giữ dữ liệu”.
Redstone, Arbitrum, Metis và các bên khác đều đang nghiên cứu cơ chế “thách thức tính sẵn sàng dữ liệu”, cho phép sequencer chỉ công bố Cam kết DA (datahash) + Stateroot trên chuỗi, tuyên bố đã công bố tham số chuyển trạng thái (dữ liệu giao dịch) bên ngoài chuỗi. Nếu có ai không thể lấy được dữ liệu mới tạo ra bên ngoài chuỗi, họ có thể thách thức Cam kết DA trên chuỗi, yêu cầu sequencer tiết lộ dữ liệu lên chuỗi.

Nếu sau khi bị thách thức, sequencer không kịp thời công bố dữ liệu trên chuỗi ETH, thì datahash/commitment trước đó của nó sẽ bị coi là vô hiệu, stateroot liên quan cũng sẽ vô hiệu. Rõ ràng, điều này trực tiếp giải quyết được vấn đề giữ dữ liệu (chỉ công bố stateroot, không công bố dữ liệu giao dịch tương ứng).
Hiển nhiên, so với các Layer2 offchain như Validium và Optimium, cơ chế này bổ sung thêm “thách thức tính sẵn sàng dữ liệu”. Nhưng chỉ cần một thiết kế đơn giản như vậy, đã đủ tạo ra sự cạnh tranh mạnh mẽ đối với Celestia, Avail, EigenDA và các bên khác. Tự thiết lập một DAC, đưa vào thách thức tính sẵn sàng dữ liệu, thì không cần phải phụ thuộc vào Celestia nữa.
Tuy nhiên, thách thức tính sẵn sàng dữ liệu cũng có những vấn đề kinh tế cần giải quyết. Người sáng lập ZkSync khi tranh luận với kỹ sư hàng đầu của Arbitrum đã chỉ ra rằng, về mặt lý thuyết, thách thức tính sẵn sàng dữ liệu dễ bị tấn công DoS. Ví dụ, sequencer nhanh chóng công bố hàng ngàn cam kết DA trên chuỗi, sau đó giữ lại dữ liệu đầy đủ tương ứng. Nó có thể tiêu hao hết vốn của mọi người thách thức theo cách này, rồi công bố một khối vô hiệu, đánh cắp tài sản người dùng.

Tất nhiên, giả định này quá cực đoan, về bản chất là một vấn đề lý thuyết trò chơi giữa kẻ tấn công và người phòng thủ, và thực tế, sequencer dễ bị các kẻ thách thức ác ý tấn công DoS hơn, bị thách thức liên tục rồi thoái hóa thành Rollup. Tình huống đối đầu giữa hai bên liên quan đến thách thức tính sẵn sàng dữ liệu thực sự rất thú vị, thiết kế cơ chế tương ứng sẽ đầy đủ thử thách trí tuệ của các đội Arbitrum, Redstone và Metis (chủ đề này có thể viết thành một bài riêng biệt).

Dù sao đi nữa, thách thức tính sẵn sàng dữ liệu sẽ mang lại nhiều đổi mới hơn cho thiết kế giải pháp DA của Layer2, và giải pháp này cũng sẽ để lại dấu ấn đậm nét trong hệ sinh thái Layer2 Bitcoin.
Chào mừng tham gia cộng đồng chính thức TechFlow
Nhóm Telegram:https://t.me/TechFlowDaily
Tài khoản Twitter chính thức:https://x.com/TechFlowPost
Tài khoản Twitter tiếng Anh:https://x.com/BlockFlow_News










