This is an opinion editorial by Shinobi, a self-taught educator in the Bitcoin space and tech-oriented Bitcoin podcast host.
Taro finally released beta code for testnet, and it has continued to be a big point of discussion for a few weeks now at this point. It is being discussed by many as some kind of panacea for the issues of people in developing nations or countries being decimated by close to or outright hyperinflation. Many are presenting it as the solution to everything. The ability to self-custody, to avoid the inherent volatility of bitcoin, to still have access to Lightning as a payment network. It would have the stability of fiat without losing the access to Bitcoin’s openness and censorship resistance. It can provide a lot of utility, and yes it does provide the “stability” of fiat while simultaneously allowing interoperability with the Bitcoin network, but it is being wildly oversold by many of the people discussing it.
To use Taro on the Lightning Network requires having a peer that understands the Taro protocol, and more importantly, owns the asset you wish to receive (or be willing to accept the asset you have and wish to spend), and exchange that asset both ways with bitcoin. On the Lightning Network proper, nodes on the network simply swap control of bitcoin in one channel in tandem with control of bitcoin in another channel. There is no exchange risk there, there is no volatility risk — one bitcoin equals one bitcoin. In facilitating the transfer of Taro assets for bitcoin on the edges of the network, this entire assumption goes completely out of the window. Every single transaction that a user conducts is now an exchange rate risk for the node operator that is providing services to Taro users on the Lightning Network. Every single time a Taro user with a channel open to that node receives money the node operator is buying bitcoin (that they receive over the Lightning Network) with the fiat tokens they send over a Taro channel to that user. Every single time that a Taro user sends money the node operator is selling bitcoin for fiat when they receive a Taro stablecoin and then transmit bitcoin out across the Lightning Network.
There is a massively different skill set required to operate such a node versus a Bitcoin-only one. You effectively have to day trade at a ridiculously fast rate, where the decisions on when to trade are not even made by you trying to look for advantageous opportunities, they are made by your Taro channel peers when they need to send or receive money. There are really only two options in order to deal with this problem.
In the first option, you have to trade beyond just the transactions you process. You have to actively trade in the market based on transactions you are making (whether you are buying or selling bitcoin), in order to balance out the potential risk you are exposed to. Every time you sell bitcoin by letting a Taro user send fiat, you need to buy that same amount of bitcoin because you are at risk of losing some of that bitcoin if the price moves up before that user receives funds again. Every time you buy bitcoin by letting a Taro user receive fiat, you need to sell some of the bitcoin in your balance to ensure you have fiat to buy bitcoin the next time a Taro user sends funds. This can be done through options, trading on leverage, etc., — but the principle remains the same.
The second option would be to deny users sending or receiving money when you feel like the market is about to move against you. This would lead to a totally degraded and impractical user experience for Taro users that opened channels with you. Think of how frustrating it would be to have payments coming in or out being denied because the price of bitcoin moves. Which it does, literally all of the time.
These completely different dynamics require a much higher degree of specialization and skill to successfully run a Lightning node that offers Taro services. This almost certainly will lead to a very high degree of centralization in terms of how many nodes on the network will actually support users opening Taro channels with them.
Further exacerbating that centralizing pressure will be an even bigger elephant in the room: regulations. Currently Lightning has not been declared under existing legislation an act of money transmission or regulated financial activity, and a 2014 U.S. Financial Crimes Enforcement Network (FinCEN) ruling on escrow services using cryptocurrency explicitly not being money transmission gives an incredibly strong argument to stand on that Lightning is on a technical level exactly that — just an escrow.
Exchanging one asset for another is absolutely a clearly regulated activity in most jurisdictions. That is exactly what Lightning nodes supporting Taro channel do when a Taro peer sends and receives — they are exchanging a stablecoin (fiat) for bitcoin or vice versa. As a litany of prosecutions against LocalBitcoins traders have shown in the United States, this act being committed regularly for a profit instead of solely dealing with your own personal investments is absolutely considered being a Money Service Business (MSB).
This comes with all the regulatory requirements of such; record keeping, KYC and AML regulations, complying with government requests for actions and court orders. It effectively turns these nodes into Strike, a business that has to comply with a whole slew of government regulations and requirements. Don’t get me wrong, for people comfortable with interacting with businesses subject to those requirements it can absolutely provide a great degree of utility and value, but it is still a regulated business. It is not a magic decentralized panacea opening the door to scalable self-sovereign use of stablecoins. It is a protocol that can make it easier and less of a hassle for a business providing bitcoin/fiat integration like Strike to handle the fiat side of their business.
Now to discuss on-chain activity, Taro does have some usefulness in this regard. There is no requirement for depending on a Lightning node that will facilitate cross-asset exchanges here — it is all direct on-chain transactions, however there are still two potential complications here. On-chain use for day-to-day payments is not something that scales for everyone; blockspace might be cheap today, but drivers for blockspace demand picking up means that space will become more expensive. In being pitched as a solution to the issues of currency volatility and uncensorable payments, this limitation should be acknowledged just like with Bitcoin itself. The second complication is the issue of how Taro works; being a commitment of data inside a Taproot UTXO, it requires actually creating bitcoin outputs in order to spend and hold Taro assets. For any user who is primarily concerned with simply using Taro assets and not bitcoin, this will likely play out with them handling many very small value bitcoin UTXOs simply to hold and use Taro assets. The only way out of this would be to construct a protocol using something like PayJoin in order for the sender to collaborate with the receiver in making a transaction that transferred Taro assets while ensuring that each of them can maintain just a single Bitcoin UTXO instead of creating lots of small ones with each transaction. This however would have pretty big implications for the privacy of Taro users.
So to wrap up, Taro does present real utility as a means of payment without the volatility present in bitcoin itself, but it is not at all a magical panacea. In order to interact with Taro over the Lightning Network, users will have to open channels with Lightning nodes that open themselves up to a massive amount of regulatory compliance requirements, and in order to use Taro directly on-chain users will have to deal with all the scaling limitations and costs of Bitcoin itself in addition to the requirement of having to have some reasonable amount of bitcoin to transact with Taro assets in the first place (if they are chiefly Taro users and do not already own some amount of Bitcoin that can be used as a Taro anchor).
This is a very valuable tool for businesses who want to offer fiat/bitcoin interfaces as a service, streamlining the technical integration and management of the fiat side of that, and it can be a tool for direct on-chain use of stablecoins and other Taro assets – but it is not some magical panacea. It is not some decentralized wonderland. It’s a business tool, and a new way to hold other tokens on-chain. Nothing more.
This is a guest post by Shinobi. Opinions expressed are entirely their own and do not necessarily reflect those of BTC Inc or Bitcoin Magazine.