Công nghệ zk-SNARK: Sự tiến hóa và triển vọng ứng dụng từ lý thuyết đến thực tiễn

robot
Đang tạo bản tóm tắt

Sự phát triển và triển vọng ứng dụng của zk-SNARK

zk-SNARK của sự ra đời và phát triển

Hệ thống chứng minh không kiến thức có thể được truy nguyên từ năm 1985, được Goldwasser, Micali và Rackoff đưa ra trong bài báo "Độ phức tạp kiến thức của hệ thống chứng minh tương tác". Lý thuyết này khám phá cách chứng minh tính chính xác của một tuyên bố thông qua việc trao đổi không kiến thức trong một hệ thống tương tác với số vòng giới hạn. Các hệ thống chứng minh không kiến thức ban đầu gặp phải những thiếu sót về tính thực tiễn, chủ yếu giới hạn trong nghiên cứu lý thuyết.

Trong suốt mười năm qua, công nghệ zk-SNARK đã phát triển nhanh chóng, trở thành một hướng quan trọng trong lĩnh vực mật mã học. Trong đó, việc xây dựng các giao thức zk-SNARK chung, không tương tác và có kích thước chứng chỉ hạn chế là một trong những hướng khám phá quan trọng. Thách thức cốt lõi của zk-SNARK là tìm kiếm sự cân bằng giữa tốc độ chứng minh, tốc độ xác minh và kích thước chứng minh.

Năm 2010, bài báo của Groth mang tên "Bằng chứng không tương tác ngắn dựa trên cặp" là một bước đột phá quan trọng trong lĩnh vực ZKP, đặt nền tảng lý thuyết cho zk-SNARK. Năm 2015, Zcash đã áp dụng chứng minh không kiến thức vào việc bảo vệ quyền riêng tư giao dịch, mở ra ứng dụng rộng rãi của ZKP trong lĩnh vực blockchain.

Kể từ đó, nhiều thành tựu học thuật đã thúc đẩy sự phát triển của ZKP:

  • Giao thức Pinocchio năm 2013 đã cải thiện hiệu quả chứng minh và xác minh.
  • Thuật toán Groth16 năm 2016 đã tối ưu hóa thêm kích thước chứng minh và tốc độ xác minh.
  • Thuật toán Bulletproofs được đề xuất vào năm 2017 đã thực hiện việc chuyển đổi nhanh chóng từ lý thuyết sang ứng dụng.
  • Giao thức zk-STARKs được đề xuất vào năm 2018 không cần thiết lập tin cậy, mở ra hướng nghiên cứu mới

Các tiến bộ quan trọng khác bao gồm PLONK, Halo2, tất cả đều đã cải tiến zk-SNARK.

HashKey ZK 101 Đợt 1: Nguyên lý lịch sử và ngành

Ứng dụng chính của zk-SNARK

zk-SNARK hiện đang chủ yếu được áp dụng trong hai lĩnh vực bảo vệ quyền riêng tư và mở rộng.

Bảo vệ quyền riêng tư

Các dự án giao dịch riêng tư sớm như Zcash và Monero đã thúc đẩy sự phát triển của các ứng dụng bảo vệ quyền riêng tư. Mặc dù nhu cầu về giao dịch riêng tư không nổi bật như mong đợi, nhưng vẫn là một hướng ứng dụng quan trọng.

Lấy Zcash làm ví dụ, quy trình thực hiện giao dịch riêng tư của nó sử dụng zk-SNARKs bao gồm: thiết lập hệ thống, tạo khóa, đúc tiền, tạo chứng minh giao dịch, xác minh và nhận. Tuy nhiên, thiết kế dựa trên mô hình UTXO của Zcash cũng có một số hạn chế.

Tornado Cash sử dụng thiết kế hồ bơi tiền tệ lớn duy nhất, dựa trên mạng Ethereum, cung cấp giải pháp bảo vệ quyền riêng tư tổng quát hơn. Các đặc điểm chính của nó bao gồm hạn chế truy cập, ngăn chặn chi tiêu hai lần, liên kết giữa chứng minh và thông báo hủy bỏ.

