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

Công nghệ zk-SNARK trong sự phát triển và ứng dụng của 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 sổ cái phân tán, cũng là lĩnh vực được các nhà đầu tư mạo hiểm quan tâm. Bài viết này hệ thống tổng quan về quá trình phát triển của công nghệ zk-SNARK trong gần bốn mươi năm qua và tổng kết những tiến bộ nghiên cứu mới nhất.

Bài viết đầu tiên giới thiệu khái niệm cơ bản và bối cảnh lịch sử của zk-SNARK. Tập trung phân tích công nghệ zk-SNARK 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 mô hình như Ben-Sasson, Pinocchio, Bulletproofs và Ligero. Về môi trường tính toán, bài viết giới thiệu ZKVM và ZKEVM, thảo luận về cách chúng nâng cao khả năng xử lý giao dịch, bảo vệ quyền riêng tư và cải thiện hiệu quả xác minh. Bài viết cũng giới thiệu cơ chế hoạt động và phương pháp tối ưu hóa của Zero Knowledge Rollup(ZK Rollup) như một giải pháp mở rộng lớp hai, 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 về các khái niệm mới nổi như ZKCoprocessor, ZKML, ZKThreads, ZK Sharding và ZK StateChannels, và thảo luận về 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 những công nghệ và xu hướng phát triển mới nhất, bài viết này cung cấp một cái nhìn toàn diện để hiểu và áp dụng công nghệ zk-SNARK, cho thấy tiềm năng to lớn của nó trong việc nâng cao hiệu suất và tính bảo mật của các hệ thống Blockchain, cung cấp tham khảo quan trọng cho các 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ổng quan
2.zk-SNARK ví dụ

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

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

Ba, zk-SNARK dựa trên mạch

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

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

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

V. Tóm tắt và phát triển của zk-SNARK máy ảo 1.Nền tảng
2. Phân loại ZKVM hiện có 3. Mô hình phía trước và phía sau 4.Ưu nhược điểm của phương thức ZKVM

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

  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ững nhược điểm và tối ưu 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ự ra đời và phát triển của ZKML 3.Các phát triển liên quan đến công nghệ mở rộng zk-SNARK 4.Sự phát triển của khả năng tương tác ZKP

Chín, Kết luận

Tài liệu tham khảo

Lời nói đầu

Trong những năm gần đây, sự phát triển của ứng dụng Blockchain (DApps ) đang diễn ra nhanh chóng, hầu như mỗi ngày đều có ứng dụng mới xuất hiện. Nền tảng Blockchain mỗi ngày đều tiếp nhận hoạt động của hàng triệu người dùng, xử lý hàng tỷ giao dịch. Lượng dữ liệu khổng lồ được tạo ra từ các 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ư tài khoản. Xét về đặc điểm tính mở và minh bạch của Blockchain, dữ liệu được lưu trữ này đều mở cho mọi người, do đó gây ra nhiều vấn đề về an ninh 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 dạng, chữ ký vòng, tính toán đa bên an toàn và zk-SNARK. Mã hóa đồng dạng 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ật, 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 đa bên an toàn cho phép phân chia 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, bảo vệ an toàn số dư tài khoản và số tiền giao dịch một cách hiệu quả, nhưng cũng không thể bảo vệ an toàn địa chỉ tài khoản. Hơn nữa, mã hóa đồng dạng, chữ ký vòng và tính toán đa bên an toàn không thể được sử dụng để xác minh 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ố mệnh đề mà không tiết lộ bất kỳ dữ liệu trung gian nào. Giao thức này không cần 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 để có được thông tin hữu ích thêm. Thông qua zk-SNARK, người xác minh có thể xác minh xem người chứng minh có đủ số tiền giao dịch mà không tiết lộ bất kỳ dữ liệu giao dịch cá nhân nào. Quy trình xác minh bao gồm việc tạo ra một chứng minh chứa số tiền giao dịch mà người chứng minh tuyên bố, sau đó chuyển chứng minh đó cho người xác minh, người xác minh thực hiện các phép tính đã được đị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 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 đóng vai trò cốt lõi trong 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à sự thành công của Bitcoin, được thực hiện. Đồng thời cũng là một lĩnh vực trọng điểm cho ứng dụng ngành và đầu tư mạo hiểm.

Từ đó, nhiều dự án mạng dựa trên ZKP đã xuất hiện, như ZkSync, StarkNet, Mina, Filecoin và Aleo. Khi các dự án này phát triển, những đổi mới trong thuật toán ZKP liên tục xuất hiện, theo báo cáo gần như mỗi tuần đều có thuật toán mới ra đời. Hơn nữa, 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ụ, một số dự án đã 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 bộ 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 chính để 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 cải thiện 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 chúng tôi trong việc đưa ra quyết định đầu tư trong tương lai. Để thực hiện điều này, chúng tôi đã tổng hợp xem xét các tài liệu học thuật cốt lõi về 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 thông tin và whitepaper của các dự án hàng đầu trong lĩnh vực này ( theo quy mô huy động vốn của họ ). Những tài liệu và phân tích tổng hợp này đã cung cấp một 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, các học giả Goldwasser, Micali và Rackoff lần đầu tiên đề xuất chứng minh không biết (零知识证明) trong bài báo của họ, với các khái niệm như (Zero-KnowledgeProof, ZKP) và chứng minh kiến thức tương tác (交互式知识证) (InteractiveZero-Knowledge, IZK). Bài báo này là nền tảng của chứng minh không biết, định nghĩa nhiều khái niệm ảnh hưởng đến nghiên cứu học thuật sau này. Ví dụ, định nghĩa về kiến thức là "đầu ra không thể tính được", nghĩa là kiến thức phải là một đầu ra và là một phép tính không thể thực hiện, có nghĩa là nó không thể chỉ là một hàm đơn giản, mà phải là một hàm phức tạp. Phép tính không thể thực hiện thường có thể hiểu là một vấn đề NP, tức là một vấ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 hàm đa thức của kích thước đầu vào. Đây là tiêu chuẩn quan trọng để đo lường hiệu quả và khả thi của thuật toán trong khoa học máy tính. Do quá trình giải quyết các vấn đề NP phức tạp, nên được coi là phép tính không thể thực hiện; nhưng quá trình xác minh tương đối đơn giản, vì vậy rất phù hợp để sử dụng trong 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 giao hàng, 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 con đường đã cho có phải là con đường 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 con đường cụ thể có thể được thực hiện trong thời gian đa thức.

