Công nghệ zk-SNARK trong lĩnh vực Blockchain và xu hướng phát triển của nó

Tổng quan về sự phát triển và ứng dụng của công nghệ zk-SNARK trong lĩnh vực Blockchain

Tóm tắt

zk-SNARK ( ZKP ) công nghệ được coi là một trong những đổi mới quan trọng nhất trong lĩnh vực Blockchain sau công nghệ sổ cái phân tán, và cũng là lĩnh vực trọng điểm hiện nay của đầu tư mạo hiểm. Bài viết này hệ thống lại quá trình phát triển gần bốn mươi năm của ZKP và những thành tựu nghiên cứu mới nhất.

Bài viết trước tiên giới thiệu các khái niệm cơ bản và bối cảnh lịch sử của ZKP, phân tích trọng tâm công nghệ ZKP dựa trên mạch, bao gồm thiết kế, ứng dụng và phương pháp tối ưu hóa của các giải pháp như zkSNARK, mô hình Ben-Sasson, Pinocchio, Bulletproofs và Ligero. Về mặt môi trường tính toán, bài viết khám phá cách ZKVM và ZKEVM cải thiện khả năng xử lý giao dịch, bảo vệ quyền riêng tư và nâng cao hiệu quả xác minh. Bài viết cũng giải thích cơ chế hoạt động và phương pháp tối ưu hóa của ZK Rollup như một giải pháp mở rộng Layer 2, cũng như những tiến bộ mới nhất về tăng tốc phần cứng, giải pháp hỗn hợp và ZK EVM chuyên dụng.

Cuối cùng, bài viết đã nhìn nhận các khái niệm mới nổi như ZKCoprocessor, ZKML, ZKThreads, ZK Sharding và ZK StateChannels, khám phá tiềm năng của chúng trong việc mở rộng Blockchain, khả năng tương tác và bảo vệ quyền riêng tư.

Thông qua việc phân tích toàn diện các công nghệ tiên tiến và xu hướng phát triển này, bài viết cung cấp một góc nhìn hệ thống để hiểu và áp dụng công nghệ ZKP, cho thấy tiềm năng to lớn của nó trong việc nâng cao hiệu quả và tính an toàn của hệ thống Blockchain, cung cấp tham khảo quan trọng cho quyết định đầu tư trong tương lai.

Mục lục

Lời mở đầu

Một, kiến thức cơ bản về zk-SNARK

  1. Tóm tắt
  2. zk-SNARK ví dụ

Hai, zk-SNARK không giao tác

  1. Bối cảnh
  2. Sự xuất hiện của NIZK
  3. Biến đổi Fiat-Shamir
  4. Jens Groth và nghiên cứu của ông
  5. Nghiên cứu khác

Ba, chứng minh không biết dựa trên mạch điện

  1. Bối cảnh
  2. Khái niệm cơ bản và đặc điểm của mô hình mạch điện
  3. Thiết kế và ứng dụng mạch trong zk-SNARK
  4. Các khuyết điểm và thách thức tiềm năng

Bốn, mô hình zk-SNARK

  1. Bối cảnh
  2. Mô hình thuật toán phổ biến
  3. Giải pháp dựa trên PCP tuyến tính và vấn đề logarithm rời rạc
  4. Giải pháp dựa trên chứng minh của người bình thường
  5. Bằng chứng có thể kiểm tra dựa trên xác suất ( PCP ) zk-SNARK
  6. Phân loại giai đoạn thiết lập cấu trúc chứng minh chung CPC( dựa trên )

Năm, Tổng quan và phát triển của máy ảo zk-SNARK

  1. Bối cảnh
  2. Phân loại ZKVM hiện có
  3. Mô hình phía trước và phía sau
  4. Ưu và nhược điểm của mô hình ZKVM

Sáu, Tổng quan và phát triển của zk-SNARK Ethereum Virtual Machine

  1. Bối cảnh
  2. Cách hoạt động của ZKEVM
  3. Quy trình thực hiện ZKEVM
  4. Đặc điểm của ZKEVM

