Maybe some other group will fork the Ethereum code into a new cryptocurrency that can't have the blockchain forked as easily.
You think it is a bad thing that this has happened; I think it is a good thing. Now everyone is aware that the 51% can take control of the chain; you can't pretend any more that the code is the final arbiter, because it isn't. Black and white is a myth; it's a human construct that is made from mathematics and many shades of grey.
Democracy; it sucks, but it sucks less than everything else.
From their point of view however, it was perhaps most ethical to try their best to save money of all other people who trusted in their system that failed.
"Had the attacker lost money by mistake, I am sure the devs would have had no difficulty appropriating his funds and saying "this is what happens in the brave new world of programmatic money flows."
http://hackingdistributed.com/2016/06/17/thoughts-on-the-dao...
> I'm not sure how anyone could have any confidence in this system after that.
I think the situation is the opposite. After the DAO there were broad calls criticising the lack of leadership, criticism about decentralized/consensus decisionmaking, and comparisons with the broader economy and how the Fed can orchestrate a bailout (and why that's better - in the eyes of the critics). In a way, through consensus with this hard fork the Ethereum stakeholders squared the circle - orchestrating a bailout with majority assent (and if anyone didn't like it they were free to leave). I'm not going to pass judgement on whether or not that is a good precedent to set (or whether a turing complete blockchain - or the EVM implementation in particular - is a good idea in the long-term), but if anything the decisiveness of action should give more confidence in the short-term.
Really this shows that a small group of people plus a core team already leaning in one direction are probably enough to fork the network.
Ah, the old disclaimerbrag. Other classics:
> Disclaimer: I own Apple stock, in fact I bought thousands of shares in 2002.
> Disclaimer: I'm not a lawyer, but I am a doctor.
> Disclaimer: I'm a member of the Democratic party, in fact I was a guest at Hillary's daughter's wedding.
> After the DAO there were broad calls criticising the lack of leadership,
> criticism about decentralized/consensus decisionmaking, and comparisons
> with the broader economy and how the Fed can orchestrate a bailout (and
> why that's better - in the eyes of the critics).
This explanation would be acceptable if the motivating factor behind the hardfork were enabling bail-outs, rather than the loss of $60 million.(Angry customer calls up used car salesman)
Customer: The car alarm you promised would work doesn't work. I'm afraid someone will steal my car.
Car salesman: I'm awfully sorry about that.
Customer: Also, the engine broke. I can't start the car anymore!
Car salesman: Great! So I assume the missing car alarm isn't a problem anymore then?
More like the financial fraud police; less like the fed ?
This basically answers your question. A few pointers:
* you cannot do a hard fork alone, if no one follows you it own't work. You need the majority (to become the majority fork)
* hard forking, soft forking, are always possibilities that can happen at any moment (same for bitcoin)
* There was no reason not to fork at this point. Ethereum is at an early stage. Bitcoin had the same thing happened to it during its birth stage.
* If you cannot have confidence in this system because you were planning to "steal", then wait until the system gets bigger so that not enough people get affected by your theft
* If you cannot have confidence in this system because you were planning to truly write smart contracts or use them in a legit way. Then wait until the system gets bigger as well.
But the question is whether that day will ever come, or the currency will always need emergency overrides.
The logic of "the code is the contract" is that whatever happens is in and of itself legal. You cannot break the law, you can only mold the law to conform to your current reality.
I think that's mixing two things: the code that the miners run, and the code that is the digital contract. I think the idea behind digital contracts is that, once the parties commit to it, it should be set in stone (set in code), un-changeable, even by a majority of miners, irrespective of the fact that the algorithm used for distributed mining is majority based. In other words if a small set of parties do a digital contract (eg. the DAO people), then the whole point of the blockchain is that, once it's in the blockchain, it can't be undone---even if some people don't like it, change their minds, whatever. It assumes the miners just supply the mining power, but don't go in and conspire to remove specific blocks. This situation shows that in the case of Ethereum, a small set of people are able to influence a lot of mining nodes, and hence get a majority, and have no problem going in an changing specific things in the blockchain (by changing the source code of the mining software).
(The degree of manipulation in 2008 to reflate the banking system resembles a hard fork.)
Money is a signaling mechanism. It carries information. If you invalidate mistakes, you keep the economic system from learning.
The fact that didn't happen meant most people didn't want it to happen. If people did want a reset to compensate for the insecurity in the DAO it would have happened.
From what I've seen, none of the devs or community leaders had especially large DAO holdings, compared to their likely ETH stashes. Their economic incentive is heavily weighted towards keeping Ethereum healthy and supporting the price of ETH.
Obviously the HF isn't ideal, but not forking was potentially much worse. This settles the issue, and allows people to get back to work.
Hard forks will become less viable as a solution the larger the network gets, and as more interests are involved. However, blockchains are consensus mechanisms. Anyone can propose a hard fork update at any time.
Here is something to consider: as more than 80% of Bitcoin's hash power is in the hands of a few Chinese companies, the CCP could very realistically enforce a Bitcoin hard fork.
So there is no difference between me and the core developers?
Core developers represent a double-edged sword. They are critical for getting the network adopted, and for adapting the network to new demands, but they can also be a risk due to their influence. By all accounts, the Ethereum core developers have been open and responsive. Not all Ethereum devs wanted this fork. I do think they could be faulted for not strongly advising Slock.it to cap The DAO. That may be one reason why they were amenable to a refund solution.
You definitely should consider the core devs when investing time and money in a blockchain. They have an inertia that influences the system.
Of course that cartel has a better track record than this new one, so I also see it as a failure of the currency.
With ETH, it's a handful of inexperienced individuals with possible case of conflict of interest.
Here, if all your neighbors get together and want to steal your money, they can steal your money, and you have no recourse.
Yes, this proves ethereum is a failure- Everyone reading this thread might as well just send their now-worthless ether to my wallet at 0x6B4a61a3Fdc2596427A25F79D7b3b78e164da308.
Apparently when considering "Who would commit to building anything in an environment like that?" in practice, then an environment where the code is the final word on a contract is even less desirable than a suboptimal environment where, as you say, "a cartel of people the power to revoke transactions on a whim".
This is true, but the fork suggests the only way to do this will be by shorting the currency rather than trading the ETH earned from exploits.
That would have made it so much harder to justify a hard fork...
(The miners may or may not be more informed, but note that Ethereum is only valuable if users are willing to exchange things of value for Ethereum, i.e. a hard fork requires changes in wallet software.)
- ETH holders voted on http://carbonvote.com/ with 87% pro-fork. 5.5% of the total ETH supply participated in the vote.
- ETH miners clearly voted pro-fork on the major pools, e.g. https://dwarfpool.com/eth/voting. In nearly all cases > 80% of the hash power was pro-fork.
- ETH markets reacted positively when there were good pro-fork news, and negatively when there were bad news (such as the DDoS vulnerability in the proposed soft fork). Therefore the market sees more value in the post-HF Ethereum.
Yes, there is a vocal group opposing the fork, but it mostly consists of persons wishing to see Ethereum fail.
In the voting on the pools, 80% of people didn't even vote.
Therefore it is simply the fact that the fork was the default choice (and is the default in all the wallets), that is the deciding factor of this 'vote'
By the way, "> 80% of the hash power was pro-fork." is demonstrably false. only 15% of the hashing power was pro fork, 85% of miners didnt vote at all.
Contracts which contain an implicit item 'we can renegotiate this any time a majority of miners wish' are contrary to what Ethereum was meant to be.
Did the creators make money? Success.
"Ethereum is a decentralized platform that runs smart contracts: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference."
Emphasis mine.
How is that vanished? There is some small probability that the Ethereum community might from consensus around interfering with my service. But I'm no more worried about that than I am about Heroku or anyone else deciding I'm not allowed on the platform. If anything this episode has shown just how high that bar is on Ethereum as compared to centralized offerings.
People act like just because there is one tiny corner case where the full letter of the promise is unfulfilled that means the entire offering is void. But what offering doesn't have at least a few caveats?
If the code IS the contract, then by the contract they are owed this money, no?
Or does this mean the code isn't the contract?
If the argument is that code is law, the fork was implemented in code, so it's law.
If their argument is that the white hat hacks shouldn't have happened then they lay themselves open to the argument that their initial hack shouldn't have happened.
And then there's how draconian unauthorised computer access laws tend to be...
They paid to participate in a code-based Nomic and were denied their prize because they won too quickly.
I am surprised the attacker didn't try to bribe the miners, though.
The ability to run arbitrary code was built to allow for the creation of smart contracts. The basic idea with a smart contract is that the contract's code (running on the blockchain) enforces all the rules of the contract itself. No need for courts or external parties to handle disputes: the code just does the right thing.
A company called Slock.it created a smart contract called the DAO (distributed autonomous organization). The DAO was a venture capital smart contract. Anyone could submit proposals, owners of the DAO would vote on them, and if successful, fund them, taking some ownership of the proposed venture in hope of a payoff.
The DAO got people excited, and $160 million worth of Ethereum was invested in it. However, the DAO had bugs, and someone exploited one of those bugs to move a large portion of the DAO's Ethereum into another contract that the DAO owners couldn't control. This crashed the ETH exchange rate.
The "hack" split the Ethereum community: some felt that nothing should be done, the DAO contract ran correctly, just not in a way that was anticipated. Others felt that the DAO funds should be recovered and returned, and suggested a soft-fork followed by a hard-fork to make this happen. Both the Ethereum Foundation and Slock.it supported the fork option.
Eventually the soft-fork was released. The soft-fork stayed on the same blockchain (hence the soft) as previous versions, it just blocked transactions related to the "hacked" contract so the former-DAO funds couldn't be moved. However, once again bugs were found, making folks running the soft-fork vulnerable to DOS attacks. I don't know if it ever reached consensus.
A short while later, the hard-fork version of Ethereum was released. As the name implies, this version splits the blockchain into two, one continuing the existing blockchain and another that moves the DAOs ETH into a new contract that's going to be distributed to the former DAO owners. The forked blockchain also put ~$5 million in the hands of a curator to distribute as they see fit.
The hard-fork went live today, and it looks like the majority of miners have switched to it, which means the hard-fork has become the new Ethereum blockchain.
I have no confidence that Bitcoin or any other currency doesn't fork in the future, because it is possible at any moment. The fact that the fork has happened or not changes nothing - it always stays as a possibility.
In other words the chance of Ethereum or Bitcoin hard-forking in the future wouldn't change if the hard-fork didn't happen right now.
Well, it's setting a precedent that will make the case easier in the future. Bitcoin's hard forks have all seemed to be good faith attempts to fix issues in the protocol. I don't think anyway on the Ethereum team is arguing this is anything other than an extremely arbitrary fork. The fact that 51% of stakeholders agreed to set this precedent should scare anyone from owning Ethereum in the future.
Even if we suppose that only reasonable warrants would be granted for the use of such a backdoor, the backdoor is software, and does exactly what it's programmed to do - as anyone whose written software knows, this is sometimes not the same as what it's supposed to do. This means that bad guys can readily exploit any backdoor. A human would reject such accesses as obviously unwarranted, but a computer doing exactly what it's programmed to do won't.
Similarly, in Ethereum, a contract does exactly what it's programmed to do, not what it's meant to do. When malicious actors exploit this for personal gain, our reaction is that we should to "fix" the currency to be in line with our human judgement about what it ought or ought not be used for.
In both cases, you can't have your cake and eat it.
With backdoors, you can either have a simple, automatic means of investigating suspects, or you can have human judgement as to whether or not such searches have value that exceeds the value of an individual's right to privacy.
In Ethereum, you can either have autonomous and decentralized contracts, or you can have contracts that are subject to human judgement and values.
I'm still very much in "Micheal Jackson eats popcorn" mode with respect to Ethereum, but at this point it seems like it's trying to accomplish two things that are fundamentally incompatible.
It's too early to measure success. OK, there was a fork. Technical success if you like.
But, at the moment most exchanges are closed to Ethereum trading on either the old or new software.
When they open we will then have a better idea how this will play out.
Suppose we have guys D and C, and D owes C some amount in X-coin - complete with a written contract.
Now, if X-coin is forked, and one of the forks has a blockchain recording a transaction from D to C in that amount, but the other one does not, which one is considered authoritative? If C sues D, because they are on the other fork, and that fork doesn't have the debt settled, how would it go in court?
This gets especially interesting if the forks are roughly equal in size...
I guess it would all depend on the interpretation of the meaning of the term "X-coin" in the contract, but that's just a different way of asking the same question.