This article by David Hamilton was originally published at CoinCentral.com on October 9, 2018. It is being republished here with the publisher’s permission through syndication.
One small crypto programming error can lead to millions in lost funds. As you are about to learn, a bug in your code can equal disaster on the blockchain. These far-reaching consequences are all the more reason to make your project open-source. Open-source projects gain added security because of the large number of developers checking the code for errors. That being said, even open-source projects contain programming mistakes. Let’s take a moment to examine the five biggest crypto programming errors in history.
Ethereum and the Parity Wallet Fiasco
Imagine you were programming a smart contract and all of a sudden you gained control of thousands of people’s multi-signature wallets by accident. What would you do? Go Lambo shopping? Or would you take the high road like devops199 and try to undo your coding to return the wallets to their rightful owners?
You heard right; devops199 deleted the code that accidentally granted him access to thousands of Parity multi-signature wallets. Unfortunately, eliminating the code also froze all of the funds in those wallets indefinitely. In total, $300 million worth of Ethereum was lost in the debacle.
Ironically, the bug that created this crypto programming disaster was not the same code that resulted in a hacker stealing $32 million earlier in the month. A hacker exploited a flaw in the multi-signature wallet protocol. The Parity development team went into overdrive correcting the defect to prevent the hacker from stealing more. In hindsight, the effects of the hack weren’t worse than $300 million in Ethereum frozen forever.
Ninety-Two Billion Bitcoin
Bitcoin developer Jeff Garzik noticed something strange when reviewing Bitcoin coding on August 8, 2010. He took to bitcointalk to alert other developers of a severe issue he came upon. What Garzik noticed was that the value out of one of the blocks was 92 billion bitcoin. Considering that there are only supposed to be 21,000,000 bitcoin ever created, this is a severe coding bug.
The error was so significant that the developers decided to hit the reset button. They did this by rewinding the blockchain to the block previous to the one containing 92 billion bitcoin. This restart meant that all transactions conducted after the hack, but before the fix, were voided.
Later, it was revealed that a hacker found a bug that allowed them to exploit a number overflow error. This type of error occurs when your system restarts its counting protocols, instead of continuing chronologically. When this happens, it can have all kinds of adverse effects on a network. In this case, it resulted in the creation of 92 billion bitcoin. Speaking publicly, Wladimir Van Der Laan, Bitcoin’s lead developer called the incident the “worst.”
REX ICO Incident
The REX platform brings the benefits of blockchain technology to the real estate sector. This platform creates a decentralized peer-to-peer blockchain multiple listing service (MLS). Despite having gone through at least one major crypto programming error, the platform continues to see growing success.
Luckily for those who lost funds, REX already raised $13 million in venture capital funding and was able to issue everyone the REX tokens that they were owed. Not everyone is so lucky when crypto programming errors occur.
Binance Suspends Trading
When you’re one of the biggest exchanges in the world, any coding errors can be detrimental to thousands of crypto users. In February of this year, Binance suspended trading for almost two days due to a coding error. The trade embargo originally was only supposed to last 24 hours, but Binance extended the trade freeze due to “unforeseen slowdowns.”
Given the massive number of crypto hacks experienced over the last few years, it’s no surprise that crypto traders became very suspicious of the exchange. Many believed the exchange got hacked and that they were keeping the truth from the public. Concerns grew so large that even John McAfee took to Twitter to alert those potentially affected.
In response to the growing public unrest, Binance’s CEO, Zhao Chengpeng, published a screen of the coding error. He also promised to update his social media account every two hours until the problem was resolved. In the end, the developers corrected the programming error without anyone directly losing funds.
Bitcoin Upgrade Nightmare
Like all software, Bitcoin’s coding needs upgrading from time to time. These upgrades are essential to keeping the blockchain running smoothly. When something goes wrong with a Bitcoin update, it can be catastrophic.
A perfect example of a Bitcoin upgrade nightmare occurred in March 2013. Bitcoin had a planned upgrade from Version 0.7 to Version 0.8. Version 0.8 increased the block size of Bitcoin. Once the update was complete, the nightmare began.
Developers realized that the update made the network incompatible with the current version of Bitcoin. This upgrade split the blockchain into two separate ones. This split is similar to a hard fork but occurred long before Bitcoin Cash.
Bitcoiners began alerting developers to the problems they encountered with the upgrade. Eventually, the community decided it was best to hit the restart button, yet again. Bitcoin returned to Version 0.7, but as you probably know, this wasn’t the end of the block size debate in the Bitcoin community.
Crypto Programming Errors – Stay Alert
While blockchain technology allows us to upgrade our current systems, it isn’t perfect. These top crypto coding errors highlight the difficulties faced by blockchain developers today. Most crypto users never stop to think about the talented men and women that make the crypto space function. Now that you have had a glimpse of the consequences of crypto programming errors, you are sure to appreciate when everything functions according to plan.
More on this topic: How Blockchain Technology Can Revolutionize FOREX Trading