[Cryptography] What happens when a smart contract forks?
iang
iang at iang.org
Tue Sep 5 14:48:32 EDT 2017
This is not only a good question, but an important one:
On 02/08/2017 01:39, Phillip Hallam-Baker wrote:
> So what happens if someone spends the coins on both forks???
Both forks have valid coins, so you doubled your coins. However the
value generally splits Presumably unevenly, presumably summed to 1. But
oddly the sum of the value of the 2 coins can surge to greater than the
original, just on the buzz.
This actually an OK result. We know precisely what happens - 2 for 1
split. We know the accounting, we know what that means simply because
we know that a coin has no meaning, so two coins has two no meanings.
The only thing is that supply and demand bounce around a bit, which is
fine, another day on the markets, exciting for some but always balanced
at the end of the day. We've now run the experiment twice and the world
hasn't stopped spinning.
But there is another question - what happens to a smart contract that is
on a chain that forks?
https://steemit.com/eos/@iang/life-is-a-cabaret-or-how-to-split-and-merge-a-blockchain
We do not and can not know the answer to this question in a completeness
sense - because we don't know a priori what every smart contract does.
We do know what a cryptocurrency does, a priori, because all it does is
move numbers around. But a smart contract is more complicated - we
don't know whether it has issued rights, whether it has imposed
obligations, liabilities etc.
In short, it would be the same technical effect as the coin, there are
now two contracts. Which means two sets of rights and two sets of
obligations, two sets of liabilities.
If you hold the obligations and they suddenly double on you, are you
capable of meeting those? Are bankrupt, are you reneging, are you
doubling your workload?
If you hold the two sets of rights, you might be happy but at the other
end of the rights are two sets of obligations, and the holder of those
might be ins strife. Or, you might find yourself delivered with two
sets of rights that are wasting because you can't consume them fast
enough, if one considers the futures market.
I think the brutal conclusion is that you can't safely do
rights/liabilities/obligations in smart contracts on any chain that has
a chance of splitting.
Brutally, simplistically, this probably means you shouldn't do smart
contracts on Bitcoin or Ethereum. At least until you've resolved how
you deal with the fork.
In example terms, imagine Ethereum were to fork today - what would
happen to all the ERC-20 ICOs?
iang
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.metzdowd.com/pipermail/cryptography/attachments/20170905/f47e606c/attachment.html>
More information about the cryptography
mailing list