Amber avatar
Coin98 Insights
Nơi chia sẻ tất cả những kiến thức Crypto từ cơ bản đến nâng cao, kinh nghiệm đầu tư Bitcoin và các hình thức đầu tư tiền điện tử khác.

EIP-4844 là gì? Tiền đề cho bản nâng cấp Danksharding của Ethereum

EIP-4884 là bước chuẩn bị quan trọng cho Ethereum trong lộ trình phát triển để nâng cấp hoàn toàn lên Full Danksharding. Đề xuất này còn được gọi là Proto-Danksharding, được đặt dựa theo tên hai nhà phát triển của Ethereum là Protolambda và Dankrad Feist.
Amber avatar
Vy Bùi
8 min read
Published Nov 07 2023
Updated Nov 07 2023
Amber media

Vậy EIP-4844 là gì? Tại sao EIP-4844 ra đời và nó giúp giải quyết vấn đề gì? EIP-4844 tác động như thế nào lên Ethereum và Rollup? 

EIP-4844 là gì?

EIP-4844 (hay Proto-Danksharding) là bản đề xuất tập trung vào việc giảm chi phí đăng các gói giao dịch (transaction batch) cho giao thức rollup, bằng cách ra mắt một loại định dạng giao dịch mới gọi là “blob” (binary large object), nhờ đó giảm phí giao dịch cho người dùng Layer 2

Thông qua blob, Ethereum cung cấp cho các rollup một kho lưu trữ dữ liệu tạm thời, giúp tăng yêu cầu lưu trữ trên khối (block) đồng thời góp phần thúc đẩy khả năng mở rộng cho mạng lưới.

EIP-4844 là cập nhật quan trọng, tạo tiền đề cho bản nâng cấp lên Full Danksharding của Ethereum. Nó đã được thử nghiệm trên mạng devnet vào tháng 8/2022 và dự kiến triển khai trên mạng mainnet của Ethereum vào Q1/2024.

advertising
website eip 4844
Website chính thức của EIP-4844: https://www.eip4844.com

Bối cảnh

Một số thuật ngữ liên quan

Trước khi đi sâu vào nội dung bài viết, người đọc cần hiểu một số thuật ngữ sau đây:

Sharding: Kế hoạch mở rộng Ethereum bằng cách chia tách blockchain thành các đơn vị nhỏ gọi là “shard chain”. Mỗi shard chain sẽ chịu trách nhiệm xử lý một phần trong tổng số dữ liệu giao dịch trên mạng. Các shard chain hoạt động song song và độc lập lẫn nhau. 
Danksharding: Kiến trúc sharding tập trung vào rollup để tăng khả năng mở rộng cho blockchain Ethereum. Danksharding giới thiệu một định dạng giao dịch mới gọi là “blob”, nhằm cung cấp nhiều không gian lưu trữ dữ liệu hơn cho các giao thức rollup. 
Rollup: Giải pháp mở rộng Layer 2 giúp tăng thông lượng của blockchain Layer 1 (base layer) mà không thay đổi giao thức của nó. Các rollup thực thi giao dịch (tính toán & lưu trữ và chuyển đổi trạng thái) ngoài chuỗi (off-chain). Sau đó gom lại thành các gói dữ liệu (batch) và xuất bản lên Layer 1, dữ liệu này có thể được lưu trữ on-chain hoặc off-chain tùy lựa chọn của giao thức rollup.
Data Availability (DA): Tính sẵn có của dữ liệu, ám chỉ việc dữ liệu giao dịch trên rollup đã sẵn sàng để được xuất bản (publishing) lên Layer 1 và cho phép các node tải xuống.
Calldata: Tính năng trong giao dịch của Ethereum, cho phép người gửi thêm các thông tin bổ sung đính kèm với giao dịch đó. Dữ liệu trong calldata được lưu trữ vĩnh viễn, không thể thay đổi và được tính theo đơn vị byte.

EIP-4844 ra đời như thế nào?

Năm 2018, Vitalik Buterin (nhà sáng lập Ethereum) ra mắt kế hoạch mở rộng mạng lưới Ethereum thông qua việc triển khai sharding. Ethereum cũng sẽ chuyển đổi từ monolithic blockchain thành modular blockchain, trong đó: 

Base Layer (Beacon Chain) đảm nhiệm việc xáo trộn validator trên các shard chain theo mỗi epoch, chứ không hỗ trợ thực thi giao dịch.
Các shard chain (hay execution shard) là nơi thực thi code, bao gồm các validator (được xáo trộn giữa các shard theo mỗi epoch) giúp xác thực, xử lý và ghi giao dịch lên base layer.
thiết kế sharding cũ ethereum
Thiết kế sharding với các shard chain trong lộ trình phát triển cũ của Ethereum

