Khả năng tương tác Blockchain (Phần 2): Bằng chứng lưu trữ - Động lực cho các trường hợp sử dụng Cross-Chain mới

Nâng cao12/17/2023, 5:02:55 PM
Bài báo này khám phá bằng chứng lưu trữ và ứng dụng của nó trong xác minh lịch sử giao dịch blockchain, và sử dụng khái niệm xác minh ít tin cậy nhất để xác minh các giao dịch lịch sử và hoạt động của người dùng, từ đó mở khóa một số lượng lớn các trường hợp sử dụng qua chuỗi. Bài báo cũng chỉ ra rằng phương pháp này dựa trên bằng chứng không biết gì có thể giải quyết hiệu quả các vấn đề lưu trữ dữ liệu mà một số nhà cung cấp dịch vụ blockchain L2 và nút trung tâm gặp phải.

Trong bài viết trước đó của chúng tôi, mà sẽ được thực hiện, chúng tôi đã thảo luận về vai trò của sự chứng thực đồng thuận của phương pháp mới nổi này trong việc tạo điều kiện cho việc nối kết giữa các khối.

Trong bài viết này, chúng tôi sẽ khám phá bằng chứng lưu trữ, đưa khái niệm xác minh tối thiểu tin cậy và mở rộng nó đến giao dịch trong các khối lịch sử cũ hơn. Khả năng xác minh các giao dịch và hoạt động của người dùng trong quá khứ một cách này mở ra một số lượng lớn các trường hợp sử dụng giữa các chuỗi.

Trong bài viết trước, chúng tôi giới thiệu Proof of Consensus — một phương pháp giảm thiểu sự tin cậy để kết nối quỹ qua các khối. Vì người dùng cầu nối thường muốn thấy giao dịch xảy ra ngay lập tức tại thời điểm gần nhất, việc chứng minh sự đồng thuận rất hữu ích vì họ luôn kiểm tra trạng thái mới nhất của blockchain khi nó hoạt động.

Khái niệm về việc giảm thiểu sự tin tưởng có thể được áp dụng theo một hướng khác, đó là quay trở lại quá khứ và sử dụng chứng minh không thông tin để xác minh các giao dịch và dữ liệu trong các khối cũ. Những “chứng minh lưu trữ lịch sử” này hỗ trợ một loạt các trường hợp sử dụng trên nhiều chuỗi khác nhau, và trong bài viết này chúng ta sẽ đề cập đến những trường hợp sử dụng này, cách chúng hoạt động, và các bên tham gia được xây dựng trong không gian này.

Lấy dữ liệu lịch sử

Có nhiều cách sử dụng cho dữ liệu blockchain lịch sử. Nó có thể được sử dụng để chứng minh quyền sở hữu tài sản, hành vi người dùng và lịch sử giao dịch, sau đó đưa vào các hợp đồng thông minh hoặc ứng dụng trên chuỗi.Khi viết bài này, đã có hơn 18 triệu khối được viết vào Ethereum.Hợp đồng thông minh chỉ có thể truy cập 256 khối gần đây nhất (hoặc dữ liệu trong vòng 30 phút qua), vì vậy "dữ liệu lịch sử" đề cập đến bất cứ điều gì ngoài 256 khối cuối cùng.

Hôm nay, để truy cập dữ liệu lịch sử, các giao thức thường truy vấn nút lưu trữnhà cung cấp, tức bên thứ ba như Infura, Alchemy hoặc các bộ chỉ mục khác. Điều đó có nghĩa là phải tin tưởng và phụ thuộc vào họ và dữ liệu của họ.

Dữ liệu lịch sử

Dữ liệu này tuy nhiên có thể được nới lỏng một cách tối thiểu về niềm tin, thông qua việc sử dụng bằng chứng lưu trữ.

Dữ liệu lịch sử

Tuy nhiên, dữ liệu này có thể được truy xuất một cách tín nước hơn bằng cách sử dụng chứng minh lưu trữ.

Chứng minh lưu trữ là một chứng minh không biết gì cho phép xác minh dữ liệu lịch sử được lưu trữ trên Blockchain. Cụ thể hơn, chứng minh lưu trữ có thể được sử dụng để chứng minh sự tồn tại của một trạng thái cụ thể trong một khối cụ thể trong quá khứ.Phương pháp này không yêu cầu tin tưởng vào bên thứ ba hoặc nhà tiên tri; thay vào đó, sự tin tưởng của nó được tích hợp vào bằng chứng lưu trữ.

Làm thế nào chứng minh lưu trữ có thể giúp xác minh rằng một số dữ liệu tồn tại trong các khối lịch sử cũ hơn? Điều này đòi hỏi xác minh hai điều:

  • Bước đầu tiên là kiểm tra xem một khối cụ thể có phải là một phần của lịch sử quy định của blockchain, nghĩa là, khối đó là một phần hợp lệ của lịch sử của chuỗi nguồn
  • Bước thứ hai là kiểm tra xem dữ liệu cụ thể có phải là một phần của khối không, tức là, một mảnh thông tin (như một giao dịch cụ thể) có phải là một phần của khối không (điều này có thể được chứng minh bằng bằng chứng bao gồm Merkle)

