Luka bezpieczeństwa znaleziona niedawno w kodzie Bitcoina pozwalała nie tylko sparaliżować sieć, ale również sztucznie zwiększać podaż BTC poprzez tzw. double spending.
Thus, in Bitcoin Core 0.15.X, 0.16.0, 0.16.1, and 0.16.2, any attempts to double-spend a transaction output within a single transaction inside of a block where the output being spent was created in the same block, the same assertion failure will occur (as exists in the test case which was included in the 0.16.3 patch). However, if the output being double-spent was created in a previous block, an entry will still remain in the CCoin map with the DIRTY flag set and having been marked as spent, resulting in no such assertion. This could allow a miner to inflate the supply of Bitcoin as they would be then able to claim the value being spent twice.
Deweloperzy Bitcoin CoreBłąd został zgłoszony przez anonimowego użytkownika 17 września, niedługo po tym deweloperzy przygotowali aktualizację oprogramowania Bitcoin Core do wersji 0.16.3. Luka dotyczyła również Bitcoin Cash oraz Litecoina, które również opublikowały aktualizacje.
Początkowo deweloperzy Bitcoin Core ujawnili tylko część błędu tzw. Denial of-service, który umożliwiał sparaliżowanie węzłów sieci Bitcoin. Dopiero 20 września na stronie Bitcoin Core opublikowany został pełny raport ujawniający jak poważna była znaleziona luka.
In order to encourage rapid upgrades, the decision was made to immediately patch and disclose the less serious Denial of Service vulnerability, concurrently with reaching out to miners, businesses, and other affected systems while delaying publication of the full issue to give times for systems to upgrade.
Deweloperzy Bitcoin CoreBłąd pojawił się 31 października 2016 r. kiedy to wprowadzono zmianę w kodzie, którą zaproponował deweloper Matt Corallo z Chaincode Labs. Przez następne prawie dwa lata luka pozostawała przez nikogo nie zauważona, umożliwiając wyrządzenie potencjalnych ogromnych szkód w sieci Bitcoin.