You are reading Economic Forces, a free weekly newsletter on economics, especially price theory, without the politics. You can support our newsletter by signing up here:
Suppose that you discovered the internet in its early days. You might have looked at the internet and thought “wow, this is cool. There is so much information here. I can send messages to people all around the world. Maybe one day I will be able to buy things on the internet.” If that was you, congratulations on your prognostication. It turns out that you can buy things on the internet.
This seems great, but there are some important trade-offs here. When you engage in trade directly with another person, you can use cash. Spending cash over the internet is not so easy. To spend cash over the internet, you would have to come to an agreement with the seller to purchase a particular good. Then, you could either meet this person and exchange the cash for the good or you could agree to mail the cash to the seller and wait for the seller to mail you the good back once the cash is received. There are a lot of problems here! One, you might not know the seller. Meeting this person could therefore be fraught with information problems. Maybe the person does not actually intend to sell you the good and is meeting with “customers” to rob them of their cash. Similarly, mailing cash to the seller might result in the cash getting lost in the mail or the seller claiming that it got lost in the mail. Since there is no way to verify whether the seller got your cash, you have to rely on the seller being trustworthy. If you don’t know the seller, you probably don’t want to make that assumption.
An easy solution to this problem is to use something other than cash. However, you might not want to do that. Alternative means of payment like bank transfers and credit card payments create records of one’s transactions. Anyone who looks at those records knows how much you spent and where you spent it. You might not want anyone to have that information. This might be true because you value privacy. You might not want a digital record of everything you buy floating around. You might not want to risk your private information being stored on a bunch of servers somewhere. This might also be true because you live under an authoritarian regime that might want to know what you are buying and might want to punish you for buying the “wrong” things or have your account shut down as a punishment. You might not want to have your account censored for having the wrong political opinions. Alternatively, you might live in a country with an unstable currency and you prefer to use cash issued by a foreign central bank that has much greater stability in terms of purchasing power.
If these sorts of issues are important to you, then you might think that what the internet needs is some sort of cash for the internet, an electronic form of cash. The problem, of course, is that electronic cash cannot exist in the physical world. You do not hand someone electronic cash. Instead, electronic cash lives in the digital world. In this physical world we can have a ledger that keeps track of transactions or we can have tokens that we pass around. In the digital world, we have to use a ledger. Someone has to keep track of each user’s electronic cash balance.
The use of a ledger suggests several questions. Who is maintaining the ledger? Can this person or company be trusted? How does this solve the problems outlined above? Wouldn’t all the data that was being store by credit card companies and internet companies just go to the issuer of the electronic money? In addition, if you are concerned about possible government intervention or censoring transactions, wouldn’t it be easy for the government to put pressure on the issuer of the electronic cash to behave the way the government wants? Couldn’t the government shut them down? What if the firm behind the electronic money accidentally updates its terms of service to institute a $2,500 fine for saying the wrong thing on the internet and then accidentally sends the new terms to its customers and then says, “just kidding, these aren’t the real terms of service”?
If you are someone who wants an electronic version of cash, these are all important questions. Physical cash does not require a trusted third party. Furthermore, an electronic ledger that is managed by one individual or one entity represents a single point of failure for the entire project.
So how does one design a type of electronic cash without a single point of failure and without some trusted third party to update and maintain the ledger?
One solution is decentralization. Instead of having one person or entity in charge of updating the ledger, why not let a bunch of people do it? That is easier said than done. Who gets to decide who these people are? Why would you trust this large group of people instead of the single entity? Haven’t you just solved one problem by creating another?
One thing that could be done is to allow anyone who wants to maintain the ledger to maintain the ledger. Just let them download some software and they can help to maintain the ledger. If there are a sufficient number of people maintaining the ledger, you don’t have to worry about trusting any single one of them. You only need the consensus of these participants to be honest.
This solves the single point of failure, but creates some other issues. For example, how do all of these people maintaining the ledger reach a consensus about how to update the ledger? Finding consensus is difficult. This is a well-known problem associated with decentralization. How can members of a decentralized group reach consensus without some trusted third-party? Furthermore, how can one prevent someone malicious from re-writing the ledger? How do you stop someone from sending their electronic cash to another person only to re-write the ledger by reversing the transaction so that they can spend the exact same digital balance again?
It turns out that there is a way to solve both problems. What you can do is require these people who are maintaining the ledger to expend some sort of cost to process transactions. By making it costly, participants have an incentive to be honest. It is prohibitively costly to try to re-write the ledger and convince people that this alternative version of the ledger is actually the correct one. One would be much better off by honestly processing transactions. This cost could be in terms of computing power. Processing transactions might require particular computational exercises that use up computing power such that the first person to complete the exercise gets to process the next group of transactions. This person could then broadcast their solution to the exercise and the transactions they are processing to all of the other people on the network. Since the exercise is already complete, everyone else would simply verify that the exercise was done properly and move on to processing the next set of transactions. This generates consensus.
Nonetheless, if computing power is used to process transactions, one could still end up with a single point of failure if one person maintaining the ledger has a great deal more computing power than everyone else. To prevent that from happening, one would have to make this computational exercise sufficiently random. More computing power might increase the probability of completing the exercise first, but there is no guarantee. Furthermore, the difficulty of this computing problem could be updated in conjunction with the amount of computing power on the network. This keeps the system decentralized.
This process can also solve the problem of getting this electronic cash introduced into the market. One need not have to trade dollars or euros or whatever for this electronic cash. That sort of a process would require introducing intermediaries into the system — those pesky trusted third parties again. Instead, the people who are successfully process the transactions could be awarded with new issuances of the electronic cash.
Of course, in order to get people to accept this electronic cash, they have to trust that its purchasing power won’t be depreciated away. One reason why we have never seen competitive fiat money is that an issuer could never be trusted not wake up one day and print a bunch of money and spend it before anyone knew about it. This would be a big wealth transfer to the issuer, but those left holding the money would be left with little real purchasing power.
To avoid this problem with the electronic cash, the software that is being run by all of these people verifying transactions and updating the ledger could be programmed to reward people who process those transactions with new electronic cash, but only until some arbitrary date in the future. This would guarantee that the supply of this electronic cash is fixed and therefore the purchasing power would never be depreciated away. Furthermore, if anyone tried to update the software to change this, all of the people running the existing software could just keep running their software and not the new version. If anyone wanted to run the new software, they would be using a completely different brand of electronic cash.
What this entire discussion reveals is that creating some sort of electronic form of cash is quite difficult. Physical cash provides a lot of benefits. Transactions are private. It is hard for anyone to interfere with transactions using physical cash. Exchanging cash is a peer-to-peer transaction. It does not require a trusted third party. Replicating these features in the digital world is difficult.
But at least you now understand how Bitcoin works.
Thought this article was going to be about CBDCs before clicking on... would be interested what your take on CBDC is, could be a good article
everyone in my bubble thinks they are evil, an authoritarian's wet dream, which I agree with. That seems like the low hanging fruit to write about. I've considered writing about them but I can't think of any unique spin besides "CBDCs are evil"... there are a million of these articles already, e.g: https://theupheaval.substack.com/p/just-say-no-to-cbdcs
Would be interested to see if you could come up with something novel or interesting. I haven't been able to.