Sau khi nhận và xác minh bằng chứng, người nhận (như một hợp đồng thông minh trên chuỗi mục tiêu) tin vào tính hợp lệ của dữ liệu và có thể thực thi bộ hướng dẫn tương ứng. Khái niệm có thể được mở rộng hơn nữa: các tính toán ngoại chuỗi bổ sung có thể được thực hiện với dữ liệu đã được xác minh, sau đó một bằng chứng không tiết lộ thông tin khác được tạo ra để chứng minh dữ liệu và tính toán.

Đơn giản, bằng chứng về lưu trữ hỗ trợ truy xuất dữ liệu trên chuỗi lịch sử một cách tối thiểu hóa sự tin cậy. Điều này quan trọng vì như chúng tôi đã nêu trong bài đăng đầu tiên của mình, chúng tôi thấy web3 trở thành một không gian đa chuỗi và đa tầng trong những năm tiếp theo. Sự xuất hiện của nhiều giao thức tầng 1, rollups, và chuỗi ứng dụng có nghĩa là hoạt động trên chuỗi của người dùng có thể phân tán trên nhiều chuỗi. Điều này càng nhấn mạnh nhu cầu về các giải pháp tương tác giảm thiểu sự tin cậy để duy trì tính kết hợp của tài sản, danh tính của người dùng và lịch sử giao dịch trên nhiều lĩnh vực. Đây là một vấn đề mà bằng chứng về lưu trữ có thể giúp giải quyết.

Các trường hợp sử dụng cho bằng chứng lưu trữ là gì?

Chứng minh lưu trữ cho phép hợp đồng thông minh kiểm tra bất kỳ giao dịch hoặc dữ liệu lịch sử nào như một tiên quyết. Điều này khiến cho việc thiết kế ứng dụng qua chuỗi trở nên linh hoạt hơn.

Đầu tiên, việc lưu trữ bằng chứng có thể chứng minh bất kỳ dữ liệu lịch sử nào trên blockchain nguồn, như

  1. Số dư tài khoản và quyền sở hữu token
  2. Hoạt động giao dịch người dùng hoặc trạng thái tĩnh
  3. Giá lịch sử của giao dịch tài sản trong một khoảng thời gian cụ thể
  4. Số dư tài sản thời gian thực của hồ chứa thanh khoản qua chuỗi

Chứng minh sau đó có thể được gửi đến chuỗi mục tiêu để mở khóa loạt các trường hợp sử dụng qua chuỗi.

  1. Cho phép người dùng bình chỉnh đạo quản trên các đề xuất về giá thấp trên các hợp đồ tầng 2
  2. Cho phép chủ sở hữu NFT nhận các NFT mới hoặc các lợi ích cộng đồng trên một chuỗi mới
  3. Phần thưởng người dùng dựa trên lịch sử và tương tác của họ với các ứng dụng cụ thể (ví dụ qua airdrops)
  4. Các khoản vay cung cấp lãi suất tùy chỉnh dựa trên lịch sử giao dịch và tín dụng tổng thể của người dùng
  5. Kích hoạt khôi phục tài khoản cho các tài khoản ngủ quên
  6. Tính toán lịch sử của TWAP swaps tương lai
  7. Tính toán giá trao đổi AMM chính xác hơn dựa trên hồ bơi thanh khoản đa chuỗi

Về cơ bản, bằng chứng lưu trữ cho phép các ứng dụng truy vấn và chuyển dữ liệu hoạt động và lịch sử trên chuỗi của người dùng qua nhiều chuỗi để đưa vào một hợp đồng thông minh hoặc ứng dụng trên chuỗi khác.

Các trường hợp sử dụng bằng chứng lưu trữ

Hãy xem một ví dụ cụ thể để hiểu cách hoạt động của bằng chứng lưu trữ.

Cách Hoạt Động Chứng Thực Lưu Trữ: Ví Dụ Chi Tiết

Giả sử “X,” một giao thức DeFi với token trên Ethereum. Đề xuất quản trị đang được đưa ra, và họ muốn thúc đẩy việc bỏ phiếu trên chuỗi mục tiêu chi phí thấp. Người dùng chỉ có thể bỏ phiếu nếu họ giữ token X trên Ethereum vào một thời điểm cụ thể (chúng tôi gọi đó là “snapshot”), chẳng hạn như khối #17,000,000

Hiện nay, việc bỏ phiếu trên chuỗi được thực hiện như thế nào?

Cách tiếp cận hiện tại là truy vấn nút lưu trữ để có được danh sách đầy đủ các chủ sở hữu token đủ điều kiện tại khối #17,000,000. Quản trị viên DAO sau đó lưu trữ danh sách đó trong một hợp đồng thông minh trên chuỗi mục tiêu để xác định ai có thể bỏ phiếu. Có một vài hạn chế đối với cách tiếp cận này:

  1. Danh sách cử tri có thể rất dài, và mỗi bức ảnh chụp thay đổi, làm cho việc lưu trữ và cập nhật mỗi đề xuất bỏ phiếu trên chuỗi rất tốn kém;
  2. Có sự tin cậy ngầm định vào nhà cung cấp nút lưu trữ và dữ liệu mà nó cung cấp;
  3. Các thành viên quản lý DAO phải được tin tưởng không can thiệp vào danh sách cử tri

