3 ms·
Remember what happened with the 2016 Ethereum DAO? Even expert programmers aren't able to check smart contracts for all possible issues.
by gcr 4y ago
Remember what happened with the 2016 Ethereum DAO?
Even expert programmers aren't able to check smart contracts for all possible issues.
- CuriousCosmic 4y agoThat's what happens when you decide to write your smart contract language in what is basically javascript and your smart contracts are interpreted in a stack based VM. Doubly so when your contract execution is entirely determined by the order in which Tx happen to get accepted. It's actually sane when your contract is written in a non-turing-complete language with strong typing and the smart contract system has deterministic execution (i.e. you know the result when you submit the Tx and if the result would be different, the tx fails, preferably without charging you). I'm convinced that one of the main issues with most smart contracts is that they have such weak guarantees and the guarantees they do have are brittle and hidden behind complex, opaque proofs & constraint systems.
- bogomipz 4y ago>"That's what happens when you decide to write your smart contract language in what is basically javascript and your smart contracts are interpreted in a stack based VM." What was the language and why did running it in a stack based VM lead to this? I'm curious about the intersection of the language and the type of VM it ran in.
- rwmj 4y agoSolidity. The Wikipedia article has some more information on the problems: https://en.wikipedia.org/wiki/Solidity#Criticism https://en.wikipedia.org/wiki/Solidity#Criticism
- spookthesunset 4y agoThe DAO “hack” was just a legitimate transfer of wealth from weak hands to smarter hands. Code is law. All “bugs” are law too. The only people who stole anything where the devs who reversed the ethereum blockchain…
- ahtihn 4y ago> devs who reversed the ethereum blockchain They didn't. They made a hard fork and the community followed. The "hacked" chain still exists, go use it if you want.
- everfree 4y agoExpert programmers in a programming language that at the time had no tooling and had only existed for less than one year? No such thing.