Lessons for Bitcoin from the 150-year History of Decentralization
Arvind Narayanan
Lessons for Bitcoin from the 150-year History of Decentralization
Arvind Narayanan (twitter- random_walker) Princeton University
Another 30 seconds. Take your seats. We have Arvind Narayanan. Some of the research from Princeton has rivaled the work of MIT. Professor Narayanan is going to teach us some lessons for Bitcoin.
Thank you. Can you hear me? I think you can. What I want to do today is to look at lessons from history for the future of Bitcoin, the next 10 years for Bitcoin, the next 30 years for Bitcoin. Why am I doing this? Why does it make sense to talk about the far future at a time when we're at a crisis for the community?
At this time it makes a lot of sense to look at the past and at the future. It helps to know that the future is bright for crypto tech. It can give us a sense of perspective and to help look past our immediate differences. I am doing this because I can, I'm an academic and I have the luxury of looking at long-term issues. I have no particular opinion on the scaling debate. If I offend you, I apologize in advance, but I hope you will forgive me.
We did an online course on Bitcoin, with 30,000 attendees. We also made a textbook. It's been a pleasure to contribute to the community. Let me give a quick perspective of the long-term view of bitcoin. You might be familiar with the production lifecycle. Initially there is some motivation trigger, then a bunch of peaking around hype, and then the bubble, and then the trough of disillusionisment and then there's a plateau of connectivity. I think this fits Bitcoin's trajectory pretty well, we're somewhere in the trough of disillusionment, we have not hit rock bottom yet. I am going to make some recommendations.
Right now, I would say we are in the trough of disillusionment. If you are playing this game, play the long game or don't play at all. We haven't hit bottom yet. There are still some things that are pretty hyped and for which the hype is going to deflate a little bit. I think there's always a pet example for everyone.
"private blockchain" is a confusing name for a shared database. I would be happy to debate this later. If you look at bitcoin and take away the currency and take away proof-of-work, you have a shared database. This is not to say, by the way, that all the private blockchain stuff is bogus, I think there's a lot of value there, it's because they are finding a lot of value in shared database though. In some cases that tech hasn't been deployed yet, that's why they are finding value in shared databases.
I find the linguistic connotations very interesting. Sometimes when something gets hyped, it reflects in the language that we use. From a grammatical perspective, how do you explain blockchain? I have been seeing people saying "I love blockchain". People are telling me that the blockchain is the best thing that ever happened to them. Maybe they are using it as a proper noun. I have heard that there is a Church of Blockchain in Brazil. Some of them believe this in all sincerity, like "I love Jesus". I find this very curious. I would say that someone reddit has a joinder to this, what's ultimately a data structure has taken an auroa around it... blockchains are going to revolution finance, is like saying an array will revolutionize finance. Dilbert at this point has done some blockchain spoofs, at this point. So there's a certain level of hype.
So let's clock back and look at the old history. Let's dial the clock back to the year 1900. This was Scientific American. I read this article and this whole March 1900 addition... it was interesting to look back, it's the one on the left about a cheap telephone system for farmers. Why am I talking about this? By the way the other technological issues at the time, on this page, was about cutting threads.
So this picture is showing someone installing a DIY telephone system using barbed wire. You have a pair of farmers connecting themselves before the phone company would do it. How is this relevant to Bitcoin? Well what was happening here is that it was the start of the movement that was rejecting the top-down centralist planned telephone system of the Bell telephone company. This was a DIY open decentralized movement. Initially it was pairs of farmers, and then it was little groups of small towns and farmers. This coalesced into small companies that provided services to specific areas, which later turned into bigger companies.
There was a variety of technologies. There's a conflict of these two ways of doing this. Centralization and decentralized. There was a phoneommenal book called The Master Switch, by Tim Wu. He looked at telephony, radio, film and television. He showed amazing similarities between all of them. In each case he illustrated the tension between centralization and decentralization. He looked at open/closed primarily, but there's a strong correlation to what we're talking about today. There are lessons all over the place that we can apply to Bitcoin, but also for communication technologies that we are building today.
Looking at the history of these technologies has a lot to teach us. I would recommend this book to any Bitcoin entrepreneur. How does one paradigm come to dominate over another? That's an interesting historical question, and I would point to that book.
But here's a more specific lesson. Let's look at the evolution of Bitcoin mining from CPU desktop mining, progressing to GPUs which required expertise, then FPGAs which required even more expertise, and then ASICs where only well-funded corporations can do this. What does this have a historical parallel to? It has a historical parallel to actual gold mining, starting with mining by individuals, then sluice box, then placer mining, then pit mining which requires a large corporation.
I wanted to point out that this progression has happened over and over again. Centralization has powerful economics behind it. If as an entrepreneur you are interested in challenging this, then I would say don't fight it head-on. First of all, let me say, there are two reasons why centralization has economics behind it. One is economies of scale. There is also another less obvious reason, in a centralized paradigm you are capturing as a company more of the economic value that you provide, compared to a decentralized paradigm. The forces aligned behind decentralization tend to not be as coordinated. They have a coordination problem to solve. Over and over again we have shown that trying to fight centralization head-on, doesn't work. Even though I showed those farmers and that inspiring story, it didn't work, it worked for a while but then Bell realized there was an interesting business opportunity there and then they crushed them.
Over and over again we see that decentralization doesn't work. This is similar to how the Internet disrupted newspapers. The Internet was initially dismissed as a toy. It would have no made sense for Internet pioneers to say buy a computer in the 70s because one day you would read a newsletter. The product initially starts as unrecognizable as what it would eventually become. You don't set out trying to destroy newspapers, it would have made no sense at all. Disruption has a specific meaning. Clay Shirky talked about this, a product starts as a toy, then evolves into something you couldn't have predicted at the time. Disruption is a word that we are using as a proxy for competition. It also has a specific technical meaning which I have pointed out.
I see entrepreneurs talking about disrupting industry X. This is bound to fail, because it's not disruption. If you look at Clay's book, you find that you are building a product that industry X is going to be able to see. They will have way more time to get on top of that, they will be able to compete against you and see it coming. This might seem abstract.
Let me give you a concrete example. In the Bitcoin ecosystem, I see attempts to compete against well established ways of doing things. What's missing is a user story. Our vision is good. But we need a user story analogous to microcomputers, it wasn't the future of reading newspapers that appealed to people, it was playing video games for example.
We wrote a paper about this case study, one of them is namecoin. It's an altcoin. It starts with a simple idea. Namecoin says we can treat a blockchain as the key value store, it's a censorship-resistance key-value store. These keys that map values, if you consider the keys as domain names, and the value as IP addresses, what do you get? You have a decentralized censorship-resistant system alternative to DNS, except that miners can censor on the plaintext transaction details. The idea that you can take this and disrupt DNS, it doesn't work. We did a whole study of this ecosystem for Namecoin.
If you have this public key-value store, with domains mapping to IP addresses, you can download this whole thing, you can crawl the whole namecoin web. We did that. My grad students and I did that. "An empirical study of Namecoin and lessons ..." Namecoin is a total ghost time. This was a time when it's market cap in terms of the currency was hundreds of millions of dollars. This was when there was a huge amount of hype around namecoin. We looked at the 200,000 names that had been registered. We eliminated a lot of them for being squatters that were unused. And then we were left with just 700 names. And then we filtered for non-trivial content, as opposed to just expired names or redundant content or things like that. We are left with a mere 28 names out of 200,000. These had actual content and were non-trivial content. We didn't expect to find this.
This is a pattern we keep seeing, it's solutions looking for a problem. You had a vision of disrupting DNS, but there was no reason for users to adopt decentralized DNS. When you think about the problems that people are facing with DNS, it's simply not a pain point. People aren't clamoring for decentralized DNS at the moment. They were solving a non-problem. There's one point I want to make, it's that it's great to have a vision of decentralized DNS. But what it's good for is that it convinces developers to show up. The only story you can tell users is, hey look because we are decentralized we have managed to build lots of features that our centralized competitors can't match. That's something that I'm not seeing in a lot of Bitcoin blockchains today. Decentralization is great for getting developers, but what do you tell the users?
So what are some approaches going forward? I am talking about a long time horizon. I will have some hopefully interesting suggesitons even if you have a short time window. One point I would like to make is that, in the process of writing our textbook, I have discovered that there are so much tech or ideas that have been invented in the space of crypto systems, there haven't been people trying to think about user stories. There are a lot of opportunities to look at the tech. The ideas that we see in the industry is only like 10% of the broader community of people for ... let me just give you one example, this was from Greg Maxwell. They managed to complete something called a zero-knowledge contingent people. This is a screenshot of the blog post.
It's a really cool idea where Alice has some secret, it's some information of economic value. And Bob wants to purchase this information. Bob doesn't want Alice to put it up publicly on the web. Bob wants Alice to send him this information and then pay her for it. Here's the magic. The magic that Bitcoin enables is that you can make sure that Bob's payment to Alice goes through if and only if Bob correctly receives that secret from Alice. So what you have achieved through that simple technological protocol is an information market without a trusted mediator. As gmaxwell explains, it's like a movie style briefcase swap except you can do it safely securely over the internet with anonymous parties and total anonymity and total decentralization. Is there a user story here? I don't know, I think we need people thinking about this.
I will make a plug for our own Coursera course here. We have 30,000 students so far. We talk a lot about technical ideas there where many have been commercialized but others that people are not paying attention to. It's somewhat self-serving, but I'll suggest it will be fruitful for the community to build more bridges for academia. I have been part of this. It has been very fruitful and we share a bunch of ideas, it needs to happen more.
I have to tell you a story. The reason why I got into Bitcoin. It seems ironic to say this. I have always been uncomfortable with academia, the very slow and inefficient ways of writing papers and distributing them in an obscure language that nobody understands. When Bitcoin came along, ideas were freely exchanged on forums and bitcointalk and stuff, and people building on that. I wanted to be a part of that. That's why I got interested in bitcoin. Super ironically, through this engagement, I've become more convinced that academia brings a lot of value here.
A lot of academic papers from a few years ago were crap, they didn't understand Bitcoin. But lately there's a much higher quality. There's a more vibrant interexchange between academic and the broader Bitcoin community. I realized there is a reason for the academic discourse going up. I realized that academia scales better. The scaling of knowledge production works better in academia. I have read about the history of academia, and the reason for why we do this the way we do with papers, the reason for writing papers is that you end up with this knowledge craft consisting of millions of papers, but because of the rigor of this, the citation graph is a good way to maintain pointers between all this information and build one piece of knowledge on another. It gives us a way to stand on the shoulders of giant. I saw this in the work that Bryan Bishop did, leading up to the Scaling Bitcoin post. He said there has already been 400 posts on scaling bitcoin. They were talking over each other. So he as an individual read all of them and extracted what turned out to be 6 ideas that were the common threads on that. These clusters of ideas fall out of the citation graph, there's an automatic error process. Three's an automatic process of tracing ideas back to their roots. So anyway, the summary of that is that I think academia has a lot of things to contribute to the exchange here, and I would look forward to deeper ties between Bitcoin and academia.
Specifically, one problem where I think academics have contributed a lot, and also Bitcoin community, for doing more work in the future. That is, what I call, human crypto interaction. It's a delibarte play on human computer interaction. This is one of the most unsolved problems. Because of human cognitive limitations, we completely suck at maintaining and understanding private keys. It's been a disaster. Even before Bitcoin it's been a disaster. If you were a company or enterprise and trying to have end users and certs and private keys, well in Bitcoin it has been the reason for many thefts and so on. From company commercially, etc... We did something called threshold signatures, which is what I spoke at MIT Bitcoin Expo 2015. We put out prototype code. There was also "Bitcoin vaults" which is an interesting idea. There are a lot of ways to solve this problem. If we solve this, the impacts are going to be far beyond the Bitcoin space itself.
The only thing that I am going to say about the scaling Bitcoin debate. Here's one thing. Going back to history, I think the Bitcoin community hasn't learned a lesson that a lot of other communities in the past have sort of painfully discovered... Decentralized does not mean structurelessness. There was a famous essay called the Tyranny of Structureless. The feminism movement rejected patriarchy etc., they realized that structurelessness is an illusion. If you try to set things up in structurelessness is just bad governance, you can reject governments, but you can't opt-out of governance. The attempts to reject governance has left us with bad governance instead of no governance. I think that "no governance" is not an option.
Let me give you an example of this. This was based on a blog post where I went back to 2013 and I looked at IRC logs. Why was I looking at these IRC logs? I wanted to understand what happened during the March 2013 fork because of the bug that caused the 0.7 and 0.8 version of Bitcoin Core to hard-fork. During this time, this bug was resolved over IRC, and over a period of a few hours, all of this is still archived on IRC. I was able ot analyze this. I made the following bold point, which was that the decisionmaking that saved the day was a centralized decision making process. We should not be afraid of centralized decision making.
Let me walk you through a timeline of this. At time t, the fork was discovered. Those were the fateful words from Luke-Jr. I can't convince you, but go look at that post. When the fork happened, the community had only a few hours to respond effectively. If they had not done crisis management, it may have become permanent. It was an hour earlier, but the realization happened at time.
There was a fury of discussion. At t=16 minutes, Luke-Jr or something realized that the correct approach would be a down-grade not an upgrade. This is highly unintuitive. There's a specific technical reason why a down-grade was proposed. Some people figured this out. Over the next 25 minutes, there was a purely logical technical discussion. It was a bat signal. Everyone was there in the next few minutes. At t+40 minutes, everyone in Bitcoin Core and some of the top miners I think, like btcguild, all agreed that downgrade was the way to go. Thinks worked so beautifully during that time. At t+40 minutes, Bitcoin Core started to give out the advice to downgade. At 20 minutes after that, gavinandresen sent out an alert, it was brief, people started to downgrade immediately. At t+60 minutes, the crisis was effectively concluded and Bitcoin was saved from a fork that day. This was really beautiful.
Everyone that needed to be involved was there. It was a centralized process. The decisionmaking works. For economic issues, which are not clear cut, what we need is governance, we need a process. It might not be on IRC. But we need a formally explained and transparent process for decisionmaking.
Crystals and Mud in Property Law. There is a phenomenal paper with this name. I know about this paper through a law professor, James. It turns out that a lot of the things we are seeking to do with smart contracts, where instead of the notion of contracts with property, it's usually very inefficient, what we want is an automated fast approach with clear rules, which is roughly what smart contracts are about. It's automatic, programmatic, and people can understand what's the outcome of a dispute. This idea has pedigrees of history in property law. Most of this has nothing to do with smart contracts, bitcoin or blockchain. These are things that you can do with traditional property law. This paper argues beautifully of some of the problems with doing that. Why every attempt has failed or partially succeeded, and why people keep going back to a fuzzy way of doing this, which is more inefficient.
Some of the reductive notions of smart property, that's actually an op-ed that I wrote. I wanted to leave you with three takeaways which is what I said at the beginning, play the long game or don't play at all. In the short term, I would say, try to focus on solving real problems rather than focusing on big vision. Disrupting DNS is a description of a solution without a problem. Remittance is a description of a problem that needs a solution. This seems to be missed by entrepreneurs in general. What's needed to take these technologies and work for society, it's not to re-envision property law, it's a more painful gradual process of making these technologies work together with social movements, like the unbanked or third-world countries. That's going to take a generation, it's going to require technology, but it wont be just technology.