3 ms·
> I'm afraid they are spending a lot of effort cargo-culting on the wrong things, while missing where the real challenge lies: How to deal with the inevitable
by vbuterin 13y ago
> I'm afraid they are spending a lot of effort cargo-culting on the wrong things, while missing where the real challenge lies: How to deal with the inevitable orders-of-magnitude increase in transaction size/complexity while preserving consensus-based distributed verification.
Umm... that's exactly one of the issues that we're cargo-culting about the most. There are two general categories of solutions to this problem: technical increments (ie. a better constant factor), and fundamental cryptographic upgrades (eg. the stacktrace challenge-response concept we have been talking about on our blog). The first category we are not yet doing because we are following the well established advice of "don't prematurely optimize". The second category, well, that's why we're thinking of ideas like distributed blockchain storage, clever algorithms to force more people to be full nodes, and challenge-response protocols. There is also another idea I was thinking of, which I'll have a post up over the next week or two.
In the long term, we are already beginning the development of a very widespread collaboration with academic groups to try to tackle the problems in cryptocurrency, and at this point we fully expect we'll end up releasing Ethereum 2 at some point in 2016 which would take a lot of new cryptography into account.
- nullc 13y ago> (eg. the stacktrace challenge-response concept we have been talking about on our blog) You wrote on your blog: > Altogether, what this means is that, unlike Bitcoin, Ethereum will likely still be fully secure, including against fraudulent issuance attacks, even if only a small number of full nodes exist; as long as at least one full node is honest, verifying blocks and publishing challenges where appropriate, light clients can rely on it to point out which blocks are flawed The fact that someone can extract compact proofs of an invalid state transition was pointed out by me years ago (e.g. https://bitcointalk.org/index.php?topic=96644.msg1064601#msg1064601 https://bitcointalk.org/index.php?topic=96644.msg1064601#msg...), and I believe I described it you personally in Mountain View. It's equally applicable to Bitcoin (though not implemented anywhere for any system yet). It's a bit irritating to see ideas from Bitcoin recycled as "innovations" in altcoins and incorrectly claimed as as not applicable to Bitcoin, especially when they're not even implemented yet. This one has a bunch of gnarly engineering issues that make it hard to implement. You end up with fraud codepaths that are virtually never executed, so how do you gain confidence that multiple implementations actually implement them consistently? The best proposal I'd had on this (from bitcoin-wizards) was to always produce two versions of a block, committed under a common root, one which has a random flaw, and then always kill it and select the right block using a proof. But thats kind of complex and indirect.
- vbuterin 13y ago> It's equally applicable to Bitcoin (though not implemented anywhere for any system yet). I don't recall you describing it to me, but it's likely you did and I didn't realize it was important at the time. Also, I never claim that challenge-response protocols are not applicable to Bitcoin; theoretically, we know that any scalability improvement that is applicable to Ethereum would also applicable to Bitcoin simply because you can implement Bitcoin as an Ethereum contract. Rather, I made the claim that Bitcoin _does_ not have full support for such protocols. I count myself among those who are skeptical that substantial changes to the Bitcoin protocol will ever be made, primarily because of the "changing an engine on the run" problem and the nasty political issues involved (see: the recent Counterparty spat). Cryptocurrencies are not sets of abstract ideas, they are protocols that are implemented in code today and have to be judged on their merits as they actually are. And Bitcoin, as it actually is, is not fully secure with a light client.
- nullc 13y ago> will ever be made And yet they've been made in the past. It doesn't require any hard forking or incompatible changes, just some additional messages which can be ignored by old implementations. The Bitcoin community has made one soft forking protocol change per year for several years and will almost certantly make one and possibly more this year. > Cryptocurrencies are not sets of abstract ideas, they are protocols that are implemented in code today and have to be judged on their merits as they actually are. As I noted, Ethereum doesn't implement this yet, if you'd implemented and worked out the gnarly engineering issues in actually implementing it I'd have credited you for that. But right now, it's just an idea. One which is equally applicable to Bitcoin and which was described by the Bitcoin as an ecosystem improvement for Bitcoin years ago. And not just as armwaving, I at least went as far as enumerating the things we'd need to do before I got mired in the problem of how do you make it not an extreme risk in the face of alt implementations— something which isn't solved even absent almost-never-executed anti-fraud code paths. It'll be super awesome to see you implement it, if you do. But it's hard to respect your good work when it results in a lot of people being misinformed about advantages because you've been sloppy about talking about the attribution. The end result of these is that you produce armys of technically unsophisticated people who believe that it's the gospel truth that Bitcoin can't do this.