zk-SNARK là gì? Tại sao Vitalik nói đây là một công nghệ tương lai

0
1266
Zero-Knowledge Proof (ZKP) gồm có nhiều cấu trúc chứng cứ khác nhau. Mỗi một cấu trúc đều sẽ có thể tạo ra 1 loại bằng chứng đáp ứng được nhu cầu dùng của giao thức. zk-STARK và zk-SNARK chính là hai cấu trúc bằng chứng nổi tiếng nhất. Sau đây hãy cùng mình tìm hiểu chi tiết về zk-SNARK thông qua bài viết dưới đây!

Trước khi bắt đầu tìm hiểu bài viết, bạn cần phải đọc về Zero-Knowledge Proof để có thể biết rõ một số khái niệm căn bản được đề cập tới ở trong bài viết này.

Xem thêm

zk-SNARK là gì? 

zk-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) là một trong những cấu trúc chứng cứ của Zero-Knowledge Proof (ZKP), sử dụng nằm để có thể xác thực một tuyên bố (statement) mà không bao giwof tiết lộ thông tin cá nhân của nhân chứng (witness).

Cấu trúc zk-SNARK tạo ra các bằng chứng được mọi người gọi là bằng chứng SNARK.

zk-SNARK là gì? Tại sao Vitalik nói đây là một công nghệ tương lai

Cấu trúc bằng chứng zk-SNARK

Một chứng cứ được coi là thuộc cấu trúc bằng chứng zk-SNARK cần phải đáp ứng được những tiêu chí dưới đây:

  • Zero-Knowledge (Không kiến thức): người xác minh cũng có thể xác minh tính hợp lệ hoặc là có thể sai lệch của một tuyên bố mà không cần phải biết về nhân chứng
  • Succinct (Cô đọng/Ngắn gọn): bằng chứng có một kích thước tương đối nhỏ để người xác minh có thể xác minh ở trong thời gian nhất định
  • Non-interactive (Không tương tác): người xác minh (verifier) và người chứng minh (prover) chỉ có trao đổi đúng duy nhất một bằng chứng, hoàn toàn không có sự tương tác qua lại giống như interactive proof
  • Argument (Lập luận): dữ liệu đầu vào (input) bắt buộc cần có tính chính xác để có thể tạo ra bằng chứng. Tính chính xác này bắt buộc phải được xác minh dựa trên sức mạnh tính toán của máy tính
    Vì thế cho nên, khả năng bên chứng minh đánh lừa hệ thống chứng minh (proving system) thành công là vô cùng thấp, rất khó có thể tạo bằng chứng sai để gian lận,dối trá.
  • of Knowledge (Kiến thức): bên phía chứng minh không thể nào có thể xây dựng một bằng chứng mà không có nhân chứng (witness)

Ứng dụng của zk-SNARK

zk-SNARK với Blockchain

Đa số tát cả các hệ thống điện toán phân tán (distributed computing system – DCS) đều cần phải xử lý vấn đề một cách toàn vẹn của tính toán (computational integrity problem) để kết quả đầu ra thu được từ một phương trình tính toán cụ thể có một tính chính xác nhiều nhất.

zk-SNARK là gì? Tại sao Vitalik nói đây là một công nghệ tương lai

Hệ thống điện toán phân tán (distributed computing system – DCS)

Ở trên mạng lưới blockchain, tính toàn vẹn của tính toán nhắc tới tính đúng đắn 100% của các giao dịch. Đa số các blockchain đạt được việc này bằng phương pháp thực hiện những quy trình tính toán phức tạp, khó hiểu với khối lượng dữ liệu tính toán cực kỳ lớn.

Việc này làm cho mạng lưới gặp một vài vấn đề:

  • Hạn chế khả năng mở rộng
  • Lưu trữ dữ liệu của node rất lớn (cả dữ liệu dư thừa) làm cho kích thước của blockchain tăng theo cấp số nhân
  • Tốc độ xử lý chậm

Ứng dụng zk-SNARK có thể xử lý được các vấn đề ở phía bên trên thông qua:

  • Kích thước dữ liệu lưu trữ: Bằng chứng được tạo từ zk-SNARK một cách ngắn gọn – kích thước của một chứng cứ hợp lệ nhỏ hơn rất nhiều lần so với kích thước của các tính toán mà nó thực hiện.
  • Thời gian xác minh: Xác minh một chứng cứ ngắn gọn làm cho giao dịch được giải quyết một cách nhanh hơn rất nhiều.
  • Khối lượng lưu trữ: Dữ liệu cần giảm khối lượng dữ liệu cần lưu trữ, lưu trữ được thu nhỏ, tăng thông lượng lưu trữ và loại bỏ dữ liệu dư thừa.

zk-SNARK là gì? Tại sao Vitalik nói đây là một công nghệ tương laiỨng dụng zk-SNARK trong xử lý giao dịch

zk-SNARK với zk-Rollup

Rollup là một giải pháp mở rộng Layer 2 cho Ethereum nhằm để có thể cải thiện thông lượng giao dịch của Layer 1 (L1) thông qua việc giải quyết giao dịch off-chain. Tuy vậy nhưng mà, L1 bắt buộc cần phải biết liệu những giao dịch được thực hiện off-chain có hợp lệ hay là không. Nếu như mà câu trả lời là không thì mạng lưới có thể bị chiếm quyền và đồng thời có thể gây ra các thiệt hại vô cùng lớn.