Tuy nhiên, kiến trúc này gây ra một số hạn chế như shard dễ bị tấn công do có ít node hơn; khó khăn kỹ thuật trong việc xáo trộn validator giữa các shard… 

Cùng với việc các giải pháp Layer 2 (tiêu biểu là công nghệ rollup) phát triển nhanh chóng và chứng minh được khả năng mở rộng của nó đối với Ethereum. Đến đầu năm 2020, Vitalik thông báo lộ trình phát triển mới gọi là Danksharding tập trung vào các rollup xây dựng trên Ethereum. Điều này đồng nghĩa với việc từ bỏ kiến trúc shard chain trong lộ trình sharding cũ. 

Tuy nhiên, khi Danksharding trở thành tầm nhìn dài hạn của Ethereum, nó cần phải được chuẩn bị kỹ càng theo từng giai đoạn và từng module. Và Proto-Danksharding (EIP-4844) là bước đầu tiên trong kế hoạch tổng thể này.

EIP-4844 giải quyết vấn đề gì?

Hiện tại, đa phần các giao thức Rollup đều sử dụng Ethereum là data availability (DA) layer. 

Các sequencer của rollup sẽ sắp xếp thứ tự giao dịch mà người dùng thực hiện trên rollup, sau đó gom thành các gói giao dịch (transaction batch) và định kỳ gửi lên Ethereum dưới dạng calldata.

Tuy nhiên, các gói dữ liệu trong calldata sẽ được lưu trữ vĩnh viễn trên mạng lưới Ethereum và không thể thay đổi. Dữ liệu giao dịch trên rollup ngày càng nhiều hơn sẽ làm trạng thái (state growth) của mạng lưới Ethereum lớn lên nhanh chóng, yêu cầu node phải mở rộng không gian lưu trữ dữ liệu hơn nữa.

Trong trường hợp xấu nhất, khi nhiều node không đủ khả năng đầu tư phần cứng để chạy node cho Ethereum, tầm nhìn phân quyền (decentralized) của mạng lưới sẽ bị ảnh hưởng theo hướng tiêu cực.

Nhìn chung, điều này làm cản trở khả năng mở rộng của các rollup khi người dùng và nhu cầu sử dụng rollup ngày càng tăng. Đồng thời, người dùng cũng phải trả nhiều chi phí hơn khi tương tác với các giao thức rollup.

Vì vậy, EIP-4844 ra đời nhằm giải quyết các vấn đề về chi phí và khả năng mở rộng của rollup, từ đó giúp nó linh hoạt hơn trong việc thiết kế mô hình kinh tế. Ở khía cạnh dài hạn, EIP-4844 còn là tiền đề cho Fully Danksharding.

EIP-4844 hoạt động như thế nào?

Thông qua nâng cấp EIP-4844 và định dạng giao dịch blob, Ethereum cung cấp một không gian lưu trữ chuyên dụng cho các rollup để xuất bản dữ liệu giao dịch. 

Các dữ liệu này sẽ được lưu trữ tạm thời trên lớp đồng thuận (consensus layer) và được xoá bỏ khỏi giao thức Ethereum sau thời gian khoảng 18 ngày (tương đương 4,096 epoch).
Mỗi blob tương đương với 128 kB.

Vì tính chất lưu trữ tạm thời, Ethereum cũng tạo ra thị trường phí mới gọi là phí gas dữ liệu (data gas market fee) để định giá các giao dịch blob một cách riêng biệt với các giao dịch tiêu chuẩn thông thường. 

giao dịch blob eip 4844
Cách hoạt động của giao dịch blob trong nâng cấp EIP-4844

Điều này đồng nghĩa với việc các tài nguyên dữ liệu blob sẽ được tách khỏi thị trường phí gas tiêu chuẩn của EIP-1559, và có mức giá dao động riêng dựa trên cung cầu của blob. Theo đó: 

Phí giao dịch thông thường vẫn được định giá như trước (theo EIP-1559), với calldata được tính phí là 16 gas/non-zero byte và 4 gas/zero byte. 
Các giao dịch blob được sử dụng cả hai thị trường phí: Các hoạt động liên quan đến thực thi EVM của giao dịch được định giá theo thị trường phí gas tiêu chuẩn (EIP-1559). Dữ liệu blob của giao dịch được định giá theo thị trường gas dữ liệu (EIP-4844).

Nói cách khác, sau EIP-4844, trên Ethereum sẽ có một thị trường phí kép, cho phép rollup lựa chọn xuất bản giao dịch dưới dạng calldata sử dụng cơ chế phí một chiều (EIP-1559) hoặc giao dịch blob sử dụng cơ chế phí hai chiều (EIP-1559 và EIP-4844).

Cụ thể, cơ chế tính phí gas dữ liệu trong EIP-4844 bắt nguồn từ cơ chế EIP-1559. Không gian lưu trữ dữ liệu của blob sẽ được bán theo đơn vị số nguyên, mỗi blob tương đương với 128 kB.

