Location 72:
the struggle was perhaps more complex than just the maximum size of blocks; the battle went right to the core of Bitcoin’s DNA. The contention was essentially about four somewhat interrelated issues: The level of blockspace available in each Bitcoin block - Essentially, whether the eventual state should consist of surplus capacity available in the blocks, or consistently full blocks. How to modify the rules of the Bitcoin protocol - Whether the rules on the validity of Bitcoin blocks should change relatively easily, or whether they should be more robust and only change in exceptional circumstances, with broad support from all interested parties. The significance of the nodes of ordinary users - The extent to which, if any, validating nodes of the ordinary end users had a say in enforcing Bitcoin’s protocol rules. Time preferences - Whether Bitcoin was like a tech startup which should prioritise gaining market share in the short term; or if it was a long-term project, a new global money, and one should think decades ahead when making decisions.
Location 86:
Mike and Gavin had made this proposal several months back, however, it is in August 2015 when the client was officially released and they encouraged people to run it, therefore this is when we mark the formal commencement of hostilities.
Location 282:
To be interested in the space, one had to have an imagination. One had to see many steps ahead and conceptualise how the system would develop and change over time. Building layer upon layer of assumptions with regards to how Bitcoin would evolve. Many of these assumptions had never been tested or comprehensively discussed; they were just taken for granted and accepted.
Location 306:
The new 1 MB limit did not come into force until September 7, 2010, at block height 79,400 (79,400 blocks since Bitcoin was launched). This type of upgrade was called a softfork, i.e. a new rule tightening restrictions on block validity. It is a softfork because adding or lowering the limit tightens the rules. Increasing the limit would relax the rules and is therefore known as a hardfork.
Location 311:
Satoshi never provided a clear reason for the blocksize limit at the time. Many large blockers contend that the measure was only temporary, although no notes from the time that I could find indicate this.
Location 400:
We now probably know much more about Bitcoin than Satoshi back then, due to the experience of seeing the network in action. Bitcoin is not a religion and Satoshi is not a prophet, small blockers often contended.
Location 476:
RBF allows users to replace a Bitcoin transaction (before it is confirmed in the blockchain), with a new transaction by spending the same transaction input again, only with a higher fee. Miners adopting this RBF policy would choose to include the higher fee transaction. In contrast, miners not adopting this and instead using the first seen safe (FSS) principal, would include the transaction they saw first.
Location 589:
To the large blockers, the priority was about the user experience. Avoiding full blocks was key, otherwise users would have to wait for an unpredictable amount of time for their transactions to confirm. What merchant would adopt Bitcoin as a payment method if it was as unreliable as this? Forcing users to bid against each other in a bidding war for blockspace would, by definition, deny some users the ability to use Bitcoin, driving them away to something else.
Location 597:
small blockers tended to consider full blocks as both necessary and inevitable in the long term anyway. It was necessary to prevent a fee market death spiral when the block subsidy was low. It was also necessary to ensure miners would move the chain forwards once the subsidy became low. It was considered vital to always have a surplus of transactions which didn’t get in the blocks and were sitting there waiting to be included; that way, miners always had an incentive to build blocks.
Location 800:
Most miners seemed to agree that they were in control of the network and that it was their decision, however they believed they did not have enough information available to make the right decision. In general, the smaller blockers did not believe the miners had decision-making power over the Bitcoin protocol, and that end users either did, or should, control the network. Proof of work was there to solve the double spending problem, they contended; miners merely decide on the order of transactions.
Location 972:
The non-linear scaling of sighash operations means that, as the number of inputs in a transaction increase, the number of hashing operations required to validate the transaction increases quadratically rather than linearly. This scaling problem was an impediment to larger blocks, as attackers could create transactions which took so long to verify that the network could grind to a halt. This issue was actually one of the main reasons cited by small blockers for opposing blocksize limit increases, as attackers could exploit this weakness.
Location 976:
An attacker could construct a block which contained many of these large transactions, such that it could take an ordinary computer many hours to validate. Therefore, to many small blockers fixing this issue was a prerequisite to a blocksize limit increase. They derided the large blockers for complacency in overlooking this weakness and lacking an adversarial mindset.
Location 1013:
SegWit provided the option for users to create transactions that couldn’t be altered by malicious third parties (third party transaction malleability). This was considered a critical component for something called the lightning network, a layer-two scaling technology for Bitcoin. Without this fix, lightning would have been too complicated to implement.
Location 1046:
to the smaller blockers, Bitcoin was not a business, nor a payment system taking on VISA, Paypal and Mastercard. It was a new form of money, something far more ambitious and potentially far more transformational to society and the economy. It was taking on central banks. In general, small blockers had nothing against Bitcoin becoming a fast and cheap payment system; it just came second behind their main priority, which was a robust and new form of money.
Location 1050:
This was not just a difference of opinion: to the small blockers, their priority was a smart strategic move, while the large blocker priority was naive. Bitcoin payments were fast and cheap compared to some other centralised forms of payments like credit cards and bank wires.
Location 1057:
becoming a new form of money, capable of unblockable electronic transactions, was something the traditional financial establishment would be unable to compete with. This could therefore be the driver of long-term sustainable value. Again, this all appeared to come down to the same disagreement about time preferences.
Location 1083:
Towards the end of 2015, the war was intensifying considerably. There were even waves of distributed denial of service (DDoS) attacks on Bitcoin XT nodes.
Location 1092:
The one thing that the attack did bring to light, however, was the importance of a large, distributed and robust P2P network, something Bitcoin XT had not developed at this point.
Location 1110:
Small blockers tended to see full validating nodes as important in regards to enforcing protocol rules, while to large blockers this was not the case at all. To the large blockers, most users did not run fully validating nodes, they typically ran light nodes. However, even in this large blocker vision, where users didn’t have full nodes, they still had wallets. All user wallets, even though they don’t enforce all the protocol rules, still enforce some of the rules.
Location 1133:
The extremists on both sides appeared convinced that they were correct, however they were both being closed-minded. Both sides had built a mental model that assumed people would behave just like them. The reality, of course, was that different people had different ideas and visions and would therefore behave differently. The larger blocker visions appeared to rely on almost everyone agreeing with them, while the small blocker vision appeared to require any significant minority to agree with them.
Location 1139:
Small blockers often said they opposed a blocksize limit increase, as it would make the cost of running a node too high, which could reduce the full node count and cause centralisation. Large blockers wrongly interpreted this to mean that small blockers were concerned that there would be not enough relay nodes, and therefore the peer-to-peer communication network, where transaction data is propagated around, may be too weak.
Location 1143:
In general, this was not the type of centralisation that small blockers were concerned about. They were more worried about the idea that not enough end users would be able to run Bitcoin clients which fully validated all the protocol rules, which could undermine the decentralisation of the enforcement of the protocol rules. The large blockers never seemed to even understand this concern and believed that it was not necessary that end users needed the capability to run these full node clients.
Location 1176:
large blockers often claiming the majority of the hashrate was able to do almost anything, without adding any qualifications. This lack of focus and clarity greatly damaged the large block camp. It made it much harder for them to recruit users to their side.
Location 1546:
A few days after Craig’s blogpost, on stage in New York with Pindar Wong and the Ethereum founder Vitalik Buterin, Gavin repeated his claims that Craig was Satoshi.[71] This was quite astonishing, given the sham of a proof which Craig had presented on his blog. Gavin never made a strong retraction of his claims, although he did later admit that its possible he may have been “bamboozled” in London. Quite why Gavin even flew to London was unclear, as such a proof could have easily been conducted by email. Gavin has asserted that it had to be done in person, because Craig wanted to maintain deniability and not risk somebody else publishing the proof. This apparent dilemma could have easily been resolved with encryption: Gavin could encrypt a secret message using Satoshi’s private key, and Craig could decrypt it (if he had the key). This could prove to Gavin that Craig had the key, but Craig could keep his plausible deniability, as he could claim Gavin leaked the message.
Location 1611:
The alternative coin space grew rapidly during this crisis, with their proponents focused on raising money in coin offerings and making money from coin price appreciation. Had this outlet not been available to these people, they may have stayed in Bitcoin fighting the blocksize war, and the sheer weight of numbers of large blockers would have been too large to overcome.
Location 1623:
The DAO was fundamentally flawed on several levels. The creation of new investment projects would have ended up creating new classes of DAO tokens, such that each class was entitled to different risks and rewards. This meant that DAO tokens would not be fungible and should trade at different prices, an issue poorly understood by exchanges and the community. The economic incentive model of the project also made little sense. For example, when it came to decisions on investments, there was little incentive to vote “no” on investment proposals, since “no” voters became invested in approved projects, while those who abstained never got exposure. Additionally, there was no stated mechanism for forcing successful projects to contribute profits back into The DAO and the code in the smart contract did not always appear to implement what was described or intended.
Location 1689:
CEO, Brian Armstrong, believed that the Ethereum hardfork would succeed without a split, presumably because the hardfork had strong support from the miners. As a result of this belief, Coinbase appeared to fail to take appropriate action to safeguard customer funds in case this judgement proved to be false. Coinbase was therefore vulnerable to something called the “replay attack”. In the first few days after the split, when withdrawing Ethereum from Coinbase, there was a chance that Coinbase would send out two versions of this transaction: one on Ethereum and one on Ethereum Classic. In contrast to this, Coinbase’s peers, such as Kraken and Poloniex, had taken measures to split their coins and prevent this. Some sophisticated traders in the space were able to capitalise on this oversight by Coinbase. They could split their coins themselves into Ethereum Classic and Ethereum, then deposit the Ethereum to Coinbase. Without trading, the Ethereum could be withdrawn from Coinbase, and the trader would hope to get replayed and get sent Ethereum Classic for free.
Location 1926:
Several Bitcoin developers and small blockers accused some of the miners of faking votes in support of Bitcoin Unlimited. They accused pool operators of changing the pool settings to add Bitcoin Unlimited-related data to the blocks, despite still using Bitcoin Core to produce the blocks. They were able to determine this by looking at the transactions in the blocks, which appeared to have been selected by using a new algorithm in Bitcoin Core, which Bitcoin Unlimited had not implemented. These apparent “fake votes” were sometimes called false flags. Some small blockers, who regarded Bitcoin Unlimited itself as bad, viewed these fake flags as further malicious behaviour.
Location 1986:
In early April, I had a discussion with one of Jihan’s key associates in Hong Kong. He informed me that the large blockers had allocated a budget of US$100 million to attack the smaller block chain. The plan was to spend this money on energy, mining empty blocks on the smaller block chain and orphaning any blocks with transactions. This would essentially “kill the chain”, he proclaimed.
Location 1990:
Even to contemplate spending US$100 million just to get revenge on one’s opponents in the war really illustrates the scale of the quagmire we were in at this point in the conflict. What happens once the US$100 million had been spent? I asked. Couldn’t the small blockers revive their chain then? It seemed there was no robust response to this question. After a long pause, he proclaimed they would perhaps attempt to raise more money and attack again.
Location 2045:
On March 18, 2018, one day after the exchange announcement, Bitfinex made another landmark decision, which had a lasting and instrumental impact on the blocksize war. Bitfinex listed futures contracts for Bitcoin Unlimited vs Bitcoin Core.[101] The futures contracts expired at the end of 2017. The Bitfinex platform allowed users to split their Bitcoin into two tokens which existed on the Bitfinex platform, BCC (representing Bitcoin Core) and BTU (representing Bitcoin Unlimited).
Location 2050:
In the past, there were coin vote websites, where people made controversial comments about the blocksize war and Bitcoin holders could sign these messages with the public key linked to a Bitcoin address. These websites could be used assess the opinion of Bitcoin holders, but there was nothing at stake. Now, real money was finally at risk.
Location 2107:
ASICBoost is a way to reduce the amount of work a miner is required to do when making a hashing attempt for Bitcoin’s proof of work (PoW).
Location 2109:
The Bitcoin block header is 80 bytes in size and therefore it is split between two chunks — chunk 1 and chunk 2. ASICBoost keeps the value of one of the chunks the same over multiple hashing attempts. Therefore, the miner is required to do only partial work for this chunk, for multiple hashing attempts, resulting in significant efficiency gains of perhaps around 20 percent.
Location 2191:
From around April 2018, blocks on the Bitcoin blockchain started indicating the use of overt ASICboost.[112] Overt ASICBoost is far simpler and more efficient than the covert format and also avoids the issue of being incompatible with SegWit. In November 2018, Bitmain adopted overt ASICBoost in its firmware and, as of today, more than 70 percent of Bitcoin blocks are mined using overt ASICBoost.
Location 2261:
Around April 9, 2017, there was a campaign for a user-activated softfork (UASF) on Litecoin, to force the activation of SegWit.
Location 2267:
Bitcoin had used this activation methodology in the past, during Satoshi’s era, however Bitcoin switched to miner flagging in order to reduce the chances of any chain-splits or issues on activation.
Location 2291:
In Jiang’s opinion, a UASF is “against the interest of miners” and “a hostile act towards miners”. It was clear from this conversation that Jiang and some of the miners were extremely concerned and almost fearful of the prospect of a UASF, which would remove the idea that miners had a degree of control over the protocol.
Location 2473:
From a tactical point of view, the large blockers were too slow to react and too slow to understand the UASF. Large blockers should have seen the potential split in the small block camp and attempted to highlight and exploit it, just as the small blockers had done with potential splits in the large blocker camp. Instead, they mostly ignored the UASF.
Location 2482:
The large blockers often derided the small blockers as insignificant and naive. At this point, however, after three failed hardfork attempts – defeats which took them by surprise – most large blockers now appeared to overestimate the power and influence of the small blockers. In reality, the smaller blockers were far less powerful than they thought; the main reason for their success in defeating the large blockers up until this point was their superior understanding of Bitcoin, tactical blunders from the large blockers themselves and Bitcoin’s inherent resilience against contentious protocol rule changes.
Location 2496:
Jihan Wu appeared extremely angered by the UASF campaign. To him, a UASF undermined the narrative he had built that miners had significant influence over the protocol rules.
Location 2613:
Notably, the agreement made no reference to the idea that Bitcoin users control the protocol or that support of the users was necessary before changing the protocol rules. The NYA did not even pay lip service to the idea that users should have a say. It was pitched as the large corporates in the space imposing the rules on the users in a top-down manner. If Bitcoin were to operate like that, it would undermine the core value proposition of the currency.
Location 2746:
Bitmain was also one of the worst offenders when it came to false flagging. For instance, Antpool (Bitmain’s mining pool) actually flagged bit 4 before the alpha release of BTC1, indicating that it was using a client that didn’t yet exist. Even in July 2017, Bitmain was still flagging support for Bitcoin Unlimited, when this node had not implemented BTC1 or SegWit, and therefore their flags were contradictory.
Location 2825:
As Bitcoin Cash had expected to be the minority hashrate chain, one of the concerns was that blocks would be too slow at the start and Bitcoin’s two-week difficulty adjustment period would then take too long to have an impact.
Location 2829:
However, the new difficulty adjustment algorithm later proved to be fundamentally flawed, as it incentivised miners to leave the network and then return when the difficulty adjusted and profitability improved. The impact of this was that the capacity of the Bitcoin Cash network oscillated in a volatile way, which proved to be a major weakness and impacted the reliability of Bitcoin Cash as a payment network. It also caused blocks to be mined faster, which eventually resulted in Bitcoin Cash being around 10,000 blocks ahead of Bitcoin, with more block subsidy coins mined earlier.
Location 2934:
small blockers now argued that the large blockers had violated the NYA by supporting a new spin-off coin, and therefore the NYA was void. Indeed, if, after signing the agreement, one can support multiple branches of the chain, what is the point of the agreement? By asserting that Bitcoin Cash would help ensure the ecosystem complied with phase two of the NYA, large blockers had totally misunderstood the situation and actually got it backwards. It appears as if the large blockers shot themselves in the foot, yet again. Another major tactical blunder.
Location 3012:
On August 31, one of the mining pools which signed the agreement, F2Pool, announced its intention not to support SegWit2x.
Location 3046:
One could say it’s entirely legitimate for businesses to mine multiple coins in order to generate earnings or support coins on multiple chains. This is, of course, normal and acceptable business. However, if it was the case that signatories could continue to support the two coins after the split and miners were free to mine on both sides of the split, one could also argue that the NYA was largely meaningless and two chains would survive. This, the small blockers argued, was why mandatory replay protection was necessary, and without it, SegWit2x was potentially hostile and should therefore not be supported by responsible businesses.
Location 3210:
In some people’s minds, the idea of a system controlled by end users is too difficult to grasp. Instead, they look for somebody or some entity who controls the system. Some people cannot fathom the idea of a system which has global consensus, but lacks a leader.
Location 3230:
had a difficulty-adjustment mechanism to defend against this, however that took two weeks to adjust. In the minds of the large blockers, it was possible to kill the Bitcoin chain before this difficulty adjustment occurred. In the minds of small blockers, this hope from the large blockers was sheer idiocy. After all, the small blockers were the patient ones; they would just wait for the difficulty to adjust, no matter how long it took. There
Location 3233:
There was also the matter of the Bitcoin Cash difficulty adjustment, which is much faster than the two weeks in Bitcoin. If the Bitcoin Cash price increased and more miners joined, the Bitcoin Cash difficulty would increase, thereby driving miners back to Bitcoin before the Bitcoin difficulty ever adjusted downwards.
Location 3296:
The large blockers could have won this war, and they came pretty close. At the start of the conflict, the large blockers had significant support. It was only due to an extraordinary series of events, and several monumental tactical blunders from the large block camp, that crisis was averted and the small blockers succeeded in changing the minds of the community and eventually emerged as resounding victors.
Location 3308:
This war may only be dry run for the challenges to come, when the primary beneficiaries of the centrally-controlled monetary systems finally realise the potential of user-driven money and they may not like it.