
RISC Zero Steel đã làm gì để thúc đẩy việc áp dụng ZK trên Ethereum?
Tuyển chọn TechFlowTuyển chọn TechFlow

RISC Zero Steel đã làm gì để thúc đẩy việc áp dụng ZK trên Ethereum?
Steel kết nối RISC Zero với Ethereum, đón nhận công nghệ ZK, cho phép các nhà phát triển bỏ qua phí Gas và giới hạn của Ethereum.
Biên dịch: Alex Liu, Foresight News
Sự thành công của Ethereum đã mang lại một hệ sinh thái ứng dụng phi tập trung phát triển mạnh mẽ, nhưng các thách thức về khả năng mở rộng của nó cũng ngày càng nghiêm trọng. Các nhà phát triển đang đối mặt với một lựa chọn khó khăn: hạn chế chức năng và mức độ phong phú dữ liệu của ứng dụng, hoặc chấp nhận phí Gas cao và giới hạn sử dụng Gas. Liệu sẽ ra sao nếu các nhà phát triển có thể tìm ra cách vượt qua những giới hạn này?
Steel – cầu nối giữa RISC Zero và Ethereum
RISC Zero là một trong những nhà phát triển zkVM hàng đầu. Nếu bạn thường xuyên nghe thấy zkEVM nhưng chưa hiểu rõ zkVM khác biệt một chữ là gì, hãy tham khảo bài viết này. Gần đây, RISC Zero đã ra mắt Steel – một thư viện chứng minh cho các lời gọi view dựa trên Alloy, mang đến sự thay đổi lớn trong cách các nhà phát triển tương tác với Ethereum L1 hoặc các chuỗi EVM khác. Bằng cách tận dụng bằng chứng không kiến thức (zero-knowledge proof) và RISC Zero zkVM, Steel cho phép các nhà phát triển thực hiện các lời gọi view, đọc và tính toán trạng thái Ethereum một cách có thể kiểm chứng, mở rộng, an toàn và hiệu quả về chi phí.
Sự tiện lợi của Solidity, sức mạnh từ ZK
Steel thu hẹp khoảng cách giữa việc phát triển ứng dụng Ethereum và công nghệ zero-knowledge, giúp các nhà phát triển dễ dàng hơn trong việc khai thác sức mạnh của ZK vào các hợp đồng thông minh của họ. Khi kết hợp với khả năng của RISC Zero zkVM, Steel cho phép các nhà phát triển xây dựng các ứng dụng an toàn hơn, có khả năng mở rộng tốt và hiệu quả trên Ethereum L1 hoặc bất kỳ chuỗi tương thích EVM nào.
Với Steel, các nhà phát triển có thể:
-
Thực thi trực tiếp các hợp đồng thông minh Solidity bên trong zkVM, tương thích với các logic phức tạp hơn trên chuỗi
-
Truy cập trạng thái lịch sử của Ethereum bên trong zkVM
-
Sử dụng continuations để thực hiện tính toán, không bị giới hạn bởi kích thước khối hay giao dịch
-
Đảm bảo tính toán ngoài chuỗi an toàn và đáng tin cậy như khi thực hiện trên chuỗi
-
Tận dụng zkVM đầu tiên đủ trưởng thành để sử dụng trong môi trường sản xuất, đã được nhiều đối tác kiểm thử nghiêm ngặt
-
Thực hiện tính toán riêng tư trên trạng thái Ethereum
-
Duy trì tính linh hoạt nhờ kho mã nguồn mở, không bị phụ thuộc vào nhà cung cấp
Tích hợp liền mạch và tiết kiệm chi phí
Với Steel, việc thực hiện lời gọi view đơn giản như chỉ định phương thức Solidity cần thiết. Dù là truy xuất số dư token ERC-20 (ví dụ) hay truy cập mọi khía cạnh của trạng thái Ethereum, Steel đều có thể đơn giản hóa quy trình thông qua tích hợp liền mạch với RISC Zero zkVM, đồng thời đảm bảo tính an toàn và hiệu quả. Các bài kiểm tra cho thấy Steel có khả năng xử lý hơn 100.000 thao tác SLOAD trong một lời gọi view duy nhất, tiết kiệm hàng nghìn đô la Mỹ phí Gas trên mạng chính. Chúng ta có thể tạo bằng chứng cho điều này bằng Bonsai trong khoảng 15 phút, yêu cầu ít nhất 210 triệu Gas – vượt quá giới hạn khối tới 7 lần.
Ví dụ: ERC20 balanceOf
Đoạn mã dưới đây minh họa quy trình chứng minh số dư tại một địa chỉ cụ thể của hợp đồng ERC-20 được triển khai trên Ethereum bằng Steel. Ví dụ này cho thấy cách các nhà phát triển có thể sử dụng Steel để tương tác với dữ liệu trên chuỗi Ethereum bên trong zkVM. Mã đầy đủ có thể xem tại đây.
Xác định chữ ký hàm view
Đầu tiên, dùng macro sol! để xác định chữ ký hàm balanceOf của ERC-20. Điều này sẽ phân tích cú pháp Solidity để tạo cấu trúc Rust tương ứng, cấu trúc này triển khai trait SolCall, có thể dùng để gọi phương thức balanceOf, nhận một địa chỉ tài khoản và trả về số dư token ERC-20 liên quan.

