Holochain is a framework that can augment the powers of blockchains by offering control, trust, and transparency in a local, private network — while also being able to reference a specific transaction, action, or other data on a public blockchain.
In a Holochain application every action is validated and has a cryptographically signed provenance. This validation does not require consensus, making it hyper scalable. It does this by using a mix of technologies from BitTorrent, git, and GNUPG.
The Fractal Tribute game is a Holochain application designed to address several technical challenges that groups and applications often encounter when looking for ways to deliver NFT content that is both dynamic and decentralized. It also addresses the challenge of bridging state across decentralized systems, in this case from Holochain to an EVM blockchain. Those technical challenges are solved in Fractal Tribute which enables permissionless minting of dynamic content, facilitates the distribution of raised funds based on player activity, all whilst ensuring compatibility with existing NFT metadata consumers, like OpenSea.
Permissionless Minting of Content
Although there is growing popularity for entirely on-chain NFTs, for the most part NFT content is stored somewhere off-chain for reasons of scalability. It is prohibitively expensive to store content on a blockchain. So, the usual approaches to this would be to either store the content on a network like IPFS or Arweave, or put it behind a centralized API. The former is obviously the preferable option, however if you’d like the content to be dynamic you’re still left with a problem as both IPFS and Arweave only store static assets.
This problem is solved in Fractal Tribute. Players are able to create artwork with each other in a fully peer-to-peer decentralized Holochain app, then permissionlessly mint it on-chain. The solution involves creating a unique ID for each NFT that combines the content and your wallet address (ID = hash(content + wallet)). This ID is generated within the EVM smart contract and a matching reference is created on the Holochain app. Because it is partly generated from the wallet doing the minting, it makes it impossible for anyone else to create the same ID. A binding between your Holochain agent and EVM wallet is established, ensuring that only you can mint NFTs for your content on both networks.
Making the Game Compatible with OpenSea
To ensure that content from the Holochain app can be seamlessly integrated with platforms like OpenSea, the project utilizes Holo gateways. These gateways are hosted on Holo, a distributed hosting platform for Holochain apps, and can request content for a specific token ID from the app and generate the necessary metadata in JSON format.
Going forward, this approach has the potential to be applied in various scenarios where tokenization of events or assets on a peer-to-peer Holochain network is desirable, including identity solutions for private Holochain networks, audits, or backing for real-world assets on-chain.
Distribution of Funds
The challenge is to fairly distribute funds raised in the minting of the limited open edition NFTs based on a percentage of contribution to the artwork produced in the game. So far, the only link between Holochain and the NFT contract is by ID. The blockchain has no awareness of player contributions in the Holochain app. To address this, a "game steward" concept is introduced. This steward, a participant in the Holochain app, calculates each participant's contributions at the end of the game and signs the percentage claim of the fund pool with their EVM private key. The smart contract on the EVM side only accepts data signed by the game steward, allowing individuals to make their claims. While this system depends on the honesty of the steward, the transparency of the process and the ability to hold the steward accountable mitigate risks.The result? All players of the game will receive a percentage of the sale of any NFT minted during the game.
Three primary technical challenges have limited the ability of NFTs to be both dynamic and decentralized in the current ecosystem. These can be solved by bridging between a Holochain app and an EVM. The NFT is effectively minted on both networks by the binding of a Holochain agent and an EVM wallet that results in a single NFT ID. This demonstration provides significant, new utility to the NFT space and broader Web3 ecosystem.