A well-written, gripping book about the founding of the blockchain and cryptocurrency, Ethereum. Considering Vitalik Buterin’s status as the founder, there was surprisingly little written about his thoughts or at least from his perspective.
The original vision for the World Wide Web, as imagined by its creator, Tim Berners-Lee, was meant to be closer to a P2P network than how it works today, that is, behind a series of firewalls and fed to us through Google, Facebook, and maybe a handful of other mega corporations. Berners-Lee has publicly lamented the current state of the web. The original vision is what inspired and drove cypherpunks. They wanted a P2P network for money.
Vitalik’s worldwide Bitcoin tour started in New Hampshire. The state’s libertarian-leaning ways had a strong appeal for Vitalik, whose father had instilled in him from an early age the idea that society as a whole grows stronger when individual liberties are protected, while big governments end up corroding nations. They were lessons learned from living in communist Russia.
To Vitalik, like any monopoly, oversized government’s lack of competition caused harmful effects and left most people with no choice but to accept disagreements about tax levels, public services, personal freedom, and so on. As with large corporations, to him, governments become “inefficient once they cross a certain size threshold.”
Smart contracts consist of code that self-executes when a set of predefined rules are met.
One significant difference between Ethereum and Bitcoin is their record-keeping method. Bitcoin uses the Unspent Transaction Output model, or UTXO. The balance on each Bitcoin account is composed of unspent coins left over from other transactions. One balance usually includes many UTXOs as with a physical wallet, which might contain many denominations of bills and coins. To buy something with your bitcoin, you may have to use a combination of UTXOs, just like you would use a $10 and a $5 bill to buy something worth $12. The $3 left over from that transaction would become a new UTXO.
Ethereum uses the Account/Balance model, which keeps track of the total balance, or “state,” of each account. If Bitcoin’s UTXO model is similar to bills and coins, Ethereum’s model is more like a checking account, allowing for fine-grained control over the amount that can be withdrawn, and making more complex programs easier to implement.
In Ethereum, there are two types of accounts: externally owned accounts, controlled by people’s private keys and containing no code, and contract accounts, controlled by their code. Every time a contract account receives a message, its code activates, allowing it to read and write to its internal storage, send other messages, or create new contracts. This leads to another key difference with Bitcoin in what Vitalik called the “first-class citizen” property of Ethereum—the idea that contracts have equivalent powers to external (or people’s) accounts. This makes running applications with self-executing code easier, as there’s no need for someone to pull the trigger. If the purpose of blockchain technology was to remove the middleman, this concept was ingrained at the core of Ethereum.
A DAO was the groundbreaking idea of creating a computer-run organization. The business’s rules would be set in a computer program and executed with as little human involvement as possible. Because the organization would be built on top of a public blockchain like Ethereum, decision making and flow of funds would be fully transparent, uncensorable, and immutable.
Gavin also put into writing what he had been thinking the bigger picture for blockchain technology should be. He saw decentralized networks as a tool to build the next version of the internet, or Web 3.
Web 1 is the internet of the 1990s, before user-generated content, indexed search, and social media platforms. It lived exclusively in desktop computers. Web 2 is the internet as we know it today, with user-generated content, streaming video and music, and location-based services. It thrives on mobile devices. Web 3 was first coined in a 2006 New York Times article referring to a third-generation internet. This new internet is made up of concepts including the “semantic web,” or a web of data that can be processed by machines, artificial intelligence, machine learning, and data mining. When algorithms decide what to recommend someone should purchase on Amazon, that’s a glimpse of Web 3.
Besides all those features, Gavin’s version of Web 3 would allow people to interact without needing to trust each other. It should be a peer-to-peer network with no servers and no authorities to manage the flow of information.
The vision of a world computer had sprung from his own mind less than a year ago and he had welcomed anyone who wanted to contribute to it. It was as if Vitalik had created this rainbow-colored clay that was to be the foundation for his dream, and then he’d shared it with the world, giving anyone and everyone the chance to shape it. But then not everyone agreed on what shape it should take and who should get what portion of it. Like children in a playroom, they started grabbing pieces of the clay for themselves.
This type of cryptocurrency issuance is known as a “premine,” as the coins are created before the network is generating tokens on its own, like Bitcoin does to reward its miners.
The concept is controversial, as some enthusiasts will argue Satoshi Nakamoto gave anyone who was interested the same opportunity to gain bitcoin when the network was launched, as he announced when mining would begin and published the software beforehand. In the case of Bitcoin, the total supply of coins is created by miners.
Ethereum and other projects that premine their coins are criticized because control of the cryptocurrency’s supply is potentially more centralized among “insiders” who participated in the presale and could manipulate the price or influence governance decisions.
Before Ethereum, almost any cryptocurrency project that had a premine would be quickly written off as a scam. Ethereum didn’t entirely change that, and it’s still criticized because of it, but it did help legitimize the concept.
The sale documents said that once the Ethereum blockchain launched and the premined ether was issued, miners would generate new ether initially at an annual rate of 26 percent of the amount of ether issued in the crowdsale—the issuance rate isn’t fixed and is capped at 18 million ETH minted per year. That means that the supply of ether would grow over time but at a decreasing rate.
The increasing supply means that large holders’ stakes will gradually decline relative to the total supply and ownership will tend to be more decentralized, while a declining growth rate avoids flooding the market with ether and pushing down its price. An uncapped supply for Ethereum also ensures that those supporting the network will always be rewarded with new ether. That’s another difference with Bitcoin, which is designed to have a fixed supply of 21 million.
One of the bigger milestones was cutting the block confirmation time to twelve seconds from sixty seconds. That was a massive improvement from Bitcoin’s ten minutes, but still far from legacy payment systems like Visa and MasterCard, which process several thousands of transactions per second.
The plan was for Ethereum to go through five different stages—Olympic, Frontier, Homestead, Metropolis, and Serenity—over the course of the following year. By the time they got to Serenity, the network would have moved from energy intensive and wasteful proof-of-work into a different consensus mechanism called proof of stake, which relies on the number of coins held by each node instead of on computer power.
In the meantime, more and more people had piled on to argue about whether to soft-fork, hard-fork, or just accept that The DAO had been hacked and let it die. To many, Ethereum would have failed in its core values if they did anything about it, as it would signal some projects are too big to fail and deserve a bailout, just like big Wall Street banks in 2008.
What was the point of cryptocurrency if they went down the same paths they were trying to escape in the first place? It didn’t take long for the cypherpunk term of “code is law” to emerge as a fundamental principle that shouldn’t be broken.
Others argued that code is a tool to help people, not the other way around. If developers knew how to fix the issue so that money could be returned to its rightful owners, then they should do it; otherwise, they’re not much better than the thief. Some said faith in Ethereum would be lost if the reset button was pressed; others argued faith in Ethereum would be lost if it wasn’t. The survival of the entire project was at stake in practical terms, and its core values were also being questioned. What did Ethereum stand for if its code wasn’t immutable and uncensorable?
A voting tool on a website created by developers outside of the foundation was used to gauge where the community stood. Votes were weighed by ether held in the participant’s digital wallet. Voting lasted one day, and holders of just 5.5 percent of the total ether supply participated. About 80 percent voted for the opt-out option, meaning the hard fork would be the default. One quarter of the opt-out vote came from a single address. The vote wasn’t representative of the entire community, and neither were the informal Twitter polls and Reddit threads leaning for a hard fork, but lacking a better alternative, Ethereum software client developers chose to take them as confirmation that the hard fork would be the default in the software upgrade.
For the old chain to keep growing, someone had to be connected to the old network and spend energy to confirm blocks on a blockchain with a worthless cryptocurrency.
The old chain was like a parallel universe where pre-fork Ethereum was left intact. Everyone’s accounts held the same amount of coins they had at the time, and funds were still stuck in the “dark DAO.” But the cryptocurrency held there wasn’t ether. It was this parallel chain’s own cryptocurrency. Ether was only mined on the new chain.
Blockchains are supposed to work on economic incentives, but in this case, the old Ethereum chain, which was later called Ethereum Classic, emerged from people who ignored immediate economic incentives and instead spent time and money to make sure an immutable Ethereum chain survived. Maybe the chain’s cryptocurrency would later gain in value and they would be compensated.
“We believe in decentralized, censorship-resistant, permissionless blockchains. We believe in the original vision of Ethereum as a world computer you can’t shut down, running irreversible smart contracts,” the Ethereum Classic website said. “We believe in a strong separation of concerns, where system forks are only possible in order to correct actual platform bugs, not to bail out failed contracts and special interests.”
Others supporting the survival of the old chain were Bitcoiners who wanted to make a point: Ethereum is a silly little alt-coin with sycophantic followers bowing to their supreme leader, Vitalik Buterin.
“I got into Ethereum expecting that if you write some code, it would stay and work like it’s supposed to,” he said to a team member at MakerDAO. “But now it’s like, ‘oh no, we lost money, now we’re going to change the rules on you.’ That sounds exactly like, you know, any freaking political system, right? Where the rules apply differently based on how much money you have.”
The attacks also proved that, like Ethereum critics pointed out in the early days, having a Turing-complete computer and the ability to run smart contracts increases flexibility but compromises on security. Adding complexity makes the network more vulnerable to attackers wanting to exploit any flaws in the code.
More broadly, Ethereans learned that they can program computers, but they can’t program humans, whose greed, ambition, and ingenuity can be strong enough to find their way around those programs.
Code can be made to run in a specific way, but that will always clash with humans, who don’t necessarily act predictably.
Developers learned the world can’t be crammed into smart contracts, and that smart contracts will only be as smart as the people who wrote them—and those who tried to break them for nefarious or hubristic reasons.
Even before Ethereum was launched in 2015, Vitalik thought it was worth finding a way to achieve the same level of security without spending as much energy. Remember, proof-of-work is one kind of consensus algorithm, and consensus algorithms are how distributed systems decide, without the need of third parties, which blocks of data should be included in the chain. There was an alternative way a handful of small chains had experimented with called proof of stake (PoS), where miners vote on which blocks to include and receive rewards in proportion to the coins they hold, not according to the energy they spend. In PoS, miners are called validators. Besides being more environmentally friendly, it also guarantees that the network won’t become concentrated around the few players with better mining hardware, though it still concentrates around those with the most economic power.
Vitalik had told him about his solution to the “nothing at stake” problem, a common issue in proof-of-stake chains, where in the event of a fork, miners are incentivized to mine on both chains so that they get rewards no matter which wins. PoS had been deemed too insecure for this reason. To solve it, Vitalik came up with “Slasher,” an algorithm that guarantees miners would lose their block rewards if they’re mining on different chains at the same time.
He spent the whole time at the after party in Amir Taaki’s squat discussing Slasher with another hacker, until he thought about taking the concept further. Miners should stake crypto deposits. If they play nice and mine only one chain, they make a small return on the deposit. If they don’t, they lose their entire deposit. This would provide stronger incentives and make the chain more secure.
One of the main roles of the foundation is to financially support this ecosystem through grants, but since the grants program started, there has been little transparency on how funds are allocated. It’s unclear what the application criteria and steps are, who is making the decisions, and exactly which projects have been funded and by how much.
For a network and community built on blockchain, a technology that’s in large part based on the goal of improving transparency, it was odd that the Ethereum Foundation itself was extremely opaque. It didn’t disclose its financial statements, and nothing was known about its internal structure. There wasn’t even a simple official organization chart to be found.
Vitalik was happy with the way Ethereum was structured, without one single, central entity controlling development, but rather many different companies and foundations voluntarily organizing to build what’s needed. Some will fail and some will succeed, he reasoned, and what seems like chaos to outside observers will result in a stronger path to Ethereum 2.0.