Bảy, Tổng quan và phát triển về giải pháp mạng lớp hai zk-SNARK

  1. Bối cảnh
  2. Cơ chế hoạt động của ZK Rollup
  3. Nhược điểm và tối ưu hóa của ZK Rollup

Tám, hướng phát triển tương lai của zk-SNARK.

  1. Tăng tốc phát triển môi trường tính toán
  2. Sự đề xuất và phát triển của ZKML
  3. Phát triển công nghệ mở rộng ZKP
  4. Sự phát triển của tính tương tác ZKP

Chín, Kết luận

Lời giới thiệu

Với sự xuất hiện của kỷ nguyên Web3, ứng dụng Blockchain (DApps) đang phát triển nhanh chóng, mỗi ngày có nhiều ứng dụng mới xuất hiện. Trong những năm gần đây, các nền tảng Blockchain hàng ngày chịu trách nhiệm cho hàng triệu hoạt động của người dùng, xử lý hàng tỷ giao dịch. Lượng dữ liệu khổng lồ phát sinh từ những giao dịch này thường bao gồm thông tin cá nhân nhạy cảm, như danh tính người dùng, số tiền giao dịch, địa chỉ tài khoản và số dư. Vì tính mở và minh bạch của Blockchain, các dữ liệu được lưu trữ này đều có thể nhìn thấy bởi mọi người, do đó đã gây ra nhiều vấn đề về bảo mật và quyền riêng tư.

Hiện tại có một số công nghệ mã hóa có thể đối phó với những thách thức này, bao gồm mã hóa đồng cấu, chữ ký vòng, tính toán an toàn đa bên và zk-SNARK. Mã hóa đồng cấu cho phép thực hiện các phép toán mà không cần giải mã văn bản đã mã hóa, giúp bảo vệ an toàn số dư tài khoản và số tiền giao dịch, nhưng không thể bảo vệ an toàn địa chỉ tài khoản. Chữ ký vòng cung cấp một hình thức chữ ký số đặc biệt, có khả năng ẩn danh tính của người ký, từ đó bảo vệ an toàn địa chỉ tài khoản, nhưng không thể bảo vệ số dư tài khoản và số tiền giao dịch. Tính toán an toàn đa bên cho phép phân phối nhiệm vụ tính toán giữa nhiều người tham gia, mà không cần bất kỳ người tham gia nào biết dữ liệu của những người khác, hiệu quả bảo vệ an toàn số dư tài khoản và số tiền giao dịch, nhưng cũng không thể bảo vệ an toàn địa chỉ tài khoản. Ngoài ra, mã hóa đồng cấu, chữ ký vòng và tính toán an toàn đa bên không thể được sử dụng để xác thực trong môi trường blockchain xem người chứng minh có đủ số tiền giao dịch hay không mà không tiết lộ số tiền giao dịch, địa chỉ tài khoản và số dư tài khoản.

zk-SNARK là một giải pháp toàn diện hơn, giao thức xác minh này cho phép xác minh tính đúng đắn của một số tuyên bố mà không tiết lộ bất kỳ dữ liệu trung gian nào. Giao thức này không yêu cầu cơ sở hạ tầng khóa công khai phức tạp, và việc thực hiện lặp lại cũng không cung cấp cho người dùng độc hại cơ hội để thu thập thông tin hữu ích bổ sung. Thông qua ZKP, người xác minh có thể xác minh xem người chứng minh có đủ số tiền giao dịch hay không mà không tiết lộ bất kỳ dữ liệu giao dịch riêng tư nào. Quy trình xác minh bao gồm việc tạo ra một chứng cứ chứa số tiền giao dịch mà người chứng minh đã tuyên bố, sau đó chuyển chứng cứ đó cho người xác minh, người xác minh thực hiện tính toán theo định nghĩa trước và đưa ra kết quả tính toán cuối cùng, từ đó đưa ra kết luận có chấp nhận tuyên bố của người chứng minh hay không. Nếu tuyên bố của người chứng minh được chấp nhận, điều đó có nghĩa là họ có đủ số tiền giao dịch. Quy trình xác minh nêu trên có thể được ghi lại trên Blockchain, không có bất kỳ sự giả mạo nào.