Chuẩn bị lời gọi
Tiếp theo, thiết lập lời gọi bằng cách khởi tạo cấu trúc balanceOfCall với địa chỉ tài khoản mục tiêu. Đồng thời, định nghĩa các hằng số cho địa chỉ hợp đồng muốn truy vấn và địa chỉ người gọi.

Thực thi lời gọi trong Main
Hàm main được thực thi bên trong zkVM để tạo bằng chứng zero-knowledge. Đầu tiên nó đọc môi trường đầu vào, sau đó xây dựng một đối tượng ViewCallEnv, đảm bảo trạng thái hiện tại khớp với gốc trạng thái mong đợi. Sau khi gửi cam kết băm khối và số khối liên quan, thực hiện lời gọi view và in ra số dư.

Nguyên lý hoạt động
Steel chứng minh mã Solidity bên trong RISC Zero zkVM theo ba bước, giúp đơn giản hóa quá trình thực thi:
-
Giai đoạn tiền bay (pre-flight): Khởi động bằng cách thực hiện lời gọi view tới nút RPC Ethereum, lưu vào bộ nhớ đệm các khe lưu trữ cần thiết, chỉ điền dữ liệu cần truy vấn vào cơ sở dữ liệu EVM. Tất cả các khe lưu trữ được tự động phát hiện và lấy về theo quá trình thực thi lời gọi view.
-
Xác minh lưu trữ: Thực hiện kiểm tra tính toàn vẹn lưu trữ, đảm bảo dữ liệu trong cơ sở dữ liệu EVM phù hợp với gốc trạng thái blockchain, do đó xác nhận tính hợp lệ của nó.
-
Thực thi Solidity: Chạy hàm Solidity đã cho trên EVM bên trong RISC Zero zkVM.
Điều này khác gì so với bằng chứng lưu trữ truyền thống?
Với bằng chứng lưu trữ truyền thống, các nhà phát triển phải tự tay chọn các khe lưu trữ mà hợp đồng thông minh sử dụng và triển khai lại logic hợp đồng. Trong khi đó, với Steel, tất cả các khe lưu trữ sẽ được tự động phát hiện và lấy về theo lời gọi view. Điều này giúp tiết kiệm rất nhiều thời gian, giảm thiểu khả năng xảy ra lỗi triển khai, từ đó giảm rủi ro về lỗ hổng bảo mật.
Lấy băm khối đã được xác minh
Khi sử dụng opcode blockhash trong hợp đồng thông minh Ethereum để xác minh, commitment được xác minh phải tham chiếu đến băm khối không quá 256 khối trước đó. Với thời gian trung bình mỗi khối là 12 giây, điều này đặt ra một khoảng thời gian hẹp khoảng 50 phút để hoàn thành việc tạo bằng chứng và đảm bảo giao dịch xác minh đã được đưa vào một khối.
Khi cần lấy băm khối đã được xác minh nhưng sớm hơn 256 khối, có thể sử dụng một trong các chiến lược sau:
-
Khi biết trước băm khối sẽ cần (ví dụ: khi khởi xướng đề xuất quản trị), có thể lưu băm khối đó vào trạng thái hợp đồng.
-
Một cách khác là sử dụng RISC Zero để chứng minh chuỗi băm từ khối truy vấn đến một khối nằm trong 256 khối gần nhất.
Tương lai của các ứng dụng trên chuỗi
Hãy hình dung một tương lai nơi tính toán ngoài chuỗi được tích hợp liền mạch với xác minh trên chuỗi. Steel cho phép các nhà phát triển truy cập và tính toán toàn bộ lịch sử Ethereum một cách đáng tin cậy bên trong zkVM, từ đó tạo ra thế hệ tiếp theo của các ứng dụng trên chuỗi với dữ liệu phong phú hơn và chức năng mạnh mẽ hơn, góp phần đáng kể vào hiện thực hóa tầm nhìn này.
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














