3 ms·
Presumably smart contracts would very often depend on input external to the system - for example, imagine a will that says if Person A dies, Person B inherits t
by dcosson 11y ago
Presumably smart contracts would very often depend on input external to the system - for example, imagine a will that says if Person A dies, Person B inherits the millions of dollars worth of Ether at a particular address that Person A owns.
Somebody (or some other system) has to be in charge of the input to the Ethereum system to tell it that Person A has died. This seems like a huge single point of failure that doesn't exist with current contracts, if it gets hacked then the money gets transferred irreversibly and that's that.
Trying to build a smart contract with any kind of "real world" dependency like this seems equivalent to using a crypto system with an extra key that the government controls, there's a single point of failure that could compromise the whole system.
- szx 11y agoWhile I generally agree with your point, it seems to me like that specific scenario could be solved with a dead man's switch contract. Not ideal, but still better than other cases. I got the impression that the answer you'd get from the Ethereum team is: at the worst case, this is just as bad/good as the current system - i.e. real world effects have to be mediated by an executing authority, same as a real world contract. They would add (and I agree) that smart contracts still have advantages, even in this case.
- dcosson 11y agoYou're right, the dead man's switch is interesting here. I wasn't thinking about the ability to reference a fairly precise point in the future via block number instead of an external input to the system. Don't get me wrong, I'm pretty excited about smart contracts. It just seems like there are a lot of things that we don't think much about currently because our current system is generally pretty forgiving in its fuzziness, but that could have big consequences (and introduce new incentives to act badly) in the world of script-controlled, irreversible contracts.
- deleted 11y ago[deleted]
- natrius 11y agoYou can decentralize the reporting of an individual's death using Schelling point consensus, which is what we use to decide Augur's prediction markets on Ethereum. In brief, we distribute a token to a "reporters." At the appropriate time, reporters submit their decisions about events. Reporters who deviate from the consensus lose some of their token balance, which is redistributed to the honest reporters. If an event is ambiguous, reporters report that fact itself instead of guessing at what everyone else will report. Oracles will be fine for some use cases. Schelling consensus works for others. There are many ways to get real world information into Ethereum, and many ways to reflect how well real world actors adhere to their commitments.