Làm thế nào proof of storage giải quyết vấn đề này?

Như chúng tôi đã giải thích trong bài viết 2, các phép tính đắt đỏ có thể được chuyển vào các chứng minh không tiết lộ trên chuỗi không gian.

Người chứng thực zk sẽ tạo ra một bằng chứng súc tích và gửi nó đến chuỗi mục tiêu để xác minh. Đối với các ví dụ về tư cách cử tri DAO ở trên, sau đây là:

  1. Người chứng thực tạo ra một bằng chứng không tiết lộ rằng khối #17,000,000 là một phần của lịch sử của Ethereum (như trong bước đầu tiên* ở trên).
  2. Sau khi chứng minh tính hợp lệ của khối, chúng ta có thể sử dụng Merkle để bao gồm chứng minh rằng người dùng đã nắm giữ các token DAO khi khối được hoàn thành (như trong bước 2 ở trên*)

Xác minh dữ liệu lịch sử để kích hoạt việc bỏ phiếu giữa các chuỗi khối

Chứng minh sau đó được gửi đến một hợp đồng thông minh trên chuỗi mục tiêu để xác minh. Nếu việc xác minh thành công, thì hợp đồng thông minh trên giao thức tầng 2 cho phép người dùng bỏ phiếu.

Phương pháp này đã giải quyết một số vấn đề. Nó không đòi hỏi:

Hãy tin tưởng nhà cung cấp nút lưu trữ;

  1. hãy để hiệp định duy trì danh sách cử tri trên chuỗi đắt đỏ;
  2. Để người dùng chuyển tài sản vào chuỗi mục đích

Cài đặt nào cần thiết cho chứng minh lưu trữ?

Cho đến nay, chúng tôi đã trừu tượng hóa một số điều phức tạp của bằng chứng lưu trữ. Tuy nhiên, việc sử dụng chúng cũng đòi hỏi việc thiết lập ban đầu cẩn thận bởi nhà cung cấp dịch vụ để đảm bảo rằng chúng có thể được sử dụng mà không cần phải tin tưởng vào nhà cung cấp. Hai điều được tạo ra và lưu trữ trên chuỗi trong quá trình này:

  1. Chứng minh không biết toàn bộ chuỗi (``lời hứa zk''): Nhà cung cấp dịch vụ nhóm tất cả các khối lịch sử trên chuỗi nguồn thành ``khối'' có kích thước cố định liên tục (sử dụng cây Merkle)và tạo ra các bằng chứng không dấu cho mỗi khối, được sử dụng để xác minh các nhóm. Các bằng chứng này sau đó được kết hợp đệ quy cho đến khi có được một bằng chứng không dấu cuối cùng, một “lời hứa zk” cho toàn bộ chuỗi. Điều này chứng minh rằng nhà cung cấp đã chỉ mục đúng toàn bộ lịch sử của chuỗi.

“Cam kết zk” giải thích toàn bộ lịch sử của Ethereum

  • **Dãy núi Merkle: ** Nhà cung cấp cũng lưu trữ các gốc Merkle Keccak của các băm khối (các khối) của chuỗi nguồn được nhóm lại trong một cấu trúc dữ liệu trên chuỗi gọi là Dãy núi Merkle (MMR). Cấu trúc dữ liệu này được sử dụng vì dễ truy vấn và cập nhật, và cho phép nhà cung cấp chứng minh một cách hiệu quả rằng một khối cụ thể tồn tại trong lịch sử chuỗi. MMR được tạo ra bằng cách sử dụng băm Keccak256, băm Poseidon, hoặc cả hai. Băm Poseidon thân thiện với kiến thức không gian và hỗ trợ tính toán dữ liệu lịch sử. Sự hợp lệ của dữ liệu và tính toán sau đó có thể được chứng minh thông qua kiến thức không.

Minh họa Dãy núi Merkel (MMR)

Khi các khối mới được thêm vào chuỗi nguồn, các nhà cung cấp dịch vụ thường xuyên (chẳng hạn như hàng giờ hoặc hàng ngày) cập nhật "cam kết zk" và MMR để theo kịp tốc độ của chuỗi. Điều này được thực hiện để khối quá khứ luôn được liên kết với một trong 256 khối hiện có thể truy cập từ EVM. Điều này đảm bảo rằng dữ liệu lịch sử được liên kết với một trong những khối hiện có sẵn trên Ethereum.

Trong hình ảnh dưới đây, chúng tôi đã mô tả cách hoàn tất cài đặt:

Tóm lại, sau đây là cách sử dụng chứng minh lưu trữ sau khi thiết lập hoàn tất trong bối cảnh ví dụ về việc bỏ phiếu của DAO mà chúng ta đã thảo luận trước đó:

  1. Các nhà cung cấp dịch vụ tạo và lưu trữ “lời hứa zk” cho toàn bộ chuỗi (tức là lịch sử Ethereum) và MMR trên chuỗi đích
  2. Nhà cung cấp cho phép ứng dụng truy vấn dữ liệu lịch sử trên chuỗi hoặc ngoài chuỗi thông qua một API
  3. Một ứng dụng bỏ phiếu trên chuỗi mục tiêu gửi một truy vấn đến hợp đồng thông minh của nhà cung cấp để tìm hiểu xem người dùng có giữ token DAO trên khối #17,000,000 trên Ethereum

