Charlie Lee is the creator of Litecoin, the most popular alternative cryptocurrency. He is currently director of engineering at Coinbase.
I first discovered bitcoin in early 2011.
Like many, I thought it was brilliant. Bitcoin transactions were decentralized, secure, fast, cheap and unlimited.
Let's break down what this means:
- Decentralized: Thousands of nodes verify and relay all bitcoin transactions.
- Secure: The bitcoin network is secured by millions of dollars of hardware.
- Fast: Confirmations were fast. Zero confirmation transactions are very safe as double-spend attacks are impractical.
- Cheap: You can pay little to no fees. Your transactions will all get mined in the next block.
- Unlimited: At that time, bitcoin block sizes were tiny compared to the block size limit. Transactions being delayed due to block size constraint was unheard of. So there's effectively no limit on transaction throughput.
The reason why this is the case is due to the brilliant design of Satoshi Nakamoto's creation. Bitcoin is bootstrapped like a startup: equity is paid to the employees initially until the company can make enough money to start paying higher salaries and less equity.
In the case of bitcoin, mining block rewards pay for the cost of the distributed network initially and slowly transition to have users of bitcoin pay for that cost. And like a startup, bitcoin miners are invested in the success of bitcoin. Essentially, early bitcoin users get the cake and eat it too.
Unfortunately, this won't last.
By design, the block rewards halves every four years, and it will trend towards zero.
As that happens, we will have to choose which of these five core bitcoin features (decentralized, secure, fast, cheap and unlimited) we are most willing to sacrifice.
I will use an analogy to paint the picture for why this is the case.
King Satoshi built a castle for his peasants. He decides to pay 50 gold pieces a day to hire soldiers to protect his castle and the peasants. Since he does not have unlimited wealth, the plan is to cut the subsidy by half every four years.
So starting year five, he will only pay 25 gold pieces a day.
After about 100 years, he will no longer pay any subsidy for the soldiers. The idea is that the peasants will start to appreciate living in this secure castle and that they will be willing to eventually pay for these soldiers.
Satoshi Castle's security is so good that a lot of peasants from other castles have started to move to Satoshi Castle.
King Satoshi is a very welcoming king and lets everyone in. Everything is well and good until one day the castle started to get crowded and can no longer fit all the peasants that want in.
What is King Satoshi to do? He can:
- Expand the size of the castle and welcome everyone.
- Start charging taxes on the peasants to pay for the soldiers. The tax will make it so that poor peasants can't afford to live in Satoshi Castle.
Of course, none of the peasants want to start paying taxes. They want Satoshi Castle to stay being the utopia that it was. So, the vocal majority is in support of expanding the castle boundaries.
Ignoring his own unease, Satoshi decided to listen to the peasants and to double the size of the castle every two years.
As time went on, the problem starts to become apparent. As the castle gets larger, more powerful soldiers are needed to protect the castle if they want to maintain the same level of security.
As King Satoshi's subsidy started to decrease, some level of taxation became inevitable. But the poor peasants can only afford very little, and rich peasants weren't willing to pay more than the poor ones. Not being paid enough, soldiers start to quit.
This left the castle vulnerable to attacks. One day, soldiers from Yellen Castle came and stormed Satoshi Castle and destroyed it.
As you can see from this analogy, increasing the block size limit (castle size) instead of increasing taxes (transaction fees) will result in soldiers (miners) quitting and a decrease in security.
Early Bitcoin users are spoiled.
Having used a decentralized, secure, fast, cheap and unlimited network for a few years, they are not willing to concede on any of these five features. Most of these early bitcoin users don't understand how and why bitcoin works.
You cannot have the most secure network being highly decentralized and still get huge transaction throughput, fast transactions and low fees.
Some things have to give.
In the case of Visa, you are giving up decentralization and low costs, but you get fast, secure and unlimited. That's not a bad tradeoff, but that's not bitcoin.
Running a centralized system is much more efficient and cheaper than the total cost of a decentralized system. If bitcoin has 5,000 nodes, the cost of a bitcoin transaction will be something like 5,000 times that of a Visa transaction.
That's just the nature of decentralization.
The cost is multiplied since each node has to do the same work as every other node. Mining block rewards are paying for that cost today. As mining block rewards trend towards zero, transaction fees will need to pay for this cost.
People think that a solution like BIP 101 will work, but I think BIP 101 is too dangerous.
As shown by the castle analogy, BIP 101 is valuing cheap and unlimited over secure and decentralized. (BIP101 has no effect on fast, but as one can see from the replace-by-fee proposals, fast won;t last long).
BIP 101 increases the block size too quickly. This will destroy any chance of a fee pressure due to supply constraint.
To keep high throughput and low fees, security and decentralization will be destroyed eventually. This would happen because miners will create large blocks that are not economical for the network to bear.
This forces other miners to leave since they will be unprofitable. So, security and decentralization will be gone as block rewards decreases. What happened to dogecoin will happen to bitcoin, and merged mining cannot rescue bitcoin in this case.
This is not the bitcoin I signed up for.
Marginal cost of a transaction
Ok, so if we have a large number of transactions each paying some fees, can those fees add up to be enough to pay for the miners to secure the network?
The bitcoin network is a zero-sum system at equilibrium: the transaction fees plus the mining block rewards must pay for the total cost of running the bitcoin network.
When block rewards are at zero, the transaction fees must pay for it all. The design of bitcoin is that one miner receives the transaction fee but every miner must pay the cost to relay, verify and store that transaction.
This imbalanced cost-reward relationship is what prevents bitcoin from staying secure and decentralized at equilibrium if there was no transaction supply constraint.
As an example, let's say there are 5,000 miners and nodes, and the marginal cost to process a transaction for a miner (ie verify it, add it a block and store it) is $0.0001.
The total cost on the whole network is roughly 5,000 * $0.0001, or $0.50. The average transaction fees needs to be $0.50 in order for this network to be sustainable.
If the fees were less, less efficient miners would not be able to make more than their cost and would be forced to shut down their miners and quit. This leads to less security and more centralization.
The only way to ensure that the transaction fees is enough to pay for the security and decentralization is to have block size limit act as a supply constraint for transactions.
Without a small enough block size limit, miners will mine transactions that have transaction fees more than their marginal cost but less than the total cost the network has to bear.
For example, let's look at transaction that paid $0.01 in fees.
Since it only cost the miner $0.0001 to add it, of course, he will mine that transaction. But that transaction is uneconomical for the whole network. When mined, it will hurt the network.
In contrast, if there was a block size limit, miners can only mine transactions paying the most fees. And that ensures a healthy equilibrium between transaction throughput and transaction fees.
In the end, we are just trying to figure out which dials to tweak to help bitcoin grow. The block size limit dial should be tweaked with extreme caution, as it could destroy the security and decentralization of bitcoin.
Bitcoin is not one-size-fits-all
I contend that we should design bitcoin for security and decentralization above all else.
Transactions that need the highest security and decentralization will need to pay the higher transaction fees required to use the bitcoin network. Not all transactions can afford this fee, but then they likely don't need the security and decentralization.
And that's perfectly fine.
Heck, they can still use Visa if merchants are willing to pay the fees.
You would use bitcoin to buy a house or a car. A 60-minute wait and a $1 fee for an extremely secure, decentralized and irreversible transaction is perfectly fine.
If you are buying coffee and need a cheap but fast transaction and don't care about security or decentralization, you can use litecoin, the Lightning Network, sidechains or even Starbucks off-blockchain transactions.
As long as everything is seamless, users don't care. Transactions will be routed to the payment network that makes the most sense based on the needs of that transaction type.
Technologies like on-chain swaps, the Lightning Network, payment channels and sidechains will allow seamless and cheap and free conversions between bitcoin and everything else.
Wallets will hide all that complexity from users. We are not there yet, but that future is very exciting. Not every transaction will be native to bitcoin, but every person will use bitcoin.
This article originally appeared on Medium and has been reposted with the author's permission.
Cake image via Shutterstock