Maybe you noticed the "We Want First Class Tokens on BCH!" series. I started those shortly after seeing the interview with group tokens creator, Andrew Stone. It resonated with me and there I saw something which I believe could profoundly help Bitcoin Cash grow in value. I wanted others to see it too, and I was not holding back in trying to achieve that. Naturally, it annoyed some people. I'm listening to that criticism and toning it down but I still want to write more about it.
During that time some CHIPs started popping up and I decided to write one too so the "final" product of my endeavor is the Group Tokenization CHIP. Here I want to thank Andrew Stone for creating Group Tokens and accepting my help in bringing it forward. I say "final" because it's just the beginning -- of a more focused conversation, now that we have the CHIP and a full spec.
This was just to give a quick update on the progress and letting you know it exists. Here I want to demonstrate what could be done with group tokens. Hopefully it will catch the eye of some wallet dev and we could get their feedback. After all, implementing the CHIP would only enable token transactions and it would be wallet devs who would build the means to actually do something meaningful with tokens. Today I present just one example use-case: stablecoins, and I will now walk you through it.
Let's get started, shall we?
Stablecoin Example
Genesis transaction creates the first authority. If not enough authority is given at genesis, we could be creating an useless group. These are new concepts, but I think you'll get the idea quickly. The notation is simple, stuff in []
describes a transaction output:
[BCH satoshi amount, Group ID, Group amount or authority flags]
Normal BCH outputs only have the first field. Grouped outputs carry some BCH but also have the two group fields as attachment.
01 Genesis transaction
In
[ 10000] // pure BCH output
Out
[ 9000, Group ID = H(TX data), BATON | MINT | MELT] // grouped output
Fee 1000 // picked this amount for simplicity
You can't choose the Group ID. It's generated from the genesis transaction data so it will be unique and ensure that only one genesis can exist for any given group.
We can then first split the authority, thus enabling separation of powers between the issuance department and redeeming department of our hypothetical organization.
02 Split authority
In
[ 9000, Group ID, BATON | MINT | MELT]
Out
[ 4000, Group ID, BATON | MINT]
[ 4000, Group ID, BATON | MELT]
Fee 1000
Think of authority as just another balance to check. If the numbers match a pattern then operations "cheating" the token balance of a transaction will be allowed. Authorities can be merged or fanned out just like BCH or token amounts.
We will then further secure the supply by first creating one-time use mint authorities (MINT without BATON) and then sign actual mint transactions and hand them to lower security tiers of our organization, who will post them to the blockchain when needed.
Why not simply create the supply and give the balances to lower tiers? Because blockchains are public, and anyone could see this. By securely storing the signed partial transactions until they're actually needed we achieve two things:
Hide the information on available loot from potential adversaries.
Keep the whole stablecoin more transparent, as the total supply on the blockchain will more closely match the actual fiat amount received to back the stablecoin.
03 Create one-time use mint authorities
In
[ 15000]
[ 4500, Group ID, BATON | MINT]
Out
[ 9954] // BCH change
[ 546, Group ID, BATON | MINT] // preserve group authority baton
[ 2000, Group ID, MINT] // these are one-time, they will be consumed with use
[ 2000, Group ID, MINT]
[ 2000, Group ID, MINT]
[ 2000, Group ID, MINT]
Fee 1000
Notice how the amount of BCH freely flows in/out from grouped TXOs, but it can't go below the dust limit. Next, we create TXes that can mint some fixed amount of our stablecoin.
Mint TX
In
[ 2000, Group ID, MINT]
Out
[ 546, Group ID, 10000000]
Fee 1454
This can be stored in a vault and used at a later time when teller hot wallets will need refilling. Should there be a suspicion that the vault has been compromised, those mint authorities can be simply revoked by spending those UTXOs, hopefully before the thief gets a chance to use them first.
Revocation TX
In
[ 2000, Group ID, MINT]
Out
[ 1000] // BCH change
Fee 1000
Once mint TXes are published, tellers can distribute funds to clients using ordinary token transfers. For client convenience, the token UTXOs can be further charged with some BCH to allow them to move it without requiring external source of BCH.
Ordinary Token Transfer
In
[ 10000]
[ 546, Group ID, 10000000]
Out
[ 4500, Group ID, 01000000] // to client 1
[ 4500, Group ID, 02000000] // to client 2
[ 546, Group ID, 07000000] // teller change
Fee 1000
What do you think, was this example easy to follow? Do you have any other ideas or questions like "How to do X"? We can do BCH/stablecoin atomic swaps with this approach, too. More on that in the next part :)
Other posts in the series
Introducing Group Tokens for Bitcoin Cash - Part 1/N - Stablecoin Example (this)
Introducing Group Tokens for Bitcoin Cash - Part 2/N - Atomic Swap Examples
Introducing Group Tokens for Bitcoin Cash - Part 3/N - CoinJoin
Introducing Group Tokens for Bitcoin Cash - Part 4/N - Non-fungible Tokens (NFTs)
Damien Hirst Is Now Accepting Bitcoin and Ethereum for His Art Damien Hirst—the British artist known for his preserved shark piece, The Physical Impossibility of Death in the Mind of Someone Living—has said he’s now taking bitcoin">Bitcoin and Ethereum as payment for a new run of prints.
“For the first time, I’m accepting Cryptocurrency for payment,” he wrote on Instagram. “It’s hard for any of us to trust anything in this life but somehow we manage it and we even find love and I love art and I love the crypto world and I am happy and proud to put my belief into Bitcoin (BTC) and Ether (ETH) and accept them for this drop.”
And though you can pay for them in crypto, these pieces are very much not “crypto art”—the eight prints represent different takes on cherry blossoms, inspired by the eight virtues of bushidō, the samurai code. They cost $3,000 a pop, and they’re only on sale until March 3.
I've made eight cherry blossom prints called The Virtues with @HENIGroup. For the first time I'm accepting Cryptocurrency for payment! You can buy them via the link below. Available until 23:59 PST Wednesday 3rd March. https://t.co/Jcn6z78Y54
— Damien Hirst (@hirst_official) February 26, 2021
The Physical Impossibility of Death in the Mind of Someone Living put Hirst on the map in the 90s, and though he’s been producing less important work over the years, his art remains polarizing as ever; a 2017 exhibition in Venice was met with both raves and pans.
The big story at the proverbial “intersection of art and technology” over the past few months has beenNFTs (non-fungible tokens): cryptographically secured assets that can put any sort of digital art on the Ethereum blockchain">blockchain. According to a report from the blockchain analytics firm NonFungible, the market grew by 2800% last year.
Earlier today, musician and visual artist (and girlfriend to billionaire Elon Musk) Grimes sold a collection of NFTs for over $6 million.
Grimes Just Sold Her Crypto Art NFT Collection for $6 Million And while NFTs are typically online images and animations, physical artworks can come with NFT components too. In October, Christie’s sold a Bitcoin-themed piece with an accompanying NFT for $131,000.
For now, though, Hirst’s prints remain off-chain