ZKompose

ZKompose

Make IPFS data mutable and composable via RISC Zero

The problem ZKompose solves

The Problem

IPFS is a much loved and widely adopted peer-to-peer content delivery network. Despite solid on-chain adoption (especially within NFTs), today, using CIDs on-chain come with serious limitations. With no way of verifying the underlying contents contained within a CID, projects typically must precompute static CIDs - or allows privileged actors to update CIDs in good faith. Enter ZKompose

The Proposal

tl;dr: Create a proof-of-concept dapp that allows IPFS content to be composed into new derivates that are produced in a verifiably correct context.

Specifically, use Risc-0 Steel to prove on-chain state, such as owner of an NFT and the IPFS CID of the NFT or that a user possesses some amount of a fungible token which will be used in the compositional process. From this verified on-chain state, use the underlying content as input to the generative program which will produce the end result NFT as well as its CID.

Project

To demonstrate a use case for this technology, we have put together an on-chain Fantasy football (with ficitonal characters). Because of this tech we can have all content on chain and on IPFS (while making sure any IPFS metadata is always verified through our proofs).

Challenges we ran into

Local Development

Local development was disastrous. rust-analyzer was running very slowly, and it was also very difficult to get to the first step since we couldn't figure out how to plugin everything into a local chain.

To get over it

Tracks Applied (2)

🤩 Best zkVM Application

RISC Zero is essentially at the heart of our project. It is used to validate IPFS content modifications via content hash...Read More

RISC Zero

🤝 ZK Coprocessor

For the purchase of player tier packs, when a user decides to purchase a pack, a request event is emitted by the chain. ...Read More

RISC Zero

Discussion