Sự phát triển, ứng dụng và nguyên lý cơ bản của zk-SNARK
Một, lịch sử phát triển của zk-SNARK
Hệ thống chứng minh không biết (zk-SNARK) hiện đại có thể được truy nguyên về năm 1985. Lúc đó, Goldwasser, Micali và Rackoff đã hợp tác đưa ra một khái niệm tiên phong, tức là trong các hệ thống tương tác, chứng minh tính đúng đắn của một phát biểu thông qua việc trao đổi một lượng thông tin tối thiểu. Ý tưởng này đã được công bố chính thức vào năm 1989, đặt nền tảng lý thuyết cho chứng minh không biết.
Các hệ thống chứng minh không biết (zk-SNARK) trong giai đoạn đầu có những hạn chế về tính thực tiễn, chủ yếu dừng lại ở cấp độ lý thuyết. Đến gần đây, trong khoảng mười năm qua, với sự nổi lên của mật mã trong lĩnh vực tiền điện tử, chứng minh không biết mới thực sự bước ra ánh sáng, trở thành một hướng nghiên cứu quan trọng. Trong đó, phát triển các giao thức chứng minh không biết chung, không tương tác và có quy mô chứng minh hạn chế là một mục tiêu cốt lõi.
Đột phá lớn của zk-SNARK xuất hiện vào năm 2010, bài báo của Groth đã đặt nền tảng lý thuyết cho zk-SNARK. Năm 2015, Zcash đã ứng dụng zk-SNARK vào việc bảo vệ quyền riêng tư giao dịch, mở ra việc ứng dụng rộng rãi của zk-SNARK trong các tình huống thực tế.
Trong thời gian này, một số thành tựu học thuật quan trọng bao gồm:
Giao thức Pinocchio năm 2013 đã nâng cao hiệu quả của việc chứng minh và xác minh.
Groth16 năm 2016, đã tối ưu hóa quy mô chứng minh và tốc độ xác minh.
Các Bulletproofs năm 2017 đã đề xuất thuật toán chứng minh ngắn không cần thiết lập tin cậy.
Năm 2018, zk-STARKs đã đề xuất hệ thống chứng minh mới kháng lại máy tính lượng tử.
Ngoài ra, các giao thức mới nổi như PLONK, Halo2 cũng đã đóng góp quan trọng cho sự cải tiến của zk-SNARK.
Hai, tổng quan về ứng dụng của zk-SNARK
Hai lĩnh vực ứng dụng rộng rãi nhất của zk-SNARK hiện nay là bảo vệ quyền riêng tư và mở rộng blockchain.
Trong lĩnh vực bảo vệ quyền riêng tư, các dự án như Zcash và Monero đã thúc đẩy sự phát triển của giao dịch riêng tư. Mặc dù nhu cầu về quyền riêng tư không nổi bật như mong đợi, nhưng các dự án này vẫn duy trì được một vị thế nhất định trên thị trường.
Trong lĩnh vực mở rộng, với việc Ethereum chuyển sang hướng trung tâm rollup, các giải pháp mở rộng dựa trên zk-SNARK lại trở thành tâm điểm.
giao dịch bảo mật
Các dự án giao dịch riêng tư đã được triển khai hiện tại bao gồm:
Sử dụng zk-SNARK của Zcash và Tornado
Sử dụng Monero của Bulletproof
Lấy Zcash làm ví dụ, quy trình giao dịch sử dụng zk-SNARKs bao gồm: thiết lập hệ thống, tạo khóa, đúc tiền, sinh chứng giao dịch, xác minh và nhận.
Tuy nhiên, các dự án như Zcash cũng có một số hạn chế, chẳng hạn như khó tích hợp với các ứng dụng khác, và tỷ lệ sử dụng chức năng giao dịch riêng tư trong thực tế khá thấp. So với đó, thiết kế bể trộn tiền tệ lớn duy nhất mà Tornado áp dụng có tính linh hoạt hơn.
Mở rộng
zk-SNARK trong việc mở rộng chủ yếu được thể hiện qua ZK rollup. ZK rollup bao gồm hai vai trò: Sequencer và Aggregator.
Sequencer chịu trách nhiệm đóng gói giao dịch
Aggregator chịu trách nhiệm hợp nhất các giao dịch và tạo ra zk-SNARK
Ưu điểm của ZK rollup là chi phí thấp, tính cuối cùng nhanh chóng và bảo vệ quyền riêng tư, nhưng cũng phải đối mặt với thách thức về khối lượng tính toán lớn, tính an toàn và khả năng tương thích.
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 và 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 trong lộ trình kỹ thuật, đồng thời chú trọng đến mức độ hỗ trợ cho Ethereum Virtual Machine (EVM).
Ba, Nguyên lý cơ bản của ZK-SNARK
zk-SNARK cần phải đáp ứng ba đặc tính: tính toàn vẹn, độ tin cậy và tính không biết. Lấy zk-SNARK làm ví dụ, tên đầy đủ của nó là "Bằng chứng tri thức không tương tác ngắn gọn", các nguyên tắc thực hiện cụ thể bao gồm các bước sau:
Chuyển đổi vấn đề thành mạch điện
Chuyển đổi mạch điện sang dạng R1CS
Chuyển đổi R1CS sang dạng QAP
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
Tạo và xác minh chứng zk-SNARK
Quá trình này liên quan đến các nguyên tắc mật mã phức tạp, có khả năng chứng minh tính đúng đắn của một tuyên bố mà không tiết lộ thông tin quan trọng.
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.
14 thích
Phần thưởng
14
8
Chia sẻ
Bình luận
0/400
RugResistant
· 07-22 08:15
mẫu rủi ro cao được phát hiện trong các bằng chứng zk trước đây thực sự... cần kiểm tra mã cẩn thận
Xem bản gốcTrả lời0
BearMarketGardener
· 07-21 23:55
Năm tháng quá lâu rồi, tôi không nhớ rõ tình hình năm 85 như thế nào nữa.
Xem bản gốcTrả lời0
WinterWarmthCat
· 07-21 15:48
Không tệ, khá đáng xem
Xem bản gốcTrả lời0
ChainMelonWatcher
· 07-19 17:23
Cuốn đến kiến thức không có kiến thức rồi? Chuối
Xem bản gốcTrả lời0
MEVictim
· 07-19 17:23
Ôi trời, lý thuyết này đã có từ lâu rồi!
Xem bản gốcTrả lời0
ProposalDetective
· 07-19 17:23
bá đạo Just nghiên cứu cái này để kiếm tiền
Xem bản gốcTrả lời0
TeaTimeTrader
· 07-19 17:21
Mật mã học cao không cao sâu, phải xem ai đến nói...
zk-SNARK: Từ đột phá lý thuyết đến con đường tiến hóa thực tiễn ZK Rollup
Sự phát triển, ứng dụng và nguyên lý cơ bản của zk-SNARK
Một, lịch sử phát triển của zk-SNARK
Hệ thống chứng minh không biết (zk-SNARK) hiện đại có thể được truy nguyên về năm 1985. Lúc đó, Goldwasser, Micali và Rackoff đã hợp tác đưa ra một khái niệm tiên phong, tức là trong các hệ thống tương tác, chứng minh tính đúng đắn của một phát biểu thông qua việc trao đổi một lượng thông tin tối thiểu. Ý tưởng này đã được công bố chính thức vào năm 1989, đặt nền tảng lý thuyết cho chứng minh không biết.
Các hệ thống chứng minh không biết (zk-SNARK) trong giai đoạn đầu có những hạn chế về tính thực tiễn, chủ yếu dừng lại ở cấp độ lý thuyết. Đến gần đây, trong khoảng mười năm qua, với sự nổi lên của mật mã trong lĩnh vực tiền điện tử, chứng minh không biết mới thực sự bước ra ánh sáng, trở thành một hướng nghiên cứu quan trọng. Trong đó, phát triển các giao thức chứng minh không biết chung, không tương tác và có quy mô chứng minh hạn chế là một mục tiêu cốt lõi.
Đột phá lớn của zk-SNARK xuất hiện vào năm 2010, bài báo của Groth đã đặt nền tảng lý thuyết cho zk-SNARK. Năm 2015, Zcash đã ứng dụng zk-SNARK vào việc bảo vệ quyền riêng tư giao dịch, mở ra việc ứng dụng rộng rãi của zk-SNARK trong các tình huống thực tế.
Trong thời gian này, một số thành tựu học thuật quan trọng bao gồm:
Ngoài ra, các giao thức mới nổi như PLONK, Halo2 cũng đã đóng góp quan trọng cho sự cải tiến của zk-SNARK.
Hai, tổng quan về ứng dụng của zk-SNARK
Hai lĩnh vực ứng dụng rộng rãi nhất của zk-SNARK hiện nay là bảo vệ quyền riêng tư và mở rộng blockchain.
Trong lĩnh vực bảo vệ quyền riêng tư, các dự án như Zcash và Monero đã thúc đẩy sự phát triển của giao dịch riêng tư. Mặc dù nhu cầu về quyền riêng tư không nổi bật như mong đợi, nhưng các dự án này vẫn duy trì được một vị thế nhất định trên thị trường.
Trong lĩnh vực mở rộng, với việc Ethereum chuyển sang hướng trung tâm rollup, các giải pháp mở rộng dựa trên zk-SNARK lại trở thành tâm điểm.
giao dịch bảo mật
Các dự án giao dịch riêng tư đã được triển khai hiện tại bao gồm:
Lấy Zcash làm ví dụ, quy trình giao dịch sử dụng zk-SNARKs bao gồm: thiết lập hệ thống, tạo khóa, đúc tiền, sinh chứng giao dịch, xác minh và nhận.
Tuy nhiên, các dự án như Zcash cũng có một số hạn chế, chẳng hạn như khó tích hợp với các ứng dụng khác, và tỷ lệ sử dụng chức năng giao dịch riêng tư trong thực tế khá thấp. So với đó, thiết kế bể trộn tiền tệ lớn duy nhất mà Tornado áp dụng có tính linh hoạt hơn.
Mở rộng
zk-SNARK trong việc mở rộng chủ yếu được thể hiện qua ZK rollup. ZK rollup bao gồm hai vai trò: Sequencer và Aggregator.
Ưu điểm của ZK rollup là chi phí thấp, tính cuối cùng nhanh chóng và bảo vệ quyền riêng tư, nhưng cũng phải đối mặt với thách thức về khối lượng tính toán lớn, tính an toàn và khả năng tương thích.
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 và 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 trong lộ trình kỹ thuật, đồng thời chú trọng đến mức độ hỗ trợ cho Ethereum Virtual Machine (EVM).
Ba, Nguyên lý cơ bản của ZK-SNARK
zk-SNARK cần phải đáp ứng ba đặc tính: tính toàn vẹn, độ tin cậy và tính không biết. Lấy zk-SNARK làm ví dụ, tên đầy đủ của nó là "Bằng chứng tri thức không tương tác ngắn gọn", các nguyên tắc thực hiện cụ thể bao gồm các bước sau:
Quá trình này liên quan đến các nguyên tắc mật mã phức tạp, có khả năng chứng minh tính đúng đắn của một tuyên bố mà không tiết lộ thông tin quan trọng.