Perhaps the most insidious cancer within the notion of bitcoin and blockchain's generally has been the flawed concept of selfish mining. This insidious work of pseudo-science has enough of a patina of scientific rigor to fool the majority, the result of which has been the rise of Core, the UASF movement, attacks on the notion of validated or zero conf transactions and all the changes that have lowered the overall security of bitcoin.

Worst of all, it has been the primary justification of maintaining a 1 MB block size.

I call this concept pseudoscience with a grain of salt. The reason for this is it is not even good enough to be called pseudoscience. You see, all works of science rely on empirical testing and validation.

Selfish mining could have validly been a hypothesis. The failure to be even this comes from the authors using an untested perspective of the bitcoin network and the flawed assumption that it is true. They then build on this maintaining the accuracy of their position without once asserting the assumptions. It is a hypothesis, and this is a valid part of all scientific research were noted to be hypothesis. The authors of the paper do not at any point state this to be hypothesis.

Worse, they paint this with the brush of fear, uncertainty and doubt. They claim an immediate response is required and that selfish mining can " only be thwarted by collective, concerted action ". So, why have we never seen selfish mining. Well mostly, the hypothesis is completely and utterly wrong. Is not seen as it is simply a false hypothesis that the authors falsely assert to be more than that. The authors spread an insidious and false notion of a network that never was and a toy model that never can be.

One example is the notion of gamma. The authors of simply assumed a widespread mesh network such as the Internet with many many hops. Bitcoin is not even close to this configuration. The network distance in bitcoin even to the edge nodes is 1.32 +/- 0.07. The result is that as you send a packet or a block it will arrive at nearly all nodes across the network close to simultaneously. This is especially true for commercial and mining nodes that are incentivized to receive and transmit all information as fast as possible. It cannot be said for the edge nodes such as the raspberry pi’s, but as these do not mine they are of no consequence.

If we take a simple thought experiment without going through any of the mathematics that definitively sinks the argument before we even begin we can start to attack the concept of gamma.

The authors use the concept of gamma in a full premise that they used to create a hypothetical attack on the network through dispersed sybils. This all sounds plausible in the way that they present it. However, if they had tested the network to any extent they would've learned just how wrong the results are.

The concept of gamma comes from a hypothesis that intermediary hops can impact distribution across the network. This assumes that each node sends and receives in turn and ignores the first seen rule within bitcoin. What actually happens is a block is released with a header, the receipt of this being the timestamp used by a node for when it sees the block. It is irrelevant from then whether a block that comes in second but is smaller is received it is still second. In this context, and honest miner discovers and releases a block. This block is propagated across the entire network. The majority of minors have this block within under two hops. The selfish miner receives this block at the same time. If the selfish miner had already mined and hidden a block, they now need to verify and validate the honest miner's block before deciding whether to send their own. All of these are time events.

Even if the selfish miner now decides to send, it is delayed and later than that of the honest miner. On a head-to-head race the honest miner wins without exception. The concept of gamma promoted in the selfish miner cancer is that sybil nodes will slow propagation. This is absolutely false.

All miners are densely interconnected. When one miner receives a block solution they will attempt to send it to as many miners and nodes as possible spreading the packet to the majority of the network in a single blast if the network bandwidth allows. They do this as they are incentivized to do so. It is economically viable for a miner to spend money that a home user would not as every second counts in the mining process. The result of this is that any Sybil node trying to change the propagation does nothing.

As a simple thought experiment, if we have 10 million home user and Sybil nodes that are connected to 10 other nodes on the network (this is 100 million edges). Then we have 10,000 commercial nodes each with 100,000 connections (this is 1 billion edges). The probability of a Sybil attack is negligible at this level. In order to stop the transmission, you would need to have more edges and drown out that of the network giant node connections. This means, you need to build a network with 10x or more edges. To do this, you either have 1 billion small nodes as sybils or 100,000 large hosts (those 20k things).

So, at scale, this is clearly not a viable attack.

How about now.

As a summary (the edge distribution is a power law) we have around 10,000 BTC nodes with an average of around 10 connections and 1000 with an average of close to 5000 connections.

This is 100,000 and 5 million edges respectively. The chance of a miner not connecting to a miner in under two hops or for that matter ever needing a home node is under 1 in 10^18. So, not likely. It is edges that make a network connected, not nodes.

As of today, the system could only be sybil’d with the introduction of 5 million plus small nodes or 10,000 large (20k USD) nodes. Not the near zero cost attack the authors flippantly discuss.

So, that is gamma. A failed idea taking a node to have at best 1 or 2 edges. It is easy to test, but the authors never bother testing, that would show the error and then, they would have failed scientific hypothesis and not a widely quoted piece of fiction.

Difficulty Adjustment

The concept of selfish mining is a Gambler’s Fallacy bundled up in pseudo scientific flim flam (and this is being nice).

When you show people that this fails very quickly, a few die-hard supporters (such as Peter Rizun) start to go on about the requirement to wait for the difficulty change. That waiting 2016 blocks will save the strategy…

Well, that is far more difficult maths to explain to the average person, but the simple proof is that these people want to have you believe that a RATIONAL miner will invest millions in order to gain a small amount in something that is EASY to detect and easy to filter.

In fact, a large number of the existing miner community will just black list you if you tried this… So, you start this attack, you start causing the honest miners to orphan blocks, and they will just sit and lose money. This is the crux of this trickery.

It is the idea that all miners are stupid other than the dishonest ones. Painting miners as evil has become a hobby as painting any capitalist as evil is the corresponding norm.

The selfish miner strategy leads to a loss of up to 33% or more of direct revenue. Profit is only a fine margin for most miners, so this is a huge loss.

The entire argument is that miners will make incredible losses to show a small increase in perceived hash rate.

Using an attack that is simple to detect. In fact, it is impossible NOT to detect. It is the most stupidly obvious and simple to block attack ever devised.

This is what Bitcoin has become. This is the cancer that started the fall, that started the attacks stopping scale and stopped all scientific discourse.

Science requires empirical testing, not flim flam men in academic guise.

It is time to take back Bitcoin. There is not selfish mining attack. There is no problem with zero conf payments. These are always things a merchant can choose to accept or not.

Bitcoin is an economic system. It works best without the central planning and technocrats!