Nhà cung cấp sẽ kiểm tra hai điều:

  1. Khối được truy vấn là một phần của lịch sử quy định của Ethereum (bước đầu tiên ở trên); nhà cung cấp sau đó tạo ra chứng minh không biết về nội dung của khối thông qua dãy núi Merkle
  2. Người dùng giữ token DAO trong khối #17,000,000 (bước 2 ở trên); nhà cung cấp sau đó tạo ra một bằng chứng không biết về việc người dùng giữ token DAO trong khối đó
  3. Nhà cung cấp tổng hợp chứng minh được tạo ra ở trên thành một chứng minh không cần biết
  4. Chứng minh ZK đã được tổng hợp được gửi trở lại hợp đồng thông minh dApp bỏ phiếu trên chuỗi mục tiêu để xác minh chứng minh ZK và cho phép người dùng bỏ phiếu sau khi xác minh thành công.

Xây dựng đội ngũ trong lĩnh vực này

Một số người tham gia đang xây dựng các hợp đồng thông minh cho phép các hợp đồng thông minh truy cập dữ liệu trên các chuỗi lịch sử một cách tối thiểu hóa sự tin cậy.

Hiện tại, Axiomđược chạy trên Ethereum và cam kết cung cấp hợp đồng thông minh trên Ethereum và truy cập dữ liệu lịch sử Ethereum thông qua chứng minh lưu trữ dựa trên zk. Đội ngũ cũng đang tăng cường khả năng tính toán ngoại chuỗi dựa trên dữ liệu lịch sử và sử dụng kiến thức không để chứng minh tính chính xác của các dữ liệu và phép tính này.

Giao thức di sảncung cấp một phương pháp kỹ thuật tương tự như Axiom, và giao thức chạy trên Ethereum và zkSync Era. Relic sử dụng bằng chứng bao gồm Merkle để chứng minh sự bao gồm dữ liệu (khác với phương pháp chứng minh bao gồm Merkle trong zero knowledge của Axiom).

Herodotus đang làm việc để cung cấp dữ liệu lịch sử về Ethereum cho các giao thức tầng 2. Việc triển khai thử nghiệm hiện đã có sẵn trên Starknet và zkSync Era. Với nguồn tài trợ từ OP Foundation, chúng tôi nghĩ rằng chúng ta biết đội Herodotus sẽ đi đến đâu tiếp theo.

Lagrange Labs LabsGate.io đã giới thiệu chứng minh hoàn toàn có thể cập nhật thông qua sáng tạo ZK MapReduce (ZKMR) gần đây. Nó sử dụng một cam kết vector mới gọi là Recproofsmở rộng khái niệm có thể cập nhật đến tính toán dữ liệu.

Đội ngũ đang làm việc trên chứng nhận lưu trữ

kết cục

Trong bài viết này, chúng tôi đã mô tả cách mà chứng minh việc lưu trữ có thể hỗ trợ việc xác minh dữ liệu trên chuỗi lịch sử mà không cần phải tin tưởng vào bên thứ ba. Điều này khiến chúng trở thành một công cụ quý giá cho việc tạo thành chuỗi và khả năng tương tác qua các chuỗi.

Khi Giá trị Tổng khóa (TVL) tiếp tục di chuyển từ Ethereum sang hệ sinh thái Tier 2, chúng tôi dự đoán sự xuất hiện của nhiều ứng dụng biểu hiện hơn sử dụng dữ liệu trên chuỗi lịch sử thông qua bằng chứng lưu trữ.

Trong khi công nghệ không chứng minh đang trở nhanh hơn và rẻ hơn, việc liên tục tạo ra bằng chứng lưu trữ để theo kịp các chi phí liên quan đến việc trên chuỗi vẫn là một thách thức. Lợi nhuận của dịch vụ như vậy sẽ phụ thuộc vào khối lượng truy vấn được tạo ra bởi ứng dụng truy vấn.

Mặc dù có những thách thức, nhưng không thể nào nói quá về sự quan trọng của sự đồng thuận và sự lưu trữ được hỗ trợ bởi công nghệ không chứng minh. Chúng tôi mong đợi sẽ thấy cách công nghệ này sẽ được sử dụng để xây dựng một tương lai đa chuỗi với sự tin cậy tối thiểu.

Tuyên bố từ chối trách nhiệm:

  1. Bài viết này được sao chép từ [gương]. Tất cả bản quyền thuộc về tác giả gốc [Jacob, Hitesh, Ji Hao]. Nếu có bất kỳ ý kiến phản đối nào về việc tái in này, vui lòng liên hệ với nhóm Gate Learn(gatelearn@gate.io), và họ sẽ xử lý ngay lập tức.
  2. Miễn trừ trách nhiệm: Các quan điểm và ý kiến được thể hiện trong bài viết này chỉ là của tác giả và không đại diện cho bất kỳ lời khuyên đầu tư nào.
  3. Bản dịch của bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được nêu, việc sao chép, phân phối hoặc đạo văn các bài viết đã dịch là không được phép.

Khả năng tương tác Blockchain (Phần 2): Bằng chứng lưu trữ - Động lực cho các trường hợp sử dụng Cross-Chain mới