Tính năng ZKP này khiến nó đóng vai trò then chốt trong các giao dịch Blockchain và ứng dụng tiền điện tử, đặc biệt trong việc bảo vệ quyền riêng tư và mở rộng mạng lưới, khiến nó không chỉ trở thành tâm điểm nghiên cứu học thuật, mà còn được coi là một trong những đổi mới công nghệ quan trọng nhất kể từ khi công nghệ sổ cái phân tán (, đặc biệt là Bitcoin ) được triển khai thành công. Đồng thời, nó cũng là một đường đua trọng điểm của ứng dụng ngành và đầu tư mạo hiểm.

Từ đó, nhiều dự án mạng dựa trên ZKP lần lượt xuất hiện, như ZkSync, StarkNet, Mina, Filecoin và Aleo. Khi các dự án này phát triển, các đổi mới về thuật toán ZKP liên tục ra đời, theo báo cáo, gần như mỗi tuần đều có thuật toán mới được ra mắt. Ngoài ra, phát triển phần cứng liên quan đến công nghệ ZKP cũng đang tiến triển nhanh chóng, bao gồm các chip được tối ưu hóa đặc biệt cho ZKP. Ví dụ, các dự án như Ingonyama, Irreducible và Cysic đã hoàn thành việc huy động vốn quy mô lớn, những phát triển này không chỉ cho thấy sự tiến bộ nhanh chóng của công nghệ ZKP mà còn phản ánh sự chuyển đổi từ phần cứng chung sang phần cứng chuyên dụng như GPU, FPGA và ASIC.

Những tiến triển này cho thấy, công nghệ zk-SNARK không chỉ là một bước đột phá quan trọng trong lĩnh vực mật mã học, mà còn là động lực quan trọng để thực hiện các ứng dụng công nghệ Blockchain rộng rãi hơn, đặc biệt là trong việc nâng cao khả năng bảo vệ quyền riêng tư và khả năng xử lý.

Do đó, chúng tôi quyết định hệ thống hóa kiến thức liên quan đến zk-SNARK ( ZKP ) để hỗ trợ tốt hơn cho việc đưa ra quyết định đầu tư trong tương lai. Để làm điều này, chúng tôi đã tổng hợp xem xét các bài báo học thuật cốt lõi liên quan đến ZKP ( theo mức độ liên quan và số lần trích dẫn ); đồng thời, chúng tôi cũng đã phân tích chi tiết tài liệu và white paper của các dự án hàng đầu trong lĩnh vực này ( theo quy mô huy động vốn ). Việc thu thập và phân tích tài liệu tổng hợp này đã cung cấp nền tảng vững chắc cho việc viết bài này.

Một, kiến thức cơ bản về zk-SNARK

( 1. Tóm tắt

Năm 1985, Goldwasser, Micali và Rackoff lần đầu tiên đề xuất khái niệm chứng minh không biết (zero-knowledge proof) )ZKP### và chứng minh kiến thức tương tác (interactive knowledge proof) (IZK) trong một bài báo. Bài báo này được coi là tác phẩm nền tảng của chứng minh không biết, định nghĩa nhiều khái niệm có ảnh hưởng đến nghiên cứu học thuật sau này. Ví dụ, kiến thức được định nghĩa là "đầu ra không thể tính toán", tức là kiến thức phải là một đầu ra và là một tính toán không thể thực hiện, có nghĩa là nó không thể là một hàm đơn giản, mà cần phải là một hàm phức tạp. Tính toán không thể thực hiện thường có thể được hiểu là một bài toán NP, tức là một bài toán mà có thể xác minh tính đúng đắn của giải pháp trong thời gian đa thức, thời gian đa thức có nghĩa là thời gian chạy của thuật toán có thể được biểu diễn bằng một hàm đa thức của kích thước đầu vào. Đây là một tiêu chí quan trọng trong khoa học máy tính để đo lường hiệu suất và khả thi của thuật toán. Do quá trình giải quyết bài toán NP rất phức tạp, nên nó được coi là tính toán không thể thực hiện; nhưng quá trình xác minh của nó tương đối đơn giản, vì vậy rất phù hợp để sử dụng trong việc xác minh chứng minh không biết.

