Zk Rollup là gì? Điểm khác biệt giữa Zk Rollup so với các Layer 2 khác là gì? Có những dự án Zk Rollup nào trong thị trường hiện nay? Tìm hiểu tại bài viết sau nhé!!!
- 1. Zk Rollup là gì?
- 2. Tại sao Zk rollup được đánh giá cao hơn các giải pháp Layer 2 khác?
- 3. Sự khác nhau cơ bản giữa các dự án Zk Rollup
- 4. Hạn chế chung của các dự án Zk Rollup ở thời điểm hiện tại
- 5. Các dự án Zk Rollup nổi bật trên thị trường
- 6. Hướng phát triển chung của các dự án Zk Rollup
- 7. Tổng kết
Rollup là giải pháp Layer 2 được cộng đồng đánh giá rất cao, trong đó có hai model chính là Optimistic và Zk Rollup. Trong các bài viết trước, mình đã chia sẻ khá nhiều về Optimistic Rollup và các dự án nổi bật trong đó. Anh em có thể tham khảo lại tại đây.
Trong bài viết hôm nay, mình sẽ chia sẻ với mọi người tổng quan về Zk Rollup, ưu điểm, hạn chế của nó và một số dự án Zk Rollup nổi bật.
1. Zk Rollup là gì?
Zk Rollup là một giáp mở rộng cho Ethereum layer 1 bằng cách sử dụng công nghệ zero knowledge proof (bằng chứng không kiến thức).
Zk Rollup cho phép tổng hợp một số lượng lớn các giao dịch vào một khối Rollup và tạo ra bằng chứng ngắn gọn cho khối off-chain. Sau đó, hợp đồng thông minh trên Ethereum layer 1 chỉ cần xác minh Proof (bằng chứng) đó mà không cần thực hiện lại các giao dịch. Điều này có thể giúp tiết kiệm nhiều gas fee vì xác minh Proof (bằng chứng) rẻ hơn nhiều so với việc thực hiện lại tính toán.
2. Tại sao Zk rollup được đánh giá cao hơn các giải pháp Layer 2 khác?
Theo quan điểm của Vitalik, về cơ bản có 5 chiến lược mở rộng quy mô cho Ethereum:
- Nhiều chuỗi riêng biệt (Cách Polkadot, Cosmos đang làm).
- Khối siêu lớn.
- Các cải tiến gia tăng hiệu suất hoạt động nhưng không thay đổi mô hình bảo mật.
- Layer 2 (channels, plasma, rollup).
- Sharding.
Trong phân khúc Layer 2, có thể nói rằng Rollup đang là giải pháp hàng đầu. Rollup được phân làm hai loại chính là Optimistic Rollup và Zk Rollup. Tổng quan mà nói, tất cả các ưu điểm của Optimistic Rollup cung cấp được thì trong tương lai Zk Rollup cũng có thể cung cấp được.
Điểm chính để khiến Zk Rollup được đánh giá cao hơn Optimistic Rollup là do thời gian hoàn thiện (quá trình xác minh – xác nhận tính hợp lệ của giao dịch) của Zk Rollup là nhanh nhất.
Optimistic Rollup được bảo mật thông qua fraud proof (bằng chứng gian lận), cách tiếp cận này khiến chúng mắc phải một “challenge game”. Trong khi các ZK Rollup được bảo mật thông qua toán học (chứng minh cho người khác biết rằng bạn biết câu trả lời mà không cần nói cho người kia biết câu trả lời), bạn sẽ thấy rõ sự khác nhau giữa chúng thông qua ví dụ đơn giản dưới đây:
Zk Rollup và Optimistic Rollup vào một quán Bar người lớn, quán Bar này chỉ có người trên 18 tuổi mới được vào. Bảo vệ hỏi: “Tôi có thể xem CMND của bạn được không?”.
- ZK Rollup nói: “Tôi có thể chứng minh với bạn rằng tôi trên 18 tuổi, nhưng tôi sẽ không cho bạn xem CMND của tôi”.
- Optimistic Rollup nói: “Nếu không ai có thể chứng minh tôi chưa đủ 18 tuổi trong 7 ngày, điều đó có nghĩa là tôi trên 18 tuổi”.
Ở góc độ người dùng retail, “Challenge game” được biểu hiện thông qua thời gian chờ rút tiền trên các platform như Optimism hay Arbitrum. Nếu giảm thời gian chờ rút tiền xuống thì người dùng sẽ trải nghiệm sử dụng tốt hơn, bù lại bảo mật sẽ kém lại vì chi phí tấn công mạng sẽ ít hơn.
Các giải pháp Zk Rollup không mắc phải điều này, qua thời gian, khi công nghệ zero knowledge proof phát triển lên thì Zk Rollup chỉ ngày càng tốt hơn, quá trình xác minh – xác nhận tính hợp lệ của khối Rollup sẽ chỉnh nhanh và rẻ hơn.
Chính vì vậy mà Zk Rollup được công nhận là giải pháp mở rộng quy mô hàng đầu cho Ethereum trong trung và dài hạn (thực tế công nghệ Zk Rollup vẫn còn nhiều hạn chế ở thời điểm hiện nay, chúng ta sẽ tìm các hạn chế đó ở những phần sau).
“Trong trung và dài hạn, ZK rollups sẽ thành công trong tất cả các trường hợp sử dụng khi công nghệ ZK-SNARK được cải thiện” – Vitalik Buterin.
3. Sự khác nhau cơ bản giữa các dự án Zk Rollup
Trên thị trường hiện tại có rất nhiều dự án làm về Zk Rollup, mỗi cách tiếp cận khác nhau có các ưu và hạn chế riêng, việc am hiểu những ưu và hạn chế đó sẽ giúp chúng ta có nhiều góc nhìn khách quan hơn, hỗ trợ quá trình phân tích & đánh giá tiềm năng của các dự án đó để tìm kiếm cơ hội đầu tư tốt.
Theo cá nhân mình, chúng ta có thể phân loại các dự án Zk Rollup dựa trên 2 yếu tố:
- Cách Data được lưu trữ (on-chain hay off-chain).
- Zero-knowledge proof scheme được sử dụng.
Việc lựa chọn lưu trữ data on-chain hoặc off-chain (hay còn gọi là validium) mang lại các ưu và hạn chế riêng, không có lựa chọn nào là tối ưu trong mọi trường hợp, nó là một sự trade-off giữa tính phân quyền (decentralized) & tốc độ xử lý, chi phí hoạt động, tùy theo định hướng phát triển của dự án mà họ sẽ đưa ra các lựa chọn phù hợp.
Điểm thứ hai cần chú ý là công nghệ Zero-knowledge proof được sử dụng, tương tự trường hợp trên, không có giải pháp nào tốt nhất trong mọi trường hợp, nó là sự cân bằng giữa kích thước bằng chứng (proof size) và các giả định bảo mật (security assumptions). Các bạn có thể thấy sự liên hệ giữa chúng thông qua hình ảnh dưới đây.
4. Hạn chế chung của các dự án Zk Rollup ở thời điểm hiện tại
Cá nhân mình nhận thấy có 2 hạn chế đáng chú ý của các dự án Zk Rollup, điểm đầu tiên là hạn chế chung của Rollup, điểm còn lại là hạn chế riêng của Zk Rollup.
Đầu tiên là vấn đề về phí giao dịch, đa phần các Rollup platform có phí giao dịch đắt hơn các EVM Sidechain của Ethereum. Điều này là do mỗi khối rollup cuối cùng đều phải đăng lên Ethereum, điều này liên kết phí của họ với phí Ethereum (Zk Rollup tiết kiệm phí hơn vì họ chỉ đăng Proof), vì vậy mỗi Rollup platform chỉ có thể mở rộng Ethereum theo một tỷ lệ nhất định.
Tiếp theo, ở thời điểm hiện tại, zk-Rollup không thân thiện với nhà phát triển, các kịch bản ứng dụng và chức năng khá hạn chế:
- Các ứng dụng của Zk Rollup hiện chỉ giới hạn trong các khoản thanh toán đơn giản và giao dịch.
Ngoài ra, Zk Rollup hiện tại không hỗ trợ khả năng tổng hợp, các ứng dụng Zk Rollup khác nhau không thể tương tác với nhau trong cùng một Layer 2.
- Nếu bạn muốn phát triển DApps trong Zk-Rollup, bạn cần viết tất cả logic hợp đồng thông minh của mình bằng một ngôn ngữ đặc biệt, điều này không chỉ phức tạp về cú pháp của ngôn ngữ được yêu cầu (vì là một ngôn ngữ mới), mà còn đòi hỏi kiến thức chuyên môn cực kỳ cao trong lĩnh vực zero knowledge proof.
5. Các dự án Zk Rollup nổi bật trên thị trường
Dưới đây là một số dự án Zk Rollup nổi bật trên thị trường;
StarkEX & StarkNET của Starkware
Starkware (hay còn gọi là Starkware Industries) là công ty được thành lập vào tháng 1 năm 2018 bởi Eli Ben Sasson – Đồng sáng lập của STARK & ZCash. StarkWare giúp cải thiện khả năng mở rộng và quyền riêng tư của các blockchain bằng cách sử dụng công nghệ STARK để triển khai và xác minh zero knowledge proof.
Sản phẩm đầu tiên mà StarkWare cho ra mắt là StarkEX, có thể xem nó là một Specific L2, các ứng dụng của StarkEX chỉ hạn chế ở việc giao dịch & thanh toán đơn giản như: AMM, Spot Trading, Payments, NFT minting & trading. StarkEX cho phép các Dapp triển khai ở 3 chế độ như sau:
- Chế độ ZK Rollup: Data được lưu giữa on-chain.
- Chế độ Validium: Data được lưu giữ off-chain.
- Chế độ Volition: Kết hợp chúng với nhau.
StarkNET là phiên bản Zk Rollup General & Permissionless của StarkEX, nó được dự đoán là sẽ được ra mắt đầy đủ trong Q1 – Q2/2022. Nó hoạt động như một General L2 khác trên Ethereum, cho phép bất kỳ Dapp nào xây dựng trên nó mà không ảnh hưởng đến khả năng tổng hợp và bảo mật.
StarkEX & StarkNET có ngôn ngữ lập trình và máy ảo thực thi riêng, chúng không tương thích EVM của Ethereum. Vì vậy, các nhà phát triển muốn xây dựng Dapp trên StarkNET trong tương lai thì họ sẽ cần học một ngôn ngữ lập trình mới đó là Cairo, native smart contract language cho StarkEX & StarkNET.
zkSync (v1), zkPorter (v2), ZkEVM (v3) của Matter Labs
Nói đến Zk Rollup, ngoài Starkware thì một công ty khác cũng nổi tiếng không kém đó là Matter Labs. Sản phẩm Zk Rollup mà Matter Labs cung cấp sử dụng PLONK để triển khai và xác minh zero knowledge proof.
Phiên bản đầu tiên có tên zkSync (v1), phiên bản thứ hai có tên là ZkPorter (v2). Sự khác biệt chính giữa chúng là việc data được lưu trữ on-chain hay off-chain. Về cơ bản:
- Nếu bạn muốn an toàn, hãy sử dụng phiên bản V1.
- Nếu bạn muốn rẻ hơn (nhưng kém an toàn hơn), hãy sử dụng V2.
Mục đích sử dụng chung của hai phiên bản cũng chỉ phục vụ các khoản thanh toán (payment), nó không đa dạng như StarkEX.
Đồng thời, Matter Labs cũng đang làm việc để cho ra mắt một phiên bản Zk Rollup tương thích với EVM (ZkEVM), dự đoán ra mắt hoàn toàn vào Q1/2021. Native smart contract language trên phiên bản này là Zinc và phiên bản này cũng có một máy áo thực thi riêng, nó sẽ có nhiều tương tích với EVM.
Loopring
Loopring được ra mắt vào cuối năm 2019, nó sử dụng một tập hợp các thuật toán được gọi là SNARK để triển khai và xác thực các zero knowledge proof.
Loopring đã trải qua một số phiên bản nâng cấp, phiên bản đầu tiên chỉ hỗ trợ giao dịch DEX (orderbook). Sau đó ở phiên bản thứ hai, Loopring hỗ trợ thanh toán & chuyển khoản. Trong phiên bản thứ ba, Loopring hỗ trợ AMM Swaps. Phiên bản thứ 4 được ra mắt vào 9/2021, hỗ trợ mining, chuyển và giao dịch NFTs.
Đồng thời, Loopring cũng đang làm việc để cho ra mắt một phiên bản Zk Rollup tương thích với EVM (ZkEVM), nhưng phiên bản đầu tiên có thể sẽ mất tầm một năm nữa để ra mắt.
6. Hướng phát triển chung của các dự án Zk Rollup
Một thesis đơn giản về hướng phát triển của Zk Rollup “về lâu dài, bất cứ điều gì blockchain L1 làm được, một Zk Rollup có thể làm điều đó tốt hơn đáng kể”.
Theo hướng suy nghĩ này, mình nghĩ các giải pháp Zk Rollup muốn là người chiến thắng cuối cùng phải duy trì tất cả các đặc tính nổi bật của L1, trong trường hợp này là Ethereum như:
- Cho phép xây dựng các ứng dụng tùy ý → general purpose smart contract platform.
- Permissionless, secure và dĩ nhiên là có chi phí thấp hơn so với chuỗi cơ sở (Ethereum).
Vì vậy, mình thấy StarkNET & ZkEVM có thể là các cách tiếp cận đầy hứa hẹn. ZkEVM sẽ có lợi thế lớn hơn khi nó vẫn duy trì được dev experience tương tự trên Ethereum L1.
Đối với zkEVM, các ý tưởng thiết kế hiện tại thực sự thuộc hai loại:
- Các Zk Rollup platform có ngôn ngữ và máy ảo riêng như StarkNET của Starkware, ZkEVM của Matter Labs, Polygon ZkEVM của Polygon sẽ tiếp cận theo hướng sử dụng trình biên dịch để dịch ngôn ngữ native của họ thành ngôn ngữ có thể được thực thi trong máy ảo ZkEVM. Giải pháp này có hạn chế là không đạt được 100% khả năng tương thích.
- Hướng tiếp cận khác là ZkEVM tương thích hoàn toàn mà không cần bất kỳ bản dịch nào, solidity code có thể thực thi trực tiếp. Cách tiếp cận này tối ưu hơn nhưng cũng khó để triển khai hơn.
7. Tổng kết
Phía trên là một số suy nghĩ của mình về ưu & hạn chế và hướng phát chung của các dự án Zk Rollup