Zk Rollup là gì? ZkRollup là một công nghệ mà được các dự án blockchain phát triển trên Layer 2 của Ethereum sử dụng để giải quyết vấn đề mở rộng. Có rất nhiều các dự án sử dụng Zk Rollup nhưng các hướng vận hành và phát triển lại có những đặc điểm khác nhau.
Trước khi đọc bài viết này bạn nên đọc lại một số bài viết dưới đây để có 1 góc nhìn tổng quan:
Tổng Quan Về ZK Rollup
ZK Rollup là gì?
Zk Rollup viết đầy đủ là Zero-Knowledge Rollup là giải pháp mở rộng Layer 2 giúp giải quyết vấn đề mở rộng trên Ethereum bằng cách đưa các giao dịch ra ngoài chuỗi (off-chain). Trong cùng một thời điểm, những Operator sẽ tổng hợp các giao dịch thành 1 Batch duy nhất rồi gửi xuống Ethereum cùng với một bằng chứng giao dịch là Validity Proof để chứng minh tính đúng đắn của giao dịch.
Việc rút tiền từ các giải pháp ZK Rollup là không có trì hoãn như giải pháp Optimistic Rollup vì giao dịch sau khi được gửi lên Ethereum và việc xác minh Validity Proof được diễn ra ngay trong thời điểm đó.
Các giải pháp ZK Rollup sẽ gửi dữ liệu dưới dạng nén là calldata. Sau bản cập nhật Cancun Upgrade, các nền tảng Layer 2 sẽ chuyển sang sử dụng một dạng nén dữ liệu mới đó chính là Blobdata. Với Blobdata, phí giao dịch trên mạng lưới Layer 2 sẽ giảm từ 10 - 100 lần.
Một số những vai trò quan trọng trong ZK Rollup có thể kể đến như:
- Sequencer: Đóng vai trò là thực thi, tổng hợp và đóng gói các giao dịch trên Layer 2 lại thành các Batch (lô). Sau đó, đăng tải lên Ethereum.
- Proposer: Đóng vai trò đăng tải trạng thái mạng (State Root) lên Ethereum.
- Prover: Đóng vai trò là tạo bằng chứng chứng minh tính đúng đắn của State Root.
Sẽ có một số ít các nền tảng ZK Rollup đưa 2 thực thể Sequencer và Proposer thành 1 thực thể duy nhất, có nghĩa là sẽ có những nền tảng cho phép Sequencer thực hiện cả công việc của Proposer. Khái niệm Operator sẽ là một khái niệm chung chỉ những người tham gia vận hành nền tảng Layer 2.
ZK Rollup tương tác với Ethereum như thế nào?
Thành phần cấu tạo nên ZK Rollup
Các nền tảng ZK Rollup được cấu thành bởi những thành phần dưới đây:
- On-chain Contracts: Các nền tảng ZK Rollup được kiểm soát bởi các hợp đồng thông minh triển khai trên Ethereum. Sẽ có 2 loại On-chain Contracts, một On-chain Contracts đóng vai trò là lưu trữ các khối của Rollup, theo dõi tiền gửi giữa L2 và L1 và cập nhật trạng thái mạng. Một On-chain Contracts đóng vai trò là xác minh bằng chứng ZK được gửi từ Layer 2 xuống Layer 1.
- Off-chain Virtual Machine (VM): Việc thực hiện các giao dịch off-chain và lưu trữ trạng thái mạng ẽ diễn ra trên một máy ảo độc lập so với máy ảo Ethereum (EVM).
Zk Rollup là một Hybrid Scaling Solutions vừa giải quyết được bài toán mở rộng trên Ethereum vừa thừa hưởng được tính bảo mật và phi tập trung từ Ethereum.
Data Availability - Tính khả dụng dữ liệu
Các nền tảng ZK Rollup sẽ chuyển dữ liệu được nén dưới dạng calldata xuống Ethereum. Tuy nhiên, ZK Rollup không cần đăng quá nhiều dữ liệu lên chuỗi chính bởi vì đã có bằng chứng giao dịch (Validity Proof) đi theo kèm). Bất kì ai để có thể truy cập vào dữ liệu calldata.
Censorship Resitance
Censorship Resitance tạm dịch là chống kiểm duyệt, là khả năng của một hệ thống Blockchain không bị kiểm soát bởi bất kỳ cá nhân hoặc tổ chức nào. Hầu hết các ZK Rollup đều có những Operator như các Supernode đóng vai trò là thực thi giao dịch, tạo khối và gửi tới Ethereum. Các Operator cũng góp phần làm giảm khả năng phi tập trung và làm cho mạng lưới dễ tổn thương.
Để giải quyết vấn đề này, ZK Rollup cho phép người dùng gửi giao dịch trực tiếp tới các On-chain Contract trên Ethereum nếu họ cho rằng các Operator đang làm quyền. Điều này cho phép người dùng thoát khỏi các nền tảng Layer 2 mà không cần đến các Operator.
Cơ Chế Hoạt Động Của ZK Rollup
Tổng quan về cơ chế hoạt động trên ZK Rollup
Cơ chế hoạt động của ZK Rollup xoay quanh một số các yếu tố như:
- Thực thi & Tổng hợp giao dịch.
- Gửi giao dịch về Layer 1.
- Quá trình tạo bằng chứng giao dịch.
Thực thi & Tổng hợp giao dịch
Người dùng sẽ gửi các lệnh giao dịch của mình có thể là mua bán, vay, cho vay, long, short,... cho các node ở trên L2 để xử lý. Công việc của các node trên L2 bao gồm:
- Sắp xếp các giao dịch.
- Thực thi các giao dịch
- Tổng hợp các giao dịch thành 1 Batch.
- Gửi các khối này về mainet (Ethereum).
Việc trở thành node trên các mạng lưới tầng 2 trong tương lai sẽ được phi tập trung hóa nhưng hiện tại các node này đều là những cá nhân, tổ chức cần phải verify với L2. Các node sẽ cần phải đặt cọc một lượng tài sản cố định để tham gia thực thi trên mạng lưới L2 nhưng nếu các node có những hành động nhằm phá hoại mạng lưới thì tài sản sẽ bị tịch thu và không được tham gia các quá trình L2 nữa.
Gửi về Layer 1
Các dữ liệu giao dịch được gửi về Ethereum dưới dạng calldata. Calldata giúp cho việc lữu trữ dữ liệu ở Ethereum nhẹ hơn dẫn đến chi phí rẻ hơn mà vẫn đảm bảo những yếu tố cần thiết trong bảo mật mà không ảnh hưởng tới mạng lưới Ethereum.
Tạo ra bằng chứng giao dịch (Validity Proof)
Mỗi khi Proposer gửi State Root về Layer 1 thì họ cần các Prover có thể tạo bằng chứng cho những State Root đó. Chính vì vậy, khi State Root được gửi cùng với Validity Proof xuống Ethereum thì nền tảng Verifier Contract sẽ chỉ cần xác minh những Validity Proof đó.
Và với các giải pháp Zk Rollup thì họ sử dụng các bằng chứng SNARK đối với zkSync, STARK đối với StarkNet hay PLONKY 2 đối với Polygon. Mỗi một loại bằng chứng đều có những ưu và nhược điểm riêng khi áp dụng thực tế.
Các loại bằng chứng sẽ có nhiều tiêu chí để chúng ta tham khảo bao gồm:
- Kích cỡ: Bởi vì mainet cũng sẽ lưu trữ các bằng chứng này mà số lượng các bằng chứng mà L2 đăng lên L1 sẽ ngày càng nhiều nên kích cỡ càng lớn sẽ tạo ra chi phí giao dịch càng nhiều.
- Thời gian chứng minh: Thời gian chứng minh các loại bằng chứng bảo mật này ảnh hưởng trực tiếp tới tộc độ giao dịch của các Layer 2
- Bên cạnh đó còn có một số tiêu chí như Thời Gian Tạo Thành, Chi Phí Chứng Minh,...
Header | SNARK | STARK | GROTH 16 |
---|---|---|---|
Kích cỡ | 200 Byte | 45 KB | 200 Byte |
Thời gian tạo bằng chứng | 2.3 s | 1.6 s | 1 - 2 phút |
Thời gian chứng minh | 10 Ms | 16 Ms | - |
Chi phí chứng minh | 600K | 2.5M | 1 - 10 Ms |
Vì sao ZK Rollup giải quyết bài toán mở rộng trên Ethereum?
Nén dữ liệu giao dịch
Thay vì thực thi trực tiếp hàng trăm các giao dịch trên Ethereum thì tính toán đó sẽ được mang ra off-chain và xử lý trên ZK Rollup. Biến hàng trăm giao dịch thành một giao dịch duy nhất rồi gửi về Ethereum làm tiết kiệm một lượng lớn phí giao dịch của người dùng từ đó cải thiện khả năng mở rộng cho Ethereum theo hướng off-chain.
Các nền tảng ZK Rollup có xu hướng đăng ít dữ liệu lên Ethereum hơn so với các Optimistic Rollup bởi vì đã có bằng chứng giao dịch từ đó làm giảm phí giao dịch trên Layer 2 hơn nữa.
ZK Proof
Công nghệ ZK sẽ thực sự giải quyế được bài toán về mở rộng trên Ethereum thông qua một ưu điểm của nó chính là các ZK Proof có thể là bằng chứng để chứng minh các bằng chứng khác. Ví dụ: một ZK-SNARK có thể xác minh các ZK-SNARK khác. Những "bằng chứng chứng minh" như vậy được gọi là bằng chứng đệ quy (Recursive Proofs).
Hiện tại, mỗi một State Root được gửi từ ZK Rollup xuống Layer 1 thì sẽ được gửi kèm với một bằng chứng giao dịch hợp lệ (Validity Proof). Tuy nhiên, vấn đề là các On-chain Contract trên Ethereum cứ phải xác minh từng bằng chứng một làm cho mạng lưới trở nên chậm chạp hơn.
Với Recursive Proofs nó cho phép On-chain Contract trên Layer 1 hoàn tất nhiều State Root chỉ với 1 bằng chứng giao dịch duy nhất. Có nghĩa là có thể tạo ra nhiều khối và mỗi khối có 1 bằng chứng giao dịch đi kèm sau đó kết hợp nhiều State Root đó và nhiều bằng chứng giao dịch đó, từ nhiều bằng chứng giao dịch tạo ra một bằng chứng giao dịch duy nhất đại diện cho nhiều State Root đó. Từ đó, giải quyết vấn đề mở rộng trên Ethereum bằng công nghệ Zero-knowledge.
Phí Giao Dịch Của Các Nền Tảng ZK Rollup
Phí giao dịch trên các nền tảng ZK Rollup được hình thành và ảnh hưởng vởi một số các yếu tố dưới đâyy:
- State Write: Đây là một cho phí cố định về việc gửi giao dịch về Ethereum. ZK Rollup giảm phí này bằng cách gửi các giao dịch theo nhóm.
- Đăng tải dữ liệu: ZK Rollup đăng tải dữ liệu giao dịch dưới dạng nén là calldata lên Ethereum. Có thể hiểu đơn giản đây là phí lưu trữ dữ liệu trên Ethereum.
- Chi phí vận hành Layer 2: Đây là phí được trả cho các Operator để thực thi các giao dịch.
- Phí tạo bằng chứng và xác minh: Operator trong ZK Rollup phải tạo ra bằng chứng giao dịch cho các Batch.
Có thể thấy rằng phí giao dịch trên ZK Rollup được hình thành từ 4 yếu tố như State Write, Đăng tải dữ liệu, Chi phí vận hành Layer 2 và chi phí tạo bằng chứng giao dịch. Có nhiều chi phí sẽ bị phụ thuộc vào mạng lưới Ethereum như đăng tải dữ liệu.
Ưu Điểm Và Nhược Điểm Của ZK Rollup
Ưu điểm | Nhược điểm |
---|---|
Bởi vì các Validity Proof được chứng minh ngay lập tích khi được gửi về L1 nên thời gian rút tiền về L1 của các Zk Rollup tương đối nhanh. | Chi phí liên quan tới việc tính toán và xác minh Validity Proof rất lớn có thể làm tăng phí giao dịch của người dùng. |
Dữ liệu sẽ được lưu trữ tại L1 nên các Zk Rollup được thừa hưởng khả năng bảo mật, phi tập trung từ L1. | Việc các ZK Rollup tương tích với EVM là điều tương đối khó. |
Có thể cải thiện việc nén dữ liệu tốt lơn giúp chi phí gửi các call data xuống L1 trở nên rẻ hơn nên phí giao dịch cũng sẽ rẻ hơn. | Việc tạo ra Validity Proof yếu các các phần cứng chuyên dụng dễ dẫn tới việc một số chuỗi ZK Rollup sẽ khá tập trung. |
Do tính chất của công nghệ Zero-Knowledge nên các dữ liệu của người dùng được đảm bảo quyền riêng tư | Về mặt công nghệ tương đối khó nên cần nhiều thời gian để xây dựng và phát triển. |
Theo Vitalik Buterin có chia sẻ thì các giải pháp Optimistic Rollup là giải pháp cho ngắn và trung hạn còn với các giải pháp ZK Rollup sẽ là giải pháp trong dài hạn. Và thực tế cũng đã chứng mình khi nhiều giải pháp Optimistic Rollup đang hoạt động và có một hệ sinh thái dành cho riêng mình thì các giải pháp ZK Rollup vẫn còn đang trong quá trình nghiên cứu, thử nghiệm do các thử thách liên quan tới kĩ thuật.
Một Số Các ZK Rollup Nổi Bật
StarkNet
StarkNet là một giải pháp Layer 2 sử dụng công nghệ Zk Rollup nhưng bằng chứng mà StarkNet sử dụng đó chính là Stark được xây dựng bởi công ty StarkWare và trong lần gần nhất kêu gọi vốn gần nhất thì StarkWare được định giá 8 tỷ đô.
Thay vì tập trung phát triển EVM thì StarkNet tập trung hướng dẫn các developer các học, sử dụng và xây dựng các dự án trên StarkNet bằng Cairo. StarkNet đã tổ chức rất nhiều sự kiện offline lẫn online để thu hút các developers biết đến Cairo ngoài ra với các dự án tiềm năng thì StarkNet sẵn sàng cung cấp một khoản grant cho dự án tiếp tục phát triển.
Tính đến thời điểm hiện tại mặc dù mới trong giai đoạn alpha mainet nhưng hệ sinh thái của StarkNet đã tương đối đầy đủ các mảnh ghép như:
ZkSync
ZkSync cũng là một L2 sử dụng công nghệ Zk Rollup được phát triển bởi Matter Labs nhưng thay vì tập trung vào ngôn ngữ lập trình của riêng mình là zinc mà họ tập trung phát triển ZkEVM của riêng mình.
Hệ sinh thái của ZkSync cũng đã từng bước hình thành với các dự án phát triển theo định hướng Multichain bao gồm:
- Wallet: BitKeep Wallet, ONTO Wallet, Argent, imToken, Fox Wallet, Math Wallet, Zerion, Token Pocket, Go Pocket, Tally, BlockWallet,...
- DeFi: 1inch, Mute.io, Balancer, Ankr, Woo Network, Taker Protocol, Rubicon, Yearn Finance, Vovo Finance, Forward Protocol, Increment, Frax Protocol, Gro Protocol, Hashflow, Composable Finance, 88mph, Babylon Finance, Phezzan Protocol, ZKEX, Cryptoswap, SpaceFi, Wardenswap, Standard Protocol, Icewater, RapidSwap, Anbôt Labs, Opthy,...
- NFT & NFT Marketplace: TofuNFT, MintSquare, Poster, zkAnimals, zkEagles, Nftscan, The Sell Outs, Nftperp, NFTPinas, Mini Utopia, Sooho,...
Polygon
Polygon cung cấp 1 bộ giải pháp về công nghệ Zk bao gồm:
- Polygon Miden là ZkRollup sử dụng bằng chứng Stark tương tự như StarkNet.
- Polygon zkEVM là ZkRollup sử dụng bằng chứng Snark tương tự như zkSync.
- Polygon Zero là ZkRollup sử dụng bằng chứng Plonky 2 và với bằng chứng này Polygon giới thiệu nó còn mạnh mẽ hơn rất nhiều so với Stark hay Snark.
Tất cả các sản phẩm của Polygon vẫn đang trong quá trình xây dựng và phát triển nhưng hệ sinh thái vẫn chưa hình thành rõ ràng.
Tổng Kết
ZK Rollup được coi là giải pháp trong dài hạn của Ethereum nhưng cần rất nhiều thời gian phát triển và chúng ta cùng theo dõi hành trình của ZK Rollup nhé!
💁 Disclaimer: Tất cả bài viết của Hak Research được cung cấp với mục tiêu là chia sẻ kiến thức và không được xem là lời khuyên đầu tư.
- OpenLayer Là Gì? Tổng Quan Về Tiền Điện Tử OpenLayer - November 20, 2024
- Hermetica Là Gì? Tổng Quan Về Tiền Điện Tử Hermetica - November 20, 2024
- Gevulot Là Gì? Tổng Quan Về Tiền Điện Tử Gevulot - November 19, 2024