NFTs on Cardano - what else can they do?
Updated: Sep 9, 2021
Currently NFTs on Cardano are primarily used for art work, but in the future smart contracts will open up a wide variety of use cases, including many we haven't yet considered.
Imagine for example the ownership of a property being represented by a series of NFTs, with an associated smart contract distributing the property's rental income to holders. Another smart contract may handle the sale and exchange of these NFTs in a zero-trust fashion, without the need for lawyers or any other third party. The possibilities are endless.
As a proof of concept for Plutus smart contracts and NFTs on Cardano, I am developing RuNFT, a platform to facilitate organising running races and issuing race results to participants as NFTs. This may not be something that can gain adoption (yet), but I think it is an interesting demonstration of what is possible.
I will be writing regular blog posts about the design and development process, and making the code available on GitHub. As well as helping to further my knowledge and experience of Plutus development, I hope it will also be useful for other developers seeking to understand how to approach such a problem.
The functionality will cover:
Allowing organisers to create races which use a smart contract to collect fees from entrants and supply registration NFTs in return.
Locking a portion of entry fees in the smart contract to allow monetary prizes to be claimed after race completion.
Allowing entrants to exchange their registration NFT for a results NFT, including metadata on their place and timings. If an entrant is eligible for a prize, they can claim this at the same time.
Ensuring that pre-requisites, such as having completed a race previously of a certain distance and/or time, are met by requiring the entrant to own an NFT proving completion of a race with the required result when registering.
In theory, the advantages of using such a platform for organisers would be:
A zero-effort process for provably ensuring that race restrictions are met by entrants.
A potentially cheaper/simplified mechanism for collecting race fees and issuing registration 'tickets' without the need for payment processors or other intermediaries.
For entrants the advantages would be:
The ability for them to truly own their result data in an immutable form via the possession of result NFTs. This contrasts to the current situation where runners rely on a number of websites to record their result data - which may disappear at any point, or be subject to data corruption either accidentally or via malicious intent. This is particularly problematic when you consider the case of a runner needing to prove a previous result in order to gain entry to a race.
A zero-trust situation for the custody of prize money - it is not possible for the race organiser or any 3rd party to abscond with the funds.
In my next blog post I will be outlining a high level design for implementing this functionality using Plutus, and discussing some of the challenges.
Follow me on Twitter at https://twitter.com/DistrByDesign to be notified when this is published.