Skip to main content

ZK-Tech: Mở khóa quyền riêng tư trên Cardano & Khả năng mở rộng trên Ethereum

Ngày 01 tháng 05 năm 2023 - Chia sẻ bài viết này trên Twitter | FacebookTelegram

Trong bài viết này, chúng ta sẽ đi sâu vào thế giới của Bằng chứng không kiến ​​thức (zero-knowledge proofs - ZK), thảo luận về sự khác biệt giữa các loại bằng chứng khác nhau như ZK-SNARK và ZK-STARK, đồng thời tìm hiểu sâu về các nguyên tắc cơ bản của ZK-Rollups.

Hơn nữa, chúng ta sẽ kiểm tra những tiến bộ mới nhất trong công nghệ ZK trên các nền tảng blockchain lớn như Cardano, Ethereum & Tezos. Chúng ta sẽ khám phá cách các nền tảng này kết hợp ZK-Rollups để tăng hiệu suất, khả năng mở rộng và quyền riêng tư của mạng.

Chúng ta sẽ đề cập đến từng giải pháp chia tỷ lệ Layer2, cung cấp thông tin chi tiết sâu về từng giải pháp. Bài viết này sẽ giới thiệu chi tiết về điều đó.

Ok, chúng ta hãy đi sâu vào 👇

Zero-Knowledge proofs là gì?

tip

Nói một cách đơn giản, ZK-Proof (ZKP) là một kỹ thuật mã hóa cho phép hai bên trao đổi thông tin mà không tiết lộ bất kỳ dữ liệu nhạy cảm nào.

Đó là một kỹ thuật mật mã do các nhà nghiên cứu Silvio Micali, Shafi Goldwasser và Charles Rackoff của MIT đề xuất vào những năm 1980.

Kỹ thuật này cho phép một bên, được gọi là Người tuyên bố, chứng minh một tuyên bố cho bên khác, Người xác minh, mà không tiết lộ bất kỳ thông tin bổ sung nào ngoài thực tế là tuyên bố đó là đúng.

Nó giống như chứng minh bạn có đủ thu nhập với chủ nhà mà không tiết lộ bất kỳ thông tin tài chính nào. Trên thực tế, Micali và Goldwasser đã được trao Giải thưởng Turing vì những đóng góp xuất sắc của họ đối với mật mã học.

Waldo ở đâu?

Hãy khám phá cách thức hoạt động của Bằng chứng zero-knowledge (ZKP) bằng cách sử dụng câu đố “Waldo ở đâu” làm ví dụ. Waldo là một nhân vật nhỏ ẩn mình giữa nhiều nhân vật khác nhau trong cuốn sách giải đố dành cho trẻ em. Yêu cầu của câu đố là tìm vị trí của Waldo trên mỗi trang sách.

Trong trường hợp này, chúng ta có hai ký tự:

  • Alice (Người tuyên bố)
  • Bob (Người xác minh)

Alice và Bob đang chơi trò “Waldo ở đâu?”. Ngay sau khi trò chơi bắt đầu, Alice tuyên bố đã tìm thấy Waldo.

Một cách hoài nghi, Bob yêu cầu cô ấy chứng minh điều đó mà không tiết lộ vị trí chính xác của Waldo. Đáp lại, Alice nghĩ ra một Bằng chứng zero-knowledge đơn giản (simple zero-knowledge proof).

Cô ấy tìm thấy một tấm thẻ không trong suốt có chiều cao và chiều rộng ít nhất gấp đôi so với câu đố “Waldo ở đâu?”. Sau đó, cô ấy cắt một lỗ hình Waldo ở giữa thẻ, chỉ đủ lớn để lộ Waldo và không có gì khác.

Bằng cách đặt thẻ lên trên câu đố, Alice có thể cho Bob thấy rằng cô ấy biết Waldo đang ở đâu mà không tiết lộ vị trí chính xác của anh ta.

Thông qua bằng chứng không có kiến ​​thức này, Alice (Người tuyên bố), thuyết phục thành công Bob (Người xác minh), rằng cô ấy biết vị trí của Waldo mà không tiết lộ bất kỳ thông tin bổ sung nào về vị trí của anh ta.

Các loại ZK-Proofs: tương táckhông tương tác

Có hai loại ZK-Proofs: tương táckhông tương tác.

ZK-Proofs tương tác (Interactive) liên quan đến nhiều vòng tương tác giữa Người tuyên bố và Người xác minh, trong khi ZK-Proofs không tương tác (Interactive) không yêu cầu tương tác giữa hai bên.

Trong một môi trường như internet, nơi có sự tính toán của nhiều bên, các Bằng chứng zero-knowledge tương tác có nhược điểm của chúng. Bao gồm:

  • Không đồng thời,
  • Khả năng chuyển tải hạn chế,
  • và khả năng mở rộng quy mô hạn chế.

