Hệ thống zk-SNARK hiện đại bắt nguồn từ bài báo được viết chung vào năm 1985 của Goldwasser, Micali và Rackoff. Bài báo này khám phá lượng kiến thức cần thiết để chứng minh tính đúng đắn của một tuyên bố thông qua nhiều vòng tương tác trong hệ thống tương tác. Nếu có thể thực hiện việc trao đổi không có kiến thức, nó được gọi là zk-SNARK. Hệ thống tương tác này chỉ có thể đúng theo nghĩa xác suất, chứ không phải là chứng minh chính xác theo toán học.
Để vượt qua những hạn chế của các hệ thống tương tác, hệ thống phi tương tác (NP) đã ra đời, có tính đầy đủ, trở thành lựa chọn lý tưởng cho zk-SNARK. Các hệ thống zk-SNARK sớm có hiệu suất và tính thực tiễn không đủ, chủ yếu chỉ dừng lại ở mức lý thuyết. Trong mười năm qua, cùng với sự phát triển của mật mã trong lĩnh vực tiền điện tử, zk-SNARK đã phát triển nhanh chóng, trở thành một hướng nghiên cứu quan trọng.
Bước đột phá chính của chứng minh không biết (zk-SNARK) là bài báo của Groth được công bố vào năm 2010, đặt nền tảng lý thuyết cho zk-SNARK. Năm 2015, Zcash sử dụng hệ thống chứng minh không biết để bảo vệ quyền riêng tư giao dịch, là một tiến bộ quan trọng ở cấp ứng dụng. Sau đó, zk-SNARK kết hợp với hợp đồng thông minh, mở rộng các lĩnh vực ứng dụng.
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 vào năm 2013, thuật toán Groth16 vào năm 2016, Bulletproofs vào năm 2017, zk-STARKs vào năm 2018, v.v. Những thành tựu này liên tục được tối ưu hóa về kích thước chứng minh, hiệu quả xác minh, v.v., thúc đẩy sự phát triển của zk-SNARK.
Hai, ứng dụng chính của zk-SNARK
Hai ứng dụng phổ biến nhất của zk-SNARK là bảo vệ quyền riêng tư và mở rộng quy mô. Các dự án giao dịch riêng tư sớm như Zcash và Monero đã thu hút sự chú ý nhưng nhu cầu thực tế không như mong đợi. Trong những năm gần đây, với việc Ethereum chuyển sang hướng mở rộng tập trung vào 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
Giao dịch riêng tư đã có nhiều dự án thực tế, chẳng hạn như Zcash và Tornado sử dụng SNARK, Monero sử dụng Bulletproof, v.v. Lấy Zcash làm ví dụ, quy trình giao dịch bao gồm các bước 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, Zcash cũng tồn tại những hạn chế, chẳng hạn như việc khó mở rộng do mô hình UTXO, tỷ lệ sử dụng giao dịch riêng tư thực tế không cao.
Tornado sử dụng thiết kế bể hỗn hợp lớn duy nhất, dựa trên mạng Ethereum, mang lại tính linh hoạt tốt hơn. Nó sử dụng zk-SNARK để cung cấp bảo vệ quyền riêng tư giao dịch, đảm bảo chỉ có đồng tiền đã gửi có thể được rút ra, đồng tiền sẽ không bị rút ra nhiều lần và các đặc điểm khác.
Mở rộng
zk-SNARK trong ứng dụng mở rộng chủ yếu là zk-rollup. zk-rollup bao gồm hai loại vai trò là Sequencer và Aggregator. Sequencer chịu trách nhiệm đóng gói giao dịch, Aggregator sẽ hợp nhất một lượng lớn giao dịch để tạo ra rollup và tạo ra zk-SNARK, được sử dụng để cập nhật trạng thái Layer 1.
zk-rollup có những lợi thế như phí thấp, tốc độ kết thúc nhanh, nhưng cũng đối mặt với thách thức về khối lượng tính toán lớn và thiết lập an toàn phức tạp. Hiện nay, các dự án zk-rollup chính bao gồm StarkNet, zkSync, Aztec Connect, Polygon Hermez, mỗi dự án đều có những đặc điểm riêng về lộ trình công nghệ và tính tương thích với EVM.
Khả năng tương thích EVM là vấn đề then chốt trong sự phát triển của zk-rollup. Các dự án cần phải cân nhắc giữa tính thân thiện với chứng minh không biết và khả năng tương thích EVM, một số dự án chọn hoàn toàn tương thích với mã vận hành EVM, trong khi những dự án khác thiết kế máy ảo mới để cân bằng cả hai. Những tiến bộ kỹ thuật gần đây đã nâng cao đáng kể khả năng tương thích EVM, hứa hẹn sẽ thúc đẩy sự phát triển của hệ sinh thái.
Ba, Nguyên tắc cơ bản của zk-SNARK
zk-SNARK(Lập luận non-interactive ngắn gọn của kiến thức không có kiến thức) là một giao thức chứng minh không có kiến thức được ứng dụng rộng rãi. Nó có các đặc điểm như không có kiến thức, tính ngắn gọn, không tương tác, độ tin cậy và độ tin cậy của kiến thức.
Quá trình chứng minh của Groth16 zk-SNARK chủ yếu bao gồm các bước sau:
Chuyển đổi vấn đề thành mạch điện.
Chuyển đổi mạch thành hệ thống ràng buộc cấp 1 R1CS( dạng Rank-1 Constraint System)
Chuyển R1CS thành QAP(Chương trình số học bậc hai)
Thiết lập cấu hình đáng tin cậy, tạo ra 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 lý toán học phức tạp và công nghệ mật mã, là cơ sở để đạt được chứng minh không kiến thức hiệu quả (zk-SNARK).
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.
8 thích
Phần thưởng
8
9
Chia sẻ
Bình luận
0/400
IntrovertMetaverse
· 07-20 08:37
Nghe không hiểu nhưng cảm thấy rất cao cấp
Xem bản gốcTrả lời0
RektHunter
· 07-19 21:00
Học đến chóng mặt, đi uống rượu rồi.
Xem bản gốcTrả lời0
Ser_APY_2000
· 07-19 00:54
Nói cái gì vậy, một cái đầu mà hai cái lớn.
Xem bản gốcTrả lời0
Anon32942
· 07-17 19:31
Tại sao cảm giác mọi người đều đang nói về zk, có vẻ như đang theo phong trào.
Xem bản gốcTrả lời0
GasFeeCrier
· 07-17 19:19
Phí gas không có hồi kết.
Xem bản gốcTrả lời0
WalletWhisperer
· 07-17 19:18
hmm... thật thú vị khi zk proofs phát triển từ toán học thuần túy đến cơ chế chuỗi thực tế... các mẫu hành vi là không thể phủ nhận thật lòng
Xem bản gốcTrả lời0
BearMarketBuilder
· 07-17 19:12
Cuốn sách đã hiểu, công nghệ nền tảng mới là thần thánh.
Xem bản gốcTrả lời0
HalfPositionRunner
· 07-17 19:10
Không biết gì về kiến thức không? Ôi, không hiểu thì chạy thôi.
Lịch sử phát triển công nghệ zk-SNARK: Từ đột phá lý thuyết đến ứng dụng mở rộng Layer2
Sự phát triển và ứng dụng của zk-SNARK
Một, sự tiến hóa lịch sử của zk-SNARK
Hệ thống zk-SNARK hiện đại bắt nguồn từ bài báo được viết chung vào năm 1985 của Goldwasser, Micali và Rackoff. Bài báo này khám phá lượng kiến thức cần thiết để chứng minh tính đúng đắn của một tuyên bố thông qua nhiều vòng tương tác trong hệ thống tương tác. Nếu có thể thực hiện việc trao đổi không có kiến thức, nó được gọi là zk-SNARK. Hệ thống tương tác này chỉ có thể đúng theo nghĩa xác suất, chứ không phải là chứng minh chính xác theo toán học.
Để vượt qua những hạn chế của các hệ thống tương tác, hệ thống phi tương tác (NP) đã ra đời, có tính đầy đủ, trở thành lựa chọn lý tưởng cho zk-SNARK. Các hệ thống zk-SNARK sớm có hiệu suất và tính thực tiễn không đủ, chủ yếu chỉ dừng lại ở mức lý thuyết. Trong mười năm qua, cùng với sự phát triển của mật mã trong lĩnh vực tiền điện tử, zk-SNARK đã phát triển nhanh chóng, trở thành một hướng nghiên cứu quan trọng.
Bước đột phá chính của chứng minh không biết (zk-SNARK) là bài báo của Groth được công bố vào năm 2010, đặt nền tảng lý thuyết cho zk-SNARK. Năm 2015, Zcash sử dụng hệ thống chứng minh không biết để bảo vệ quyền riêng tư giao dịch, là một tiến bộ quan trọng ở cấp ứng dụng. Sau đó, zk-SNARK kết hợp với hợp đồng thông minh, mở rộng các lĩnh vực ứng dụng.
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 vào năm 2013, thuật toán Groth16 vào năm 2016, Bulletproofs vào năm 2017, zk-STARKs vào năm 2018, v.v. Những thành tựu này liên tục được tối ưu hóa về kích thước chứng minh, hiệu quả xác minh, v.v., thúc đẩy sự phát triển của zk-SNARK.
Hai, ứng dụng chính của zk-SNARK
Hai ứng dụng phổ biến nhất của zk-SNARK là bảo vệ quyền riêng tư và mở rộng quy mô. Các dự án giao dịch riêng tư sớm như Zcash và Monero đã thu hút sự chú ý nhưng nhu cầu thực tế không như mong đợi. Trong những năm gần đây, với việc Ethereum chuyển sang hướng mở rộng tập trung vào 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
Giao dịch riêng tư đã có nhiều dự án thực tế, chẳng hạn như Zcash và Tornado sử dụng SNARK, Monero sử dụng Bulletproof, v.v. Lấy Zcash làm ví dụ, quy trình giao dịch bao gồm các bước 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, Zcash cũng tồn tại những hạn chế, chẳng hạn như việc khó mở rộng do mô hình UTXO, tỷ lệ sử dụng giao dịch riêng tư thực tế không cao.
Tornado sử dụng thiết kế bể hỗn hợp lớn duy nhất, dựa trên mạng Ethereum, mang lại tính linh hoạt tốt hơn. Nó sử dụng zk-SNARK để cung cấp bảo vệ quyền riêng tư giao dịch, đảm bảo chỉ có đồng tiền đã gửi có thể được rút ra, đồng tiền sẽ không bị rút ra nhiều lần và các đặc điểm khác.
Mở rộng
zk-SNARK trong ứng dụng mở rộng chủ yếu là zk-rollup. zk-rollup bao gồm hai loại vai trò là Sequencer và Aggregator. Sequencer chịu trách nhiệm đóng gói giao dịch, Aggregator sẽ hợp nhất một lượng lớn giao dịch để tạo ra rollup và tạo ra zk-SNARK, được sử dụng để cập nhật trạng thái Layer 1.
zk-rollup có những lợi thế như phí thấp, tốc độ kết thúc nhanh, nhưng cũng đối mặt với thách thức về khối lượng tính toán lớn và thiết lập an toàn phức tạp. Hiện nay, các dự án zk-rollup chính bao gồm StarkNet, zkSync, Aztec Connect, Polygon Hermez, mỗi dự án đều có những đặc điểm riêng về lộ trình công nghệ và tính tương thích với EVM.
Khả năng tương thích EVM là vấn đề then chốt trong sự phát triển của zk-rollup. Các dự án cần phải cân nhắc giữa tính thân thiện với chứng minh không biết và khả năng tương thích EVM, một số dự án chọn hoàn toàn tương thích với mã vận hành EVM, trong khi những dự án khác thiết kế máy ảo mới để cân bằng cả hai. Những tiến bộ kỹ thuật gần đây đã nâng cao đáng kể khả năng tương thích EVM, hứa hẹn sẽ thúc đẩy sự phát triển của hệ sinh thái.
Ba, Nguyên tắc cơ bản của zk-SNARK
zk-SNARK(Lập luận non-interactive ngắn gọn của kiến thức không có kiến thức) là một giao thức chứng minh không có kiến thức được ứng dụng rộng rãi. Nó có các đặc điểm như không có kiến thức, tính ngắn gọn, không tương tác, độ tin cậy và độ tin cậy của kiến thức.
Quá trình chứng minh của Groth16 zk-SNARK chủ yếu bao gồm các bước sau:
Quá trình này liên quan đến các nguyên lý toán học phức tạp và công nghệ mật mã, là cơ sở để đạt được chứng minh không kiến thức hiệu quả (zk-SNARK).