Category Archives: bug

Auto Added by WPeMatico

Inflation Bug Causes Bitcoin Testnet Blockchain Split

On 18 September 2018, a critical double spend inflation exploit was patched with the release of Bitcoin Core 0.16.3. However, the developers warned that a Bitcoin blockchain split was possible, and to wait up to 200 confirmations (about 1.5 days) when accepting payments just in case a split occurred. The fork did not occur on the Bitcoin blockchain but the Bitcoin testnet experienced a blockchain split due to this exploit, with its state being critical during 27 September 2018.

This exploit allowed miners to double spend a transaction, with two consequences. First, any nodes that receive a double spent transaction would freeze up and crash. Second, the double spent transaction would actually add to Bitcoin’s coin supply beyond the 21 million coins fixed limit, causing inflation. This is an unacceptable situation, since one of Bitcoin’s biggest selling points is its fixed supply, so developers rushed out a fix within a day and released Bitcoin Core 0.16.3.

However, the fix only works if miners and full nodes upgrade to Bitcoin Core 0.16.3; older versions are still susceptible. Therefore, if a miner using an older version of Bitcoin Core uses the exploit to double spend Bitcoins, the block mined by that miner would be accepted by wallets with older versions of Bitcoin Core. Wallets that are using Bitcoin Core 0.16.3 would simply reject the block.

This would cause a chain split, with the Bitcoin blockchain on wallets with Bitcoin Core 0.16.3 being different than the blockchain being used by older versions of Bitcoin Core. This could still happen at any time as long as there are a significant amount of full nodes using older versions of Bitcoin Core and unfortunately, 69% of all Bitcoin full nodes are still using older versions as of this writing on 27 September. The percentage of full nodes using Bitcoin Core 0.16.3 has only risen from 25% to 31% in the past four days.

This Bitcoin testnet blockchain split is proof that it could happen to Bitcoin, since the testnet uses the same software and rules as Bitcoin. Fortunately, testnet Bitcoins do not have any value, so no money has been lost from this blockchain split. It should also be noted, however, that testnet is far less secure than the Bitcoin mainnet, with far less hashpower securing testnet – it is far easier to perform a double spend attack on testnet.

Testnet admitted to ICU after inflation bug forked the network a few hours ago. Recitation in progress, vitals stabilizing ❤📈

Will be here all night if that’s what it takes to keep the valid chain going and @lightning apps functional https://t.co/eEAA2ZpjbV

— Conner Fromknecht ⚡ (@bitconner) September 27, 2018

Developers depend on the testnet to perform testing with Bitcoin-related software, so it was important to keep the proper testnet blockchain alive. Conner Fromknecht, a Lightning Network developer, single-handedly kept the proper testnet blockchain running only using his laptop and a mobile hotspot.

 

Follow BitcoinNews.com on Twitter: @bitcoinnewscom

Telegram Alerts from BitcoinNews.com: https://t.me/bconews

Want to advertise or get published on BitcoinNews.com? – View our Media Kit PDF here.

Image Courtesy: Pixabay

The post Inflation Bug Causes Bitcoin Testnet Blockchain Split appeared first on BitcoinNews.com.

Bug Fixed in Bitcoin Core 0.16.3 Was Much Worse Than Previously Disclosed, Could Have Inflated Bitcoin Supply

BitcoinNews.com recently reported on a bug fixed in the new version of Bitcoin Core 0.16.3.  But apparently, Bitcoin developers decided not to release full information about the bug at that point as they wanted to maintain secrecy until most of the mining hash rate can be upgraded to Bitcoin Core 0.16.3. The bug could have been exploited to inflate the supply of Bitcoin beyond the fixed limit of 21 million.

As first reported, the bug would allow the miner who finds a block to double spend an input within the block, which would cause all full Bitcoin nodes using Bitcoin Core 0.14.0 or later to freeze up and crash. With most of the full nodes still running on Bitcoin Core 0.14.0, a large-scale exploit of the bug could have easily caused a severe disruption of the entire Bitcoin network.

However, the bug was even worse than initially disclosed, and Bitcoin developers kept the full extent of the bug a secret. They released the information about how full nodes must upgrade to Bitcoin Core 0.16.3 to prevent them from crashing or being exploited, as they didn’t want people to know that this bug could be exploited to mint bitcoins until most Bitcoin miners were using Bitcoin Core 0.16.3. Someone actually figured out the full extent of the bug on a forum and posted it on 20 September 2018, but their post got deleted.

How this bug exactly works is that if a miner finds a block and double spends an output from a previous block, they could actually create new bitcoins. The bug was originally introduced in Bitcoin Core 0.14.0 since that version removes a pre-relay block check that ensures no double spending, but at that point, there was no danger of inflating the supply of bitcoins. In Bitcoin Core 0.15.0 and later, the code was subtly changed, creating the situation where a miner could inflate Bitcoin’s supply.

This could have had severe consequences if miners began to exploit this bug and print bitcoins. Aside from inflating coin supply which could cause Bitcoin’s price to go down, it would cause people to lose confidence in the cryptocurrency, since one of Bitcoin’s main selling points is that it can never be printed outside of a set amount of mining.

The developer team was informed about this bug by an anonymous source on 17 September, and by 18 September Bitcoin Core 0.16.3 was released and a public media campaign was launched to get people to upgrade. This shows the strength of Bitcoin’s developer team to quickly respond to critical bugs and fix them.

As of this writing, about 25% of Bitcoin full nodes use Bitcoin Core 0.16.3, and according to the developer team, these nodes include a majority of mining power. Theoretically, miners could decide to exploit this bug by using older versions of Bitcoin Core, but full nodes running Bitcoin Core 0.16.3 would reject these transactions. Therefore, if this bug is exploited at this point it would cause a Bitcoin chain split, but it is unlikely that the exploited buggy chain would gain any momentum.

Follow BitcoinNews.com on Twitter: @BitcoinNewsCom

Telegram Alerts from BitcoinNews.com: https://t.me/bconews

Want to advertise or get published on BitcoinNews.com? – View our Media Kit PDF here.

Image Courtesy: Pixabay

The post Bug Fixed in Bitcoin Core 0.16.3 Was Much Worse Than Previously Disclosed, Could Have Inflated Bitcoin Supply appeared first on BitcoinNews.com.