Để giải quyết những vấn đề này, các ZKP không tương tác đã được phát triển. Như tên gợi ý, các ZKP không tương tác (NIZKP) không yêu cầu tương tác giữa Người tuyên bố và Người xác minh, thay vào đó, sử dụng hàm băm hoặc chữ ký số làm bằng chứng xác thực.

Kết quả hàm băm trở thành thách thức và bằng chứng có thể được biểu diễn dưới dạng một thông báo thay vì tương tác nhiều bước giữa Người tuyên bố và thực thể kiểm tra bằng chứng.

Vì vậy, hãy xem xét các loại ZKP không tương tác phổ biến👇

ZK-SNARKs: Lập luận ngắn gọn về kiến ​​thức không tương tác

ZK-SNARK là NIZKP nổi tiếng cung cấp kích thước bằng chứng ngắn và thời gian xác minh nhanh.

Tuy nhiên, chúng thường dựa vào một thiết lập đáng tin cậy, khiến chúng có khả năng dễ bị thao túng.

Được áp dụng rộng rãi trong các giao thức blockchain tập trung vào quyền riêng tư như Zcash và các giải pháp mở rộng Lớp 2 như ZK-Rollups, ZK-SNARK gần đây đã có những tiến bộ đáng kể.

Công ty Electric Coin đã giới thiệu Halo, một giao thức ZK-SNARK mới giúp loại bỏ nhu cầu về các yêu cầu thiết lập đáng tin cậy. Được phát triển bởi kỹ sư Sean Bowe, Halo giải quyết các hạn chế trong các hệ thống chống ZK trước đây như BCTV 14 và Groth 16.

Kỹ thuật “Nested Amortization” sáng tạo của Halo thu gọn nhiều bằng chứng lại với nhau theo chu kỳ đường cong elip, cho phép các bằng chứng tính toán suy luận về bản thân một cách hiệu quả. Điều này loại bỏ sự cần thiết của các buổi lễ thiết lập đáng tin cậy.

Bulletproofs

Bulletproofs được thiết kế để cung cấp bằng chứng ngắn với các giả định bảo mật mạnh mẽ. Họ sử dụng kích thước bằng chứng logarit thay vì kích thước tuyến tính, làm cho chúng có thể mở rộng hơn.

Bulletproofs không yêu cầu thiết lập đáng tin cậy mà thay vào đó sử dụng tính toán đa bên (multiparty computation- MPC), làm cho chúng đáng tin cậy hơn.

Tuy nhiên, chúng không an toàn hậu lượng tử. Monero là một ví dụ về crypto đã triển khai Bulletproofs để giảm quy mô giao dịch. Bulletproofs cũng được sử dụng trong giao thức Mithril của Cardano.

ZK-STARKs: Đối số kiến ​​thức minh bạch có thể mở rộng

ZK-STARK là các NIZKP minh bạch, không cần tin cậy (trustless) và kháng lượng tử được tạo ra vào năm 2018.

Chúng không dựa vào thiết lập buộc phải tin cậy, giúp chúng an toàn hơn và có thể mở rộng. ZK-STARK sử dụng các hàm băm collision-resistant thay vì mật mã đường cong elip, mang lại khả năng kháng lượng tử.

Tuy nhiên, kích thước bằng chứng của chúng lớn hơn đáng kể so với kích thước của ZK-SNARK, điều này có thể ảnh hưởng đến thời gian xác minh.

StarkEx và StarkNet là những ví dụ về giải pháp sử dụng ZK-STARK.

Đây là một so sánh ngắn gọn về các loại NIZKP khác nhau:

Bây giờ chúng ta đã hiểu những điều cơ bản về bằng chứng ZK, hãy tìm hiểu các trường hợp sử dụng nổi bật của công nghệ ZK trong lĩnh vực blockchain 👇

ZK-Rollup là gì ?

Hiện tại, các blockchain không thể phù hợp với hiệu quả và tốc độ của các hệ thống tập trung. ZK-rollup được quảng cáo là tương lai của quy mô blockchain, mang lại khả năng mở rộng cho lĩnh vực blockchain và khiến chúng cạnh tranh với các hệ thống tập trung.

Vì vậy, chúng ta hãy xem các nguyên tắc cơ bản của ZK-rollup và cách chúng mở rộng quy mô blockchain.

ZK-Rollups là giải pháp mở rộng quy mô Lớp 2 di chuyển tính toán và trạng thái off-chain trong khi lưu trữ dữ liệu giao dịch on-chain trên blockchain Lớp 1.

Chúng tăng thông lượng giao dịch và giảm chi phí bằng cách đăng định kỳ các lô giao dịch hợp lệ từ mạng Lớp 2 được nhóm lên đến Lớp 1, tận dụng khả năng chống kiểm duyệt và bảo mật của lớp cơ sở để giải quyết.