Nâng cao12/17/2023, 5:02:55 PM
Bài báo này khám phá bằng chứng lưu trữ và ứng dụng của nó trong xác minh lịch sử giao dịch blockchain, và sử dụng khái niệm xác minh ít tin cậy nhất để xác minh các giao dịch lịch sử và hoạt động của người dùng, từ đó mở khóa một số lượng lớn các trường hợp sử dụng qua chuỗi. Bài báo cũng chỉ ra rằng phương pháp này dựa trên bằng chứng không biết gì có thể giải quyết hiệu quả các vấn đề lưu trữ dữ liệu mà một số nhà cung cấp dịch vụ blockchain L2 và nút trung tâm gặp phải.

Trong bài viết trước đó của chúng tôi, mà sẽ được thực hiện, chúng tôi đã thảo luận về vai trò của sự chứng thực đồng thuận của phương pháp mới nổi này trong việc tạo điều kiện cho việc nối kết giữa các khối.

Trong bài viết này, chúng tôi sẽ khám phá bằng chứng lưu trữ, đưa khái niệm xác minh tối thiểu tin cậy và mở rộng nó đến giao dịch trong các khối lịch sử cũ hơn. Khả năng xác minh các giao dịch và hoạt động của người dùng trong quá khứ một cách này mở ra một số lượng lớn các trường hợp sử dụng giữa các chuỗi.

Trong bài viết trước, chúng tôi giới thiệu Proof of Consensus — một phương pháp giảm thiểu sự tin cậy để kết nối quỹ qua các khối. Vì người dùng cầu nối thường muốn thấy giao dịch xảy ra ngay lập tức tại thời điểm gần nhất, việc chứng minh sự đồng thuận rất hữu ích vì họ luôn kiểm tra trạng thái mới nhất của blockchain khi nó hoạt động.

Khái niệm về việc giảm thiểu sự tin tưởng có thể được áp dụng theo một hướng khác, đó là quay trở lại quá khứ và sử dụng chứng minh không thông tin để xác minh các giao dịch và dữ liệu trong các khối cũ. Những “chứng minh lưu trữ lịch sử” này hỗ trợ một loạt các trường hợp sử dụng trên nhiều chuỗi khác nhau, và trong bài viết này chúng ta sẽ đề cập đến những trường hợp sử dụng này, cách chúng hoạt động, và các bên tham gia được xây dựng trong không gian này.

Lấy dữ liệu lịch sử

Có nhiều cách sử dụng cho dữ liệu blockchain lịch sử. Nó có thể được sử dụng để chứng minh quyền sở hữu tài sản, hành vi người dùng và lịch sử giao dịch, sau đó đưa vào các hợp đồng thông minh hoặc ứng dụng trên chuỗi.Khi viết bài này, đã có hơn 18 triệu khối được viết vào Ethereum.Hợp đồng thông minh chỉ có thể truy cập 256 khối gần đây nhất (hoặc dữ liệu trong vòng 30 phút qua), vì vậy "dữ liệu lịch sử" đề cập đến bất cứ điều gì ngoài 256 khối cuối cùng.

Hôm nay, để truy cập dữ liệu lịch sử, các giao thức thường truy vấn nút lưu trữnhà cung cấp, tức bên thứ ba như Infura, Alchemy hoặc các bộ chỉ mục khác. Điều đó có nghĩa là phải tin tưởng và phụ thuộc vào họ và dữ liệu của họ.

Dữ liệu lịch sử

Dữ liệu này tuy nhiên có thể được nới lỏng một cách tối thiểu về niềm tin, thông qua việc sử dụng bằng chứng lưu trữ.

Dữ liệu lịch sử

Tuy nhiên, dữ liệu này có thể được truy xuất một cách tín nước hơn bằng cách sử dụng chứng minh lưu trữ.

Chứng minh lưu trữ là một chứng minh không biết gì cho phép xác minh dữ liệu lịch sử được lưu trữ trên Blockchain. Cụ thể hơn, chứng minh lưu trữ có thể được sử dụng để chứng minh sự tồn tại của một trạng thái cụ thể trong một khối cụ thể trong quá khứ.Phương pháp này không yêu cầu tin tưởng vào bên thứ ba hoặc nhà tiên tri; thay vào đó, sự tin tưởng của nó được tích hợp vào bằng chứng lưu trữ.

Làm thế nào chứng minh lưu trữ có thể giúp xác minh rằng một số dữ liệu tồn tại trong các khối lịch sử cũ hơn? Điều này đòi hỏi xác minh hai điều:

  • Bước đầu tiên là kiểm tra xem một khối cụ thể có phải là một phần của lịch sử quy định của blockchain, nghĩa là, khối đó là một phần hợp lệ của lịch sử của chuỗi nguồn
  • Bước thứ hai là kiểm tra xem dữ liệu cụ thể có phải là một phần của khối không, tức là, một mảnh thông tin (như một giao dịch cụ thể) có phải là một phần của khối không (điều này có thể được chứng minh bằng bằng chứng bao gồm Merkle)

