6 ms·
Crypto has come a long way since Ethereum was first conceived and what was impossible only a few months ago is now 100% practical. Today there are A LOT of new
by Uptrenda 11y ago
Crypto has come a long way since Ethereum was first conceived and what was impossible only a few months ago is now 100% practical. Today there are A LOT of new techniques that allow us to largely implement decentralized autonomous applications on any blockchain (no matter how limited) - a fact I feel often gets missed out in all of the Ethereum hype.
If you have a lot a techniques like zero-knowledge proofs, homomorphic computations, multi-party computation, indistinishability (sic) obfuscation (not quite practical yet), and various threshold schemes - you will quickly realize we could basically already do everything that Ethereum was designed for from the start. In fact - a lot of the new crypto techniques make it possible to scale DAC applications even better than what blockchains would allow since you can implement a lot of crypto-application protocols outside of the blockchain and keep only the hash-locked payments on the chain (which I honestly think is preferable.)
It just seems to me like Vitalik largely invented Ethereum because he didn't want to bother messing around with all the crypto-hacking that's required to implement self-enforcing, autonomous contracts (which is half the fun.) My biggest problem with this is people act like this isn't possible with Bitcoin when we had working smart contracts (and special coins for smart contracts) before Ethereum even existed. Interestingly enough - there's even ways to make the answer to any computable problem the keys to unlock a Bitcoin payment which means if you structure your crypto-protocol right you can essentially implement any self-paying, and self-running corporation as a never-ending complex chain of future problems.
(I would speculate that it's even possible to build a universal turning machine on top of any bitcoin-style blockchain that can compute any problem off-chain and allow these computations to be proven and self-enforcing but that is a topic for future research.)
- cdetrio 11y ago> Interestingly enough - there's even ways to make the answer to any computable problem the keys to unlock a Bitcoin payment Sure, bitcoin script can in theory compute any computable problem (as can any turing machine). But it doesn't have native access to the data it needs, so pretty much any input you'd want to use needs to be put there by a trusted "oracle" (through a clever encoding into UTXO logic). For example, bitcoin script can't compare the amount of coins sent to two different bitcoin addresses, so you'd need to use oracles to do that [1]. In ethereum script it is trivial to do it on-chain (no oracles needed), since it was designed from the ground up for such use-cases (i.e. "smart contracts"). 1. http://bitcoin.stackexchange.com/questions/36229/bitcoin-script-for-a-competitive-crowdfunding-like-contract http://bitcoin.stackexchange.com/questions/36229/bitcoin-scr...
- Anonobread 11y agoBut you can port any and all features to sidechains or Enigma [1], and in doing so make them accessible to a much bigger market, denominated in BTC which is a more stable and proven unit of account. Or at least that's how the story is supposed to go. In theory, porting nice-to-have features to a larger audience results in more revenue and more overall societal benefit than starting a new scarcity race, which Ethereum has done, pitting investors against each other. [1]: http://enigma.media.mit.edu/ http://enigma.media.mit.edu/
- mymosh 11y agoI don't think so, because Bitcoin Script is not Turing complete.
- cdetrio 11y agoI've heard both arguments: (1) bitcoin script has no loops and so isnt turing complete; but (2) no loops is not a real limitation because the logic just be unrolled ahead of time and packed into a transaction. Ethereum script is said to only be quasi-turing complete because although it has loops, execution is metered by gas fees (functionally equivalent to bitcoin tx size).
- woah 11y agoI'm trying to figure out your angle here. Are you saying that ethereum isn't ambitious enough because it doesn't incorporate these fun crypto techs you mention? I would say that it's already an extremely ambitious project so it's good that they didn't bite off more than they can chew. Or maybe you are trying to say that this could have been done on Bitcoin? Maybe, but whatever you try to shoehorn into Bitcoin's crippled contract pseudolang is going to be an order of magnitude simpler in a language that is Turing complete.
- chejazi 11y agoHe's saying Ethereum does similar things to Bitcoin, but the techniques to do them w/ Bitcoin were not understood from the get-go.
- nullc 11y agoThey've even been understood for years too... For example, today I participated in a demonstration of trustlessly, privately, and securely selling information (a 16x16 sudoku solution) via Bitcoin: https://bitcoincore.org/en/2016/02/26/zero-knowledge-contingent-payments-announcement/ https://bitcoincore.org/en/2016/02/26/zero-knowledge-conting... (But you probably won't read about it on HN; no profit in promoting it. </cynic>)
- whypeoplepeople 11y agoThere were tons of techniques to preserve home-made foods - canning, vacuum drying, salt curing, fermentation, etc. - and then someone invented the fridge. What is widely adopted? As an average developer, I can launch a smart contract with 20 lines of code in Ethereum. I have no idea in earth how to even start writing those things on classic blockchains, let alone prove they work as I expect.
- ApplaudPumice 11y ago> I can launch a smart contract with 20 lines of code in Ethereum. Have you done this before? I tried to learn Ethereum (as an average developer) but it was over my head.
- jarsin 11y agohere is the a basic example. https://ethereum.org/greeter https://ethereum.org/greeter more in depth tutorials exist on ethereum.org
- bryanrasmussen 11y agoas far as the language goes - that is a very verbose "hello world". does the level of verbosity decrease as you get into more advanced applications?
- whypeoplepeople 11y agoNot really, but dApps aren't supposed to have huge source codes. Much more important is having efficient and correct code, because each instruction your contract runs has a cost. If that really annoys you, there are other languages that can be used to build dApps, and more certainly to come.
- knightofmars 11y agoI think a better comparison would be "commercial mass production of preserved foods vs making them at home". For example, it is easier to buy a can of beans for cooking than it is to grow your own beans, can them, and then use them for cooking. The purchasing being analogous to using Ethereum and the growing and home-canning being analogous to classic blockchains.
- vonklaus 11y agoInteresting. On a deep technical level I wouldnt profess to know how advanced or secure this is, but signaling from others in the space snd the interviews with the core dev teams I watched seem to suggest it is a good working model gor distributed applications. Would you mind expanding on your point a bit and if possible provide a link or 2 at a comprehensible level for someone who is mot a mathemetician. I don't want to push back here as I have to reason by analogy not first principles here but: * rust/go etc took a fairly long time to go into production. * developing tooling and ecosystems and implementations around complex ideas is difficult. * self enforcing contracts (my lack of knowledge may betray me) are just another name for "smart contracts"? For a contract to be made you need a transaction and a condition to strike. How is this achieved in this new model as an input/condition is unknowable and must bd provided in advance to do anything interesting, e.g i pay you 1 dollar in 5000 seconds vs. the election outcome. What tradeoffs were made erroneously on ethereums part. All these are to say, honest question, how has the field evolved enough in 2 years that it is not only leagues better, but peoduction ready? Could you explain at a (space doctors big idea) level how these concepts work? Super interested to check out something using/working on it
- eco 11y agoThat all sounds very exciting. Are there some implementations of this stuff we can look at?
- choicewords 11y agoWould like to see some of these techniques as well. Or just I just hangout in BTC irc more?
- kanzure 11y agoWell, bitcoin IRC or bitcoin slack- http://slack.bitcoincore.org/ http://slack.bitcoincore.org/ which has an IRC bridge to freenode (read-only), plus read-write slack channels.
- TD-Linux 11y agoHot off the presses: https://bitcoincore.org/en/2016/02/26/zero-knowledge-contingent-payments-announcement/ https://bitcoincore.org/en/2016/02/26/zero-knowledge-conting...
- micwawa 11y agoAre people still developing Counterparty? Is this what you're referring to?
- brighton36 11y agoThey are. And, I'm not sure if that's what he's refferring to. his claim is fairly dubious, because blockchains require energy, and you don't just snap your fingers and acquire that