ZK (Zero-Knowledge Proof) phương thức mã hóa xác nhận mà không tiết lộ thông tin.
Trong hoạt động tham gia 2 bên:
- Prover Nó có một sự hiểu biết.
- Verifier Cô ấy đang kiểm tra.
Ví dụ: tín dụng#
Người cho vay muốn xác minh khả năng thanh toán của người vay, nhưng người vay muốn ở lại. ẩn danh.
→ Bằng chứng ZK đảm bảo khả năng thanh toán mà không tiết lộ danh tính và an toàn.
Lịch sử#
1985 Silvio Micali, Avi Vigderson, Oded Goldreich xuất bản Sự phức tạp của kiến thức về hệ thống chứng cứ tương tác.
Trong công việc:
- Thêm thuật ngữ bằng chứng không tiết lộ;
- Công nghệ mật mã được mô tả;
- Bằng chứng không mở dữ liệu cá nhânNhưng nó bắt buộc chúng ta phải giao tiếp.
Các loại#
zk-SNARKs
Zero-Knowledge Succinct Non-Interactive Argument of Knowledge.
- Bằng chứng mà không tiết lộ thông tin;
- Yêu cầu khóa bí mật, được thành lập trước;
- Ví dụ ứng dụng: Zcash Token bảo mật được sử dụng rộng rãi đầu tiên trên zk-SNARKs;
- Khi chuyển Zcash → xác nhận đến mà không tiết lộ các bên và số tiền.
zk-STARKs
Zero-Knowledge Scalable Transparent Arguments of Knowledge.
- Mở ngẫu nhiên phân tích bằng chứng;
- Không yêu cầu cài đặt ban đầu;
- Không tiết lộ dữ liệu mật bên thứ ba;
- Còn được gọi là với các giao thức của Arthur-Merlin.
So sánh
| Phương thức | zk-SNARKs | zk-STARKs |
|---|---|---|
| Kích thước bằng chứng | Nhỏ. | Nhiều hơn |
| Trusted setup | Ừ | Không. |
| Post-quantum security | Nhược điểm | Đứng vững |
| Tốc độ xác minh | Nhanh lên. | Nhanh hơn cho dữ liệu lớn |
Tính chất ZK#
- Độ chính xác (Completeness) true xác nhận → có thể thuyết phục verifier;
- Sự xác thực (Soundness) false affirmation → không thể thuyết phục verifier;
- Bảo mật hoàn toàn (Zero-knowledge) verifier không biết gì ngoài sự thật.
Sử dụng#
| Khung | Sử dụng |
|---|---|
| Blockchain | Giao dịch có xác nhận mà không tiết lộ dữ liệu |
| Tài chính | Bảo vệ dữ liệu khách hàng + quy định |
| Định danh | Xác minh danh tính mà không tiết lộ |
| Y học | Truy cập dữ liệu bệnh nhân mà không vi phạm quyền riêng tư |
ZK trên TON#
| Chức năng | Mô tả |
|---|---|
| Định danh | Kiểm tra mà không tiết lộ thông tin cá nhân |
| An ninh mạng | Kiểm tra độ chính xác dữ liệu mà không tiết lộ khóa |
| Giao thức trao đổi | Chứng minh các điều kiện mà không tiết lộ dữ liệu ban đầu |
Các dự án
- ZK on TON tài liệu và hướng dẫn;
- Tonnel Network giao dịch cá nhân (Lốc xoáy trên TON), GitHub.
Nguồn tin#
- ZK-STARK trên Wikipedia;
- What are zk-SNARKs (Zcash);
- ZK trong blockchain TON (tonblockchain.ru);
- Binance Academy: zk-SNARKs vs zk-STARKs.