Zero-knowledge Rollup (zk-Rollup) dùng cấu trúc zk-SNARK để có thể chứng minh tính xác thực của các giao dịch off-chain cho L1. Bằng chứng SNARK có thể được xác minh bởi bất cứ ai, việc  này bảo đảm tuyệt đối tính hợp lệ của giao dịch trên L1.

Đọc thêm: Zk Rollup là gì? Ưu điểm, hạn chế của Zk Rollup và các dự án nổi bật

Đa số tất cả các zk-Rollup dùng zk-SNARK đều theo cùng một cấu trúc:

  1. Người sử dụng trên L2 ký giao dịch và đồng thời gửi chúng cho người xác thực.
  2. Trình xác thực nén các giao dịch thành một khối và tạo bằng chứng hợp lệ tương ứng (SNARK).
  3. Smart contract trên L1 thực hiện thao tác trên một chứng cứ hợp lệ. Kết quả của thao tác này xác định xem các giao dịch theo khối (Tx Batch) có được đăng lên L1 và xác thực hay là không.

zk-SNARK là gì? Tại sao Vitalik nói đây là một công nghệ tương laiQuy trình xử lý giao dịch

Một số dự án sử dụng công nghệ zk-SNARK  

Ở thời điểm hiện tại, gồm có tất cả 5 dự án dùng zk-SNARK đáng để quan tâmchú ý:

  • zkSync
  • Polygon Hermez
  • Aztec
  • Loopring
  • zkSpace

Hầu hết đều đang phát triển và xây dựng, vì thế cho nên người sử dụng có thể thử trải nghiệm một lần trên các nền tảng này để có thể tiếp xúc trực tiếp với các cơ hội trên đấy.

Đọc thêm:

zkSync Era và cơ hội airdrop dành cho người dùng

Trải nghiệm Aztec Network và cơ hội nhận airdrop

Ưu điểm và hạn chế của zk-SNARK

Ưu điểm 

zk-SNARK gồm có một vài ưu điểm dưới đây:

  • Thông lượng cao: thay vì lưu trữ dữ liệu tính toán lớn, zk-SNARK mở to thông lượng thông qua việc thu bé kích thước dữ liệu lưu trữ (bằng chứng SNARK), giảm phí gas, giao dịch nhanh hơn và giảm tắc nghẽn.
  • Kích thước bằng chứng nhỏ: bằng chứng SNARK có một kích thước vo cùng bé giúp việc xác minh đơn giản hơn rất nhiều
  • Bảo mật: zk-SNARK dùng những cơ chế bảo mật mã hóa tiên tiến, làm cho zk-Rollup được xem là an toàn hơn rất nhiều so với những giải pháp khác

zk-SNARK là gì? Tại sao Vitalik nói đây là một công nghệ tương lai

zk-SNARK mang lại nhiều lợi ích cho mạng lưới

Hạn chế

Thiết lập đáng tin cậy (Trusted setup)

Thường thường, cấu trúc bằng chứng zk-SNARK sẽ gồm có một thiết lập rất đáng tin tưởng để có thể tạo ra chứng cứ. Thiết lập này gồm có những tham số công khai giữa người xác minh và người chứng minh, bên cạnh đó bắt buộc phải được giữ bí mật, không được tiết lộ để có thể đảm bảo tuyệt đối tính bảo mật của hệ thống.

Thiết lập đáng để mọi người tin tưởng cũng có thể xem là nhược điểm bởi vì nó làm cho hệ thống sẽ gặp phải rủi ro vô cùng lớn nếu như mà các tham số bị xâm phạm.

Dễ bị tấn công bằng máy tính lượng tử

zk-SNARK dùng Elliptic Curve Cryptography (Mật mã đường cong Elliptic – ECC) nhằm để mã hóa thông tin được dùng nhằm tạo chứng cứ một cách hợp lệ. Hiện tại ECC khá an toàn, tuy nhiên thì những tiến bộ trong điện toán lượng tử có thể phá hủy mô hình bảo mật của chính nó.

zk-SNARK là gì? Tại sao Vitalik nói đây là một công nghệ tương lai

Chip ứng dụng công nghệ lượng tử có hiệu suất lớn

Phụ thuộc vào phần cứng chuyên dụng

Tạo chứng cứ hợp lệ với zk-SNARK chính là một quá trình tính toán vô cùng phức tạp, tức  là người chứng minh bắt buộc phải đầu tư vào phần cứng chuyên dụng. Nguyên nhân bởi vì có rất ít người có thể mua những phần cứng này vậy nên zk-SNARK cũng được coi là mang tính tập trung (centralized).

zk-SNARK chính là một cấu trúc ZKP được Vitalik có phần “ưu ái” nhiều hơn so với zk-STARK. Vì thế cho nên, hiểu biết một cách kỹ càng về zk-SNARK giúp cho bạn đọc có thêm cái nhìn khách quan về công nghệ và ứng dụng của nó ở trong khoảng thời gian dài hạn.