Who are you?
Someone who's been lurking around for a long time, someone who remembers the cool stuff talked about when Bitcoin was still magic internet money.
What is your goal?
To help dust-off this project and fast track it into May 2022 HF by bringing that sweet "aha!" moment to as many people as I can!
Why you?
Because nobody else was doing it. I have free time, I have a BCH bag, I feel competent and I happen to like this project and think it will help deliver BCH vision of financial inclusion and economic freedom. The other day I watched this interview with the creator of native group tokens, Andrew Stone, and it resonated with me. I saw that his idea needs help getting out there, and since nobody was helping it I saw a gap that I thought I could fill. Anyway, I think it is just awesome.
Why would we want native group tokens?
Bitcoin Cash prime directive is to be the best digital cash, I assume we can agree there. It achieves that through low fees and fast payments due to high safety of 0-conf since there is a near 100% probability that the first seen transaction will be included in the next block. There are other cryptocurrencies which claim instant payments, those are our competition. Where is our advantage? It's the network effect, narrative, community, and boots on the ground, the shared dream of bringing accessible digital cash to the world!
I think we have to focus on making our advantage stronger. When someone thinks crypto/digital cash we want them to think Bitcoin Cash. Competition is not just around technology, the real competition is around the narrative! And we're not just competing for users, we're competing for all stakeholders, we're competing for miners, we're competing for enterpreneurs who'll build something using BCH, we're competing for developers, we're competing for holders too, and for investors who will invest in BCH centered businesss, we're competing for all the species that make a part of a blockchain ecosystem.
But why does the world need the best digital cash? Because it enables financial inclusion and economic freedom. Enabling efficient crypto-financial computing has that same why.
What does it have to do with Group Tokens? It has everything to do with it! Because NGTs are a way to expand the scope of "cash". NGTs are 1st class tokens meaning they enjoy the same efficiencies that BCH has. Miner enforcement, SPV wallets, 0-conf, etc. Cash is not just 1 currency. Having 1st class tokens would enable multiple currencies on BCH blockchain, and they’d all be carried around by small amounts of BCH and paying fees in BCH. NGTs are NOT smart contracts. They're directly miner enforced, not script/contract enforced. Future smart contracts could be using them alongside BCH.
Growth of other blockchain ecosystems has shown market demand for efficient crypto-financial computing. The simplest and widest usage is a stablecoin, and USDT trading volume overtook Bitcoin's volume in 2020. Even though USDT started on the Bitcoin blockhain through the Omni network it ended up moving to Ethereum blockchain. Blockchains don't exist in vacuum and the USDT example shows us that interested parties will move towards the Blockchain which provides better service. There's even a market for having a stablecoin of another crytocurrency, like WBTC.
There is an opportunity for Bitcoin Cash to capture a part of this market by developing competitive advantage for some key applications. We're not talking smart contract. We're talking about enabling efficient use of other stuff as cash, and having users pay for that service in BCH. Bitcoin Cash network could turn anything into usable cash!
No smart contract complications, just more units of accounting, powered by BCH! If we later get smart contract, they will be able to interact with both BCH and NGTs because every NGT is also a bit of BCH. This would be super-efficient, and who knows, maybe one of killer apps would be a super-efficient DEX so you can swap all those currencies floating around and carried by BCH.
Ok, I'm interested, what are Native Group Tokens?
They are a way to mark some amount of BCH as belonging to a group. We do this by attaching a tag to a BCH output and scribbling a number on the tag. The tag colour tells us which group the BCH belongs to, and the ability to write a number lets us do more than just group BCH. You can't choose the color, you get a random one when you first create your token, similar how you get a random address when you want to use BCH. We'll see the importance of this later on.
If we decide that every different shade of colour represents another token, that the number represents its amount, and that the totals of those numbers must balance for every transaction, then we just gave ourselves the ability to have tokens on the BCH blockchain!
But who will enforce these rules? Someone has to check that the the rules were respected in the past. We could do it ourselves, but then we'd have to check the entire history of the blockchain, and we don't want to do that becasue we're users, doing it every time we receive something is a lot of work. We just want to use them the same way we use BCH, hassle free. If it's confirmed, it's good. Even if it's just seen and not confirmed, it'll probably be good. Cheap, fast, and easy! To have this kind of functionality with tokens we need to ask miners to validate them. We'll pay for the service in BCH, as we always do!
Since by design every NGT is also a BCH output, they will work the same way as BCH outputs.
We already have SLP, we don't need another solution!
Those who already built something that works with SLP can continue to use it if they're happy with it. Nobody's forcing them into anything, but maybe they'll like NGTs so much they'll come because they get to stay on BCH blockchain and get a better solution. If there'll always be competition, better it comes from us, that's how we'll grow to be the best!
Even if you don't need NGTs and are happy with SLP, maybe others need it. If they will want to come from other blockchains because we have the best solution, that would mean greater adoption!
Having too good tokens will displace BCH
How could that possibly happen? Every group token TXO is also a BCH TXO ie every group token TXO needs to be wrapped into a little bit of BCH which will carry it around, like a soap bubble made of BCH.
This means that miners get an additional mechanism to control group token usage. Apart from setting the fee, they could adjust the required amount of soap i.e. amount of BCH locked in with the group token TXO. As with fee policy, this would be a software setting, where every miner decides for themselves.
Ok, I'm sold, but what about scaling?
I wrote a bigger FAQ for that, but in short it adds a tiny bit of work inside loops miners have to do anyway. Every miner has to make a pass through all the inputs and outputs of a transaction to check that BCH balances. We'll be adding a few more checks during that process and that's it, and these checks are way cheaper than verifying a single digital signature so it doesn't add much %-wise. No additional database operations required.
Copyright
This document is placed in the public domain. Attribution neither required nor desired.
Great work, bitcoincashautist! It would just thrill me and would be a breath of fresh air to see every possible route to better financial and NFT token support on Bitcoin Cash explored and discussed to the fullest extent. Let's play to the wall on this. I am in no kind of reckless rush, but I see no reason not to always aim for a positive story to tell on the roadmap and progress of efforts to maximise this property to the extent the BCH architecture and both founding and 'forking' principles allow. Thank you for your efforts. PQ.