Bitcoin Block Chain Forking

The BIP66 update was meant to align miners on stricter cryptographic signatures through a form of block chain Democracy. As part of the BIP rules, once 950 of the past 1,000 blocks upgraded to the newer version all miners would older version blocks. This morning the network met that goal and a small, non-upgraded miner mined an older version block. Instead of rejecting the block roughly half the network accepted it and the Bitcoin block chain forked between software versions.

The bogus chain began when the BTCNuggets mining pool mined an out of date block. Though the main chain orphaned the block lightweight and older version of Bitcoin Core wallets are still at risk. According to Bitcoin.org’s network alert nearly 50% of the network hash rate mines on these lightweight or old versions. Any user running the older versions should stop accepting transactions immediately and upgrade their software.

“Early morning UTC on 4 July 2015, the 950/1000 (95%) threshold was reached. Shortly thereafter, a small miner (part of the non-upgraded 5%) mined an invalid block–as was an expected occurrence. Unfortunately, it turned out that roughly half the network hash rate was mining without fully validating blocks (called SPV mining), and built new blocks on top of that invalid block.” Writes Bitcoin.org.

“Note that the roughly 50% of the network that was SPV mining had explicitly indicated that they would enforce the BIP66 rules. By not doing so, several large miners have lost over $50,000 dollars worth of mining income so far.”

The immediate fix is well underway. Getting all miners off SPV and back to full validation is the patch. Once doing so miners working on the Bitcoin block chain fork that is accepting the older version blocks will correct their block chains and realign with the rest of the network.

Bitcoin Block Chain Fork Blockchaininfo

This morning Ant Pool, F2Pool, and Blockchain.info were also using the down version software. Ant Pool alone controls nearly 36% of the network hash ratePeter Todd was among the first responders acting on Reddit. As of the time of this writing the majority of the network hash rate is now mining valid blocks. He reports that only 4% of the network is still mining on the invalid software. Though SPV wallets will remain vulnerable as they do no validation

Also read “Bitcoin is Really Fragile” – Bitcoin Core Developer Mike Hearn

Your bitcoin are safe if you received them prior to the 4th of July 2015 8:00 UTC. For users running Bitcoin Core 0.9.5 or later your bitcoin are safe. However, earlier versions, web wallets and Simple Payment Verification wallets should wait an additional 30 blocks before accepting a transaction. Miners should check their pool is mining using the updated version of Bitcoin Core or switch to a pool that does. Pools mining on the older software will lose money since they are not correctly validating and all blocks they mine will be rejected by the main network.

Currently the Eligius, kano/ckpool, P2Pool and F2Pool mining pools are reported as ‘Good’ on Bitcoin.org

Images from Brian Smithson, Blockchain.info

.