ZKP được sử dụng để xác minh tính chính xác của các thay đổi trạng thái do Lớp 2 đề xuất, chứng minh bằng toán học một cách chắc chắn rằng những thay đổi này là kết quả của việc thực hiện lô giao dịch nhất định.

ZK-Rollups dựa vào lớp cơ sở về tính khả dụng, giải quyết và khả năng chống kiểm duyệt của dữ liệu và trạng thái của chúng được duy trì bởi một hợp đồng thông minh được triển khai trên mạng Lớp 1. Các nhà khai thác lớp 2, chẳng hạn như trình sắp xếp tập trung hoặc trình xác thực bằng chứng cổ phần, thực hiện các giao dịch, nhóm chúng theo lô và gửi lô tới mạng Lớp 1.

Bối cảnh ZK-Rollup hiện tại

Ethereum và Tezos là hai blockchain đi đầu trong việc phát triển ZK-Rollups, cung cấp các giải pháp sáng tạo để tăng cường khả năng mở rộng và quyền riêng tư. Hãy cùng tìm hiểu hai hệ sinh thái này và khám phá những phát triển gần đây trong ZK-Rollups.

Hệ sinh thái Ethereum ZK-Rollup

1. Đa giác ZK-Rollup trên Ethereum
  • Polygon ZKEVM đã giới thiệu triển khai EVM (ZKEVM) zero-knowledge. Với Polygon ZKEVM, các nhà phát triển có thể dễ dàng chuyển các ứng dụng dựa trên Ethereum sang bản rollup Đa giác hoặc khởi chạy các ứng dụng dApps tương thích với EVM trực tiếp trên bản rollup.
  • Polygon Miden : Bản rollup ZK dựa trên STARK, có mục đích chung với khả năng tương thích với EVM, xử lý tới 5.000 giao dịch trong một khối duy nhất. Polygon Miden dựa vào Máy ảo Miden (VM) để thực thi logic tùy ý và chạy các hợp đồng thông minh, làm cho nó trở thành duy nhất trong số các bản rollup ZK dựa trên STARK.
  • Polygon Nightfall:  Giải pháp rollup dành cho doanh nghiệp dành cho các giao dịch riêng tư, kết hợp các bản Optimistic Rollups và mật mã zero-knowledge. Được phát triển với sự hợp tác của Ernst & Young (EY), nó nhằm mục đích cung cấp các giao dịch blockchain riêng tư và có thể mở rộng cho các công ty quy mô lớn.
2. StarkNet ZK-Rollup trên Ethereum
  • StarkNet:  ZK-Rollup trên Ethereum với ngôn ngữ lập trình Cairo. Các nhà phát triển cần tìm hiểu Cairo, mặc dù các bộ chuyển đổi từ Solidity sang Cairo đang được tạo để tạo điều kiện thuận lợi cho việc giới thiệu.
  • StarkEx:  Giải pháp khả năng mở rộng SaaS cho các sàn giao dịch crypto phi tập trung (DEX), được triển khai trên Ethereum từ giữa năm 2020. Nó hỗ trợ ETH, token ERC-20 và token trên các chuỗi tương thích với EVM khác, cũng như ERC-721 NFT. StarkEx được sử dụng bởi dApps và các giao thức như dYdX, Immutable, DiversiFi và Sorare.
3. ZKSync

ZKSync là một giải pháp mở rộng quy mô Lớp 2 của Ethereum sử dụng SNARK, với khả năng tương thích hoàn toàn với EVM và hơn 2.000 TPS. Nó cho phép rút tiền gần như ngay lập tức vào mạng chính Ethereum Layer-1 và đơn giản hóa quá trình triển khai lại các hợp đồng thông minh trực tiếp từ Ethereum.

4. Loopring

Loopring là một ZK-Rollup trên Ethjereum, xử lý trung bình 200 TPS. Nó cho phép giao dịch không thế chấp (non-custodial trading) bằng cách sử dụng các phương pháp sổ lệnh, yêu cầu ít thanh khoản hơn so với công nghệ tạo lập thị trường tự động (AMM).

5. Aztec

Aztec là một nền tảng hợp đồng thông minh tập trung vào quyền riêng tư được bảo mật bởi Ethereum, sử dụng thuật toán SNARK và PLONK. Nó có kế hoạch sử dụng ngôn ngữ lập trình dựa trên quyền riêng tư tùy chỉnh của mình, Noir, dựa trên Rust. Mạng thử nghiệm Noir sẽ ra mắt on-chain vào quý 4 năm 2022, với mạng chính dự kiến ​​sẽ ra mắt ngay sau đó.

6. Immutable X