Một ví dụ kinh điển về vấn đề NP là bài toán người du lịch, trong đó cần tìm đường đi ngắn nhất để truy cập một loạt các thành phố và quay trở lại điểm xuất phát. Mặc dù việc tìm đường đi ngắn nhất có thể rất khó khăn, nhưng việc xác minh một đường đi đã cho có phải là ngắn nhất hay không thì tương đối dễ dàng. Bởi vì việc xác minh tổng khoảng cách của một đường đi cụ thể có thể được thực hiện trong thời gian đa thức.

Goldwasser và các đồng tác giả đã giới thiệu khái niệm "độ phức tạp kiến thức" trong bài báo của họ, nhằm định lượng lượng kiến thức mà người chứng minh tiết lộ cho người xác minh trong hệ thống chứng minh tương tác. Họ cũng đã đề xuất hệ thống chứng minh tương tác (IPS), trong đó người chứng minh (Prover) và người xác minh (Verifier) tương tác qua nhiều vòng để chứng minh tính đúng đắn của một tuyên bố.

Tóm lại, định nghĩa về zk-SNARK được tóm tắt bởi Goldwasser và những người khác là một loại chứng thực tương tác đặc biệt, trong đó người xác minh không nhận được bất kỳ thông tin bổ sung nào ngoài giá trị đúng sai của câu; và đã đề xuất ba đặc tính cơ bản bao gồm:

  1. Tính đầy đủ ( completeness ): Nếu luận chứng là đúng, người chứng minh trung thực có thể thuyết phục người xác minh trung thực về thực tế này;

  2. Độ tin cậy ( soundness ): Nếu người chứng minh không biết nội dung tuyên bố, anh ta chỉ có thể lừa dối người xác minh với xác suất không đáng kể;

  3. zk-SNARK(zero-knowledge): Trong quá trình chứng minh hoàn thành, người xác minh chỉ nhận được thông tin "người chứng minh sở hữu kiến thức này", mà không thể nhận được bất kỳ nội dung bổ sung nào.

( 2. zk-SNARK ví dụ

Để hiểu rõ hơn về zk-SNARK và các thuộc tính của nó, dưới đây là một ví dụ về việc xác minh người chứng minh có sở hữu một số thông tin riêng tư hay không, ví dụ này được chia thành ba giai đoạn: thiết lập, thách thức và phản hồi.

Bước đầu tiên: thiết lập )Setup###

Trong bước này, mục tiêu của người chứng minh là tạo ra một bằng chứng cho thấy họ biết một số bí mật s, nhưng lại không trực tiếp hiển thị s.

Đặt số bí mật s; Chọn hai số nguyên tố lớn p và q, tính tích của chúng n. Giả sử các số nguyên tố p và q, tính toán n đã tính được. Tính v=s^2 mod n, ở đây, v được gửi đến người xác thực như một phần của chứng minh, nhưng nó không đủ để cho người xác thực hoặc bất kỳ người quan sát nào suy ra s; Chọn ngẫu nhiên một số nguyên r, tính x = r^2 mod n và gửi cho người xác minh. Giá trị x này được sử dụng trong quá trình xác minh tiếp theo, nhưng cũng không tiết lộ s. Giả sử số nguyên ngẫu nhiên r, tính toán x đã thu được.

Bước thứ hai: Thách thức (Challenge)