HashKey ZK 101 Đợt 1: Nguyên lý lịch sử và ngành

mở rộng

Giải pháp mở rộng ZK có thể được áp dụng cho mạng lớp một (chẳng hạn như Mina) hoặc mạng lớp hai (ZK Rollup). Các vai trò cốt lõi của ZK Rollup bao gồm Sequencer và Aggregator, trong đó Sequencer chịu trách nhiệm đóng gói giao dịch, còn Aggregator chịu trách nhiệm hợp nhất giao dịch và tạo ra zk-SNARK.

Ưu điểm của ZK Rollup là chi phí thấp, tốc độ hoàn tất nhanh và bảo vệ quyền riêng tư, nhưng cũng phải đối mặt với thách thức như khối lượng tính toán lớn và thử thách về độ an toàn. Hiện tại, các dự án ZK Rollup chính trên thị trường bao gồm StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll.

Các dự án này chủ yếu lựa chọn giữa SNARK (và các phiên bản cải tiến của nó) và STARK trên lộ trình công nghệ, đồng thời chú trọng đến mức độ hỗ trợ EVM. Tính tương thích với EVM là một vấn đề quan trọng, ảnh hưởng đến hệ sinh thái nhà phát triển và cấu trúc cạnh tranh của các dự án.

HashKey ZK 101 Đợt 1: Nguyên lý lịch sử và ngành

Nguyên lý cơ bản của zk-SNARK

ZK-SNARK (zk-SNARK) là công nghệ chứng minh không biết (zero-knowledge proof) được áp dụng rộng rãi hiện nay. Các đặc điểm cốt lõi của nó bao gồm tính không biết, tính ngắn gọn, tính không tương tác, độ tin cậy và khả năng trích xuất thông tin.

Nguyên lý chứng minh zk-SNARK của Groth16 chủ yếu bao gồm các bước sau:

  1. Chuyển đổi vấn đề thành mạch điện
  2. Chuyển đổi mạch điện sang dạng R1CS
  3. Chuyển đổi R1CS sang dạng QAP
  4. Thiết lập cấu hình đáng tin cậy, tạo khóa chứng minh và khóa xác minh
  5. Tạo và xác minh chứng zk-SNARK

HashKey ZK 101 Đợt 1: Nguyên lý lịch sử và ngành

Sự phát triển nhanh chóng của công nghệ zk-SNARK đang thúc đẩy ứng dụng của nó trong blockchain và các lĩnh vực rộng lớn hơn, trong tương lai có khả năng phát huy vai trò lớn hơn trong bảo vệ quyền riêng tư, mở rộng quy mô.

HashKey ZK 101 Đợt 1: Nguyên lý lịch sử và ngành

ZK4.27%
Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • 7
  • Chia sẻ
Bình luận
0/400
DeepRabbitHolevip
· 2giờ trước
Nghiên cứu lý thuyết không có gì hữu ích phải không?
Xem bản gốcTrả lời0
PerpetualLongervip
· 08-03 01:28
Đồ này chính là thần khí mua đáy cho thị trường tăng tiếp theo! Vị thế đã đầy All in zk-SNARK vùng Đại thị trường tăng đã bắt đầu rồi, tin tôi đi!
Xem bản gốcTrả lời0
SighingCashiervip
· 08-03 01:27
Thuật toán này viết phức tạp như vậy, vẫn nên lén lút vui vẻ thôi.
Xem bản gốcTrả lời0
rugpull_ptsdvip
· 08-03 01:27
Cái này thật sự có thể ngăn chặn rug không?
Xem bản gốcTrả lời0
ParanoiaKingvip
· 08-03 01:22
Cái này nghe có vẻ khó nghĩ quá.
Xem bản gốcTrả lời0
Lonely_Validatorvip
· 08-03 01:03
Quay đi quay lại mà vẫn không hiểu
Xem bản gốcTrả lời0
DataChiefvip
· 08-03 00:59
Nói trắng ra không phải là Mật mã học sao? Làm cái này cao sang vậy.
Xem bản gốcTrả lời0
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)