Stablecoins Have A Fundamental Problem
Turns out, there may actually be a decent solution already and it's the closest thing I've seen to a viable way to use public blockchains for P2P payments between customers and merchants.
The idea of a truly decentralized peer to peer digital ledger system is amazing. I know it probably seems like I’ve been picking on Bitcoin ($BTC-USD) a lot lately, but what I’m actually trying to do is give you guys what I think is a fair assessment of the network and it’s broad utility. Begin is wonderful but it is far from perfect.
Heretics aren’t members of the Cult of Satoshi. We acknowledge both strengths and weaknesses. Every network has limitations and Bitcoin is not different. That said, I remain very confident that the idea that spawned Bitcoin will live on and eventually come to fruition. It’s totally okay to be optimistic for the future while also remaining mindful that today’s reality isn’t what some may ultimately want.
Take for instance, the stablecoin market. There are some who will never be able to get past the price volatility of something like BTC - thus, it won’t work for payments even if scalability concerns are addressed. Stablecoins offer a familiar unit of account but with a disruptive technology powering the utility. The total value of the stablecoin market on public blockchain rails is back up to $160 billion - it was about $120 billion near the end of 2023. Interestingly, even despite this 33% rip in stablecoin market cap, stablecoins are still actually losing ground to Bitcoin as a share of digital asset market cap:
Now here lies the problem; I have spent nearly a month making the case that Bitcoin’s current scaling options are not great. Frankly, Ethereum scales BTC usage better than Bitcoin does if your proposed solution to the base layer fee and throughput problems is to just utilize custodians or custodian-like secondary layers (cough Liquid cough). Is the horse beaten enough? I think so.
From where I sit, it’s already difficult enough to get small businesses and local merchants to accept anything other than US dollars - this is why stablecoins are so interesting. Last year, I shared my Farmer’s Market honey story. If you’ve joined the stack since May 2023, this will get you up to speed:
This is the second season I’ve been buying honey from this particular merchant but it’s the first time I’ve been charged a fee for using a credit card. This is what crypto is supposed to fix. An extra dollar on $20 doesn’t seem like much in aggregate, but it amounts to a 5% vig just to process a transaction that costs a fraction of a penny on other networks. When I asked him why, he said his processor fees were going up.
Here’s the part of the story that I left out; I asked him if he would take Bitcoin instead of cash or card. He said yes. Of course, last May fees to transact on Bitcoin where already larger than the $1 processing fee that he was kicking off to me - so it was still cheaper to use the card. But had he been able to process a transaction in Circle’s USD stablecoin ($USDC-USD) on a network like Polygon ($MATIC-USD), we would have been able to to do the trade for about 4 cents:
Perhaps it’s no surprise then that we’ve been seeing stablecoin volume generally grow over the last several years. Not even the stablecoin market cap decline during Crypto Winter could really destroy the viability of stablecoin usage:
If stables are a foreign concept, they’re just dollars that live and move on public blockchain networks rather than on private bank ledgers. The issuers of these coins are holding 1:1 cash deposits to back every digital dollar.
Functionally, an investor deposits capital with Circle via banks, Circle than mints USDC tokens on the blockchain and drops them into the investor’s public wallet. In the case of stables like USDC or Tether ($USDT-USD), the collateral backing the stablecoin is identical to the collateral backing BoFa BAC 0.00%↑ deposits (it’s all Grandma Janet’s T-bills). Same collateral. Same unit of account. Just much faster to move between arbitrary geographic borders and sort of permission-less.
What’s not to love? My old BCR heads will probably know where I’m going with this… are Ethereum ($ETH-USD) L2 scaling chains a cheaper alternative to Square SQ 0.00%↑ and Stripe? Absolutely. Decentralized? No. And that’s not even the worst part.
If the market values the ability to trade in stablecoins through a sort of permission-less cross-border settlement network - and it seems like that is indeed the preference in most cases - then there absolutely has to be privacy embedded in these assets. Financial privacy is quite literally freedom of speech. It provides the ability to support political causes that are unpopular with the overlords. It protects employers and employees from internal hostility. It prevents doxing and ransom targets. Financial privacy matters and public blockchains are highly unlikely to be utilized for real economic activity at scale if privacy isn’t respected.
Had I sent my honey seller $20 in USDC over Polygon, anyone who wanted to know about it could go find the transaction in a block explorer. They’d get how much was transacted, who sent it, where it went, and how much I paid Polygon to do the trade. Not ideal. So the question then is, how do a customer and a merchant conduct an on-chain trade privately with a stablecoin on a public network?
Turns out, there is actually a way to do it.
As one can probably deduce, on-chain privacy is still a very important theme in my crypto holdings. I’ve covered it multiple times. I’m an advocate and holder of Zcash ($ZEC-USD). I’ve tried public chain mixing features like Coinfusion on the Bitcoin Cash ($BCH-USD) blockchain. Bitcoin has Coinjoin and Litecoin ($LTC-USD) has MimbleWimble. The problem with some of these public chain features is they often require the re-anonymization of coins after they’ve been sent - as far as I can tell this is not the case with MimbleWimble so long as swaps are between “mweb” addresses.
To me, the elegance of Zcash’s shielded pool is that z-address to z-address is completely shielded and requires no re-shielding. There appears to be a way to do this on Ethereum as well with stablecoins. The protocol is called Railgun ($RAIL-USD).
Reviewing Railgun
While it uses zk-proof tech, Railgun is a bit different from Zcash as it’s not a traditional L1 blockchain. I think it would be more fair to call it a protocol developed on top of EVM chains - or even a sidechain that interacts with EVM chains. For example, a user can download a Railgun front end wallet application (in my case Railway) and import an existing EVM wallet into the application. This way, the end user doesn’t have to create a new wallet and can simply treat Railgun more like a dApp than an entirely new network. However, for my test transactions, I used new wallets.
So far, Railgun has integration with Ethereum, Binance Smart Chain ($BNB-USD), Polygon ($MATIC-USD), and Arbitrum ($ARB-USD). Between those four networks, Railgun has about $52 million in TVL - the overwhelming majority of which is on Ethereum. There has been a noticeable uptick in TVL this year, especially in the last few days - likely because Ethereum founder Vitalik Buterin publicly mentioned the protocol about a week and a half ago.
Though Railgun is similar to Tornado Cash, the implementation of zk-proof signing combats the nefarious-activity/money laundering narrative that has frequently plagued crypto - and specifically privacy-focused protocols building with crypto. Per DLNews:
It lets honest users create a cryptographic proof that shows the money they put into the protocol didn’t come from wallets associated with stolen funds or illicit activity, while at the same time keeping the origin of the money secret.
Given the increase in liquidity and usage, I decided to give Railgun a test spin. I’m a bit partial to Polygon so that’s the network that I chose when testing out the Railgun protocol.
Some of My Takeaways
The functionality of the protocol is really straightforward if you’ve ever interacted with EVM chains in the past. If you’ve never used crypto, it’s probably too confusing to start with Railgun. But honestly, if you’ve ever done a token swap on Ethereum, you should be able to easily navigate this application.
After creating a new wallet or adding a Railgun zk address to an existing wallet, users can send assets into the Railgun smart contract to start concealing activity within the contract. Shielding is very easy. I sent unshielded MATIC to my Railgun address - importantly, my initial interaction with Railgun is publicly visible via Polygonscan block explorer. However, everything after that is shielded. This is not much different from sending transparent ZEC from an exchange like Coinbase COIN 0.00%↑ to a t-address wallet and then into the Zcash shielded pool, for what it’s worth.
Upon completing the initial transaction, I was able to then swap MATIC to another token within Railgun before sending my new token to yet another Railgun zk wallet address. Because I used Polygon rather than Ethereum, fees were minimal. I think I paid a total of about 35 cents combined to do my internal Railgun swap and send. My swap is not visible on chain. And my subsequent transaction is not visible on chain either.
Railway’s front end is very basic. This is a really no-frills wallet application. Also, there aren’t that many preloaded assets. So any additional ERC-20 tokens that one wants to see generally require manually adding the token contracts to the app. That’s not necessarily ideal. But all things considered, this is a really exciting protocol. Is it for crypto beginners? Certainly not. But for anyone who wants to experiment a little with EVM privacy, it’s definitely a fun and potentially important protocol to play around with. My hope is that Vitalik’s normalizing it and alluding to the importance of privacy on-chain will bring in some fresh development.
It does possibly cap the upside of Zcash ($ZEC-USD) going forward if I’m being totally honest. If people can start inexpensively sending something like Wrapped Bitcoin ($WBTC-USD) to each other through Railgun over cheap networks like Polygon or Aribrum, it’s difficult to see much justification for an entirely alternative network for privacy. All that said, I still think Zcash has value for privacy enthusiasts as shielding assets doesn’t require use of an additional protocol or - frankly, pretty centralized - L2 scaling chains.

Now, just because I like Railgun as a potentially useful application, it doesn’t necessarily mean the governance token of the protocol RAIL is a buy. We’ll explore that in an additional post soon. Finally, this is the public EVM address associated with the ZK Railgun address that received my test send:
0xbb3E60A65cd2b61A16B783aaE3fE554a6358F72b
If you can actually somehow figure out what token the ZK address is holding and how much of it, I’ll provide a 24 month “full heretic” comp. Good luck…
Disclaimer: I’m not an investment advisor. All of this stuff could go to zero. Privacy chains and protocols have a significant uphill climb in a world moving ever closer to shameless authoritarianism.