Stick a Fork in Ethereum
elaineou.com
elaineou.com
The next time there is something like the DAO, people can invest without fear since rollbacks are the modus operandi. Isn't this why people are upset with the financial system? When people invest in stuff, they need to be responsible for the results. As someone who didn't buy a house in the crazy mid-2000s, I am paying the price for everyone else's stupidity in the form of crazy low interest rates (which have fueled record home prices). But who is standing up for me? No one. I thought cryptocurrencies were leading to a better world (or at least one where the system couldn't be rigged as easily). I guess not in this instance :(
Also, please don't create many obscure throwaway accounts on HN. This forum is a community. Anonymity is fine, but users should have some consistent identity that other users can relate to. Otherwise we may as well have no usernames and no community at all, and that would be an entirely different forum.
If bad, leveraged, investments in real-estate will not result in large losses, due to government intervention, then the real-estate market gets inflated, as when you have limited downside, your expected returns go up significantly. This also hurts less-leveraged investors (e.g. people who saved a large down-payment) as they get less house for their money, but don't gain any risk-reduction as their risk of negative-equity is much lower to begin with.
If malinvestments in ETH can be rolled-back, then any risks that are reduced by potential future roll-backs[1] will be discounted by investors, which means investors who carefully vet their investments for those risks no longer gain any benefit.
1: I'm not familiar with the fork, so don't know what the roll-back criteria are, but remember, to distort the market a roll-back need not actually happen in the future, just that a significant fraction of investors believe it is likely
<sarcasm> Ethical dilemma eliminated.</sarcasm>
The biggest problem with Etherium is that many of the same people are behind Etherium, the DAO, and slock.it.
http://www.jstor.org/stable/2338493?seq=1#page_scan_tab_cont...
Yes letting the transaction stand is boost to the confidence in the protocol at the expense of the DAO funds but it shouldn't give anyone the impression that future transactions are immune from reversal.
Ethereum's hands-on approach allows them to innovate more aggressively. Bitcoin wouldn't touch this with a 10ft pole because the challenges behind such a scripting system were beyond anything they felt secure implementing. And now we are seeing why.
But Ethereum can use hardforks to keep things ~stable despite the road bumps. Some people are really glad this is happening, and those people should stay in the Ethereum ecosystem.
If that's not your style, and it's not mine, there are other coins (namely Bitcoin) that have more conservative cultures.
The DAO's own terms state: "Any and all explanatory terms or descriptions are merely offered for educational purposes and do not supercede or modify the express terms of The DAO’s code set forth on the blockchain; to the extent you believe there to be any conflict or discrepancy between the descriptions offered here and the functionality of The DAO’s code at 0xbb9bc244d798123fde783fcc1c72d3bb8c189413, The DAO’s code controls and sets forth all terms of The DAO Creation."
Obviously the hacker's intent was theft but under the DAO's own terms it was a valid activity.
Basically the code is law. If we're going to then interpret that law then we've created a system similar to the current systems we have, but lacking in maturity. The point of something like Ethereum is not that it can't be manipulated, it's that it doesn't need to be in order to function. It can be trusted explicitly because its functionality is not open to interpretation.
If I'm not being clear enough -- what they should have done is taken this as a very expensive lesson and otherwise left the system alone. Yes, a "bad person" would have profited but the system's integrity would have been untouched.
FWIW, I was an early backer of Ethereum and bought ETH during the pre-sale. I invested because I thought it was promising -- without any real expectation of return. Coincidentally I sold all of my ETH just before this hack (40x ROI). Because of the fork I would not invest in ETH again, regardless of potential returns, because Ethereum is no longer what it set out to be.
Yes, even with modern automatic theorem provers it is a bit torturous. But people are even going so far as writing a mathematically proven safe kernel (1) and Ethereum is much smaller and simpler.
However, I do think it is, or perhaps, would have been, important to put a lot of focus on moving to mathematically proven contracts.
In normal contract law that doesn't have a blockchain in it there is a special moral "backstop" where a judge may find a contract to be unconscionable. An unconscionable contract may contain nothing forbidden by statute, but if it is found to be profoundly unjust in terms of its outcomes (not due to change in circumstance, but as a result of its formulation), then a judge can call the contract unconscionable and it is void.
This kind of latitude is really valuable, as it recognises the fact that things are pretty complicated and that in the end the law is there to ensure justice, not to mechanically interpret a set of rules.
So, even if you have a smart contract (or as I would call it "program") which can be proven to work a certain way, that may not be enough to guarantee that it is not going to give rise to bad outcomes. For example, say we have a proof showing that the program obeys some invariants, and one may even have such a proof generated automatically. This makes us feel confident - let us irreversibly bind our future actions to the output of the program! Blockchains be praised!
However, if the real invariant being aimed for is that the program's execution is "justice-preserving" (and I would say this is a good aim), then there is a grounding problem we have missed, where the prover needs to specify formally the nature of a just situation or action.
I believe a large number of person-years have already been spent on attempts to derive such an "ethics predicate", but if anyone has found it they have not yet bothered to demonstrate it. As a result if we wish to pursue justice, we end up falling back to the position taken by the ordinary law, and we might wonder quite why we decided to use 51% of all computing power for the rest of time to keep a ledger intact in the first place.
It's also entirely dependent on judges being nice and reasonable people, who will judge according to common sense standards of "what is right" shared by a solid majority. This just isn't true. If anything, judges are likely to be less reasonable than random regular people, because
1. They have an education where argument is treated as a sport, and objective measures of bias or correctness play little part.
2. They belong to a class who firmly believe (and society backs them up on it and tries as hard as it can to make it reality) that their opinions are worth more than ordinary people's.
That was always my problem with libertarians, their eagerness look to the legal system to solve social problems (contracts, etc.). The judicial branch is the worst of all branches of government. Sensible people don't go there to get justice, it's where you go when you've given up getting justice any other way.
A judge is just as likely (if not more) to protect an unjust order as to overturn it when it's really called for. Ethereum provides a way to guarantee desirable outcomes without such arbitrariness (in the very literal sense). It failed to do so with the DAO, but at least there, bugs can be fixed. It's much harder to fix unjust judges.
Would the "hacker" have a chance to win in court? The DAO/Ethereum administrators are obviously breaking the terms of the contract...
Therefore changing the code would be equivalent to updating the terms of service - and many judicial systems restrict when and how you can do that.
So I don't think it would be that easy.
Splitting the road into two roads with very different outcomes sounds like a far bigger problem than hitting that road bump to me.
51% being honest is fundamental assumption of a cryptocurrency [1]. The assumption gets stronger as total computation power increases.
[1] Its necessery but not sufficient condition to make the whole state dishonest. You would need to have >50% computation work done.
This assumes that the increases in computing power were not added via a mining pool, in which case the additional computing power is making things worse.
This is one reason that many view mining pools as one of the worst failures of bitcoin / other blockchains.
It's not total centralization, but it's a far cry from the level of decentralization that would be possible if mining pools did not exist.
There is a lot about this topic in the new, free book from Princeton authors titled "Bitcoin and Cryptocurrency Technologies" (a great read)[1]. There is much research being done on the front of finding the best way to eliminate mining pools or at least stop them from potentially centralizing consensus to just a handful of people.
[1]: https://freedom-to-tinker.com/blog/randomwalker/the-princeto...
Bitcoin might have 51% dishonest problem but it can be made honest again by increasing total computation. Whether 51% are honest or not is function of total computation power [TCP]. Probablity of 51% being honest goes to 1 as TCP goes to infinity.
My point was, only very few people are about something like this.
This is the whole "longest chain" versus "longest valid chain" distinction. A Sybil attack can censor the Bitcoin blockchain, but 51% doesn't gain full control of the network.
Note that Buterin cashed in 25% of his ETH just before this.
Just another premined altcoin scam.
https://soundcloud.com/cryptoafterdark/episode-9-vitalik-but...
https://www.reddit.com/r/ethereum/comments/4g9n2a/crypto_aft...
Code is law, but there is no law which we can't abolish, especially when the law stops serving the purpose for which the law was established.
I just noticed your nickname, it's well known you hate cryptocurrencies and spread FUD about them on wikipedia and forums.. what's up with that? at the same time you are a admin for Rational Wiki? and yet you are oblivious to your own bias.. incredible
Long ago I worked for financial traders on early electronic trading systems. One day in our Frankfurt office there was a big commotion. Our head trader thought he had made a boatload of money. But it turned out that the trader on the other end of the trade had fat-fingered an offer. The mistake-maker stood to lose hundreds of millions of dollars, destroying his company.
The exchange halted trading in that instrument, unwound all the trades, and started things back up again as if the mistake had never happened. I only heard of it happening that once; smaller mistakes were always the trader's problem. But for the exchange, the normal rules of the market did not override the purpose of the market, which was to facilitate certain kinds of commerce. There was just no point in destroying an entire company, and even our traders were fine with the outcome.
If Ethereum's goal is a market where "people can invest without fear", then it sounds like they did the right thing. Your "caveat emptor" approach has the advantage of being ideologically simple, but it results in an economically suboptimal amount of trading.
Real markets all have elaborate protections pushing them away from purity and toward economic utility. E.g., the US's stock market is a preferred place even for foreign companies to list because our strong disclosure requirements and legal protections make investors less afraid, increasing capital availability and decreasing cost. And it's not just financial markets; consider the Uniform Commercial Code: https://en.wikipedia.org/wiki/Uniform_Commercial_Code
The NYT has a great article on this, where they suggest the bulk of Bitcoin users are Chinese citizens gambling on price fluctuations. And their stats seem to support this assertion:
http://www.nytimes.com/2016/07/03/business/dealbook/bitcoin-...
I pay for things with cryptocurrencies fairly frequently. I don't want every company I buy things from having my name, address, date of birth and credit card info if they don't need it. If I'm buying goods or services that don't require physical shipping, all they need to know is what I want and that the money has changed hands. Crypto facilitates those kinds of transactions.
It would have to be a very compelling argument to persuade me that transacting through a middle-man (who then holds all my personal information and card details and also takes a cut) is better than just handing over cash and getting what I want.
Once you get to the point of using a reputable escrow system (which will have to charge a fee), that plus the bitcoin fees (either direct transfer fees or the implicit tax that is mining rewards) are unlikely to be cheaper than the credit card system (which doesn't have to burn immense amounts of processing power for business-as-usual). Having all participants be anonymous and untrusted adds a lot of overhead; in a civilized environment with a reasonable legal system you can shave that off by being willing to trust your counterparties (trust that is made possible by central clearing houses and verified identities).
Participants aren't necessarily anonymous; if you're buying from a known vendor and having something shipped to your house, neither party is all that anonymous. People are working on adding verified identities, for people who want them.
Ethereum hopes to do away with mining by early 2017.
At which point why use this instead of a credit card?
> Ethereum hopes to do away with mining by early 2017.
How are they doing byzantine-fault-tolerant consensus without it?
They're switching to proof of stake. Early PoS designs have some issues, like the infamous "nothing at stake" problem, but theirs addresses those. People lock up ether for several months, and bet it on which blocks will be included in the chain. The blocks that get the best odds in the betting are the ones that get included, so basically you're betting on what everybody else will do. You start with low-confidence bets that don't risk much, and as you see other people's bets you progress to high-confidence bets that pay off better, and it converges.
Miners essentially do the same thing: by choosing a block to mine on, they're betting their energy cost on that block being chosen.
Sure, but that doesn't really change anything. Their service will cost a certain amount to run, and so you'll end up paying an average of x amount per transaction/per dollar spent, whichever way you slice it.
> Either way you're paying only for the arbitration, not for stockholder dividends.
And yet for-profit companies usually end up being the most effective way to get something done. If I need a tree cut down in my yard I don't try to find some non-profit tree-surgeon collective, I call a professional from a reputable company. (And I would think that anyone who supported cryptocurrencies - which are all about directly transferring money without involving a social layer - to feel this way even more strongly).
> They're switching to proof of stake. Early PoS designs have some issues, like the infamous "nothing at stake" problem, but theirs addresses those. People lock up ether for several months, and bet it on which blocks will be included in the chain. The blocks that get the best odds in the betting are the ones that get included, so basically you're betting on what everybody else will do. You start with low-confidence bets that don't risk much, and as you see other people's bets you progress to high-confidence bets that pay off better, and it converges.
> Miners essentially do the same thing: by choosing a block to mine on, they're betting their energy cost on that block being chosen.
Hmm. Doesn't that mean the reward for fraud is much higher? Can't someone just bet a massive amount that their fork will win, and then their fork wins precisely because they bet a massive amount on it?
If you're not dealing with dodgy people, the big pain points are getting it, and keeping it safe once you have it.
With cryptocurrencies, however, there isn't enough "legitimate activity" (i.e. people actually conducting business with Bitcoin) to allow a stable price to emerge. This makes them vulnerable to manipulation because there is no function for the form to follow. At least with regular currencies, speculation has to follow reality. With cryptocurrencies, reality follows speculation!
This leads to a negative feedback loop; people are reluctant to use cryptocurrencies for business because the price is unstable, and the price is unstable because not enough people are using them for business.
That's a wholly circular argument, and a counterfactual one.
If speculation influences prices then it's in the interest of speculators to create pricing mechanisms that are perpetually "out of whack" so they can profit from them.
There is no such thing as an accurate commodity or currency price, and there never can be. There's only market sentiment, and that's largely based on optimism or pessimism about the future - which is unknown.
Markets are just entrail reading, with very expensive and complicated entrails.
DOA was more like a meta-entrail system with an extra layer or two of obfuscation. But it was no more stable than any other market, and fell prey to exactly the same problem - manipulation of mechanisms creating a dishonest illusion of objectivity for profit.
"If speculation influences prices then it's in the interest of speculators to create pricing mechanisms that are perpetually "out of whack" so they can profit from them"
How exactly will they influence said prices without trading? Which costs money? HOw would they move a price (cost money) then move it back (cost money) without constantly losing money? You need other people to take you out of your speculative position, and those other people must be (net-net) non-speculators, and sufficient in number (which was @omegaham's point). Separately, any market which is purposefully "perpetually out of whack" is not even a market, and will quickly tend to zero participants.
"Markets are just entrail reading"
Another eye-roller so vacant that I don't know how to respond.
I wish people like you wouldn't jump in with such certainty about subjects in which you are eminently and so evidently without the foggiest of any idea, but willing to get your word in anyway.
I would like to know how much REAL MONEY went into this thing rather than its "value" as a result of funny-money speculation. I expect that any adult that put money or compute cycles into ethereum understands that the value could literally vaporize at any time, so it seems disingenuous to throw around dollar figures inflated by speculation. Is anyone _really_ losing their shirt at this point?
This. This is what I'd like to know before I can give a crap about crytocurrencies. Otherwise, it is all tulip bulbs in a land far, far away.
I see what you did there
Not all cryptocurrencies are alike because there is this fundamental difference in governance. Personally I have a hard time envisioning a successful cryptocoin that does not have a level playing field. The oligopoly of a few companies hiring most Bitcoin developers is problematic, and the Ethereum situation much more so.
Bitcoin is defined by a reference client, which is managed by developers who are mostly employed by a for-profit company. Anyone wanting to do another implementation has to comb through a lot of hairy C++ and match it bug for bug.
Ethereum is defined by a 32-page spec, produced by a nonprofit corporation. At this point there are eight implementations, each in a different language, mostly by entities other than the nonprofit.
(If the DAO had waited the couple of years necessary to produce a provably secure system, they would have been beaten to market by someone less secure who would have been hacked instead. Because people are incredibly keen to throw money at being early adopters of cryptocurrency systems. They're the new dotcom shares.)
I'm also going to predict that a few months after the dust settles on this that another exploit is found in the DAO. What happens then?
The problems of the mid 2000s credit bubble and subsequent near depression were down to too much laissez-faire and not enough / smart enough regulation. Crypto currencies won't fix that - they'd be worse. Their main strength seems to be for drug dealing and cryptolocker type extortion. Regulating the money supply / interest rates through an open source algorithm/AI rather than it being done by politicians might be a way forward.
That's wild. It seems like the largest holders of Ether can tie their investments together and agree to "undo" anything that loses money. Am I misunderstanding how the hard fork process works? Why would anyone bet on this being the "killer cryptocurrency" if it already has entrenched interests capable of manipulating it for personal gain? How is this system decentralized beyond the trivial, technical sense?
In the bitcoin world, this would be called a 51% percent attack. What really matters is what the miners choose to do.
This particular fork is political and not technical. The previous ETH forks were modifications to the protocol. The current fork is a modification to the account balances. The rich Ethereum fanatics are completely and absurdly delusional in thinking this will be a great event in their history. To me, the canonical chain is all but dead. The protocol will survive, just not on this chain.
Miners don't make stances. They mine whatever is economically viable.
A fork without exchanges would not have economic value, for example, and would be useless to mine.
As of now, the amount of ether you hold doesn't increase your ability to affect a fork. That's entirely controlled by miners. The amount of computing power you bring to the ethereum blockchain controls how much your vote counts.
If Ethereum switches to a "proof-of-stake" system as planned, then yes, the amount of ether you hold will effectively be how many votes you have in making decisions like these.
This is why I found all the "voting" stuff such nonsense and somewhat deceptive in nature.
Miners that adopt the code that implements the hardfork is the only measure that actually matters. Everything else is mice voting to bell the cat.
Whenever I find myself looking at a topic which technically goes over my head, I generally have to rely on the way the people involve express themselves. The language of the Blockchain community is awful from that point of view. It reminds me of sitting in meeting with too-clever lawyers, lost in a world of cunning minutiae, oblivious to the fecking meteor about to land on their heads.
Interestingly the entire point of bitcoin, for example, is that you don't need to trust anyone at all.
Yes, it's epicaricacy. Yes, it's warranted.
After dipping my toe into the crypto currency world, learning about the DAO and Ethereum, there are a few things that bother me about this whole situation.
1.) Rolling back (voiding) transactions, which seems to go against the concept of cryptocurrencies in general.
2.) The conflict of interest between the DAO, slock it, and core Ethereum developers, and their hefty co-mingled investments in the DAO.
3.) The labeling of this person as a "thief" when they played by the rules set forth by the DAO contracts. Maybe not the spirit, but courts generally decide that. The code is the law and is final is my understanding. (I don't know how you code the spirit, by the way.)
4.) The non-inclusive "democratic" vote of the Ethereum community on the hard fork that appears questionable.
5.) The different rules for reversing a "theft" depending on whose funds where taken (see #1 and #2) or how much was involved.
6.) The centralized decision making on the fork by a small number of people who stand to lose substantial funds based on a poorly understood investment vehicle.
This whole situation occurred because of some poorly implement code and now there's a whole lot more code being deployed in a hurried manner. If there is another unnoticed, unintentional way to run code that is not within the spirit of a contract in the future and no core Ethereum or slock it funds are involved, will another hard fork occur? Will they legally be forced to do it? It seems as though the risk was contained to the DAO's funds and now, with the hastily rolled out fork, the whole Ethereum market is put at risk.
This made me wonder, is it possible that the added code were to introduce bugs to the Ethereum protocol itself, allowing for even worse exploits than the one affecting the DAO? (Worst case scenario: unrestricted draining of any smart-contract, or something like that.)
I’m not knowledgeable enough to answer myself, but maybe somebody is familiar enough with the code to say?
Maybe I'm not understanding correctly, but that seems to be the dumbest thing I've ever heard of in the context of a trustless system of computation.
I think the vision is bad. The idea of software enforced contracts is a neat idea and someday we will have it. Ethereum is not going to be it, IMHO. Their developers want to handwave the hard problems aside and brag about how innovative they are. E.g. call for research on tools to check for bugs in contracts, meanwhile their programming platform is absolutely dreadful for writing bug free code.
A better vision would be to use all the software correctness research that been done over the last 20 years. Probably use a function language that makes reasoning easier. Maybe something like Lamports TLA+ to specify behavior. I would think you want a small set of contract templates that people can use. They would be as simple as possible and heavily reviewed.
I have read the DAO is on the order of 1,000 lines of code. I'd be willing to bet money there are more bugs remaining to be found. More forks in the future?
First, because the idea of "the law" as some sort of operating system for society or even the concept of the law as a program is extremely dangerous and fraught with difficulties. And most legal systems in the world have built in systems to ensure that there are elements of flexibility through humans bringing subjective judgment to bear connecting the inflexible "programmatic" elements of the law, so that errors, bugs, incompleteness, paradoxes, etc. in the law do not have undue negative consequences on society. The idea of a completely programmatic system of law, even in contract law, should be monstrously frightening. This is the stuff of kafkaesque nightmares, of unfeeling and inflexible bureaucracy which has in it no room for humans or human life. To the extent that there are programmatic aspects of law that could be good, these must have a "safety valve" that allows them to be overriden and human judgment applied. Consider how often everyone has experienced a moment of frustration when trying to get some sort of customer service while hearing a clerk or service person say "sorry, the system just doesn't allow that". And indeed we've seen precisely what happens when you lock yourself into a contract system with zero human oversight, Ethereum proved that it did need oversight, and bolting it on after the fact is much more costly (if perhaps impossible) than building it in from the start.
Second, there is a stunning naivety about logic and computing involved. One common misconception of developers with an immature understanding of computing is the idea that software is deterministic. In theory software can be deterministic, but largely in a way that is completely irrelevant quite often. It's deterministic the way dice are deterministic or fluid dynamics or computation of the mandlebrot set are. In practice it's not possible for humans to understand and reason about systems that might exhibit a stunning degree of complexity despite being very simply designed.
Additionally, it ignores several well known fundamental problems in computer science, such as the halting problem and the problem of decidability. As well as several thorny problems in software engineering. Even if you work only within the space of "provably correct" software systems, that still doesn't save you because one of the most common kinds of software engineering errors is an omission at the design stage. Software that provably does exactly what you've specified, but when you've specified the wrong thing is unhelpful.
The whole idea relies on behavior of both humans and software that are not only unrealistic but provably impossible. It requires that everyone write 100% perfect bug free code for every contract and to be able to read code and determine conclusively with minimal effort exactly what it does and also verify that it is 100% bug free.
If any of that were possible the direct applications of being able to do such magical things in software development would vastly outstrip the use in contracts or cryptocurrency, by orders of magnitude. If we had the formula to make bug free software with minimal effort the world would be an utterly different place.
If a trial depends on what judge you were (un)lucky enough to get then I'd consider that a far bigger flaw than the occasional misjudgement.
Indeed, you call attention to the possibility of "occasional misjudgment" here, in this thread, where the context is about the complete and utter failure of the entire system due to defects in the system. You're standing next to a barn with not only the doors wide open but that is actively burning to the ground and you're trying to tell people that using the barn is safe, and only subject to occasional misjudgment.
That said, human day-to-day oversight has also caused massive failures. Eliminating failures completely isn't an option, but the question is how to reduce them in the long run.
It is the other way around. Currently, there is no software being verified to the degree that anything but almost inconsequential smart contracts would require. Instead, we deal with software the way we handle contracts: when something goes wrong (which is quite common) we intervene.
I'm just N=1, but if the trend continues then I see it not growing beyond a hardcore self-interested group of people.
US fiat failed and was only rescued through ad hoc legislation. US fiat would not exist today if new rules (unknown at the time of failure) were not defined to essentially rollback prior transactions.
You are pretty much guaranteed that, modulo some events, any US president from any party will honor their predecessors' decisions, pacts, treaties, etc. And you can be assured that the whole nation will follow them, because of of the Rule of Law!
What you've just witnessed in Ethereum is a bunch of rich, moderately intelligent, technocratic and very technologically literate (but not necessarily well educated ("who would want a government when you have code bah!")) visionaries and mostly speculators crying to get their money back by abandoning the very characteristic (immutability) that distinguished them from traditional systems of governance! They had a modus operandi that "Code is Law", and they've now turned against it. "Code is Law unless X". Why have that when you can just have plain and simple "Law"?
Now take Ethereum: suddenly changes to the transaction history needed to be made which violates the one law of cryptocurrency that's been shoved down my throat ever since Bitcoin hit mainstream media. So with no process set (because it should not have been needed in the first place), a sudden reversal of intent for one arbitrary contract, and no way to have the original intent stay binding, Ethereum made its choice. It didn't even have a legislative process, just an authoritative one guised as a democratic vote. The way that choice went down shatters all trust. If US Treasury suddenly decided it didn't need to follow any US legislation and redistributed wealth across the world, trust in USD would equally be shattered. I'm not a gambling man, but at this point in time my money stays in USD.
I don't think I made your point, though. The laws that were passed to rescue the previously failed rules were utterly unknown at the time the failure was occurring. Instead of those rules being followed through (resulting in the complete destruction of debt-currency), a political elite was able to force a rescue of the failed actors. Wealth was redistributed across the world as USD should have ceased to exist and all debt vanished, but was allowed to be propped up at the whims of technocrats (Fed buyers).
> I do not want to be subjected to the whims of an unregulated group operating under unknown rules[...]
I read it as "operating under unknown rules", so I don't mean the laws as currently written but the legislative process used to change the laws so they can be fixed (this was my intended meaning). I agree with you fully: the rules can, do and will fail and the next set of rules are utterly unknown now. But rulemakers are currently operating under known rules: the legislative process. Always have been through all the US fiat changes.
The lack of trust in the legislative process is what makes cryptocurrencies attractive. I infer (possibly incorrectly) you also share a healthy mistrust in the legislative process, just as I do. But Ethereum never laid out a formal process governing these sorts of changes (not a legislative, authoritative, nor democratic one) so the implication to the whole world was that none would ever be needed (because cryptocurrency) and people trusted that this fact would be respected. With this DAO reversal, Ethereum has broken that assumption many people hold, and lost that trust. This is why the OP in the article is upset: the process that resulted was an authoritative one disguised as a democratic vote in his or her eyes. And I am inclined to agree.
Edit to remove typo "as as" to "as".
The bailout of USD can also be described as an authoritative one disguised as a democratic vote. Congresspeople were told the world would end if they did not vote for the legislation they were handed.
This is the last time I'll attempt to make this point.
Congressional elections are typically decided by ~25% of citizens. Not very far from the 5% rate you are claiming. Sampled approval rates have been as low as 11%. The most recent rate I've found is 16%.
Your point is about minimal discrepancies and misses (for me) the much, much larger picture.
[citation needed]
Here is one Paulson quote:
>You could just see it. We could see it and it was one of the most frustrating--when I look at the things I could have done better, there were a lot of them and they come out in the book, but the communications challenges were huge. I mean, I sat there when the capital markets froze, before we went to Congress, and the money markets weren't working, and I just tried to think about how to explain this. Because I knew--I was seeing major, blue-chip industrial companies that were having trouble raising financing, so I knew with $3.4 trillion of money market funds, and with everything that was just getting ready to break apart, that if the system had collapsed there'd be thousands and thousands and thousands of mainstream industrial companies--middle-sized companies, large companies--that wouldn't be able to raise their short-term funding, finance their inventories, pay their people. People wouldn't have been able to pay their bills. This would have rippled through the economy. We would then have had--well, today we have over 10% unemployment. That's terrible. And that's after everything we've done. If the system had collapsed, when we were on the brink, unemployement easily could have been at the 25% level that we saw at the Great Depression, and the value destruction--much greater than we've had in terms of home prices and in terms of people's savings accounts and stock portfolios and so on.
>https://www.amazon.com/Brink-Inside-Collapse-Global-Financia...
And Bernanke: >He said that bailout was necessary because “we knew that the collapse of the firm would potentially destroy or at least paralyze the global financial system with tremendously bad consequences for everybody.”
>http://www.centraljersey.com/news/princeton-former-fed-chair...
Also, where's the "rolling back of prior transactions"?
>Also, where's the "rolling back of prior transactions"?
AIG's CDS/O's should have basically all failed, per the rules of the system. These were just papered over. "Pre-emptive rollback" might suit better.
You can't roll back something that hasn't happened! That's not how causality works! :)
Ethereum failed, as they decided smart contracts aren't a great idea, so they're now going to involve humans when they feel like it. The whole premise of Ethereum was the opposite of what they're doing.
In practice they found out (and showed the public) the kind of consequences everyone was expecting; and so we have a successful experiment giving some evidence on whether smart contracts w/o overrides are a good idea - apparently, it's not; and now based on this we can build better systems that properly account for the risks that DAO had.
If a contract can be updated then its not decentralized so now you are trusting some dev or some group of people. If a contract can't be updated then it will have bugs and you can't trust it....and so on...
In a centralized system, there's a small group of trusted people who are responsible for keeping it safe.
I guess I shouldn't be surprised given your support for authoritarianism.
I would still view it as less corrupt than traditional finance, where a few powerful companies / people / government have disproportionate control.
> The machines are controlled by humans, and will be,
> unless and until AI takes over the world. So how can
> you possibly have a system where humans can't decide things?
It's not about humans not deciding things.It's about:
1. Creating a protocol (Ethereum)
2. Making claims about what this protocol can do; attract investments
3. When the protocol is shown the be flawed: discard it
The very value proposition of Ethereum is that it's a protocol. When the authors suddenly "change the protocol", it amounts to the reference implementation of the protocol changing to be incompatible with all other alternative implementations of the protocol. This has no value in the real world. The value proposition (the protocol) is now gone. Investors invested $150 million in a protocol, not an computer program distributed by the "official developers", which everyone must use in order to access the system.In-production protocols can't really be changed. You can only create a new protocol, and hope people switch to that. And if you, the inventor of the protocol, have the power to just "move over" users to the new protocol, it was never really a protocol to begin with, but more like a backend interface (the difference being that the latter can change without changing the client protocol).
Incompatibility is a downside of changing the protocol, but that doesn't justify jumping to the conclusion that protocols with serious flaws should never be changed, even after millions of dollars have been stolen.
Keeping it running as it is won't convince anyone to invest in it, which defeats the point of running it, in the first place.
One thing to keep in mind is that much of this was not invested by buying in with fiat currency or even mining in the traditional sense. Apparently a significant amount of the ether invested in the DAO belonged to Ethereum developers and insiders. If I understand correctly some of this ether was essentially created out of thin air during their "pre-mine" process[1].
The $150M USD worth of ether in the DAO is out of almost $1 billion USD in market cap[2].
“Invent a new version of the universe” is normally not
permitted by the software protocol, which is why this
involves a client update and a hard fork.
To have "separate universes" is to have separate blockchains with different genesis blocks. There's an incentive to do just that with Ethereum[1] since the effective doubling of funds (X ETH on each chain) is bound to cause disruption.Anything other than a new fork is going to fail for the reasons the author mentions.
Slock.it was very irresponsible not to cap The DAO from the beginning. Growing pains.
I didn't vote with carbonvote.com because I didn't have to. It was clear the HF was going to win. No need to mess with my cold wallets. There was no perfect outcome from this situation, but I see the HF as the least bad.
IMHO Bitcoin could use a HF, but they can't get one due to the centralization of mining in a few Chinese companies. I see that as a negative.
The threshold for a HF will likely grow for Ethereum as the network grows due to the diversity of stakeholders and their interests. These are very early times for Ethereum, and even for Bitcoin.
Ethereum does have more scheduled hard forks coming, BTW. The switch to PoS is going to require one.
The rule of HN and cryptocurrencies seems to be, look what the majority is saying, then do the exact opposite.
What a mess.
I view it as more of an experiment with new tech rather than an actual plan to run a successful business, however there is an absurd amount of money on the line.
only one block remained on the old fork.
I'm glad I bought in when I did, during all this FUD. I'll be making a killing now.
It was a big mistake.
But Ethereum is still the leader in terms of a lot of technical aspects and also the ability to pull people together.
To try to give people a perspective: say you and your friends took out second mortgages on your houses and came up with 5 million to invest. Then you invented some tool, and someone found a back door or bug in this tool that allowed them to steal 1 million dollars.
So most of the group would like to undo this 1 million dollar theft with a patch.
Now, most outsiders are condemning you for trying to work around the bug and recover your million dollars with a patch.
I think that the mob is fickle. Quick to pile onto a bandwagon, and quick to burn it.
So, I hope Vitalik and the other group of hard working, intelligent and ethical people involved do not take the mob's response to heart.
The idea of decentralization and objective rule by code is sound, but the other part of this is that it is an alpha system that was untested, and obviously this was a theft. Forking in this case does not invalidate the concept or the team or any of it.
It doesn't mean there will be people forking in the future to steal money.
It really seems like most people are operating on the same level that the kids were in my 7th grade class. Which is pretty bad, because it was full of dullards, children acting almost like monkeys, and actual juvenile criminals.
Honestly the common reaction here is at a middle-school level.
The suspect (not "thief", because "theft" is determined in a court of law) can then be convicted via due process, which is a constitutional right.
After the Mt. Gox hack, users contacted authorities. The Mt. Gox hack lost $600M worth of bitcoin. They are now recovering some of their funds.
The anonymity feature of Etherium is why this can't happen with the DAO. Nobody knows who has that money. It's tied to a numbered account. They haven't been able to launder it yet, but everyone seems to assume they will be able to.
If Etherium were non-anonymous, this problem could have been unwound in court.
That's very sensible. Which is why all traditional banking systems have the concept of a "chargeback" when something goes wrong.
Ethereum still sells itself as "Build unstoppable applications: applications that run exactly as programmed without any possibility of downtime, censorship, fraud or third party interference."
The reason everyone is piling on Ethereum is because it said "we don't need politics to sort out disputes - the code is the truth". And that turned out to be untrue. There was just a huge political campaign to do a hard fork.
So if it's just yet another politically managed currency, why even bother to use it? Anything fancy it can do you can also do with a Python script, and then you can solve your disputes in a court or with chargebacks instead of starting a campaign to hard fork.