Earlier quoted context omitted.
These mistakes are predictable and inexcusable. The Ethereum developers sold a vision of smart contracts, where the code is the contract. However, their hubris lead to them attempting to implement a complex language, instead of starting the endeavor with a small, simple, verifiable language. Similarly, their belief in their own infallibility lead them to write code that is not tested, and to create capabilities that…
I like your point about language complexity. Can you point to a language that would fit the simple and verified criteria? I don't really follow the subject, so it would be interesting reading.
153k Ether Stolen in Parity Multi-Sig Attack
401–410 of 754 posts
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#402Earlier quoted context omitted.
The DAO held nearly 14% of all ethereum in existence, 153,000ETH is less than .2%. 153,000 / 93,405,120[0] = 0.001638025838 [0] https://etherscan.io/stat/supply
And there's more Ethereum now. The DAO was a ~$50 million fraud. This was a ~$30 million fraud. Obviously this is totally different and there's nothing we can do about it and it's just fine. People should have known better than to use parity with this bug in it.
Says it all, I think, whether sarcastic or not.
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#403Earlier quoted context omitted.
No, being Turing complete makes it impossible to be 100% secure and trustworthy, by definition. It is possible to have trusted contracts, iff their logic is (mathematically) proven. But the VM can't make contracts more secure by itself.
> It is possible to have trusted contracts, iff their logic is (mathematically) proven. Suppose a non-Turing-complete language were used instead. Now, imagine a contract that is highly complex. If a layperson decides to trust that contract without reading the code, does it matter whether the language used to implement the contract was Turing-complete or not? I'd argue that trust of contracts is pragmatically more of…
Um, yes? Literally the point of weaker languages in this context is that they can be statically provable.
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#404Earlier quoted context omitted.
> if the program does not terminate within 30 seconds? As I attempted to say in my previous comment, undecidability[1] isn't limited to deciding if a program will halt (or even the weaker question of if it will halt in a given finite time). Recursively enumerable[2] languages that require a Turing machine to automate have an intrinsic complexity (i.e. any Turing-complete language). This isn't a "work harder to solve…
Very Interesting. I will read those links. What if Ethereum offered a non-turning-complete subset of Solidity (that included formal verification) which could optionally be used in smart contracts. Would this cause you to view the platform differently?
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#405Earlier quoted context omitted.
I would add one more point: even if both participants in a contract fully understand and agree to the contract, the contract could still be thrown out under contract law for many reasons -- unconscionability, agreement to commit a crime, etc. If Ethereum becomes popular enough, one day the participants in an Ethereum contract are going to sue each other, and the judge is not going to be impressed by arguments that th…
If we enter a contract that we all know is intended to be immutable, why would a judge not enforce that? I can understand buried and obfuscated immutability clauses, but if the parties know exactly what they're getting into, the parameters of justice are contained.
But that's basically obvious to anyone not hinging their personal identities on peddling technocratic revolution.
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#406Earlier quoted context omitted.
Dollars don't purport to have a blockchain or immutable transactions. Ethereum does. Ethereum needs to live up to the standards it has set for itself.
Oh, yeah, I forgot. Dollars are much better; a central bank (actually, any bank) can create arbitrarily many of them and flood the other banks and the market with cheap money, causing things like the subprime crisis. Much better than crypto currencies.
Inflexibility is not an advantage unless you're dealing with formally describable, proven systems. Human behavior and economics are not.
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#407Earlier quoted context omitted.
Because the cryptocurrency space attracts only the brightest minds .
i know that you're not really serious when you generalize against all of us crypto simpletons, but anytime theres a stupid amount of money on the table people are bound to rush to pick it up. and that means mistakes. the work being done on public blockchains is unlike anything else done before. You don't have he luxury of keeping your db behind a vpn running on a vm platform secured and maintained by the worlds large…
Here's the thing: banks and major retailers can't get hacked. At least, not in the sense you're using "hacked".
When Target's credit card systems were compromised, resulting in the CEO resigning and and about $300M in costs to the company to deal with the breach, not one customer lost a penny.
When $171M from Union Bank of India was fraudulently wired via NYC to two Cambodian banks and one Thai one, they got all the money wired back within a day.
The traditional banking system is designed to be unhackable, because the numbers on computers are not authoritative. They're a cache, and they're periodically reconciled, but humans (and other computers!) will look at the cache during reconciliation for obvious attacks like these. A bank can call up another bank, or a retailer can call up a credit card company, or whatever, and say, "Hey, these transactions were fraudulent, please reverse them," and it'll happen. Target did that. Union Bank did that. A hacker can get to some bank's MySQL database? Sure, whatever, it's not what matters. Definitely it's a greater headache than if they got to the bank's website, but at the end of the day it's exactly as fixable as hackers getting to the website.
There are a lot of bright people trying very hard and putting honest work into a problem that simply doesn't need to be solved and shouldn't be solved: making the computers authoritative. When you do that, you're suddenly hackable. When you do that, of course $16M gets actually stolen irrevocably from time to time, no matter how bright you are or how honest your work is.
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#408Earlier quoted context omitted.
Dollars don't purport to have a blockchain or immutable transactions. Ethereum does. Ethereum needs to live up to the standards it has set for itself.
Oh, yeah, I forgot. Dollars are much better; a central bank (actually, any bank) can create arbitrarily many of them and flood the other banks and the market with cheap money, causing things like the subprime crisis. Much better than crypto currencies.
Printing money was part of how we got out of it. https://en.wikipedia.org/wiki/Quantitative_easing
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#409Just thinking hypothetically here as a coin novice: could a bug like this theoretically have been implemented intentionally? If the code is the law, and the code is sufficiently complex, couldn't it be feasible to dupe people?
Re: 153k Ether Stolen in Parity Multi-Sig Attack
#410Here's the root error I believe: https://github.com/paritytech/parity/blob/master/js/src/cont... The initWallet function should have been marked internal, but was instead not marked. Unmarked functions default to public in Solidity, so anyone can call that function and reinitialize the wallet to be under their control
I can literally feel how Ethereum changes the law. I mean, seriously, no need for lawyers anymore. On ethereum it's is simple: You got fucked, live with it. "Bad faith? It's the code, didn't you read it?"