Sau khi nhận và xác minh bằng chứng, người nhận (như một hợp đồng thông minh trên chuỗi mục tiêu) tin vào tính hợp lệ của dữ liệu và có thể thực thi bộ hướng dẫn tương ứng. Khái niệm có thể được mở rộng hơn nữa: các tính toán ngoại chuỗi bổ sung có thể được thực hiện với dữ liệu đã được xác minh, sau đó một bằng chứng không tiết lộ thông tin khác được tạo ra để chứng minh dữ liệu và tính toán.

Đơn giản, bằng chứng về lưu trữ hỗ trợ truy xuất dữ liệu trên chuỗi lịch sử một cách tối thiểu hóa sự tin cậy. Điều này quan trọng vì như chúng tôi đã nêu trong bài đăng đầu tiên của mình, chúng tôi thấy web3 trở thành một không gian đa chuỗi và đa tầng trong những năm tiếp theo. Sự xuất hiện của nhiều giao thức tầng 1, rollups, và chuỗi ứng dụng có nghĩa là hoạt động trên chuỗi của người dùng có thể phân tán trên nhiều chuỗi. Điều này càng nhấn mạnh nhu cầu về các giải pháp tương tác giảm thiểu sự tin cậy để duy trì tính kết hợp của tài sản, danh tính của người dùng và lịch sử giao dịch trên nhiều lĩnh vực. Đây là một vấn đề mà bằng chứng về lưu trữ có thể giúp giải quyết.

Các trường hợp sử dụng cho bằng chứng lưu trữ là gì?

Chứng minh lưu trữ cho phép hợp đồng thông minh kiểm tra bất kỳ giao dịch hoặc dữ liệu lịch sử nào như một tiên quyết. Điều này khiến cho việc thiết kế ứng dụng qua chuỗi trở nên linh hoạt hơn.

Đầu tiên, việc lưu trữ bằng chứng có thể chứng minh bất kỳ dữ liệu lịch sử nào trên blockchain nguồn, như

  1. Số dư tài khoản và quyền sở hữu token
  2. Hoạt động giao dịch người dùng hoặc trạng thái tĩnh
  3. Giá lịch sử của giao dịch tài sản trong một khoảng thời gian cụ thể
  4. Số dư tài sản thời gian thực của hồ chứa thanh khoản qua chuỗi

Chứng minh sau đó có thể được gửi đến chuỗi mục tiêu để mở khóa loạt các trường hợp sử dụng qua chuỗi.

  1. Cho phép người dùng bình chỉnh đạo quản trên các đề xuất về giá thấp trên các hợp đồ tầng 2
  2. Cho phép chủ sở hữu NFT nhận các NFT mới hoặc các lợi ích cộng đồng trên một chuỗi mới
  3. Phần thưởng người dùng dựa trên lịch sử và tương tác của họ với các ứng dụng cụ thể (ví dụ qua airdrops)
  4. Các khoản vay cung cấp lãi suất tùy chỉnh dựa trên lịch sử giao dịch và tín dụng tổng thể của người dùng
  5. Kích hoạt khôi phục tài khoản cho các tài khoản ngủ quên
  6. Tính toán lịch sử của TWAP swaps tương lai
  7. Tính toán giá trao đổi AMM chính xác hơn dựa trên hồ bơi thanh khoản đa chuỗi

Về cơ bản, bằng chứng lưu trữ cho phép các ứng dụng truy vấn và chuyển dữ liệu hoạt động và lịch sử trên chuỗi của người dùng qua nhiều chuỗi để đưa vào một hợp đồng thông minh hoặc ứng dụng trên chuỗi khác.

Các trường hợp sử dụng bằng chứng lưu trữ

Hãy xem một ví dụ cụ thể để hiểu cách hoạt động của bằng chứng lưu trữ.

Cách Hoạt Động Chứng Thực Lưu Trữ: Ví Dụ Chi Tiết

Giả sử “X,” một giao thức DeFi với token trên Ethereum. Đề xuất quản trị đang được đưa ra, và họ muốn thúc đẩy việc bỏ phiếu trên chuỗi mục tiêu chi phí thấp. Người dùng chỉ có thể bỏ phiếu nếu họ giữ token X trên Ethereum vào một thời điểm cụ thể (chúng tôi gọi đó là “snapshot”), chẳng hạn như khối #17,000,000

Hiện nay, việc bỏ phiếu trên chuỗi được thực hiện như thế nào?

Cách tiếp cận hiện tại là truy vấn nút lưu trữ để có được danh sách đầy đủ các chủ sở hữu token đủ điều kiện tại khối #17,000,000. Quản trị viên DAO sau đó lưu trữ danh sách đó trong một hợp đồng thông minh trên chuỗi mục tiêu để xác định ai có thể bỏ phiếu. Có một vài hạn chế đối với cách tiếp cận này:

  1. Danh sách cử tri có thể rất dài, và mỗi bức ảnh chụp thay đổi, làm cho việc lưu trữ và cập nhật mỗi đề xuất bỏ phiếu trên chuỗi rất tốn kém;
  2. Có sự tin cậy ngầm định vào nhà cung cấp nút lưu trữ và dữ liệu mà nó cung cấp;
  3. Các thành viên quản lý DAO phải được tin tưởng không can thiệp vào danh sách cử tri

Làm thế nào proof of storage giải quyết vấn đề này?