Mức tiêu chuẩn là 3 blob/block, tương đương 384 kB (0.375MB). Khi số lượng blob được sử dụng lớn hơn 3, giá blob ở blob tiếp theo sẽ tăng 12.5%, ngược lại, giá blob giảm 12.5% khi số lượng blob được sử dụng nhỏ hơn hoặc bằng 3.
Mức tối đa là 6 blob/block, tương đương 768 kB (0.75MB).

Giá blob gần như miễn phí khi bắt đầu đưa vào hoạt động, sau đó tăng dần và biến động dựa trên cung cầu của blob. 

Tác động của EIP-4844

Lợi ích

Người dùng khi gửi giao dịch đến rollup phải trả phí rollup (rollup fee). Khoảng phí này sẽ được rollup sử dụng để chi trả cho hai chi phí:

Chi phí vận hành rollup: Bao gồm chi phí phần cứng/ VPS; chi phí vận hành và duy trì các rollup node như: điện, internet, bảo trì phần cứng…
Chi phí Layer 1: Bao gồm các khoản phí liên quan đến Layer 1 mà rollup phải trả như chi phí cập nhật state root, chi phí xuất bản dữ liệu, chi phí xác minh bằng chứng ZK

Sau EIP-4844, các node trên rollup có thể xoá bỏ dữ liệu blob sau 18 ngày, nhờ đó giảm được phần chi tiêu cho mở rộng phần cứng để tải toàn bộ dữ liệu giao dịch và lưu trữ vĩnh viễn như trước. Điều này gián tiếp giảm phí cho người dùng cuối trên Rollup.

Hơn nữa, việc đính kèm thêm các blob được lưu trữ off-chain (dự kiến tối đa 6 blob/block, tương đương 768 kB) sẽ giúp dữ liệu được xuất bản từ rollup lên Ethereum tăng lên đáng kể. Từ đó:

Tăng băng thông và khả năng mở rộng cho Rollup, giúp nó linh hoạt hơn trong việc thiết kế mô hình kinh tế xung quanh (bao gồm doanh thu, lợi nhuận & chi phí).
Tăng khả năng của Ethereum dưới dạng DA layer. Bởi mức tiêu chuẩn của EIP-4844 là 384 kB/block, giới hạn này đủ khả năng xử lý gấp 4-6 lần nhu cầu sử dụng hiện tại.

EIP-4844 cũng là tiền đề để tiến tới bản nâng cấp lên Danksharding hoàn toàn (hay còn gọi là Full Danksharding). Lúc này, mỗi block giao dịch trên Ethereum sẽ được đính kèm tối đa 64 blob, thay vì 6 blob như ở EIP-4844, cho phép các rollup tiếp nhận hàng trăm giao dịch trên giây (100,000 TPS).

Để đạt được Full Danksharding, Ethereum còn cần phải triển khai thêm các kỹ thuật như mô hình cam kết KZG, Data Availability Sampling (DAS) và Erasure ecoding. 

Các đặc tính quan trọng trong EIP-4844 và Danksharding

Hạn chế

Tuy nhiên, hạn chế của EIP-4844 là quá trình chuyển đổi yêu cầu độ phức tạp cao về mặt kỹ thuật cùng với thời gian dài để triển khai. 

Hiện tại, các nhà phát triển trên Ethereum và Rollup đã có nhiều thảo luận và mối lo ngại liên quan đến việc triển khai EIP-4844 như: làm thế nào để xử lý tình trạng gián đoạn khi giao dịch blob; cách hạn chế tình trạng giá blob biến động mạnh; thử nghiệm MEV-Boost…

Kế hoạch phát triển EIP-4844

Lợi ích và tầm quan trọng của EIP-4844 mang lại cho các giao thức Rollup là quá rõ ràng, tuy nhiên, vấn đề cần quan tâm hơn ở thời điểm hiện tại là thời gian. 

Trong lộ trình phát triển mà Vitalik công bố, EIP-4844 là bước nâng cấp nằm trong The Surge của Ethereum, giai đoạn tập trung vào việc tăng khả năng xử lý giao dịch lên 100,000 TPS trên Rollup. Theo đó, EIP-4844 dự kiến sẽ được triển khai trên mạng mainnet của Ethereum vào quý 1 năm 2024, đồng thời hoàn thành bước mở rộng Rollup cơ bản (basic Rollup scaling).

Sau đó, Ethereum sẽ tiếp tục triển khai các công nghệ và kỹ thuật liên quan đến lớp DA như DAS (Data Availability Sampling), thiết kết P2P cho DAS, khả năng tự khôi phục DA hiệu quả (efficient DA self-healing) để nâng cấp lên Full Danksharding. Thời gian dự kiến để triển khai Full Danksharding là khoảng 2-4 năm sau EIP-4844.