Zero-Knowledge Proofs: ZK-SNARK vs ZK-STARK — So sánh và ứng dụng blockchain

Zero-Knowledge Proofs: ZK-SNARK vs ZK-STARK — So sánh và ứng dụng blockchain

Zero-Knowledge Proofs (ZKP) cho phép một bên chứng minh họ biết một bí mật mà không tiết lộ bí mật đó. Công nghệ này đang là xương sống của sự mở rộng quy mô blockchain và bảo mật dữ liệu riêng tư.

Hai kỹ thuật ZKP phổ biến nhất là ZK-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) và ZK-STARK (Zero-Knowledge Scalable Transparent Argument of Knowledge). Cả hai đều đạt được tính zero-knowledge nhưng khác biệt về thiết kế, trade-offs và ứng dụng thực tế.

Minh họa ví dụ Ali Baba cave cho Zero-Knowledge Proof: Peggy vào hang đường A hoặc B trong khi Victor đợi bên ngoài từ Wikipedia

Ví dụ kinh điển để hiểu ZKP là bài toán Ali Baba cave. Peggy muốn chứng minh mình biết mật khẩu mở cửa bí mật trong hang mà không tiết lộ mật khẩu. Victor (người xác thực) yêu cầu Peggy ra từ một lối ngẫu nhiên. Nếu Peggy biết mật khẩu, cô luôn xuất hiện đúng lối Victor yêu cầu sau nhiều lần lặp lại.

ZK-SNARK sử dụng trusted setup (cài đặt tin cậy) để tạo ra tham số chung. Điều này tạo ra bằng chứng nhỏ gọn (khoảng 200 bytes) và xác thực nhanh, nhưng yêu cầu một buổi tạo tham số tin cậy — nếu bị xâm phạm, hệ thống có thể bị tạo ra bằng chứng giả. Các dự án sử dụng ZK-SNARK: Zcash, Tornado Cash (trước khi bị sanction), và các Layer 2 như zkSync Era.

Minh họa bước 2 Ali Baba cave: Victor chọn ngẫu nhiên lối ra, Peggy xuất hiện đúng lối yêu cầu chứng minh kiến thức bí mật không tiết lộ từ Wikipedia

So sánh nhanh: ZK-SNARK ưu tiên kích thước bằng chứng và tốc độ xác thực (phù hợp Layer 1, privacy coin), ZK-STARK ưu tiên minh bạch, an toàn lượng tử và không trusted setup (phù hợp Layer 2 scaling, rollup). Xu hướng hiện tại là các ZK rollup mới (StarkNet, Linea, Scroll) chọn ZK-STARK hoặc các biến thể của nó.

Ứng dụng thực tế: ZKP cho phép xác thực giao dịch mà không tiết lộ số dư/người gửi/người nhận (privacy), rollup để scale Ethereum (zkEVM), xác thực identity không tiết lộ dữ liệu cá nhân (ZK identity), và machine learning zero-knowledge (zkML).

Tham khảo thêm: Wikipedia: Zero-knowledge proof, Wikipedia: ZK-SNARK, StarkNet Documentation

Tôi là một lập trình viên IOS. Code chính là IOS nhưng thỉnnh thoảng vẫn đá sang Android hoặc web. Mặc dù không quá thông thạo nhưng tôi sẽ chia sẻ những kiến thức mà mình đã tìm hiểu, áp dụng qua.

Bài viết liên quan

Cross-chain Bridges: Lock-and-mint, Burn-and-mint, Liquid networks

Cross-chain Bridge là gì? Cross-chain bridge là hạ tầng cho phép chuyển tài sản, thông tin và trạng thái giữa các blockchain độc lập. Vì mỗi blockchain (Ethereum, Bitcoin, Solana,…

Xem thêm

Chainlink CCIP: Kết nối cross-chain và real-world data cho smart contract

Chainlink CCIP là gì? Chainlink CCIP (Cross-Chain Interoperability Protocol) là giao thức mới của Chainlink cho phép smart contract trên các blockchain khác nhau gửi token và dữ liệu tuần…

Xem thêm

Chainlink CCIP: Kết nối cross-chain và real-world data cho smart contract

Chainlink CCIP là gì? Chainlink CCIP (Cross-Chain Interoperability Protocol) là giao thức mới của Chainlink cho phép smart contract trên các blockchain khác nhau gửi token và dữ liệu tuần…

Xem thêm
0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất