We have discovered a way to do arbitrary induction proofs involving asserting any (all) aspects of the parent and grand parent transaction. This allows us to enforce arbitrary spending constraints and emulate a “token/account ID” through the ancestry of an NFT or FT.
This is a revolutionary design that means it is possible, using current BCH consensus rules, to create a FT or NFT that requires no backend indexer and can be passed around by users and tracked in their wallets. Only to verify that the latest UTXO (and it’s immediate parent) is included in a block is necessary. This takes O(1) time and it is not necessary to backtrack to the genesis minting event to verify authenticity.
This post is to outline the scope of the project and to indicate what has been solved already. The goal is to raise enough funding to justify the development of the smart contracts, tooling (JS, Node), and documentation for a true L1 token protocol on BCH using the current consensus rules.
Working Smart Contract and Tooling With:
Key Functional Features:
- Mint FUNGIBLE or NON-FUNGIBLE tokens enforced solely by miners (L1) and no backend indexer is necessary. ie: Can use cash wallet in browser entirely and not rely on a second layer interpretor
- Verify authenticity without “backtrack to mint/genesis” in O(1) by checking the received UTXO and it’s immediate parent only
- Emulate “accounts” in a manner similar to ETH, but using the UTXO model
- Arbitrary token logic, no limitations
- Tokens cannot be spent unless they are authentic and valid (ie: a forgery will be impossible to be sent to a receiver)
Key Security and Performance:
- Impossible to forge or man-in-the-middle spoof the history
- Truly decentralized, no issuer is needed (but can be provided for redemption)
- Uses UTXOs as “colored coins” (ie: UTXO overlay, to maintain parallelizability)
Scope of the Work Proposal:
- Deliver BCH smart contracts for FT and NFT that meets the criteria set out above.
- Deliver tooling library and unit tests (JS/TS/Node) that allows the creation, deployment, and sending of tokens on testnet and mainnet
- Launch a sample token (name and icon voted on by community) that will be the world’s first true L1 on BCH (meant as a demonstration, not as an expectation of profit)
- Whitepaper documenting the technique
- License terms to be voted on by the crowd funders. Prefer MIT open source, but fundamentally up to the community.
- Build out code library of various DeFI primitives using the technique
- Wallet support (browser based, etc)
- Bridge SLP
- Developer tutorials and documentation
- Additional code libraries: Go, Python, Java
The goal is to raise $500,000 in BCH as a bounty to commit resources and ongoing work to the roadmap. The funds would only be released in phases as functional work is delivered (ie: no risk to funders of being rugged)
Keybase Profile: @ar2d2