Như chúng tôi đã giải thích trong bài viết 2, các phép tính đắt đỏ có thể được chuyển vào các chứng minh không tiết lộ trên chuỗi không gian.

Người chứng thực zk sẽ tạo ra một bằng chứng súc tích và gửi nó đến chuỗi mục tiêu để xác minh. Đối với các ví dụ về tư cách cử tri DAO ở trên, sau đây là:

  1. Người chứng thực tạo ra một bằng chứng không tiết lộ rằng khối #17,000,000 là một phần của lịch sử của Ethereum (như trong bước đầu tiên* ở trên).
  2. Sau khi chứng minh tính hợp lệ của khối, chúng ta có thể sử dụng Merkle để bao gồm chứng minh rằng người dùng đã nắm giữ các token DAO khi khối được hoàn thành (như trong bước 2 ở trên*)

Xác minh dữ liệu lịch sử để kích hoạt việc bỏ phiếu giữa các chuỗi khối

Chứng minh sau đó được gửi đến một hợp đồng thông minh trên chuỗi mục tiêu để xác minh. Nếu việc xác minh thành công, thì hợp đồng thông minh trên giao thức tầng 2 cho phép người dùng bỏ phiếu.

Phương pháp này đã giải quyết một số vấn đề. Nó không đòi hỏi:

Hãy tin tưởng nhà cung cấp nút lưu trữ;

  1. hãy để hiệp định duy trì danh sách cử tri trên chuỗi đắt đỏ;
  2. Để người dùng chuyển tài sản vào chuỗi mục đích

Cài đặt nào cần thiết cho chứng minh lưu trữ?

Cho đến nay, chúng tôi đã trừu tượng hóa một số điều phức tạp của bằng chứng lưu trữ. Tuy nhiên, việc sử dụng chúng cũng đòi hỏi việc thiết lập ban đầu cẩn thận bởi nhà cung cấp dịch vụ để đảm bảo rằng chúng có thể được sử dụng mà không cần phải tin tưởng vào nhà cung cấp. Hai điều được tạo ra và lưu trữ trên chuỗi trong quá trình này:

  1. Chứng minh không biết toàn bộ chuỗi (``lời hứa zk''): Nhà cung cấp dịch vụ nhóm tất cả các khối lịch sử trên chuỗi nguồn thành ``khối'' có kích thước cố định liên tục (sử dụng cây Merkle)và tạo ra các bằng chứng không dấu cho mỗi khối, được sử dụng để xác minh các nhóm. Các bằng chứng này sau đó được kết hợp đệ quy cho đến khi có được một bằng chứng không dấu cuối cùng, một “lời hứa zk” cho toàn bộ chuỗi. Điều này chứng minh rằng nhà cung cấp đã chỉ mục đúng toàn bộ lịch sử của chuỗi.

“Cam kết zk” giải thích toàn bộ lịch sử của Ethereum

  • **Dãy núi Merkle: ** Nhà cung cấp cũng lưu trữ các gốc Merkle Keccak của các băm khối (các khối) của chuỗi nguồn được nhóm lại trong một cấu trúc dữ liệu trên chuỗi gọi là Dãy núi Merkle (MMR). Cấu trúc dữ liệu này được sử dụng vì dễ truy vấn và cập nhật, và cho phép nhà cung cấp chứng minh một cách hiệu quả rằng một khối cụ thể tồn tại trong lịch sử chuỗi. MMR được tạo ra bằng cách sử dụng băm Keccak256, băm Poseidon, hoặc cả hai. Băm Poseidon thân thiện với kiến thức không gian và hỗ trợ tính toán dữ liệu lịch sử. Sự hợp lệ của dữ liệu và tính toán sau đó có thể được chứng minh thông qua kiến thức không.

Minh họa Dãy núi Merkel (MMR)

Khi các khối mới được thêm vào chuỗi nguồn, các nhà cung cấp dịch vụ thường xuyên (chẳng hạn như hàng giờ hoặc hàng ngày) cập nhật "cam kết zk" và MMR để theo kịp tốc độ của chuỗi. Điều này được thực hiện để khối quá khứ luôn được liên kết với một trong 256 khối hiện có thể truy cập từ EVM. Điều này đảm bảo rằng dữ liệu lịch sử được liên kết với một trong những khối hiện có sẵn trên Ethereum.

Trong hình ảnh dưới đây, chúng tôi đã mô tả cách hoàn tất cài đặt:

Tóm lại, sau đây là cách sử dụng chứng minh lưu trữ sau khi thiết lập hoàn tất trong bối cảnh ví dụ về việc bỏ phiếu của DAO mà chúng ta đã thảo luận trước đó:

  1. Các nhà cung cấp dịch vụ tạo và lưu trữ “lời hứa zk” cho toàn bộ chuỗi (tức là lịch sử Ethereum) và MMR trên chuỗi đích
  2. Nhà cung cấp cho phép ứng dụng truy vấn dữ liệu lịch sử trên chuỗi hoặc ngoài chuỗi thông qua một API
  3. Một ứng dụng bỏ phiếu trên chuỗi mục tiêu gửi một truy vấn đến hợp đồng thông minh của nhà cung cấp để tìm hiểu xem người dùng có giữ token DAO trên khối #17,000,000 trên Ethereum