Immutable X: Giải pháp mở rộng quy mô lớp 2 Ethereum thông lượng cao để đúc và giao dịch NFT, sử dụng công nghệ ZK-SNARK do StarkWare phát triển. Nó có thể xử lý 9.000 TPS và bao gồm ba phần chính: Hạ tầng Immutable X, thị trường Immutable X và token Immutable X (IMX).

Đây là bảng tóm tắt thị phần trên các ZK-rollup này trên Ethereum.

Thesis zk-Rollup

  • Epoxy: hạ tầng rollup xác thực dựa trên Tezos, tạo sự khác biệt với ZK-Rollups dựa trên Ethereum bằng cách được tích hợp với tư cách là lớp thứ nhất (first-class citizen) trong giao thức kinh tế Tezos. Sự tích hợp độc đáo này cho phép phát triển một loạt các ứng dụng. Epoxy tận dụng aPlonK để đạt được tỷ lệ TPS cao bằng cách rollup nhiều bằng chứng. Là giải pháp ZK-Rollup của Tezos, Epoxy đã được đưa lên Mondaynet để thử nghiệm.

Như bạn có thể thấy, ZK-Rollups đã đạt được tiến bộ đáng kể trong việc giải quyết các vấn đề về khả năng mở rộng của Ethereum.

Ngoài khả năng mở rộng, công nghệ ZK còn có một trường hợp sử dụng khác trong lĩnh vực blockchain, đó là quyền riêng tư.

Toàn cảnh "Quyền riêng tư"

ZKP tạo điều kiện thuận lợi cho các giao dịch riêng tư (private transactions) trên các blockchain như Monero và Zcash. Các loại crypto tập trung vào quyền riêng tư này tận dụng ZKP để che giấu chi tiết các giao dịch, bao gồm địa chỉ người gửi và người nhận cũng như số tiền giao dịch, đồng thời duy trì một mạng an toàn và có thể kiểm chứng.

Với tư duy này, chúng ta hãy xem xét các blockchain và dự án tận dụng khía cạnh quyền riêng tư của ZKP 👇

Monero

Monero là một loại crypto tập trung vào quyền riêng tư với mức vốn hóa thị trường là 2,6 tỷ đô la và 18,2 triệu đô la XMR đang lưu hành. Nó sử dụng chữ ký vòng (ring signatures) và Ring Confidential Transactions (một hình thức nâng cao cũng sử dụng địa chỉ tàng hình) để tạo điều kiện thuận lợi cho các giao dịch riêng tư.

Chữ ký vòng của Monero tạo ra một nhóm những người ký có thể để duy trì khả năng từ chối hợp lý và không thể theo dõi kết quả giao dịch. Ngoài ra, Monero sử dụng cam kết Pedersen  để ẩn số tiền giao dịch, địa chỉ người gửi và người nhận.

Monero ban đầu sử dụng một biến thể của chữ ký vòng để chứng minh phạm vi kiến ​​thức bằng không, nhưng phương pháp này không hiệu quả. Sự ra đời của Bulletproofs đã cải thiện đáng kể hiệu quả của bằng chứng phạm vi (range proofs).

Zcash

Zcash là một loại crypto tập trung vào quyền riêng tư với mức vốn hóa thị trường là 1,8 tỷ đô la và 12,9 triệu đô la ZEC đang lưu hành. Nó sử dụng ZK-SNARK để kích hoạt các giao dịch riêng tư. ZK-SNARK của Zcash cho phép người dùng duy trì tính bảo mật của giao dịch.

Các giao dịch Zcash có thể minh bạch hoặc được bảo vệ. Giao dịch minh bạch hoạt động giống như giao dịch Bitcoin, trong khi giao dịch được bảo vệ sử dụng ZK-SNARK để ẩn chi tiết giao dịch, bao gồm địa chỉ người gửi và người nhận cũng như số tiền giao dịch. Zcash sử dụng kết hợp các chương trình cam kết và ZKP để đảm bảo quyền riêng tư của giao dịch và ngăn chặn chi tiêu gấp đôi.

Cardano: Midnight Sidechain

Midnight, một sáng kiến ​​sidechain đặc biệt được xây dựng trên blockchain Cardano, ưu tiên quyền riêng tư và bảo mật dữ liệu bằng cách sử dụng ZKP và tính toán bí mật.

Dự án tạo điều kiện thuận lợi cho việc tạo dApps mà không bắt buộc tiết lộ dữ liệu người dùng, có thể thực hiện được nhờ kiến ​​trúc blockchain tập trung vào quyền riêng tư của nó. Nó cung cấp một trình biên dịch phù hợp, hỗ trợ riêng cho các hợp đồng thông minh ZK và một loạt các công cụ dành cho nhà phát triển, cho phép sử dụng ngôn ngữ lập trình TypeScript được sử dụng rộng rãi

Nguồn bài viết tại đây


Picture


Đọc thêm các bài viết liên quan tại thẻ Tags bên dưới