Lời tựa: Khi hệ sinh thái Ethereum không ngừng mở rộng, việc làm thế nào để mở rộng mạng lưới mà không hy sinh tính bảo mật và phi tập trung đã trở thành chủ đề cốt lõi. Trong bài viết này, Vitalik Buterin đã sắp xếp rõ hơn con đường mở rộng của Ethereum: ngắn hạn thông qua các cải tiến kỹ thuật như tối ưu hóa cơ chế Gas, xác thực khối song song để nâng cao hiệu suất thực thi; dài hạn dựa vào kiến trúc dữ liệu ZK-EVM và blobs để thúc đẩy tăng quy mô mạng lưới.
Nhìn tổng thể, lộ trình này cung cấp một giải pháp mở rộng được thúc đẩy theo từng giai đoạn, nhằm mục đích cung cấp nền tảng cho việc tiếp tục mở rộng dung lượng mạng lưới của Ethereum trong những năm tới.
Dưới đây là nội dung gốc:
Bây giờ hãy nói về mở rộng quy mô (scaling). Ở đây chủ yếu chia làm hai phần: mở rộng ngắn hạn và mở rộng dài hạn.
Mở rộng ngắn hạn
Về mở rộng ngắn hạn, tôi đã viết một số nội dung ở nơi khác. Ý tưởng cốt lõi đại khái như sau:
· Danh sách truy cập cấp khối (block-level access lists) (sẽ được ra mắt trong bản nâng cấp Glamsterdam) có thể cho phép xác thực khối thực hiện song song.
· ePBS (cũng sẽ ra mắt trong Glamsterdam) có nhiều đặc tính, một trong số đó là: nó cho phép chúng ta sử dụng một tỷ lệ thời gian lớn hơn trong mỗi slot để xác thực khối một cách an toàn, thay vì chỉ dùng vài trăm mili giây như hiện nay.
· Định giá lại Gas (gas repricing) sẽ đảm bảo chi phí gas của các loại thao tác phù hợp với thời gian thực thi thực tế của chúng (và các chi phí khác mà chúng mang lại). Chúng tôi cũng đang khám phá sớm cơ chế gas đa chiều (multidimensional gas), cho phép các tài nguyên khác nhau được thiết lập giới hạn riêng. Hai điều này kết hợp lại, có thể cho phép chúng ta sử dụng tỷ lệ thời gian slot lớn hơn khi xác thực khối, mà không phải lo lắng về các trường hợp cực đoan.
Về gas đa chiều, chúng tôi đã xây dựng một lộ trình theo từng giai đoạn. Giai đoạn đầu tiên là trong bản nâng cấp Glamsterdam, tách biệt "chi phí tạo trạng thái" với "chi phí thực thi và calldata".
Ví dụ, hiện tại: một thao tác SSTORE, nếu chuyển ô lưu trữ từ khác không → khác không, chi phí là 5000 gas; nếu từ không → khác không, chi phí là 20000 gas.
Trong một lần định giá lại gas ở Glamsterdam, chi phí bổ sung này sẽ được nâng lên đáng kể (ví dụ lên 60000). Mục tiêu của việc này là, trong khi nâng giới hạn gas, cho phép khả năng thực thi mở rộng nhanh hơn nhiều so với tốc độ mở rộng quy mô trạng thái.
Về lý do, tôi đã viết trước đây: https://ethresear.ch/t/hyper-scaling-state-by-creating-new-forms-of-state/24052
Do đó, trong Glamsterdam: thao tác SSTORE này sẽ tiêu thụ 5000 "gas thông thường", ví dụ 55000 "gas tạo trạng thái"
Cần lưu ý: gas tạo trạng thái sẽ không được tính vào giới hạn gas giao dịch khoảng 16 triệu.
Điều này có nghĩa: việc tạo các hợp đồng lớn hơn hiện tại sẽ trở nên khả thi.
Gas đa chiều được triển khai trong EVM như thế nào?
Ở đây sẽ xuất hiện một vấn đề: Thiết kế của EVM mặc định gas chỉ có một chiều, ví dụ các opcode như GAS, CALL đều dựa trên giả định này.
Phương pháp giải quyết của chúng tôi là duy trì hai bất biến:
Nếu bạn khởi tạo một call với X gas, thì call đó sẽ sở hữu X gas, có thể dùng cho "thao tác thông thường", hoặc "tạo trạng thái", hoặc các chiều khác có thể được thêm trong tương lai.
Nếu opcode GAS cho bạn biết hiện có Y gas, sau đó bạn khởi tạo một call tiêu thụ X gas, thì sau khi call trả về, bạn vẫn có ít nhất Y − X gas, có thể dùng cho các thao tác tiếp theo.
Cách thức triển khai cụ thể là: Chúng tôi giới thiệu N+1 chiều gas. Mặc định N = 1 (tạo trạng thái), chiều bổ sung được gọi là reservoir (bể chứa).
Logic thực thi của EVM là:
Nếu có thể, ưu tiên tiêu thụ gas của chiều chuyên dụng
Nếu không đủ, thì tiêu thụ từ reservoir.
Ví dụ, nếu bạn có: (100000 gas tạo trạng thái, 100000 reservoir)
Nếu bạn dùng SSTORE để tạo trạng thái mới ba lần, quá trình thay đổi gas sẽ là: (100000, 100000)→ (45000, 95000)→ (0, 80000)→ (0, 20000)
Trong thiết kế này:
Opcode GAS trả về reservoir
CALL sẽ truyền một lượng gas được chỉ định từ reservoir, và đồng thời truyền tất cả gas không phải reservoir
Định giá Gas đa chiều
Sau đó chúng tôi sẽ tiếp tục giới thiệu định giá đa chiều (multi-dimensional pricing), cho phép các chiều tài nguyên khác nhau có giá gas thả nổi khác nhau.
Điều này sẽ mang lại:
Tính bền vững kinh tế dài hạn tốt hơn
Hiệu quả phân bổ tài nguyên tối ưu hơn
Xem chi tiết: https://vitalik.eth.limo/general/2024/05/09/multidim.html
Và cơ chế reservoir vừa giải quyết được vấn đề lệnh gọi con (sub-call) được đề cập cuối bài viết đó.
Mở rộng dài hạn
Mở rộng dài hạn chủ yếu bao gồm hai hướng: ZK-EVM và Blobs.
Blobs
Đối với blobs, chúng tôi dự định lặp lại liên tục PeerDAS, cuối cùng hy vọng đạt được khả năng thông lượng dữ liệu khoảng 8 MB/giây.
Quy mô này:
Đủ để đáp ứng nhu cầu của chính Ethereum
Không có ý định trở thành một "lớp dữ liệu toàn cầu".
Hiện tại, blobs chủ yếu được sử dụng cho L2. Kế hoạch tương lai là để chính dữ liệu khối Ethereum được ghi trực tiếp vào blobs.
Mục đích của việc này, là để mọi người có thể xác thực một mạng Ethereum được mở rộng quy mô cao mà không cần tải xuống và thực thi lại toàn bộ chuỗi:
ZK-SNARKs loại bỏ nhu cầu thực thi lại
PeerDAS + blobs cho phép xác thực tính khả dụng của dữ liệu mà không cần tải xuống toàn bộ dữ liệu
ZK-EVM
Đối với ZK-EVM, mục tiêu của chúng tôi là từng bước nâng cao mức độ phụ thuộc của mạng lưới vào nó.
Năm 2026: Sẽ xuất hiện các client hỗ trợ ZK-EVM, cho phép các node có thể sử dụng ZK-EVM để tham gia attestation. Nhưng chúng chưa đủ an toàn để toàn bộ mạng lưới có thể vận hành dựa vào nó. Tuy nhiên, nếu khoảng 5% mạng lưới sử dụng chúng là có thể chấp nhận được. (Nếu ZK-EVM gặp sự cố, bạn sẽ không bị phạt slashing, nhưng có thể xây dựng trên khối không hợp lệ, do đó mất đi phần thưởng.)
Năm 2027: Chúng tôi sẽ bắt đầu đề xuất tỷ lệ node lớn hơn chạy ZK-EVM, đồng thời tập trung vào việc xác minh hình thức và nâng cao tính bảo mật. Ngay cả khi chỉ có 20% mạng lưới sử dụng ZK-EVM, cũng có thể cho phép chúng tôi nâng giới hạn gas lên đáng kể, vì điều này cung cấp một con đường xác thực chi phí thấp cho các solo staker, mà tỷ lệ solo staker tự thân cũng chưa đến 20%.
Sau khi công nghệ trưởng thành: Chúng tôi sẽ giới thiệu cơ chế chứng minh bắt buộc 3-trên-5 (3-of-5). Nghĩa là, một khối phải chứa ít nhất 3 chứng minh từ 5 hệ thống chứng minh khác nhau, mới được coi là hợp lệ. Đến lúc đó, chúng tôi dự kiến ngoại trừ các node cần lập chỉ mục, hầu hết các node sẽ phụ thuộc vào chứng minh ZK-EVM.
Dài hạn: Tiếp tục cải tiến ZK-EVM, làm cho nó mạnh mẽ hơn, và tiến hành xác minh hình thức chặt chẽ hơn. Giai đoạn này cũng có thể liên quan đến thay đổi ở cấp máy ảo, ví dụ như hướng RISC-V.
Xem chi tiết: https://ethresear.ch/t/hyper-scaling-state-by-creating-new-forms-of-state/24052







