Nguồn: Scaling Ethereum Efficiently; Tổng hợp: Cộng đồng Starknet Trung Quốc
Tổng quan
Rollup là một chủ đề nóng trong năm nay về việc mở rộng quy mô Ethereum. Trong số các loại Rollup khác nhau, chúng tôi tin rằng Rollup Bằng chứng Hiệu lực (sau đây gọi là VR hoặc zk-rollup) là giải pháp mở rộng hứa hẹn nhất để tăng thông lượng của Ethereum theo cách an toàn và phi tập trung. Cốt lõi của sơ đồ mở rộng này là việc sử dụng các bằng chứng hợp lệ cho các tính toán có thể kiểm chứng. Đây là cách nó hoạt động:
Bản tổng hợp bằng chứng về tính hợp lệ
Xin lưu ý: Bản tổng hợp bằng chứng về tính hợp lệ thường được gọi nhầm là Bản tổng hợp không kiến thức (zkRollup), điều này không chính xác. Hầu hết các bản tổng hợp bằng chứng về tính hợp lệ không sử dụng bằng chứng không có kiến thức, chúng cũng không được sử dụng để đảm bảo quyền riêng tư. Do đó, thuật ngữ “Bản tổng hợp bằng chứng hợp lệ” chính xác hơn.
Trước khi tiếp tục, chúng ta cần trả lời câu hỏi đầu tiên: máy ảo (VM) là gì? Nói tóm lại, máy ảo là một môi trường mà các chương trình có thể chạy, chẳng hạn như hệ điều hành Windows chạy trên máy Mac. VM chuyển đổi giữa các trạng thái sau khi thực hiện tính toán trên một số đầu vào. Máy ảo Ethereum (EVM) là máy ảo chạy các hợp đồng thông minh Ethereum.
Máy ảo không kiến thức (zkVM) là một môi trường thực thi chương trình, cùng với đầu ra của chương trình, tạo ra các bằng chứng về tính hợp lệ có thể kiểm chứng dễ dàng. Bằng chứng về tính hợp lệ được sử dụng để chứng minh rằng một chương trình đã được thực hiện chính xác. Khi thuật ngữ “zkEVM” được sử dụng, nó thường đề cập đến một Rollup chạy Máy ảo Ethereum (EVM) và có thể chứng thực việc thực thi EVM. Thuật ngữ này có thể gây hiểu lầm vì bản thân EVM không thể tạo ra các bằng chứng này; thay vào đó, các bằng chứng được tạo ra bởi một cơ chế chứng minh riêng biệt lấy kết quả thực thi của EVM làm điểm bắt đầu. Ngoài ra, các bằng chứng trên đều liên quan đến tính hợp lệ và không liên quan gì đến quyền riêng tư. Do đó, chính xác thì nó không thể được gọi là bằng chứng không kiến thức. Để thống nhất, thuật ngữ truyền thống “zkEVM” vẫn được sử dụng trong bài viết này.
Mặc dù tất cả các bản tổng hợp Proof-of-Validity đều nhằm mục đích mở rộng quy mô Ethereum với Proof-of-Validity, các kế hoạch khác nhau đưa ra các lựa chọn khác nhau về cách VM thực hiện các giao dịch ngoài chuỗi. Nhiều bằng chứng về tính hợp lệ Rollup đã chọn sao chép thiết kế EVM (do đó có tên là “zkEVM rollup”), cố gắng sao chép Ethereum trên L2 rollup. Starknet sử dụng máy ảo Cairo (CVM), một máy ảo hoàn toàn mới được thiết kế để tối ưu hóa hiệu quả của bằng chứng về tính hợp lệ.
Hai phương pháp trên có những ưu nhược điểm và sự đánh đổi riêng, nhưng zkEVM hy sinh hiệu suất để tương thích với Ethereum, trong khi Cairo VM đặt hiệu suất lên trên khả năng tương thích và ưu tiên khả năng mở rộng.
zkEVM là một bản cập nhật bằng chứng hợp lệ được thiết kế để giới thiệu đầy đủ trải nghiệm Ethereum trên chuỗi khối L2. Mục đích là tái tạo môi trường nhà phát triển Ethereum thành Rollup. Với zkEVM, các nhà phát triển không cần điều chỉnh mã hoặc từ bỏ các công cụ EVM ban đầu (và hợp đồng thông minh) khi viết hoặc chuyển hợp đồng thông minh sang các giải pháp mở rộng.
Cách tiếp cận này có một lỗ hổng quan trọng, làm giảm khả năng mở rộng của các bằng chứng hợp lệ. Do tập trung vào việc tương thích với Ethereum, zkEVM chậm hơn và tốn nhiều tài nguyên hơn. Không giống như CVM, EVM không được thiết kế với tính hiệu quả bằng chứng. Điều này hạn chế việc sử dụng tối ưu hóa trong việc cải thiện hiệu quả và khả năng mở rộng, cuối cùng ảnh hưởng đến hiệu suất tổng thể của hệ thống.
Thách thức cốt lõi của phương pháp zkEVM nằm ở bản thiết kế ban đầu ăn sâu của EVM, vốn không được thiết kế ban đầu để chạy trong môi trường chứng minh tính hợp lệ. Do đó, nếu mọi nỗ lực được dồn vào việc hiện thực hóa các chức năng của Ethereum, thì toàn bộ tiềm năng của bằng chứng hợp lệ sẽ không thể được giải phóng, dẫn đến hiệu quả không đạt yêu cầu. Sự kém hiệu quả này cuối cùng sẽ kéo hiệu suất tổng thể của hệ thống xuống. Khả năng tương thích của EVM với các bằng chứng hợp lệ bị cản trở bởi:
Do đó, nhiều loại zkEVM khác nhau được thiết kế để cung cấp các mức hỗ trợ khác nhau cho các công cụ Ethereum, nhưng khả năng tương thích của zkEVM với Ethereum càng cao thì hiệu suất càng thấp. (xem phần cuối bài viết để biết thêm các loại zkEVM)
Giải pháp zkEVM đã đầu tư rất nhiều thời gian phát triển vào việc “làm cho EVM phù hợp với Rollup Bằng chứng Hiệu lực”, ưu tiên khả năng tương thích hơn hiệu suất dài hạn và khả năng mở rộng. Có một tùy chọn khác: sử dụng một máy ảo chuyên dụng mới và thêm một lớp bổ sung để hỗ trợ các công cụ Ethereum. Đó là bước mà Starknet đang thực hiện, ra mắt bản cập nhật bằng chứng hợp lệ không cần xin phép vào tháng 11 năm 2021. Starknet là Rollup chứng minh tính hợp lệ đầu tiên triển khai nền tảng hợp đồng thông minh có mục đích chung trong một mạng hoàn toàn có thể kết hợp được.
Starknet sử dụng Cairo-VM (CVM) và tạo ngôn ngữ cấp cao Cairo cùng tên. Cairo-VM được thiết kế để tạo ra các bằng chứng hiệu lực về việc thực thi chương trình một cách hiệu quả.
Với Cairo (VM và ngôn ngữ lập trình), có thể:
Việc phát triển một ngôn ngữ hoàn toàn mới có thể được điều chỉnh theo nhu cầu cụ thể, có thể bao gồm các tính năng không có sẵn trước đây và đáp ứng các nhu cầu mới.
Để tạo ra một bằng chứng về tính hợp lệ của một phép tính nào đó, phép tính đó trước tiên phải được thể hiện dưới dạng một loạt các ràng buộc toán học mô tả phép tính đó. Quá trình này rất phức tạp, khó khăn nằm ở việc tối ưu hóa các tính toán để đạt hiệu quả và cần có các công cụ cụ thể.
Ngôn ngữ Cairo được thiết kế để đơn giản hóa nhiệm vụ này để StarkEx có thể dễ dàng thêm chức năng và logic kinh doanh phức tạp. Các chương trình Cairo được biên dịch thành mã máy đại số, một dãy số, được thực thi bởi một máy ảo cố định duy nhất. Với Cairo, quy trình phức tạp tạo ra các ràng buộc toán học mô tả các tính toán (rất phức tạp để chứng minh tính hợp lệ) được trừu tượng hóa và thể hiện dưới dạng một tập hợp các ràng buộc cố định (tổng cộng ít hơn 50 ràng buộc). Điều này cho phép các nhà phát triển mở rộng các ứng dụng có bằng chứng hợp lệ bằng cách viết mã theo cú pháp quen thuộc mà không cần hiểu cơ sở hạ tầng và toán học cơ bản.
Cam kết đổi mới của Starknet thể hiện rõ ràng trong cách tiếp cận đa dạng hóa mã. Cairo áp dụng công nghệ STARK để đạt được các chức năng mở rộng tối ưu, không giới hạn trong việc viết hợp đồng với môi trường địa phương Cairo. Các nhà phát triển cũng có thể chọn phương pháp phù hợp nhất:
Mặc dù Cairo mới xuất hiện chưa lâu nhưng theo bảng xếp hạng của TVL, Cairo là ngôn ngữ lập trình hợp đồng thông minh phổ biến thứ tư, với mức định giá hơn 350 triệu USD.
zkEVM nhằm mục đích tái tạo môi trường nhà phát triển Ethereum thành Rollup và cho phép các nhà phát triển sử dụng các công cụ Ethereum quen thuộc. Nhưng cách tiếp cận này hạn chế khả năng chứng minh tính hợp lệ và tốn nhiều tài nguyên.
Máy ảo Cairo, được thiết kế để chứng minh tính hợp lệ, không tuân theo các giới hạn của EVM. Cairo VM hỗ trợ Cairo 1.0. Lấy cảm hứng từ ngôn ngữ Rust, Cairo 1.0 phù hợp hơn với thói quen của nhà phát triển và an toàn hơn, tạo thành một công cụ mạnh mẽ được thiết kế để sử dụng STARK nhằm chứng minh khả năng mở rộng hiệu quả của Ethereum.
Thật thú vị khi thấy Cairo phát triển như thế nào mỗi tuần và các tùy chọn dành cho các nhà phát triển như Kakarot zkEVM và Warp đang tăng lên. Với các ứng dụng dApp của Starknet đang được sản xuất, thể hiện sức mạnh của Cairo, chúng tôi tin chắc rằng trong tương lai, Cairo sẽ tạo ra những dự án nổi bật chưa từng thấy trước đây.
Ba con đường để mở rộng SATRK đã được vạch ra ở trên và chắc chắn sẽ có nhiều đổi mới hơn trong những tháng tới. Các nhà phát triển hiện có quyền kiểm soát chưa từng có đối với các chuỗi khối mở rộng.
Vitalik chia zkEVM thành bốn loại chính: