Tác giả | Callum@Web3CN.Pro
ZK Rollup là một phương pháp mở rộng quy mô cho Ethereum, cho phép các giao dịch được xử lý ngoài chuỗi và hợp nhất thành một giao dịch nén duy nhất trên chuỗi chính. Quá trình này cải thiện thông lượng giao dịch, giảm chi phí giao dịch, đảm bảo tính hợp lệ của trạng thái thông qua bằng chứng không có kiến thức và cải thiện tính riêng tư và bảo mật của chuỗi chính. Vì vậy, ZK Rollup được coi là giải pháp tối ưu cho việc mở rộng Ethereum.
Tuy nhiên, hiện tại, việc tạo ra các bằng chứng không có kiến thức đòi hỏi sức mạnh tính toán lớn hơn và khó khăn hơn về mặt kỹ thuật, đồng thời, do Máy ảo Ethereum (EVM) không được thiết kế để hỗ trợ các mạch ZK nên nó không thể trực tiếp thực hiện các hợp đồng thông minh. Để giải quyết vấn đề này, nhiều nhà phát triển đã cố gắng phát triển zkEVM, có thể chạy các hợp đồng thông minh theo cách tương thích với tính toán bằng chứng không có kiến thức. Đối với nhiều Bản tổng hợp ZK, việc đạt được mức tương đương EVM có nghĩa là đạt được khả năng tương thích hoàn toàn ở cấp độ mã byte. Hiện tại, zkEVM là chìa khóa cho sự mở rộng của Ethereum.
Bài viết này sẽ nghiên cứu năm loại zkEVM phổ biến và tiến độ của các loại dự án khác nhau, đồng thời chỉ ra những thách thức trong thiết kế của từng loại zkEVM.
zkEVM là gì
zkEVM là một máy ảo tương thích EVM hỗ trợ tính toán bằng chứng không có kiến thức. Đây là một nền tảng phát triển ứng dụng dựa trên công nghệ chuỗi khối Ethereum. Hợp đồng EVM có thể được triển khai và chạy trực tiếp mà không cần sửa đổi, đồng thời việc chạy chương trình có thể chứng minh tính hợp lệ của tính toán của nó thông qua việc không có kiến thức.
Ưu điểm của zkEVM
1.zkEVM cải thiện khả năng tương thích. zkEVM tương thích cao với các hợp đồng thông minh được viết để chạy trong EVM và có thể được tích hợp liền mạch với cơ sở hạ tầng EVM. Các nhà phát triển có thể di chuyển các ứng dụng Ethereum hiện có sang L2 mà không cần phát triển lại ứng dụng, trong khi zk proof kế thừa bảo mật mạng Ethereum.
2.zkEVM tăng cường khả năng mở rộng. zkEVM sử dụng bằng chứng không tương tác, giúp cải thiện thông lượng và giảm độ trễ vì việc xác thực bằng chứng cho khối L2 nhanh hơn việc thực hiện lại mọi giao dịch trong khối mới được đề xuất.
3.zkEVM giảm chi phí lưu trữ. zkEVM Rollup có thể chọn xuất bản các cam kết ở trạng thái cuối cùng chỉ trên Ethereum L1, do đó giảm chi phí lưu trữ trên chuỗi. Bằng chứng về tính hợp lệ đảm bảo tính chính xác của trạng thái mới của zkEVM, do đó, trình sắp xếp chuỗi không phải xuất bản tất cả dữ liệu cần thiết để thực hiện lại các thay đổi chuyển đổi trạng thái.
Với sự cải tiến liên tục của zkEVM, các hạn chế của ZK Rollup đã được giải quyết. Bằng cách sử dụng tính bảo mật và hiệu quả của ZK Rollup, cùng với khả năng tương thích của EVM, các ứng dụng có thể tương tác với hợp đồng thông minh và cải thiện trải nghiệm ứng dụng.
Năm loại zkEVM khác nhau và các dự án liên quan
Khi EVM được thiết kế ban đầu, nó không được coi là hỗ trợ bằng chứng không có kiến thức, điều này gây khó khăn cho việc xây dựng một máy ảo zk tương thích với EVM. Tuy nhiên, với tiến độ nghiên cứu, các tính toán EVM có thể được gói gọn trong các bằng chứng không có kiến thức. Các dự án zkEVM khác nhau áp dụng các phương pháp tiếp cận khác nhau kết hợp việc thực thi EVM với tính toán bằng chứng không có kiến thức.
Vitalik Buterin, người sáng lập Ethereum, cũng đã xuất bản một bài viết giải thích sự đánh đổi giữa các loại zkEVM khác nhau. Vitalik Buterin tin rằng mục tiêu cốt lõi của các dự án này là giống nhau: sử dụng công nghệ ZK-SNARK để cung cấp bằng chứng mật mã cho việc thực thi. các giao dịch tương tự như Ethereum, do đó việc xác minh chính chuỗi Ethereum hoặc xây dựng ZK Rollups tương đương với những gì Ethereum cung cấp sẽ dễ dàng hơn nhưng có khả năng mở rộng hơn Ethereum.
Loại 1 (tương đương ở mức độ đồng thuận - hoàn toàn tương đương với Ethereum)
ZkEVM loại 1 cố gắng hoàn toàn tương đương với Ethereum. Nó không thay đổi bất kỳ phần nào của hệ thống Ethereum để giúp tạo bằng chứng dễ dàng hơn và không thay thế băm, cây trạng thái, cây giao dịch, biên dịch trước hoặc bất kỳ logic đồng thuận nào khác.
Ưu điểm của zkEVM Loại 1 là nó hoàn toàn tương thích với Ethereum. Về lâu dài, các sửa đổi đối với Ethereum được thử nghiệm trong ZK-EVM Loại 2 hoặc Loại 3 có thể được đưa vào chính Ethereum, nhưng việc tái cấu trúc này có sự phức tạp riêng, vì vậy Loại 1 cuối cùng là cần thiết để biến chính Ethereum Fang L1 trở thành một thứ gì đó hơn thế nữa có khả năng mở rộng. Đồng thời, zkEVM Loại 1 cũng lý tưởng cho các bản tổng hợp vì chúng cho phép các bản tổng hợp tái sử dụng một lượng lớn cơ sở hạ tầng.
Nhược điểm của zkEVM Loại 1 là thời gian xác minh. Ethereum ban đầu không được thiết kế xoay quanh tính thân thiện với ZK, vì vậy nhiều phần của giao thức Ethereum yêu cầu tính toán rộng rãi để thực hiện bằng chứng ZK. ZkEVM loại 1 được thiết kế để trở thành một bản sao chính xác của Ethereum, vì vậy nó không thể giảm thiểu những sự thiếu hiệu quả này. ZkEVM loại 1 là zkEVM được mong muốn nhất và có nhiều dự án đang xây dựng hoặc khám phá loại này.
Hiện tại, các dự án liên quan đến zkEVM Loại 1 bao gồm Taiko và Kakarot.
ZkEVM Loại 1 do Taiko xây dựng cho phép các nhà phát triển và người dùng trải nghiệm Ethereum một cách an toàn, với phí giao dịch thấp hơn và không có bất kỳ thay đổi nào cần xem xét. Nó đã huy động được 22 triệu đô la Mỹ trong hai vòng tài trợ hạt giống, vòng đầu tiên với 10 triệu đô la Mỹ do Sequoia China dẫn đầu và vòng thứ hai với 12 triệu đô la Mỹ do Generative Ventures dẫn đầu. Vào ngày 7 tháng 6, Taiko đã ra mắt mạng thử nghiệm được khuyến khích Alpha-3. Theo các quan chức của Taiko, testnet tập trung vào phần ZK-EVM phi tập trung, tương đương với Ethereum.
Kakarot zkEVM là một EVM được triển khai bằng ngôn ngữ Cario, mở rộng độ tin cậy của hệ sinh thái Starknet bằng cách tăng cường khả năng tương thích EVM. Kakarot zkEVM có thể tồn tại dưới nhiều dạng khác nhau, giai đoạn đầu nó sẽ mang EVM đến Starknet, giai đoạn thứ hai Kakarot và Madara sẽ hợp nhất thành một stack thống nhất để hỗ trợ L3 zkEVM, giai đoạn thứ ba Kakarot và Madara cũng có thể kết hợp trong Cùng nhau kích hoạt zkEVM Loại 1. Vào ngày 2 tháng 6, Kakarot zkEVM đã hoàn thành vòng cấp vốn sơ bộ, với sự tham gia của các tổ chức như StarkWare và LambdaClass, cũng như các nhà đầu tư thiên thần như Vitalik Buterin, Nicolas Bacca và Rand Hindi.
Loại 2 (mức mã byte tương đương - giống hệt như EVM)
Type2 zkEVM cố gắng tương đương hoàn toàn với EVM, nhưng không hoàn toàn tương đương với Ethereum. Nghĩa là, chúng trông giống hệt Ethereum ở bên trong, nhưng chúng có một số khác biệt ở bên ngoài, đặc biệt là về cấu trúc dữ liệu, chẳng hạn như cấu trúc khối và cây trạng thái. Mục tiêu là hoàn toàn tương thích với các ứng dụng hiện có, nhưng thực hiện một số sửa đổi nhỏ đối với Ethereum để giúp việc phát triển dễ dàng hơn và tạo bằng chứng nhanh hơn.
Ưu điểm của zkEVM Loại 2 là sự tương đương hoàn hảo ở cấp độ VM. ZkEVM loại 2 thực hiện các thay đổi đối với cấu trúc dữ liệu chứa những thứ như trạng thái Ethereum. Đây là những cấu trúc mà bản thân EVM không thể truy cập trực tiếp, vì vậy các ứng dụng chạy trên Ethereum hầu như sẽ luôn chạy trên bản tổng hợp zkEVM Loại 2. Loại này không thể sử dụng các máy khách thực thi Ethereum nguyên trạng, nhưng có thể sử dụng chúng với một số sửa đổi và vẫn sử dụng các công cụ gỡ lỗi EVM và cơ sở hạ tầng khác.
Nhược điểm của zkEVM Loại 2 là thời gian xác minh vẫn còn chậm. ZkEVM loại 2 cung cấp thời gian xác minh nhanh hơn zkEVM loại 1, chủ yếu bằng cách loại bỏ các phần của ngăn xếp Ethereum dựa vào mật mã phức tạp không cần thiết và không thân thiện với ZK. Ví dụ: họ có thể thay đổi cây Merkle-Patricia dựa trên RLP và Keccak của Ethereum, cũng như có thể cả cấu trúc khối và biên nhận. Những sửa đổi này cải thiện đáng kể thời gian chứng minh, nhưng không giải quyết được tất cả các vấn đề. Do tất cả sự kém hiệu quả và tính không thân thiện với ZK vốn có trong EVM, việc chứng minh EVM vẫn còn chậm.
Hiện tại các dự án liên quan đến zkEVM Loại 2 bao gồm Linea và Polygon.
Linea là zkEVM Loại 2 được cung cấp bởi Consensys. Bằng cách tích hợp ZKP với khả năng tương thích hoàn toàn với EVM, các nhà phát triển có thể tạo DApp có thể mở rộng hoặc di chuyển DApp hiện có sang nền tảng mới mà không cần thay đổi mã hoặc viết lại hợp đồng thông minh. Mạng thử nghiệm công khai đã được ra mắt vào ngày 28 tháng 3 năm nay và đã được thêm vào các tùy chọn mạng mặc định của tiện ích mở rộng Metamask. Linea đã phát hành Alpha v0.2 lúc 12:00 ngày 13 tháng 6. Phiên bản này tập trung vào việc thử nghiệm các nâng cấp kiến trúc thực chất để chuẩn bị cho việc ra mắt mạng chính.
Polygon zkEVM là mã nguồn mở và sử dụng zkEVM Loại 2. Nó sử dụng bằng chứng ZK để giảm phí giao dịch và tăng thông lượng trong khi vẫn duy trì tính bảo mật của Ethereum L1. Polygon đã tuyên bố vào ngày 14 tháng 2 năm nay rằng Polygon zkEVM đã vượt qua 100% các vectơ thử nghiệm Ethereum phù hợp với zkEVM. Các nhà phát triển không cần sửa đổi hoặc viết lại bất kỳ mã nào và tất cả các công cụ Ethereum có thể hoạt động trơn tru với Polygon zkEVM. Điều này có nghĩa là EVM. Khả năng tương thích của ZK Rollup đã tiến thêm một bước lớn, đạt đến cấp độ Loại 2, hoàn toàn tương đương với EVM. Phiên bản beta mainnet Polygon zkEVM đã chính thức ra mắt vào ngày 27 tháng 3 năm 2023.
Loại 2.5 (tương đương EVM, trừ chi phí xăng)
Một cách để cải thiện thời gian xác minh là tăng đáng kể chi phí gas của các hoạt động cụ thể trong EVM khó chống lại ZK. Điều này có thể liên quan đến quá trình biên dịch trước, mã keccak và có thể là các mẫu hợp đồng gọi điện cụ thể hoặc truy cập bộ nhớ, bộ lưu trữ hoặc khôi phục.
Việc thay đổi chi phí gas có thể làm giảm khả năng tương thích của các công cụ dành cho nhà phát triển và phá vỡ một số ứng dụng, nhưng nhìn chung nó được coi là ít rủi ro hơn so với những thay đổi EVM "sâu hơn". Các nhà phát triển nên cẩn thận không yêu cầu nhiều hơn một khối gas trong một giao dịch và không thực hiện lệnh gọi với lượng gas được mã hóa cứng.
Hiện tại chưa có dự án cụ thể nào thực hiện EVM Loại 2.5, mới bước vào giai đoạn Loại 2.
Loại 3 (mức bytecode tương đương - gần tương đương với EVM)
ZkEVM loại 3 gần như tương đương với EVM, nhưng một số hy sinh được thực hiện để có được sự tương đương chính xác nhằm giảm hơn nữa thời gian chứng minh và làm cho EVM dễ phát triển hơn.
Ưu điểm của zkEVM Loại 3 là dễ xây dựng hơn và có thời gian xác minh nhanh hơn. ZkEVM loại 3 có thể loại bỏ một số tính năng đặc biệt khó triển khai khi triển khai zkEVM. Ngoài ra, zkEVM Loại 3 đôi khi có những khác biệt nhỏ trong cách chúng xử lý mã hợp đồng, bộ nhớ hoặc ngăn xếp.
Nhược điểm của zkEVM Loại 3 là khả năng tương thích kém hơn. zkEVM loại 3 nhằm mục đích tương thích với hầu hết các ứng dụng trong khi yêu cầu viết lại tối thiểu cho phần còn lại. Điều đó có nghĩa là sẽ có một số ứng dụng cần được viết lại vì chúng sử dụng tính năng biên dịch trước mà zkEVM Loại 3 loại bỏ hoặc do sự phụ thuộc tinh vi vào các trường hợp biên mà VM xử lý theo cách khác.
Hiện tại, các dự án liên quan đến zkEVM Loại 3 bao gồm Scroll.
Scroll là zk-rollup tương đương EVM được phát triển bởi nhóm Scroll hợp tác với nhóm PSE (Khám phá quyền riêng tư và mở rộng quy mô) của Ethereum Foundation. Nó hiện đang ở giai đoạn mạng thử nghiệm Pre-Alpha và nhằm mục đích tương thích hoàn toàn với EVM ở cấp mã byte. . Điều này có nghĩa là các nhà phát triển có thể tạo hợp đồng thông minh bằng bất kỳ ngôn ngữ nào tương thích với EVM và triển khai chúng vào Scroll. Mặc dù Scroll hiện đang xây dựng EVM Loại 2, nhiều phần biên dịch trước phức tạp hơn vẫn chưa được triển khai và do đó được coi là EVM Loại 3. Theo Scroll, nó dự kiến sẽ ra mắt trên mạng chính vào tháng 7 hoặc tháng 8 năm nay và cho biết nó có thể khởi động một chương trình đối tác để khuyến khích phát triển sinh thái.
Hiện tại, EVM Loại 3 chỉ là giai đoạn chuyển tiếp cho đến khi hoàn thành công việc phức tạp trong việc thêm tiền biên dịch và sau đó các dự án có thể chuyển sang Loại 2.5 zkEVM. Nhưng trong tương lai, EVM Loại 1 và Loại 3 có thể bổ sung tính năng biên dịch trước thân thiện với ZK-SNARK mới, cung cấp cho các nhà phát triển thời gian xác minh ngắn và các tính năng chi phí gas thấp.
Loại 4 (ngôn ngữ phát triển tương đương - ngôn ngữ cấp cao tương đương EVM)
EVM loại 4 hoạt động bằng cách biên dịch mã nguồn hợp đồng thông minh được viết bằng ngôn ngữ cấp cao (như Solidity, Vyper hoặc ngôn ngữ trung gian) thành ngôn ngữ được thiết kế rõ ràng để thân thiện với ZK-SNARK.
Ưu điểm của zkEVM Loại 4 là tốc độ chứng minh nhanh hơn. Bởi vì loại này không đảm bảo zk cho tất cả các phần khác nhau của từng bước thực thi EVM mà bắt đầu trực tiếp từ mã cấp cao nên có thể tránh được rất nhiều chi phí.
Nhược điểm của zkEVM Loại 4 là nó kém tương thích hơn. Thứ nhất, địa chỉ của các hợp đồng trong hệ thống Loại 4 có thể khác với địa chỉ của chúng trong EVM; thứ hai, nhiều ứng dụng sử dụng mã byte EVM viết tay ở một số phần để nâng cao hiệu quả, điều này có thể không được hệ thống Loại 4 hỗ trợ. vấn đề cơ bản về gỡ lỗi. Cơ sở vật chất cũng không thể được kế thừa.
Hiện tại, các dự án liên quan đến zkEVM Loại 4 bao gồm zkSync Era và StarkNet.
Kỷ nguyên zkSync được tạo bởi Matters Lab. Kỷ nguyên zkSync là EVM đầu tiên khởi chạy trên mạng chính và có toàn quyền truy cập vào công chúng để kết nối tiền của họ với hệ thống hoặc triển khai mã của họ trên mạng. Kỷ nguyên zkSync sử dụng định dạng mã byte khác và hỗ trợ Solidity bằng cách cung cấp trình biên dịch. Nó hỗ trợ Solidity, nhưng không hỗ trợ mã byte EVM. Không thể sử dụng trực tiếp các công cụ như Hardhat, mặc dù có thể sử dụng plugin zkSync.
Được tạo bởi StarkWare, StarkNet là một zk-rollup L2 sử dụng bằng chứng không có kiến thức để tạo lớp thực thi ngoài chuỗi cho Ethereum. Trên thực tế, EVM không phải là tính năng gốc của Starknet. Starknet sử dụng bộ chuyển đổi Warp (do Nethermind cung cấp) để chuyển đổi mã Solidity sang Cairo nhằm hỗ trợ triển khai hợp đồng thông minh.
Những thách thức và tương lai của zkEVM
Vì EVM không được xây dựng với mục đích tính toán chứng minh zk nên nó có các đặc điểm không thân thiện với các mạch chứng minh, đặc biệt là về các mã hoạt động đặc biệt, chi phí lưu trữ kiến trúc dựa trên ngăn xếp và chi phí chứng minh. Nhưng một số đột phá trong công nghệ không có kiến thức đã giúp giảm bớt những vấn đề này.
Không có sự phân biệt rõ ràng giữa năm loại zkEVM, loại nào tốt hơn hoặc kém hơn. Nói chung, sẽ có lợi cho các dự án khác nhau khi khám phá các loại khác nhau để phát triển zkEVM và Ethereum.
Trong tương lai, sẽ có nhiều triển khai zkEVM có thể được sử dụng cho cả ZK Rollup và để xác thực chính chuỗi Ethereum. Về lý thuyết, Ethereum không cần sử dụng một zkEVM tiêu chuẩn duy nhất cho L1, các khách hàng khác nhau có thể sử dụng các bằng chứng khác nhau. Tuy nhiên, sẽ mất khá nhiều thời gian để nhận ra một tương lai như vậy. Đồng thời, chúng ta sẽ thấy nhiều sự đổi mới hơn trên các con đường khác nhau để mở rộng quy mô các bản cuộn ZK dựa trên Ethereum và Ethereum.
