
Zero-knowledge proof (bằng chứng không tiết lộ thông tin) là một trong những phát minh mật mã học quan trọng nhất của thế kỷ XX. Công nghệ này cho phép bạn chứng minh một phát biểu là đúng mà không hề tiết lộ bất kỳ thông tin nào về cách bạn biết điều đó, và nó đang thay đổi cách blockchain xử lý quyền riêng tư và khả năng mở rộng.
Zero-knowledge proof là gì?
Zero-knowledge proof (ZKP) là một giao thức mật mã trong đó người chứng minh (prover) thuyết phục người kiểm tra (verifier) rằng một phát biểu nào đó là đúng, mà không tiết lộ thêm bất kỳ thông tin nào ngoài tính đúng của phát biểu đó. Phát biểu này ra đời năm 1985 trong bài nghiên cứu của Goldwasser, Micali và Rackoff, và đã trở thành nền tảng cho nhiều ứng dụng thực tế trong blockchain hiện nay.
Hai bên tham gia: prover giữ thông tin bí mật (witness) cần chứng minh, verifier kiểm tra bằng chứng và chỉ biết phát biểu đúng hay sai, không bao giờ thấy nội dung bí mật.
Ví dụ trực quan: Hang động Ali Baba
Ví dụ kinh điển nhất về ZKP là “Hang động Ali Baba” năm 1990. Peggy (người chứng minh) biết mật khẩu mở cánh cửa ma thuật bên trong hang động hình nhẫn. Victor (người kiểm tra) đứng ngoài không nhìn thấy.
Peggy đi vào hang qua lối A hoặc B, Victor không biết Peggy đi lối nào, rồi Victor hét tên một trong hai lối. Peggy phải ra đúng lối Victor gọi. Nếu Peggy biết mật khẩu, cô luôn ra đúng vì có thể mở cửa trong hang để chuyển sang lối kia. Nếu không biết, Peggy chỉ có xác suất 50% đoán đúng mỗi lần. Sau 20 lần thử, xác suất Peggy gian lận chỉ còn khoảng 1 trên 1 triệu.
Bài kiểm tra ghi lại chứng minh được gì với bên thứ ba, vì hai người có thể dàn xếp trước. Chỉ trong bối cảnh tương tác trực tiếp mới có ý nghĩa chứng minh.
ZK-SNARK và ZK-STARK: Hai loại chính
ZK-SNARK
ZK-SNARK viết tắt của Zero-Knowledge Succinct Non-Interactive Argument of Knowledge. Tính chất “succinct” nghĩa là bằng chứng rất nhỏ (vài trăm byte), xác minh nhanh và chi phí thấp trên blockchain. Tuy nhiên, ZK-SNARK yêu cầu trusted setup – một quá trình tạo tham chiếu chung ban đầu. Nếu tham chiếu bí mật bị lộ (gọi là “toxic waste”), kẻ gian có thể tạo bằng chứng giả. Zcash đã dùng nhiều bên cùng thực hiện multi-party ceremony để giảm thiểu rủi ro này.
ZK-STARK
ZK-STARK viết tắt của Zero-Knowledge Scalable Transparent Argument of Knowledge. Khác với SNARK, STARK không cần trusted setup (transparent), dùng xác suất ngẫu nhiên công khai. STARK cũng có khả năng chống quantum computing vì dựa trên hàm băm, nhưng bù lại bằng chứng lớn hơn nhiều nên chi phí xác minh trên Ethereum cao hơn.
Ứng dụng thực tế
Zcash và giao dịch riêng tư
Zcash là ví dụ đầu tiên ứng dụng ZK-SNARK trên diện rộng. Giao dịch được mã hóa hoàn toàn trên blockchain nhưng vẫn xác minh được tính hợp lệ bằng bằng chứng ZK. Nâng cấp NU5 năm 2022 giới thiệu giao thức Halo 2, loại bỏ yêu cầu trusted setup.
ZK-Rollups mở rộng Ethereum
ZK-Rollups xử lý hàng nghìn giao dịch off-chain theo lô, chỉ ghi lại tóm tắt và bằng chứng xác thực lên Mainnet. Không cần thời gian tranh chấp như optimistic rollups, giúp rút tiền nhanh hơn và hiệu quả vốn tốt hơn. Chi phí xác minh bằng chứng ZK-SNARK trên Ethereum chỉ khoảng 500.000 gas, rất thấp so với việc xử lý từng giao dịch riêng lẻ.
Các dự án ZK-Rollup nổi bật bao gồm ZKsync Era, Starknet, Polygon zkEVM, Scroll và Taiko. Tất cả đều hướng tới tương thích EVM, giúp ứng dụng Ethereum hiện có chuyển sang layer 2 dễ dàng.
Xác thực danh tính và bỏ phiếu
ZKP cho phép chứng minh “tôi trên 18 tuổi” mà không cần tiết lộ giấy tờ tùy thân. World ID dùng iris-scan kết hợp ZK để chứng minh tính duy nhất của người dùng. MACI (Minimal Anti-Collusion Infrastructure) áp dụng ZK-SNARK để kiểm tra phiếu bầu hợp lệ mà không tiết lộ từng người bỏ phiếu gì.
Tại sao ZKP quan trọng?
Trước đây, muốn chứng minh điều gì đó thì phải tiết lộ toàn bộ thông tin liên quan – từ hộ chiếu khi qua sân bay đến số dư tài khoản khi vay vốn. ZKP phá vỡ mô hình đó, cho phép chọn lọc thông tin cần hiển thị. Đây là nền tảng cho tương lai internet phi tập trung, nơi người dùng kiểm soát dữ liệu cá nhân thay vì giao hết cho công ty lớn.
Về khả năng mở rộng, bằng chứng tính hợp lệ cho phép Ethereum xác minh hàng nghìn giao dịch off-chain chỉ với chi phí của một bằng chứng duy nhất, tăng gấp nhiều lần thông lượng mà không hy sinh bảo mật.
Hạn chế và thách thức
- Tạo bằng chứng cần phần cứng mạnh và kiến thức chuyên sâu.
- Triển khai zkEVM tương thích hoàn toàn với Ethereum vẫn là thách thức kỹ thuật lớn.
- ZK-SNARK yêu cầu trusted setup – dù đã giảm thiểu bằng MPC ceremony.
- Chi phí xác minh STARK trên chain vẫn cao do kích thước bằng chứng lớn.
Kết luận
Zero-knowledge proof không còn là lý thuyết mật mã học trừu tượng. Từ Zcash đến ZK-Rollups, từ World ID đến bỏ phiếu kỹ thuật số, ZKP đang trở thành trụ cột quan trọng của blockchain thế hệ tiếp theo. Hiểu ZKP là hiểu phần quan trọng nhất của tương lai internet phi tập trung.
