The following is a conversation with Vitalik Buterin, co-creator of Ethereum. This is the Artificial Intelligence podcast. I'll do a couple of minutes of ads now. The ads are for MasterClass and ExpressVPN. Please consider supporting the podcast. And now, here's my conversation with Vitalik Buterin.
So, before we talk about the fundamental ideas behind Ethereum, perhaps it'd be nice to talk about the origin story of Bitcoin and the mystery of Satoshi Nakamoto. You gave a talk that started with asking, what did Satoshi Nakamoto actually invent? Maybe you could say, who is Satoshi Nakamoto and what did he invent?
Sure. So, Satoshi Nakamoto is the name by which we know the person who originally came up with Bitcoin. This is an anonymous fellow who showed himself to us only over the internet, first publishing the white paper, then releasing the source code, and then talking to the early Bitcoin community. He helped the project along for a couple of years and then in late 2010 to early 2011 he disappeared. Bitcoin is a fairly unique project with this mythical, quasi God-like founder who just popped in, did the thing, and then disappeared.
So in 2008, the white paper was the first time the name Satoshi Nakamoto appeared?
So how is it possible that the creator of such an impactful project remains anonymous?
That's a tough question and there's no similarity to it in history of technology as far as I'm aware.
Yeah. So one possibility is that it's Hal Finney because Hal Finney was kind of also active in the Bitcoin community. He is one of the people in the early Cypherpunk community, a computer scientist, cryptographer, interested in technology and internet freedom.
He is one of the people in the end of early Cypherpunk community he was a...
So he's a computer scientist just one of the...
Scientists, cryptographers, people interested in technology, internet freedom, like those kinds of topics.
Is it correct that I read that he seemed to have been involved in either the earliest or the first transaction of Bitcoin?
Yes. The first transaction of Bitcoin was between Satoshi and Hal Finney.
Do you think he knew who Satoshi was if he wasn't Satoshi?
How is it possible to work so closely with people and nevertheless not know anything about their fundamental identity? Is this like a natural characteristic of the internet?
Like if we were to think about it, you and I just met now. There's a depth of knowledge we now have about each other that's physical. My vision system can recognize you. I can verify your identity. It's very hard to fake you being you. So the internet has a fundamentally different quality. Can you talk about that?
There's a depth of knowledge we now have about each other that's physical. My vision system can recognize you. I can verify your identity. It's very hard to fake you being you. So the internet has a fundamentally different quality. Can you talk about that?
This like it's very hard to fake you being you. So the internet has a fundamentally different quality to it which is just fascinating. Can you maybe talk about that?
The internet has a fundamentally different quality to it which is just fascinating. Can you maybe talk about that?
Definitely interesting. I definitely just know a lot of people just by their internet handles. To me when I think of them, I see their internet handles. One of them has a profile picture that's kind of not quite human with psychedelic colors. When I visualize him, I just visualize that.
That's not an actual face.
You are the creator of the second most popular cryptocurrency, Ethereum. So on this topic, if we stick on Satoshi Nakamoto a little bit longer, you may be the most qualified person to speak to the psychology of this anonymity. Your identity is known. From your perspective, what are the benefits of creating a cryptocurrency and remaining anonymous? If we can psychoanalyze Satoshi Nakamoto, is there something interesting there? Or is it just a peculiar quirk?
Like your identity is known. From your perspective, what are the benefits of creating a cryptocurrency and remaining anonymous? If we can psychoanalyze Satoshi Nakamoto, is there something interesting there? Or is it just a peculiar quirk?
It definitely helps create this kind of image of a neutral thing that doesn't belong to anyone. You created a project and because you're anonymous and you disappear, all that's remaining is the thing itself. No one can interpret your other behavior or try to understand that this person wrote something at age 16 and therefore the project is a statement trying to do a specific thing. Instead, it creates an environment where the thing is what you make of it.
It doesn't have the burden of your other ideas, political thought and so on. So now that we're sitting with you, do you feel the burden of being the face of Ethereum? There's a very large community of developers, but nevertheless, is there a burden associated with that?
Is there like a burden associated with that?
There definitely is. This is a big reason why I've been trying to push for the Ethereum ecosystem to become more decentralized in many ways. Encouraging core Ethereum work to happen outside of the Ethereum Foundation, expanding the number of people making decisions, having multiple software implementations. I've tried to remove myself as a single point of failure, because that is something a lot of people criticize me for.
So, if you look at the most fundamentally successful open source projects, it seems that one person is a crucial contributor. Often, if you look at Linus for Linux, for the kernel.
It seems that it's a sad reality that one person is a crucial contributor. Often, if you look at Linus for Linux, for the kernel.
Yeah, that is possible, and I'm definitely not planning to disappear.
[laughter]
That's an interesting tension that projects like this desire a single entity, and yet they're fundamentally distributed. I don't know if there's something interesting to say about that structure and thinking about the future of cryptocurrency. Does there need to be a leader?
I don't know if there's something interesting to say about that structure and thinking about the future of cryptocurrency. Does there need to be a leader?
There's different kinds of leaders. There's dictators who control all the money, people who control organizations, and high priests that have themselves and their software followers.
What kind of leader are you, would you say?
Yeah, these days I'm a bit more in the high priest direction than before. I definitely don't do all that much of ordering Ethereum Foundation people to do things. If there's something I think is important, I usually just say it publicly or to people, and quite often projects just start doing it.
So, let's ask the high philosophical question about money. What at the highest level is money? What is money?
What at the highest level is money? What is money?
It's a kind of game where we have points. If you have points, there's a move where you can reduce your points by a number and increase someone else's points by the same number. It's a fair game. But there are other kinds of fair games. Money is easy to set up and serves a lot of useful functions, so it survives as a meme in society for thousands of years.
So it's a fair game, hopefully.
Well, it's one kind of fair game. For example, you can have a game where if I give someone a point and you give someone a point, instead of that person getting two points, they get four points, and that's also fair. But money is easy to set up and serves a lot of useful functions, so it survives as a meme in society for thousands of years.
So it's useful for the storage of wealth. It's useful for the exchange of value.
And it's also useful for denominating future payments. A unit of account.
A unit of account. So if you look at the history of money in human civilization, how has its role or the mechanisms of money changed over time in your view? Even if we just look at the 20th century or before, leading up to cryptocurrencies. Is that something you think about?
Yeah, I think the big thing in the 20th century is we saw a lot more intermediation. The move from bank adding more kinds of banking, then the move from dollars backed by gold to dollars backed by gold only redeemable by certain people to dollars not backed by anything, to a system of free-floating currencies, bank accounts becoming electronic, people getting accounts with payment processors.
So, what do you make of that? That's a fascinating philosophical idea that money might not be backed by anything.
What is that like? Is it fascinating to you that money can exist without being backed by something physical?
Like, what do you make of that? How is that possible? Is that stable? If you look at the future of human civilization, is it possible to have money at a large scale in hugely productive and rich societies operate successfully without money being backed by anything physical?
I feel like the interesting thing about the 21st century is that a lot of the important valuable things are not backed by anything. If you look at tech companies like Twitter, you could theoretically imagine that if all the employees wanted to, they could quit and start working on Twitter 2.0. The value of the original Twitter would just not have people left. The reason why the thing has value is network effects and coordination problems. Employees aren't going to switch all at once, and users aren't all going to switch at once. There are metastable equilibria in interactions between thousands and millions of people that are quite sticky, even if you assume everyone is a perfectly rational spherical cow.
That's that stickiness. Do you have a grasp of the fundamental dynamic, the physics of that stickiness? It seems to work, and I think some of the cryptocurrency ideas rely on it working.
Yeah, it's the sort of thing that's been economically modeled a lot. An analogy often seen in textbooks is: what is a government? If 80% of people in a country suddenly had the idea that the current laws and government are just people and some other thing is the government, and they start acting like it, that would become the new reality. The question is what happens if between zero and 80% of people start believing that. If there is a revolution, the first person to join probably doesn't have the incentive, but if you're the 55th percentile person, it becomes quite safe. It can be analyzed mathematically, but when the switch happens can be chaotic.
Yeah, but still, to me the idea that network effects, the fact that human beings at a scale of millions can share even the idea of currency and all agree, that's just... I know economics can model it. I'm a skeptic on economics. My favorite field recreationally is psychology, trying to understand human behavior. I think sometimes people pretend they can grasp human behavior even though it's such a messy space. All the models from psychology or economics are different perspectives, but it's difficult to know how much is wishful thinking and how much is actually getting to the core. On that idea, what do you think is the role of money in human motivation? Do you think money from an economic and psychological perspective is core to human desires?
Money is definitely very far from the only motivator. It is a big motivator and one of the closest things to a universal motivator. In almost any person, if you ask them to do something, they'll be more inclined if you offer them money. There are many cases where people do things that don't maximize their money, but those other things are much more specific to who that person is and their situation.
What do you think is the interplay of the other motivator from a Nietzsche perspective, power? Do you think money equals power? Do you think those are conflicting ideas? I mean, that's one of the ideas that decentralized currency and applications are looking at: who holds the power.
Yeah. Money is definitely a kind of power. There are people who want money because it gives them power. Even if money doesn't seem to be explicitly about money, a lot of things people spend money on are ultimately about social status. I view those two things as interplaying. There's also money as a way of measuring how successful you are, a scoreboard. If you have $4 billion, one of the big benefits of going up to $6 million is that now you're above the guy who has five.
So, you think money could be, in the game of life, a measure of self-worth. It's how we define ourselves in the hierarchy of society.
It's definitely how a lot of people perceive it.
Define ourselves in the hierarchy of society.
Yeah, I'm not saying it's a healthy thing that people define their self-worth as money, because it's far from a perfect indicator of how much value you provide to society. But as a matter of current practice, a bunch of people do feel that way.
So, what does utopia from an economic perspective look like to you? What does a perfect world look like?
I guess the economist's utopia would be one where everything is incentive-aligned in the sense that there aren't conflicts between what satisfies your goals and what is good for everyone in the world as a whole.
What do you think that would look like? Does that mean there are still poor people and rich people? Income inequality? Do you think Marxist ideas are strong? Do you think ideas of objectivism where the market rules is strong? Are there different economic philosophies that seem reflective of what utopia would be?
So, I definitely think that existing economic philosophies systematically deviate from utopia in a lot of ways. One of the big things I talk about is public goods. Public goods are especially important on the internet. The idea with money as a game where I lose a few coins and you gain the same number usually happens in a trade where I lose money, you gain money, you lose a sandwich, I gain a sandwich. This model works well for private goods. But on the internet, there are actions where the benefit goes to many people at the same time and you can't control who it goes to. For example, this podcast: when published, you don't have fine-grained control over who can watch it. Once the number goes high enough, people just copy it. Scientific research, climate change mitigation are other examples. There are actions with concentrated costs and distributed benefits, and money as a point system does not encourage these things. I work on a mechanism called quadratic funding. The way to think about it is: if one person gives coins to another, it works like money. But if multiple people give coins to one person anonymously, the number of coins received is greater than the sum. The formula is: take the square root of each person's contribution, add the square roots, then square the sum. This compensates for the tragedy of the commons.
And this kind of model works really well when the thing we're using money to incentivize is private goods. But on the internet, there are actions where the benefit goes to many people. Quadratic funding compensates for the tragedy of the commons.
When a lot of people are contributing like funding a particular entity. That's really interesting. Is there something special about the quadratic, the summing of the square roots and taking the square root?
[snorts] The like there is basically the fact that you get more than the sum, you get this square of sum of square roots of these tiny amounts. This actually compensates for the tragedy of the commons. There's even a mathematical proof that it optimally compensates for it.
What is the tragedy of the commons?
This is the idea that if there is a public good that lots of people benefit from, no individual wants to contribute because they only get a small part of the benefit but pay the full cost.
In which context is this mechanism useful? Obviously you said to combat the tragedy of the commons, but in which context do you see it as useful practically?
Quadratic funding is the mechanism.
Yeah, like what's in which context is this mechanism useful? So obviously you said to combat the tragedy of the commons, but in which context do you see it as useful practically?
In which context do you see it as useful actually practically speaking?
Yeah, theoretically public goods in general. Within the Ethereum ecosystem, we've actually tried using this mechanism. I wrote articles on vitalik.ca about the most recent rounds. Some of the top ones supported were online user interfaces for Ethereum, documentation, podcasts, software clients, privacy tools, lots of things useful to many people.
Like services, what are we talking about? What's a public good?
Yeah, so within the Ethereum ecosystem, we've actually tried using this mechanism. I wrote articles on vitalik.ca about the most recent rounds. Some of the top ones supported were online user interfaces for Ethereum, documentation, podcasts, software clients, privacy tools, lots of things useful to many people.
When a lot of people are contributing like funding a particular entity. That's really interesting. Is there something special about the quadratic, the summing of the square roots and taking the square root?
Another way to think about it is: imagine if n people each give a dollar, then the person gets n squared. Each individual's contribution gets multiplied by n. That perfectly compensates for the n to one tragedy of the commons.
I just wonder if the squared part is somehow fundamental.
No, it is. I'd recommend you go to vitalik.ca, I have an article called 'Quadratic Payments: A Primer.' Highly recommended. It's my attempt so far at explaining the intuition behind this.
The intuition. So if we could, can we go to the very basic: what is the blockchain? Or perhaps we might start at the Byzantine generals problem and Byzantine fault tolerance in general that Bitcoin was taking steps to providing a solution for.
Mhm. So, the Byzantine generals' problem is a paper by Leslie Lamport published in 1982. The thought experiment: if you have two generals camped on opposite sides of a city planning when to attack, how can they coordinate? They can send messengers, but those messengers could be sniped or become traitors. With just two generals, there is no solution in a finite number of rounds that guarantees coordination. But with more than two generals, depending on whether messages are oral or signed, there are different bounds on how many traitors can be tolerated. It's a misconception that the problem was unsolved; Lamport solved it. The unsolved part was that all solutions assume a fixed list of who the generals are, and they must be semi-trusted. They can't be anonymous because the enemy could be 99% of the generals. In the 1980s and 1990s, the use case for distributed systems was more enterprisey, where you could assume you know who the nodes are.
The thing that was unsolved is that all of these solutions assume you've already agreed on a fixed list of who the generals are. They can't be anonymous. In the 1980s and 1990s, the general use case for distributed systems was more enterprisey, where you could assume you know who the nodes are.
That are running these kinds of computer networks. So, if you want to have some kind of decentralized network that pretends to be a single computer and that you can do operations on, then it's made out of these 15 specific computers, and we know who and where they are, so we have a good reason to believe that at least 11 of them would be fine.
And it could also be within a single system, almost like a network of devices, sensors, and so on, like in airplanes. I think flight systems in general still use these kinds of ideas. Yeah. Yep. So,
So, that's the '80s.
That's the '80s and '90s. Now, the cypherpunks had a different use case in mind, which is that they wanted to create a fully decentralized global permissionless currency. And the problem here is that they didn't want any authorities and they didn't even want any kind of privileged list of people.
And so now the question is, well, how do you use these techniques to create consensus when you have no way of measuring identities, right? You have no way of determining whether or not some 99% of participants aren't actually all the same guy. And so the clever solution that Satoshi had, this is going back to the presentation I made at Def Con a few months ago where I said that the thing Satoshi invented was crypto economics, is this really neat idea that you can use economic resources to limit how many identities you can get. And if there isn't any existing decentralized digital currency, then the only way to do this is with proof of work, right? So, with proof of work, the solution is just you publish a solution to a hard mathematical puzzle that takes some clearly calculable amount of computational power to solve, you get an identity. And then you solve five of those puzzles, you get five identities. And then these are the identities that we run the consensus algorithm between.
So, the proof of work mechanism you just described is like the fundamental idea proposed in the white paper that defines Bitcoin. What is the idea of consensus that we wish to reach? Why is consensus important here? What is consensus?
So, the goal here in just simple technical terms is to basically wire together a set of a large number of computers in such a way that they pretend to the outside world to be a single computer where that single computer keeps working even if a large portion of the computers that make it up break.
And break in arbitrary ways, like they could shut off, they could try to actively break the system, they could do lots of mean things. So, the reason why the cypherpunks wanted to do this is because they wanted to run one particular program on this virtual computer. And the one particular program that they wanted to run is just a currency system, right? It's a system that just processes a series of transactions, and for every transaction, it verifies that the sender has enough coins to pay for the transaction, it verifies that the digital signature is correct, and if the check is passed, then it subtracts the coins from one account and adds the coins to the other account, roughly.
So, first of all, the proof-of-work idea seems pretty fascinating, at least to me.
I mean, that's a revolutionary idea. I mean, is it obvious to come up with that you can exchange basically computational resources for identity?
It actually has a pretty long history. It was first proposed in a paper by Cynthia Dwork and Moni Naor in 1994, I believe. And the original use case was combating email spam. So, the idea is that if you send an email, you have to send it with a proof of work attached, and this makes it reasonably cheap to send emails to your friends, but it makes it really expensive to send spam to a million people.
Yeah, that's a simple, brilliant idea. So, maybe taking a step back, what is the role of blockchain in this? What is the blockchain?
Sure. So, the blockchain, my way of thinking about it is that it is this system where you have this one virtual computer created by a bunch of these nodes in the network. And the reason why the term blockchain is used is because the data structure that these systems use so far is one where the different nodes in the network periodically publish blocks, and a block is a list of transactions together with a pointer, like a hash of a previous block that it builds on top of. And so, you have a series of blocks that nodes in the network create, where each block points to the previous block, and so you have this chain of them.
Is a fault tolerance mechanism built into the idea of blockchain, or is there a lot of possibilities of different ways to make sure there's no funny stuff going on?
There are indeed a lot of possibilities. So, in a simple architecture as I just described, the way the fault tolerance happens is like this. You have a bunch of nodes, and they're just happily occasionally creating blocks, building on top of each other's blocks. Let's say you have block one. Then someone else builds another block honestly, we'll call it block two. Then we have an attacker. What the attacker tries to do is revert block two. The way they revert block two is instead of doing the thing they're supposed to do, which is build a block on top of block two, they're going to build another block on top of block one. So, you have block one, which has two children, block two and block two prime. This might sometimes happen by random chance if two nodes in the network just happen to create blocks at the same time and they don't hear about each other's things before they create their own. But this also could happen because of an attack. If this happens, the nodes in the Bitcoin system follow the longest chain. So, if this attack had happened and the original chain had more than two blocks on it, so if it was trying to revert more than two blocks, then everyone would just ignore it and keep following the regular chain. But here, we have block two and block two prime, so the two are even. Then whatever block the next block is created on top of, say block three is now created on top of block two prime, then everyone agrees that block three is the new head, and block two prime is forgotten, and everyone just peacefully builds on top of block three, and the thing continues.
So, how difficult is it to mess with the system? I
So, how like if we look at the general problem, like how many what fraction of people who participate in the system have to be bad players
in order to mess with it truly? Like what's your Is there a good number
Well, depending on what your model of the participants is and what kind of attack we're talking about, it's anywhere between 23.2 and 50%.
Of all of the computing power in the network.
23. Between 23.2 and 50%.
And 50% can be compromised.
So, once your portion of the total computing power in the network goes above the 23.2 level, then there are things that you can potentially do. And as your percentage of the network keeps going up, your abilities as a mean thing go higher. And if you have above 50%, then you can just break everything.
So, how hard is it to achieve that level? It seems that so far historically speaking it's been exceptionally difficult.
This is a challenging question. The economic cost of acquiring that level of stuff from scratch is fairly high. I think it's somewhere in the low billions of dollars.
And when you say that stuff, you mean computational resources?
Yeah, specifically specialized hardware, ASICs, that people use to solve these puzzles to do the mining these days.
Small tangent. So, obviously I work a lot in deep learning with GPUs and ASICs for that application. And I tangentially hear that so many of these, you know, sometimes Nvidia GPUs are sold out
because of this other application. What do you, if you can comment, I don't know if you're familiar or interested in this space, what kind of ASICs, what kind of hardware is generally used these days to do the actual computation for the proof of work?
Sure. So, in the case of Bitcoin and Ethereum are a bit different. In the case of Bitcoin, there is an algorithm called SHA-256. It's just a hash function. The puzzle is just coming up with a number where the hash of the number is below some threshold. Because hashes are designed to be random, you just have to keep trying different numbers until one works. The ASICs are just specialized circuits that contain circuits for evaluating this hash over and over again. You have millions or billions of these hash evaluators stacked on top of each other inside a box, and you just keep running the box 24/7.
In the ASICs, there's literally specialized hardware designed for this.
Oh, we're living in an amazing world. Another tangent, and I'll come back to the basics, but does quantum computing throw a wrench into any of this?
Very good question. Quantum computers have two main families of algorithms relevant to cryptography. One is Shor's algorithm. Shor's algorithm completely breaks the hardness of some specific kinds of mathematical problems. The one you've probably heard of is it makes it very easy to factor numbers, to figure out what prime factors multiply together to get some number, even if that number is extremely big. Shor's algorithm can also be used to break elliptic curve cryptography. It can break any kind of hidden order groups, so it breaks a lot of cryptographic nice things we're used to. But the good news is that for every major use of things that Shor's algorithm breaks, we already know of quantum-proof alternatives. We don't use these quantum-proof alternatives yet because in many cases they're five to ten times less efficient, but the crypto industry in general knows that this is coming eventually and is ready to take the hit and switch to that stuff when we have to. The second algorithm relevant to cryptography is Grover's algorithm. Grover's algorithm might be more familiar to AI people. It's usually described as solving search problems. The idea is that if you have a problem of the form find a number that satisfies some property, then with a classical computer you need to try n times before you find a number, but with a quantum computer you only need to do a square root of n computations. Grover's could potentially be used for mining, but there are two possibilities. One is that Grover's could be used for mining and whoever creates the first working quantum computer that can do Grover's will just mine way faster than everyone else, and we'll see another round of what we saw when ASICs came out, where the new hardware just dominated the old stuff and then eventually it switched to a new equilibrium.