Season 3 / Episode 87
On August 1st, 2017, Bitcoin forked. But it wasn't the SegWit2x fork everyone was talking about - It was a different fork, supported by a coalition of miners who, in doing what they were doing, were essentially ditching SegWit2x in favor of their own scaling solution. What happened here? Who betrayed SegWit2x?
- Episode 22
- Episode 23
- Episode 24
- Episode 25
- Episode 26
- Episode 27
- Episode 28
- Episode 29
- Episode 30
- Episode 31
- Episode 32
- Episode 33
- Episode 34
- Episode 35
- Episode 36
- Episode 37
- Episode 38
- Episode 40
- Episode 42
- Episode 43
- Episode 44
- Episode 45
- Episode 46
- Episode 47
- Episode 48
- Episode 49
- Episode 50
- Episode 51
- Episode 52
- Episode 53
- Episode 54
- Episode 55
- Episode 56
- Episode 57
- Episode 58
- Episode 59
- Episode 60
- Episode 62
- Episode 63
- Episode 64
- Episode 65
- Episode 66
- Episode 67
- Episode 68
- Episode 70
- Episode 71
- Episode 72
- Episode 73
- Episode 74
- Episode 75
- Episode 77
- Episode 78
- Episode 79
- Episode 80
- Episode 81
- Episode 82
- Episode 83
- Episode 84
- Episode 85
- Episode 86
- Episode 87
- Episode 88
- Episode 89
- Episode 90
- Episode 91
- Episode 92
- Episode 93
- Episode 94
- Episode 95
- Episode 96
- Episode 97
- Episode 98
- Episode 99
- Episode 100
- Episode 101
- Episode 102
- Episode 103
- Episode 104
- Episode 105
- Episode 106
- Episode 107
- Episode 108
- Episode 109
- Episode 110
- Episode 111
- Episode 112
- Episode 113
- Episode 114
- Episode 115
- Episode 116
- Episode 117
- Episode 118
- Episode 119
- Episode 120
- Episode 121
- Episode 122
- Episode 123
- Episode 124
- Episode 125
- Episode 126
- Episode 127
- Episode 128
- Episode 129
- Episode 130
- Episode 131
- Episode 132
- Episode 133
- Episode 134
- Episode 135
- Episode 136
- Episode 137
- Episode 138
- Episode 139
- Episode 140
- Episode 141
- Episode 142
- Episode 143
- Episode 144
- Episode 145
- Episode 146
- Episode 147
- Episode 148
- Episode 149
- Episode 150
- Episode 151
- Episode 152
- Episode 153
- Episode 154
- Episode 155
- Episode 156
- Episode 157
- Episode 158
- Episode 159
- Episode 160
- Episode 161
- Episode 162
- Episode 163
- Episode 164
- Episode 165
- Episode 166
- Episode 167
- Episode 168
- Episode 169
Born in Israel in 1975, Ran studied Electrical Engineering at the Technion Institute of Technology, and worked as an electronics engineer and programmer for several High Tech companies in Israel.
In 2007, created the popular Israeli podcast, Making History, with over 14 million downloads as of Oct. 2019.
Author of 3 books (all in Hebrew): Perpetuum Mobile: About the history of Perpetual Motion Machines; The Little University of Science: A book about all of Science (well, the important bits, anyway) in bite-sized chunks; Battle of Minds: About the history of computer malware.
Andreas M. Antonopoulos
Bitcoin & Open Blockchain Expert, Speaker, Author "Mastering Bitcoin", "The Internet of Money" & "Mastering Ethereum"
Andreas M. Antonopoulos is a best-selling author, speaker, educator, and highly sought after expert in Bitcoin and open blockchain technologies. He is known for making complex subjects easy to understand and highlighting both the positive and negative impacts these technologies can have on our global societies. As an educator, his mission is to educate as many people as possible, in as many places as possible, in as many languages as possible, about Bitcoin and open blockchains.
SegWit2x, Part 3
Who controls Bitcoin?
The person or persons who called themselves “Satoshi Nakamoto” devised Bitcoin in 2008 expressly so that no single entity could control it. It was because Satoshi did such a good job that, by the middle of the next decade, the Bitcoin community was engulfed in endless warring over how to handle the network’s one megabyte block size limit. Without clear consensus for one proposal or another, not much actually changed.
Then, in May, 2017, a group of business leaders got together and made a bet.
“[Andreas] Hi, I’m Andreas Antonopoulos, I’m an educator in the space of Bitcoin and open block chains.”
Andreas is one of the most widely recognized voices in Bitcoin. He spoke with our Senior Producer, Nate Nelson, to try and make sense of what SegWit2x was, and was not.
“[Nate] To some, SegWit2x was a vital network upgrade that would massively boost the value of Bitcoin and others. It was a power grab at best and an attack at worst. What was SegWit2x in your view?
[Andreas] I think it was a misguided attempt for compromise at a time when the debate had shifted from which is the most technically efficient way of addressing scaling, to a secondary debate. A meta debate, if you like, which was who should have the power to make this decision?”
The first mistake of SegWit2x had nothing to do with technology. A group of wealthy business leaders had got together in a swanky New York hotel, wrote up their idea for how to upgrade the network, and didn’t bother asking the rest of the community what they thought. Not great optics.
To understand how actual Bitcoin users felt about this so-called “New York Compromise,” just imagine how angry you’d be if, say, your government did business like this. Imagine a world where legislation is written by rich people, to serve their own financial interests, while you, the actual voter, are hardly even considered. That’d be crazy, right?! We’d never let that happen…
“[Andreas] it was tone deaf to the level of power struggle that was going on.
[. . .]
I don’t think anybody who was doing SegWit2x, although I might be wrong, was trying to do some grand conspiracy to do something bad to the network. I think they were looking out for their own self interest and they wanted to make their business model succeed. They just walked straight into that one. In fact, I was invited at the time to sign on to that and I said, “You’re playing with fire, I want nothing to do with this. I am not wading into this controversy. This is not about a technical decision anymore.”
Barry Silbert, the leader of the project, marketed SegWit2x as a “compromise.” In reality, he’d walked up to a garbage fire and said “You know what might fix this? Some gasoline.”
It became clear, pretty early on, that SegWit2x was not popular among users, and was universally loathed by Core developers–the people who know most about how Bitcoin software works. Yet SegWit2x supporters, who still believed in what they were doing, remained steadfast. They continued to push their plan, insisting that it would be activated later in the year.
And here’s where a “compromise” becomes a “bet.” The bet was about who gets to control Bitcoin. Barry Silbert, Jeff Garzik and the leaders behind SegWit2x wagered, consciously or not, that if enough of the financial firepower on the network agreed on their proposal, the rest of the community would follow. If the rest of the community didn’t follow…well, the plan might work anyway.
Were they correct? Only time would tell. If SegWit2x activated in spite of low community support, it would prove that miners and businesses could effectively control Bitcoin.
Users, naturally, didn’t like the sound of that.
“[Andreas]Once it became a power struggle, it became very, very personal and it became acrimonious and people ascribed ulterior motives and agendas, and then nefarious agendas, and then complete conspiracy theories to explain the motivations of other people who could not see what was plainly obvious. [. . .] and at that point, surprisingly, and very interestingly, a user revolt was fomented.”
Shortly after SegWit2x was proposed, a coalition of users got together and made their own bet: a bet that they controlled the network, not the businesses and the miners.
Their proposal was a “User Activated Soft Fork,” or UASF. To understand the UASF, we need to provide some context. It centered around no new technologies, but an existing one: the original SegWit.
Remember SegWit? It’s been awhile. It’s easy to forget amongst all the drama that, when we left it, all it was was a proposal. It wasn’t yet implemented into the Core protocol, even by this time–Spring 2017. But why? It was highly popular with users, and it effectively multiplied the capacity of the blockchain, which is what miners and businesses had been asking for all along.
But trying to appeal to both sides is, ultimately, why it was taking so long to activate. SegWit2x didn’t really require community support, so long as it had sufficient miner support. SegWit took extra care to be the consensus choice of the whole community, requiring not only broad user support, but also a full 95% of miner support.
But the miners were…less than enthusiastic about it. Most miners are “big blockers.” They wanted the 1 MB limit to be raised, and SegWit didn’t do that. SegWit was better than nothing, maybe, but they favored other proposals that focused on increasing the block size. As a result, from November 15th, 2016–the first day they could signal support by upgrading to SegWit-compatible software–to Spring, 2017–the point in the story where we are now–only a 30% of miners were signalling support for SegWit.
Users were not happy. Not only did they like SegWit, but many of them argued that it wasn’t miners’ role to be voting on such protocol upgrades in the first place. Perhaps the Core development team was trying too hard to appease them.
This is where UASF comes in. Users who didn’t like the growing power that miners seemed to have decided to weaponize their own power, through Bitcoin Improvement Proposal 148–a protocol upgrade with hostile intent. Beginning August 1st, users running nodes which enforced BIP 148 would automatically reject any new Bitcoin blocks which didn’t signal support for SegWit. So if you’re a miner, and you successfully mine a new block–the same way you always have–but you don’t outwardly signal support for SegWit, your block will nonetheless be rejected, and all the mining rewards with it lost.
“[Andreas] So SegWit effectively became the linchpin of the debate and opposition to SegWit became a mechanism for signaling something deeper about who should be making the decision.”
We said that SegWit2x was an exercise in power. A majority of users didn’t like the idea, so if it succeeded, it would demonstrate that miners control the network.
UASF was a radical proposal in the opposite direction. Miners overwhelmingly opposed it. If it succeeded, therefore, it would prove that users were the ones really in charge.
This was the setting in the hot summer of 2017–miners mobilizing behind SegWit2x, users threatening the UASF, and a few developers caught in the middle.
No developer was more in the middle than James Hilliard–a tall, pale guy with brown, curly…
Alright, you know what? I’m not doing this again. Listeners, for the rest of the story, unless I tell you otherwise, whenever I describe a software developer–Pieter Wuille, Jeff Garzik, James Hilliard–just picture Seth Rogen. Got it? We’ll save a lot of time that way.
Anyway…James Hilliard found himself caught in between UASF and SegWit2x not because he was associated with either movement, but because he was associated with neither.
In his day job, James worked as a technician for mining equipment, which might suggest that he favored SegWit2x–the side miners supported. However, in his off-time, James spent time studying the science of blockchain forking. And when you study forks, there’s only one conclusion you can come to: it’s really, really hard to do right.
“It’s something that looks simple on the surface,” James told Coindesk, in an interview from July 2017, “but when you actually start looking at it, it’s really complicated. There are just so many things that could go wrong.”
Our listeners in the IT community will understand this sentiment. Software, typically, doesn’t come out perfect the first time. We do our best to test and debug, but usually there’s a lifetime of patching that occurs even after the release of a product.
Because Bitcoin is money, and because there’s no central authority looking after it, protocol vulnerabilities are a nightmare. I mean for God’s sake, were an hour and a half into a story about a simple software upgrade. When Apple upgrades OSX, it doesn’t take two hours to understand what happened.
SegWit was genius in its design, but required months of open development and testing and re-jiggering. SegWit2x, by contrast, was being developed by a closed group of select individuals. If you weren’t on the Slack channel, or the mailing list, you didn’t get to see the code. That’s very rare in Bitcoin, and it made developers like James Hilliard especially concerned. Because even an open, rigorously tested hard fork is difficult to pull off. Regarding SegWit2x, he told Coindesk, q
“The reason that these sorts of projects don’t have open development models is that when you’re pushing arguably bad ideas – say, pushing a hard fork in three months – doing that in the public is kind of difficult because when bad ideas get exposed to public criticism, they get shredded.”
End quote. So what do you do if you’re a student of blockchain forks, and on one side you see a highly political user fork, and on the other side you see a faulty, misguided miner fork?
As big blockers battled small blockers over which proposal would crush the other, James proposed a solution–a compromise, formalized in the BIP 91 proposal. The insight of BIP 91 was that, despite being in direct opposition to one another, the supporters of UASF and the supporters of SegWit2x held one thing in common: they both needed SegWit to activate.
Isn’t it crazy that nobody came to this earlier? UASF was created to force SegWit adoption. SegWit2x required SegWit adoption, a few months before it would upgrade the blocksize. BIP 91 said: let’s at least get the SegWit part done with–no fork–then we can all fight about the block size later.
BIP 91 lowered the threshold of miner support necessary to activate SegWit down to 80%–in other words, the percentage of miners already known to support SegWit2x. It would have to activate before August 1st, to beat the timeline set out by the user-activated soft fork.
So, did 80% of miners support SegWit in time to prevent a fork of the network? Well, as we mentioned, through the Winter and Spring of 2017, miner support of SegWit hovered around 30%. With added pressure from UASF, that number rose to just under 45%.
Then BIP 91 happened. From July 17th to July 18th, support for SegWit through BIP 91 rose to 60%. Just a few days later, on July 21st, it passed 80%.
BIP 91 was locked in. SegWit, after nine whole months of waiting, was finally set to activate.
Soon, all around the world, Bitcoin investors would ring in activation day with “SegWit parties”–from Zurich to Bratislava, at a pub in Warsaw, and a hotel in Tampa, Florida. Berliners printed free SegWit beermats, and held a charity auction featuring, among other things, a “Bitcoin fork” (the silverware kind, get it?). In Jyväskylä, the Fins celebrated from a sauna, featuring a buffet, a DJ, and, according to the Facebook event, only 25 towels. If you were the 26th person to show up, well, you should probably bring your own.
After two long years, it was finally done. Enemies came together, and SegWit was going to activate. No fork required. For now, at least, the network was saved.
It might’ve seemed for a moment, for a fleeting second, that a community at war had finally, for once, come together.
Almost. But there’s something I haven’t told you.
August 1st, the day the user-activated soft fork was averted, turned out to be everything and more. Because the network *did* fork. An entirely new blockchain was split off from Bitcoin.
This wasn’t the UASF, though. While UASF strived to keep the block size limit of 1 MB, this new blockchain would limit the block size to 8 MB. It wasn’t SegWit2x either. It was a different fork, supported by a coalition of…miners. Miners who, in doing what they were doing, were essentially ditching SegWit2x in favor of their own scaling solution.
What happened here? Who betrayed SegWit2x?
In 1986, in the sprawling Chongqing municipality of southwest China, a boy was born and given the name Wu Jihan–or, to us in the West, Jihan Wu. The short, skinny, bespectacled young Jihan would go on to graduate from Peking University in 2009, with a degree in economics and psychology. He took a job as a financial analyst at a private equity firm until, one day in May, 2011, he discovered a thing called “Bitcoin.” Like Jeff Garzik, Pieter Wuille and other pioneers before him, Jihan immediately became enamored with Satoshi Nakamoto’s original white paper.
But it was different with Jihan. Jeff and Pieter had entered a small, but existing community of Western libertarians interested in, thinking about, writing about this new form of currency. There was no such community in China. The word just hadn’t spread that far. So, in late 2011, Jihan co-founded China’s first Bitcoin community forum, and, according to legend, became the first person to translate Satoshi’s white paper into Mandarin. You could argue that, in that single act, he paved the way for China to become the worldwide epicenter of Bitcoin that it is today.
After raising 100,000 yuan from family and friends to buy 900 Bitcoin, Jihan invested in the mining startup Kaomao. After Kaomao failed, in 2013, he decided to found his own mining company, alongside a colleague, Micree Zhan. Together, they founded Bitmain. They made an effective pairing. Really, they were just better than their competition. As competing companies failed or outright disappeared from the market, Bitmain ran a steady ship. A Coindesk article attributed their success not to having far superior rigs, but for running a far superior business.
For example, Jihan had an idea very early on called “franchise mining.” Bitcoin was a very early-stage technology, right? Maybe some people wanted to try mining, but weren’t exactly sure it’d be worth the cost. Jihan’s idea was to give prospective miners, essentially, an insurance plan on their purchases. For a little extra upfront, customers would be allowed the right to return all their equipment for a full refund, if they decided mining wasn’t for them.
You can credit ideas like these as the reason why, by the time he hit 30 years old, Jihan Wu became a billionaire.
And his company, Bitmain, became the most powerful company in Bitcoin mining. Bar none. They run some of the largest mining pools in the history of the network. Two of those pools–Antpool and BTC.com–have alone represented, at times, up to 30% of the network’s hash power. That’s one company, controlling around one-third of the entire globe’s collective computational power. What’s even more impressive? According to Forbes, the collective effort of their mining pools represents only around 3% of the company’s revenue. The overwhelming majority of it comes from selling mining equipment–their patented silicon chips and Antminer line of mining rigs which, as of 2018, represented an 85% share of the market.
On a truly decentralized network, a company like Bitmain shouldn’t exist. That they’ve managed to become so powerful either makes them the most admirable company in the crypto space, or the most fearsome. That, by proxy, makes Jihan either one of the most respected CEOs in the community, or one of the scariest.
HONG KONG AGREEMENT
If there were to point to a time in history when Jihan transformed from being respected to feared, it would be 2016.
You wouldn’t believe it, but in February, 2016, business leaders, mining pools and Core developers all came together to agree on a scaling roadmap. At a business park in Hong Kong, many of the most recognizable names in the industry got together to sketch out a plan for how to scale the network. The result was the “Hong Kong Agreement.” The Agreement laid out a plan to activate SegWit in April, then introduce a hard fork proposal in July, which would alter the block size to 2 MB.
Among the signatories were Jihan Wu and Micree Zhan of Bitmain, and the CEO and CIO of BitFury, Jeff Garzik’s employers–in other words, the kinds of folks who later backed SegWit2x. But the deal was also signed by five Bitcoin Core developers, the President of Blockstream–the company co-founded by Pieter Wuille that employs a number of Core developers–as well as James Hilliard, the man who would later draft BIP 91 in order to avoid forking the blockchain. This doesn’t make sense! How come any of SegWit2x’s most ardent opponents have agreed to essentially the same plan, just one year earlier?
Well, recall what we discussed in the last episode of our show. Recall what we talked about earlier in this episode. SegWit2x was never really about what it was supposed to be about.
“[Andreas] Because if the debate had been about one megabyte, then it wouldn’t have been contentious. Just like if the debate had been about the activation of a script and transaction malleability improvement, it wouldn’t have been contentious. But that’s not what the debate was about. That was the debate in the beginning, before there was disagreement and there was no way to reach consensus.
[. . .]
it became a debate more about the means rather than the ends. Rather than about how do we scale Bitcoin, it became more about which specific techniques do we use and in which sequence? Then because there wasn’t a consensus being reached on that question, then it became a power struggle because the debate shifted into who should make that decision.”
The scaling debate was once about how big blocks should be. By late 2016, however, it shifted. In 2017, it was no longer really about 1 MB or 2. It was about how to make the change and, more importantly, who gets to decide how.
When small blockers and big blockers were actually willing to come to the table, they came up with a plan that satisfied both sides. Unlike the New York Agreement, the Hong Kong Agreement was well-thought out, open and collaborative. It might have worked.
But it didn’t. And here’s where things get a little hazy, because exactly which side failed in their commitments is unclear. Perhaps the most vocal opponent of the Agreement, Core developer Greg Maxwell, argued that his colleagues had no obligation to force the block size increase, only to propose it. From Reddit, quote: “All that was agreed is that the [developers] would work on proposals. Which is what they did. This is also all they could have agreed to, because they do not control the network.” End quote. Maxwell pointed out that members of the Core team had, in fact, proposed hard fork solutions. Those solutions simply didn’t gain enough traction. In a post on the BitcoinTalk forum, Maxwell was less courteous, and accused miners of being the ones to betray the agreement. Quote:
It’s just that a couple of well meaning dip****s went to China a few months back to learn and educate about the issues and managed to let themselves get locked in a room until 3-4 am until they would personally agree to propose some hardfork after segwit. They’re now struggling to accomplish the seemingly impossible task of upholding their agreement (even though it was made under duress and even though f2pool immediately violated it) while obeying their personal convictions and without losing the respect of the technical community.
Regardless of what Core developers were responsible for, and how the mining community responded, the plan to move the network to a 2 MB hard fork soon petered out, and SegWit was all that remained.
Those at the Hong Kong meeting recalled that Jihan was very measured, and, quote, “willing to stake out a middle ground.” Now, however, it seemed like those developers who agreed with him on a 2 MB roadmap had failed to follow through on their promises. In a quote to Coindesk, a colleague described how the failure of the Hong Kong Agreement caused Jihan’s attitude to change. Quote: “Wu became more and more radical after what happened to the Hong Kong agreement. His position was if the devs weren’t holding their side of the agreement, I don’t need to run SegWit.” End quote.
This was the beginning of a rivalry. Those who were once willing to come together no longer trusted one another. Factions hardened.
In Spring, 2017, Jihan and Bitmain signed onto the New York Agreement. Then came the user-activated soft fork. As if he didn’t have enough reason to not like the small block community, here was a direct attack on miners. What was Jihan to do? As co-CEO of the largest mining company in the world, he couldn’t simply stand by.
Bitmain published a blog post, in response to the UASF. In it, they proposed their own scaling plan: a so-called “user-activated hard fork.”
Yes, I know – with so soft forks and hard forks, it’s hard to keep track. To clarify, we had SegWit – the soft fork designed to increase the blockchain capacity. There’s SegWit2x – a hard fork supported by miners who wished to increase the block size. There’s the new UASF – user-activated soft fork whose aim was to oppose SegWit2x, and now Bitmain’s user-activated hard fork whose goal was to oppose UASF.
Now, the user-activated hard fork was certainly a hard fork, but it wasn’t user-activated. It proposed that, should users successfully carry out the UASF (which the blog post labeled a 51% attack), Bitmain and the miners in its corner would fork the network again, without need for user consent. The blog could’ve easily been seen as an empty threat, but for miners worried about the idea of a UASF, it certainly sounded like a justified plan of action.
An interest group formed. Leading the charge was the Chinese mining pool ViaBTC, and the man known as “Bitcoin Jesus,” Roger Ver. Behind the scenes, many suspected the influence of Bitmain. Bitmain was, after all, an investor in ViaBTC. Jihan Wu had by this time developed a close working relationship with Roger Ver.
This meant that while the SegWit2x and No2x support groups were fighting it out amongst themselves, Bitmain, or at least Bitmain-connected entities, were considering a plan to circumvent both plans. Bitmain called the UAHF, quote, a “contingency plan,” against the UASF. A fallback, only if the big block movement behind SegWit2x failed to fight off the user revolt.
But when BIP 91 effectively cancelled the UASF, the hard fork happened anyway – and a new coin was created: Bitcoin Cash. Much of the miner support of the Bitcoin Cash chain appeared to have links to Bitmain.
So the hard fork wasn’t just a contingency plan against a UASF. Why, then, did it happen? One way to look at it is that Bitcoin Cash, with its 8 MB blocks, was naturally appealing to big blockers. But another theory suggests that the fork–and Bitmain’s involvement in it–is a lot more complicated and, perhaps, more nefarious than that.
“[Nate] Would you take a minute to describe what covert AsicBoost is and whether you think… I don’t know if this falls into your category of conspiracy, but it had a major motivation in deciding how miners fell in the SegWit, SegWit2x Bitcoin cash debate.
[Andreas] AsicBoost is an efficiency improvement, let’s call it, that I first heard about from Sergio Lerner.”
Sergio Lerner, a cryptocurrency consultant, co-created ASICBoost with Timo Hanke, a cryptology expert. They took out a patent on it in November, 2014.
“[Andreas] To my great shame, I initially ignored him because he was talking about a backdoor that makes SHA256 more efficient. If you’re in this space, you hear a lot of stuff like that all the time. It seemed like the perpetual energy machine, nut job rant and I ignored him. I had to mea culpa myself afterwards.”
In Bitcoin, all miners compete to “mine” new blocks in the chain, every ten minutes. Each block presents a new, highly complex mathematical problem, and miners run high-powered computers designed to solve that problem. This paradigm is called “Proof of Work.” Whichever miner or miners gets the answer first gets the fees and extra reward associated with the block. This is how miners make money.
ASICBoost plays a trick with the Proof of Work algorithm that makes it easier for mining machines to reach the answer to Proof of Work problems.
“[Andreas] this efficiency basically allows a pre-calculation of the mid-state of SHA in such a way that you can reduce the energy consumption by about 20% on the calculation of the end state of SHA.”
A 20% reduction in computational cost, for a miner, would be massive. But as we just mentioned, ASICBoost is patented technology. Sergio and Timo didn’t release it for public use. Government regulation and closed software is very anti-Bitcoin in spirit, so over time, ASICBoost became taboo. As an article from Coindesk put it, quote: “there is no rule that currently prevents use of the AsicBoost design, meaning that miners have more of an unspoken agreement to refrain from using the technique on the basis it is “bad” for the network.” End quote. Bitcoin’s Proof-of-Work algorithm scales according to the amount of computing power of the network, so as long as no one agreed to use ASICBoost, it was equivalent to everybody using ASICBoost. If even one miner used ASICBoost, they’d get a competitive advantage. However, they’d be easily stopped, as evidence of ASICBoost is easily detected on the public blockchain.
In April, 2017, the red-haired, long-bearded Bitcoin developer Greg Maxwell–whom you now know as the fiery character quick to make enemies with supporters of the Hong Kong Agreement–posted to the Bitcoin developer mailing list. The subject of the email, quote: “a covert attack on the Bitcoin Proof-of-Work function.” According to his research, a new form of ASICBoost was being deployed to the Bitcoin network. Though this version of the technology was more dangerous. Quote:
While most discussion of ASICBOOST has focused on the overt method
of implementing it, there also exists a covert method for using it. [. . .] The covert mechanism is not easily detected except through its interference with the protocol. [. . .] Exploitation of this vulnerability could result in payoff of as much as $100 million USD per year at the time this was written [. . .] Reverse engineering of a particular mining chip has demonstrated conclusively that ASICBOOST has been implemented in hardware.
End quote. The allegation that a mining company was secretly using a hardware-based ASICBoost would have been scandalous enough on its own. But that wasn’t even the good part.
“[Andreas] The conspiracy comes in from the fact that the way SegWit was introduced as a soft fork, actually ended up changing the usable space in the Coinbase transaction in such a way that it broke the use of AsicBoost in a covert way.”
Because of how SegWit restructured the transaction block, it rendered covert ASICBoost ineffective. Whichever miners were using covert ASICBoost would, naturally, have had an under-the-table financial incentive to block the SegWit upgrade. As Greg Maxwell went on to write, quote: “An incompatibility would go a long way to explain some of the more inexplicable behavior from some parties in the mining ecosystem.” End quote.
Which miners wanted SegWit to fail, because they were using covert ASICBoost? It wasn’t obvious from the ledger itself. But we’d be remiss to not mention that, in China, the company that holds a patent over ASICBoost is…
Well, you probably guessed it by now.
“[Andreas] We now know that Bitmain and potentially other asic mining farms and mining producers were using this on their own mining farms primarily. And eventually they started giving it out as part of the equipment and were using this to gain a significant advantage over the competitors, which at the time resulted in a big enough edge that they were able to generate literally billions of dollars in profit. This was a lot of money on the table.
[. . .]
I don’t think it’s far fetched to think that when you have an organization that has for years perhaps at that point, made the sustainable 20% advantage in a marketplace that is cutthroat competitive and where there are billions of dollars on the table, would take that into very serious consideration. The conspiracy really isn’t in whether this was to their advantage or not, or whether they would make decisions based on their own profit motive. The conspiracy is whether those incentives that were invisible to everyone else and affected their decision were hidden on purpose so as to not tip their hand on AsicBoost.”
Andreas has a responsibility not to wade into conspiracy theories – but for many people in the Bitcoin community, the implications of what Maxwell was saying were very clear. Here’s what one Reddit user wrote in response to Maxwell’s research:
“Essentially this whole […] Block size debate looks like a cloak and dagger move to keep bitmain ahead of their competitors and make them and their customers rich including Roger Ver who famously told us everything on MTGOX was fine a short time before the whole exchange shut down and took every ones money.”
Other redditors chimed in: “Sunlight is the best disinfectant”, wrote on. “Sunlight??” replied another – “This is a damn supernova. It all makes sense now… the empty blocks, the strong opinions against SegWit, etc. this is it, finally the truth comes out, finally we know the reasons for all the bizarre behaviour, all the lies.”
The empty blocks the commentator is referring to, was yet another puzzling behaviour of some miners: mining blockchain blocks which contained no transactions whatsoever, which meant these miners won’t be profiting from fees on these transactions. What’s the point of spending time and electricity on mining blocks – for no fees? Well, one possible explanation was that under certain circumstances, mining empty blocks increases the chances of the miner to profit from subsequent blocks – but this answer failed to satisfy many people. Maxwell’s technical research showed, however, that mining empty blocks made a lot of sense if the miner was using covert AsicBoost.
So, the bottom line is that there is no smoking gun proof, and Jihan and Bitmain have consistently denied it. However, as Samson Mow–former COO of the mining firm BTCC–said shortly after Maxwell’s publishing, quote: “This is not something that you’re going to get solid proof for, but there’s smoking guns all around. All the science points to manipulation.” End quote.
We still don’t know when Bitmain might have begun using covert ASICBoost. What’s important is that, as soon as they did, they had a direct incentive to block SegWit at all costs. That’s important, because I told you that SegWit2x had 80% miner support. I told you that, at its peak, it had nearly 95% miner support. But what does “support” really mean? It means miners were outwardly signalling their intent to back the plan.
What if, behind the scenes, the company controlling over 20% of the mining power on the network had a billion-dollar financial interest in secretly destroying SegWit, and any other proposals that relied on it, in order to maintain their competitive advantage in the market? That might cause some, as Greg Maxwell put it, “inexplicable behavior.” Like professing support for SegWit2x, but forking off a new blockchain anyway.
The Network Splits
And so, on August 1st, 2017, the scenario everyone worked so hard to avoid was happening anyway. There were now two, competing blockchains. And so, as it goes in the world of blockchain, a hash race began. The old Bitcoin and the new Bitcoin competed for computing power, battling to mine more blocks than the other. The prize for winning–being the more popular chain–was simple: the right to call your chain the “better” Bitcoin, and a higher stock price. The price for losing–being the less popular chain–was not so simple. At best, the losing chain would become an “altcoin”–an alternative, but not the real Bitcoin. At worst, without enough popular support behind it, the losing chain would not survive at all, leaving only the winner standing.
The old chain may have been favorite, but the new chain had a trick up its sleeve. A significant portion of mining power presumed to support SegWit2x on the old chain was, now, fighting against it by mining on the new one, BitCoin Cash. It was no small effort, either–for a brief period, the hash power on the old Bitcoin was nearly cut in half.
For hours, the two chains raced to mine new blocks. But soon, as the dust settled, it was clear…the old Bitcoin had won. The new Bitcoin Cash would survive, stabilizing at a price of about $240.
The Death Of SegWit2x
A healthy Bitcoin with 8 MB blocks was quite appealing to big blockers. Which meant SegWit2x no longer seemed quite as necessary as it once had. Plenty of miners once professed to support the 2x plan were attracted by the new chain with the 8 MB blocks. SegWit2x, once professed to be the agreed-upon solution by nearly all Bitcoin miners, now looked more tenuous than ever.
As Summer turned to Fall, with the November deadline for the SegWit2x hard fork looming, more and more people began to question the viability of the plan. Blockchain scholars wrote of the financial destruction that a hard fork could cause. Wallet providers warned customers of the possible complications that would occur with a split. Jeff Garzik, the most outspoken proponent of the project, was in fact revealed to be planning an ICO for his own, separate cryptocurrency called “Metronome.”
And the user community ratcheted up the pressure. Bitcoin.org–the website originally co-founded by Satoshi Nakamoto–posted a blacklist of every company known to support the plan. Individual supporters were ostracized on social media. #No2x trended around the world, with users, Core developers, startup founders, and other notable people like Nick Szabo–who some believe to be the real Satoshi Nakamoto–posting the hashtag on their Twitter profiles. To ensure their legacy chain succeeded in case of a hard fork, users began registering full network nodes–the kind that act as a security check against the power of miners. In just one month’s time, according to the website Brave New Coin, the number of full nodes registered on the network jumped from 95,000 to 127,000.
And so the dominoes began to fall. Businesses, one by one, publicly reneged their support for the plan. Mining pools pulled back, including Slush and F2Pool, representing on their own 13% of the hash power on the network. Before long, nearly 25% of the network was in open opposition to SegWit2x. The plan, which once sported 95% support from miners, now fell below the 80% threshold needed to activate.
On November 8th, just around the time that SegWit2x was scheduled to go into effect, a letter was published to its mailing list. After seven and a half months, SegWit2x was dead. It was signed by six influential leaders in Bitcoin – among them Jeff Garzik…and Jihan Wu.
“[Andreas] To me, consensus is an emergent phenomenon that comes from the interplay of various participants in the system. The participants are the developers who write the software, but can’t force anyone to run that software and who can write down the consensus rules, but those consensus rules are meaningless if no one’s running that software. Then it’s the miners who effectively use those consensus rules to adjudicate and sequence transactions and secure the network.
[. . .]
then none of this all matters unless you take into consideration the economic activity of the network. Because if you’re building software that nobody uses, or if you’re mining blocks that have no economic value, it’s all meaningless. It’s moot. The economic interest constituencies are primarily the users who choose which wallets, which chain to run on and by extension choose the consensus rules they’re participating in. Some of them run nodes and become node operators, in which case they explicitly choose the consensus rules and can even run blockades, as we saw with user activated soft forks. Then the other two big economic interests, which are effectively users but on a different scale, are the exchanges that are not only price makers or price discovery mechanism and market makers, but they’re also the on ramps, off ramps.
[. . .]
and merchants who run all of the eCommerce, retail and business to business transaction processing on behalf of users, if users need bigger scale.
[. . .]
These five constituencies each have power only if they agree with the other four. Anytime any one of them tries to step ahead of that agreement, they lose badly. That’s how consensus keeps everyone in line. And during this entire debate, what we saw is each and every one of these constituencies trying to step up and say, “It’s our decision,” and then face plant shortly thereafter when their bravado roar of we have the power landed on deaf ears.”
2017 was a year the Bitcoin community will never forget, because it was the year when Satoshi Nakamoto’s ideal of a truly decentralized network was put to the test. Coordinated, powerful interest groups warred over controversial network upgrades, each side trying to supplant the other’s power. If any one of them succeeded, decentralization failed.
But none of them did. And this, ultimately, is why blockchain has become the fastest-growing technology in mankind’s history–because you can throw hundreds of millions of dollars at it, or thousands of people arguing and screaming at one another, and yet, the system stays upright. It is highly resilient against the things that make the rest of the world suck.
“[Nate] Andreas, in your view, what, to be corny, makes this community special or worth being a part of?
[Andreas] Well, you can even look at all of this arguing and drama and consider the fact that several multi-hundred millionaires attempted to hijack the system and failed. Look at that and say, “In the end, this is a system in which the participant who has almost nothing, and the participant who has multi-hundred million are playing on a level playing field that unless changed by overwhelming consensus, maintains the status quo and gives you predictable neutral rules that work for everyone.” That is the beauty of this system. No other system of commerce, no other industry is such that a billionaire can’t walk in and change the rules to suit them. In Bitcoin, as proven in 2017, you can’t. That’s really the amazing thing about the decentralization of power and that’s what makes this system tick.”
We opened this episode with a question: who controls Bitcoin? Is it the users? The miners? The biggest company on the network?
Now you have the answer: no one controls the network. And that’s exactly how it’s supposed to be.