Người xác thực ngẫu nhiên chọn một vị trí a( có thể là 0 hoặc 1), sau đó gửi cho người chứng minh. "Thách thức" này quyết định các bước tiếp theo mà người chứng minh cần thực hiện.

Bước ba: Phản hồi (Response)

Theo giá trị a được phát ra bởi người xác thực, người chứng minh sẽ thực hiện phản hồi:

Nếu a=0, người chứng minh gửi g=r(, ở đây r là số ngẫu nhiên mà anh ta đã chọn trước đó ).

Nếu a=1, người chứng minh tính toán g=rs mod n và gửi đi. Giả sử người xác minh gửi bit ngẫu nhiên a, dựa trên giá trị của a, người chứng minh tính toán g;

Cuối cùng, các xác thực viên dựa trên g nhận được để xác minh x có bằng g^2 mod n hay không. Nếu phương trình đúng, xác thực viên chấp nhận chứng minh này. Khi a=0, xác thực viên tính g^2 mod n, và kiểm tra x bên phải; Khi a=1, xác thực viên tính g^2 mod n, và kiểm tra xv bên phải.

Ở đây, chúng ta thấy giá trị x mà người xác thực tính toán được là x=g^2 mod n, điều này cho thấy người chứng minh đã thành công trong việc vượt qua quá trình xác thực mà không tiết lộ số bí mật s của mình. Tại đây, do a chỉ có thể nhận giá trị 0 hoặc 1, chỉ có hai khả năng, xác suất để người chứng minh vượt qua xác thực chỉ dựa vào may mắn khi a nhận 0 là 1/2. Nhưng sau đó, người xác thực lại thách thức người chứng minh n lần, người chứng minh liên tục thay đổi các số liên quan và gửi cho người xác thực, và luôn thành công trong việc vượt qua quá trình xác thực. Như vậy, xác suất để người chứng minh vượt qua xác thực chỉ dựa vào may mắn là 1/2(^n tiến dần đến 0.0), điều đó chứng minh rằng người chứng minh thực sự biết một số bí mật s. Ví dụ này chứng minh tính toàn vẹn, độ tin cậy và tính không biết của hệ thống chứng minh không tiết lộ.

Hai, zk-SNARK không tương tác

( 1. Bối cảnh

zk-SNARK)ZKP( trong khái niệm truyền thống thường là hình thức giao thức tương tác và trực tuyến; ví dụ, giao thức Sigma thường cần từ ba đến năm vòng tương tác để hoàn thành xác thực. Tuy nhiên, trong các tình huống như giao dịch ngay lập tức hoặc bỏ phiếu, thường không có cơ hội để thực hiện nhiều vòng tương tác, đặc biệt trong ứng dụng công nghệ Blockchain, chức năng xác minh ngoại tuyến trở nên đặc biệt quan trọng.

) 2. Sự xuất hiện của NIZK

Năm 1988, Blum, Feldman và Micali lần đầu tiên đề xuất khái niệm chứng minh không giao tiếp phi tập trung (NIZK), chứng minh rằng trong trường hợp không cần nhiều vòng giao tiếp, người chứng minh ###Prover(.

ZK5.45%
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
  • 5
  • Chia sẻ
Bình luận
0/400
TokenToastervip
· 22giờ trước
Thời đại zk cuối cùng cũng đã đến
Xem bản gốcTrả lời0
ChainSpyvip
· 22giờ trước
Thật sự không hiểu tại sao mọi người lại điên cuồng vì zk.
Xem bản gốcTrả lời0
GasFeeCriervip
· 22giờ trước
Hiện tại chi phí vẫn ở mức cao, làm tôi nổi điên.
Xem bản gốcTrả lời0
StakeWhisperervip
· 22giờ trước
Lại là zk cuộn lại rồi
Xem bản gốcTrả lời0
GreenCandleCollectorvip
· 22giờ trước
Lại một người bạn mới của zkvm, có ai ngửi thấy mùi ví tiền không?
Xem bản gốcTrả lời0
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)