Nhà cung cấp sẽ kiểm tra hai điều:

  1. Khối được truy vấn là một phần của lịch sử quy định của Ethereum (bước đầu tiên ở trên); nhà cung cấp sau đó tạo ra chứng minh không biết về nội dung của khối thông qua dãy núi Merkle
  2. Người dùng giữ token DAO trong khối #17,000,000 (bước 2 ở trên); nhà cung cấp sau đó tạo ra một bằng chứng không biết về việc người dùng giữ token DAO trong khối đó
  3. Nhà cung cấp tổng hợp chứng minh được tạo ra ở trên thành một chứng minh không cần biết
  4. Chứng minh ZK đã được tổng hợp được gửi trở lại hợp đồng thông minh dApp bỏ phiếu trên chuỗi mục tiêu để xác minh chứng minh ZK và cho phép người dùng bỏ phiếu sau khi xác minh thành công.

Xây dựng đội ngũ trong lĩnh vực này

Một số người tham gia đang xây dựng các hợp đồng thông minh cho phép các hợp đồng thông minh truy cập dữ liệu trên các chuỗi lịch sử một cách tối thiểu hóa sự tin cậy.

Hiện tại, Axiomđược chạy trên Ethereum và cam kết cung cấp hợp đồng thông minh trên Ethereum và truy cập dữ liệu lịch sử Ethereum thông qua chứng minh lưu trữ dựa trên zk. Đội ngũ cũng đang tăng cường khả năng tính toán ngoại chuỗi dựa trên dữ liệu lịch sử và sử dụng kiến thức không để chứng minh tính chính xác của các dữ liệu và phép tính này.

Giao thức di sảncung cấp một phương pháp kỹ thuật tương tự như Axiom, và giao thức chạy trên Ethereum và zkSync Era. Relic sử dụng bằng chứng bao gồm Merkle để chứng minh sự bao gồm dữ liệu (khác với phương pháp chứng minh bao gồm Merkle trong zero knowledge của Axiom).

Herodotus đang làm việc để cung cấp dữ liệu lịch sử về Ethereum cho các giao thức tầng 2. Việc triển khai thử nghiệm hiện đã có sẵn trên Starknet và zkSync Era. Với nguồn tài trợ từ OP Foundation, chúng tôi nghĩ rằng chúng ta biết đội Herodotus sẽ đi đến đâu tiếp theo.

Lagrange Labs LabsGate.io đã giới thiệu chứng minh hoàn toàn có thể cập nhật thông qua sáng tạo ZK MapReduce (ZKMR) gần đây. Nó sử dụng một cam kết vector mới gọi là Recproofsmở rộng khái niệm có thể cập nhật đến tính toán dữ liệu.

Đội ngũ đang làm việc trên chứng nhận lưu trữ

kết cục

Trong bài viết này, chúng tôi đã mô tả cách mà chứng minh việc lưu trữ có thể hỗ trợ việc xác minh dữ liệu trên chuỗi lịch sử mà không cần phải tin tưởng vào bên thứ ba. Điều này khiến chúng trở thành một công cụ quý giá cho việc tạo thành chuỗi và khả năng tương tác qua các chuỗi.

Khi Giá trị Tổng khóa (TVL) tiếp tục di chuyển từ Ethereum sang hệ sinh thái Tier 2, chúng tôi dự đoán sự xuất hiện của nhiều ứng dụng biểu hiện hơn sử dụng dữ liệu trên chuỗi lịch sử thông qua bằng chứng lưu trữ.

Trong khi công nghệ không chứng minh đang trở nhanh hơn và rẻ hơn, việc liên tục tạo ra bằng chứng lưu trữ để theo kịp các chi phí liên quan đến việc trên chuỗi vẫn là một thách thức. Lợi nhuận của dịch vụ như vậy sẽ phụ thuộc vào khối lượng truy vấn được tạo ra bởi ứng dụng truy vấn.

Mặc dù có những thách thức, nhưng không thể nào nói quá về sự quan trọng của sự đồng thuận và sự lưu trữ được hỗ trợ bởi công nghệ không chứng minh. Chúng tôi mong đợi sẽ thấy cách công nghệ này sẽ được sử dụng để xây dựng một tương lai đa chuỗi với sự tin cậy tối thiểu.

Tuyên bố từ chối trách nhiệm:

  1. Bài viết này được sao chép từ [gương]. Tất cả bản quyền thuộc về tác giả gốc [Jacob, Hitesh, Ji Hao]. Nếu có bất kỳ ý kiến phản đối nào về việc tái in này, vui lòng liên hệ với nhóm Gate Learn(gatelearn@gate.io), và họ sẽ xử lý ngay lập tức.
  2. Miễn trừ trách nhiệm: Các quan điểm và ý kiến được thể hiện trong bài viết này chỉ là của tác giả và không đại diện cho bất kỳ lời khuyên đầu tư nào.
  3. Bản dịch của bài viết sang các ngôn ngữ khác được thực hiện bởi nhóm Gate Learn. Trừ khi được nêu, việc sao chép, phân phối hoặc đạo văn các bài viết đã dịch là không được phép.
Empieza ahora
¡Registrarse y recibe un bono de
$100
!