Smart Contract: Computer Says No

Another day, another tale of cryptocurrency failure <https://www.theregister.com/2021/06/17/iron_cryptocoin_titan/>. What’s different about this one is that it involved a “stablecoin”, which is some kind of attempt to reduce the volatility of a cryptocurrency by tying it in part to an actual currency. Note this linkage was only partial, and also involved a “smart contract”. This is a piece of autonomous code that, once let loose, makes its own decisions on what actions are and aren’t allowed. There is a suspicion that the smart contract involved had this line in it: require(_share_price > 0, "Invalid share price"); when it should have been require(_share_price >= 0, "Invalid share price"); and, depending on rounding errors, this could have caused all attempts at redemption to fail if the price fell too low to be distinguished from zero. And unlike regular legal contracts between carbon-based life forms, no court can overrule the operation of a smart contract†. Once it is put into effect, there is no reining it in. If the code is bug-free, you are fine (Do I hear sardonic laughter?). How many dozens of sci-fi stories and movies (both good and bad) have gone over this basic scenario? Do people learn nothing from pulp fiction!? But then again, the company did say "We already queued the fix for this, so people can redeem again at 5pm UTC." so maybe this wasn’t the issue at all. †Probably. None has yet tried.
participants (1)
-
Lawrence D'Oliveiro