convex icon indicating copy to clipboard operation
convex copied to clipboard

Verifiable Storage

Open mikera opened this issue 4 years ago • 1 comments

The problem: Users often need to access large files (game assets, media, documents) in a way that integrity can be verified but do not directly need to be stored on chain (it would often be too expensive to do so).

proposed solution is a system of Verifiable Storage

  • Servers can register on-chain as verified stores (they do not need to be Peers, but would need a public URL)
  • Servers can register the ability to provide files with specific hashes
  • Clients can download the files they want (identified by hash) directly from one or more of these servers
  • Servers can be "challenged" to prove they hold a specific file / file fragment on-chain
  • Optional: Some server may require a small micropayment to serve files
  • Optional: Bounties could be placed on certain files, distributed over time, to incentivise secure replicas

Implementation notes:

  • Files would normally be Blobs, but could potentially be any Convex data structure (Cell)
  • Challenges can be an arbitrary path through a Merkle Tree of child Cells, a corresponding Proof would include the Encoding of the specified Cell

This could be a substantive project, a bounty would be available from the Convex Foundation for the implementer(s)

mikera avatar Sep 29 '21 00:09 mikera

Probably needs its own project

mikera avatar Oct 04 '22 11:10 mikera