I need to preface this post by saying I haven’t followed BTC development too closely over the last year or so. So if someone comments and says “I can’t believe you haven’t heard of the fluid asymmetric hyper payments that the Core devs are working on! It’s going to be the next big thing!” I haven’t. But regardless I’d have my doubts.
With the next bull run raging Bitcoin fees are once again soaring upwards thanks to clogged block space. Last I checked they were $12 for a next block confirmation. The previous bull run saw average fees reach $100.
Note that while this seems like a failure, the Bitcoin devs love it. One of them posted about “popping the champagne” when average fees reached $100.
The long-hyped Lightning Network has failed to live up to the expectations. Nobody could have seen that coming. /s
So as it stands today the best option for sending Bitcoin cheaply is to have both sender and recipient use a custodial wallet service like Coinbase. Since both parties are customers of Coinbase, this is just a book keeping entry for them that costs basically zero and the transaction never hits the Bitcoin network and never incurs outrageous fees.
While custodial wallets seem to go strongly against the original Bitcoin mantra of “Be your own bank” and expose users to the possibility of their coins being confiscated or taxed, many Maximalists actually embrace this model. For example, Saifedean Ammous praised this model in his widely read book The Bitcoin Standard. This model was also proposed very early on by Hal Finney.
So if we actually want to be able to send Bitcoin cheaply from one user to another I think it’s time to fully embrace custodial wallets for payments and build infrastructure to support it.
What would this look like? Take a look a check:
You’ve got the bank account number and routing number on it. This allows one bank to receive a payment from another bank via some kind of clearing system.
We need something similar for Bitcoin. Bitcoin addresses need to be extended to include a custodial wallet routing number in them.
Something like this:
When serialized the address could look something like this:
The work flow for a wallet would be:
1. If sending from a custodial wallet, send the payment to the recipient's custodial wallet service via a clearing system. Blockstream's Liquid seems like it could work for this purpose but I suppose anything would do as long as it's secure. The sending service debits the sender's account and the receiving service credits the recipient's account.
2. If sending from a non-custodial wallet then just send the payment to the pubkey_hash embedded in the address over the Bitcoin network, pay the big fee, and ignore the routing information. The recipient's custodial wallet can just receive the payment and credit the account just like it happens today.
This model would allow for high speed payments and near zero fees while maintaining some degree of decentralization (many interoperable Coinbases is obviously better than just one). People who care about non-custodial payment options have many other coins to choose from.
A final thing that would be needed would be for each custodial wallet provider to provide standardized API wallet access to user-authorized applications so that apps can send payments to each other via this mechanism.
We could spend the next decade attending conferences where we endlessly discuss the next convoluted and unworkable non-custodial off-chain system that will never happen or we can just embrace custodial wallets and benefit from the increased utility that fast, cheap payments would provide.