Cruptocurrencies Need a Bug Free Environment
Software without bug isn’t possible. Each and every code is susceptible to debugging, which is an unavoidable part of the development process. These codes, when control digital assets worth millions of dollars, there should be an assurance that it is free of critical errors. As this week’s Bancor hack and this year’s spate of smaller smart contract fails has shown, creating bug-free code is virtually impossible.
Incidents such as the DAO, Parity, and most recently Bancor, whose $12.5 million loss has been attributed to a permissioned backdoor in their smart contract, have pushed the amount of crypto lost to coding errors towards $1 billion.
Virtual currencies or Cryptocurrencies don’t permit smart contracts, are super sensitive to bugs. Bitcoin, the benchmark by which other coins are measured, has had its share, like the overflow bug in 2010 that created 180 billion bitcoins in block 74638. It was quickly fixed though without anyone gaining or losing coins. Others like Ethereum users haven’t been lucky enough.
The Ethereum Virtual Machine can be used to enact smart contracts that use extremely sophisticated logic, As a Turing complete blockchain. The issue is more knotty that that logic, the greater the likelihood of an exploitable bug creeping in.
Solidity, the main language used to code Ethereum smart contracts, is notoriously tricky to master. The smart contract-enabled blockchains that have since emerged have been intent on eliminating such mistakes.
At Blockchain Expo in Amsterdam, news.Bitcoin.com spoke with Jordan Andrews, Smart Contracts Lead at Stratis. Their platform uses C#, which has been favored because it provides access to so many tools like decompilers, great editors, a cohesive testing and debugging deployment suite in Visual Studio. What this means is you can decompile any contract from the bytecode to real C#, explained Jordan. He contrasts this with Solidity which is in a delicate developmental stage, where you can’t actually decompile many contracts well. The fact that you can audit only around 1% of contracts on Ethereum is a problem because basically, the decompilers don’t work
Follow us on Telegram!