Goldwasser và các cộng sự đã giới thiệu khái niệm "độ phức tạp kiến thức" trong bài báo của họ, được sử dụng để đị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 (Interactive Proof Systems, 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 xác thực của một phát biểu.

Tóm lại, định nghĩa về zk-SNARK mà Goldwasser và các cộng sự đã tổng hợp là một dạng chứng minh tương tác đặc biệt, trong đó người xác thực sẽ 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 lệnh trong quá trình xác thực; và đã đưa ra ba đặc tính cơ bản bao gồm:

  1. Tính đầy đủ ( completeness ): Nếu chứng minh 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 của tuyên bố, họ chỉ có thể lừa dối người xác minh với xác suất không đáng kể;

  3. Khối ( 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 có 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 1: 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 chứng cứ, chứng minh rằng anh ta biết một số bí mật s, nhưng không trực tiếp hiển thị s. Giả sử số bí mật;

Chọn hai số nguyên tố lớn p và q, tính tích của chúng. Gọi tổng các số nguyên tố, tính toán thu được;

Tính toán, ở đây, v được gửi cho 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 xem nào suy ra s.

Chọn ngẫu nhiên một số nguyên r, tính toán và gửi cho người xác minh. Giá trị này x được sử dụng cho quá trình xác minh tiếp theo, nhưng cũng không làm lộ s. Gọi là số nguyên ngẫu nhiên, kết quả tính toán được.

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

Người xác thực chọn ngẫu nhiê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 xác đị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)

Dựa trên giá trị a do người xác thực phát ra, người chứng minh thực hiện phản hồi:

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

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

Cuối cùng, người xác thực dựa vào g nhận được để kiểm tra xem có bằng nhau không. Nếu phương trình đúng, người xác thực chấp nhận chứng minh này. Lúc đó, người xác thực tính toán, xác thực bên phải; Lúc đó, người xác thực tính toán, xác thực bên phải.

Tại đây, chúng ta thấy rằng người xác thực tính toán đã chứng minh rằng người chứng minh đã thành công trong quá trình xác thực mà không tiết lộ số bí mật của anh ta s. Ở đây, vì 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 dựa vào may mắn là ( khi a nhận giá trị 0 là ). Nhưng sau đó, người xác thực lại thách thức người chứng minh thêm lần nữa, người chứng minh liên tục thay đổi các số liên quan, 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, do đó xác suất để người chứng minh vượt qua xác thực dựa vào may mắn là ( vô hạn tiến gần đến 0), kết luận rằng người chứng minh thực sự biết một số bí mật s được chứng minh. Ví dụ này chứng minh tính toàn vẹn, độ tin cậy và tính không kiến thức của hệ thống chứng minh không kiến thức.

Hai, zk-SNARK

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 là 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.NIZK được đề xuất

Năm 1988, Blum, Feldman và Micali lần đầu tiên đề xuất khái niệm chứng minh không tương tác bằng không kiến thức (NIZK), chứng minh rằng trong trường hợp không cần nhiều vòng tương tác, người chứng minh (Prover) và người xác minh (Verifier) vẫn có thể hoàn thành quá trình xác thực. Bước đột phá này đã khiến

ZK2.09%
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
  • Đăng lại
  • Chia sẻ
Bình luận
0/400
GasFeeAssassinvip
· 4giờ trước
Cảm giác lại sắp tốn gas rồi, ôi ôi.
Xem bản gốcTrả lời0
FunGibleTomvip
· 08-10 02:49
zksnark và tôi bị chóng mặt, không hiểu.
Xem bản gốcTrả lời0
ShibaOnTheRunvip
· 08-10 02:45
DOGE链 người chơi a a a đều gần như đã vàng
Xem bản gốcTrả lời0
DegenWhisperervip
· 08-10 02:42
Thật là vô lý, công nghệ zero-knowledge đã tồn tại được bốn mươi năm rồi.
Xem bản gốcTrả lời0
RugpullAlertOfficervip
· 08-10 02:40
Đây zk mới là xu hướng lớn của Blockchain.
Xem bản gốcTrả lời0
ChainMaskedRidervip
· 08-10 02:31
Chơi zk còn phải xem bẫy này
Xem bản gốcTrả lời0
LiquiditySurfervip
· 08-10 02:30
Lại đến để nói về zk nữa, nghe mà tôi cũng say rồi. Uống một ly Martini để bình tĩnh lại.
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)