10 ms·
A tale of two cryptocurrencies: Ethereum and Bitcoin’s ongoing challenges
- Aelinsaar 10y agoBitcoin's challenges seem to be a matter of current implementation, while Ethereum just seems like a bad idea, implemented as well as a fundamentally bad idea could be.
- heliumcraft 10y agoEthereum is a platform for decentralised applications, it has far more pratical use than a simple blockchain like Bitcoin, but far more risks as well. Give it a chance, it's just starting, there is a lot more development to do, don't throw it away the first bad thing that happens. Can you imagine if the early internet architects thought this way? "Oh this computer in the network got hacked, lets give up on this whole internet thing, it's a fundamentally bad idea". There will be ups and downs. IMO, right now Ethereum is the best chance we got at a truly decentralised web.
- duaneb 10y agoI'm struggling to think of an application I'd prefer to be on Ethereum over Bitcoin. There is simply too much trust involved in distributed turing complete programs for the idea to be practical in the short term—what kind of fool would bet on a bug-free contract with their money?
- heliumcraft 10y agoIt's not about the money, it certainly is with Bitcoin, but Ethereum goes beyond that. There are tons of possible applications (decentralized DNS, decentralized forums, marketplaces, etc..) that do not involve money in the same way a DAO does. As Vitalik put it: "An important point about this project is that we see ethereum as being a platform first. If you approach it from the perspective of ether being a coin, with all the smart contract stuff being just bells and whistles on top to make the coin more valuable, you are going to have a hard time understanding this community; it's really all about the applications first and foremost, and ether is there simply as a token to facilitate payment of transaction fees and incentivize mining."
- wcummings 10y ago"ether is there simply as a token to facilitate payment of transaction fees and incentivize mining" Translation: Ether is there simply for our pre-mine profits :)
- heliumcraft 10y agoBy pre-mine you mean crowdfunded to fund development ofc... If there is a way to do something like Ethereum or Maidsafe WITHOUT the freaking money I would LOVE to hear about it. It would be nice if we could work on this type of technology without all the toxicity of get-rich-fast trolls and the silly tribalism.
- wcummings 10y ago>If there is a way to do something like Ethereum or Maidsafe WITHOUT the freaking money I would LOVE to hear about it. Bitcoin started with a bunch of people running some hobbyist cryptographer's buggy cpp to generate worthless tokens. You don't need millions of dollars to build free software.
- duaneb 10y agoOk, I wouldn't attach anything of value to such a rigid contract system—money is far from the only pitfall here. There is simply no benefit to me over existing arbitration. At least with DNS I can contact my provider if someone steals my domains.
- heliumcraft 10y agoIn terms of control the contract can as centralized or as decentralized as you code it to be, with the difference that it runs on a truly decentralized platform. It does goes both ways as well, if you can contact your provider to get your stolen domains back, then your local dictator can also take them away from you because of something you said.
- 10y ago
- timmytokyo 10y agoThe idea of smart contracts is a good one. The design of this particular implementation (Ethereum) is a bad one, mostly for the reasons identified in the original post. The complexity -- and more importantly the undecidability -- of the contract language ensures that ethereum will never take off as a working solution. People will never be able to trust that a DAO-like attack isn't lurking just under the surface of their contracts.
- heliumcraft 10y agoWell that's the same with any software and service isn't.. If I put my company precious data on AWS, there is a chance it will get hacked, it's a matter of taking precautions and trade offs. We need to think of better tools & practices to secure contracts. It's still all new, there will be issues, there will be improvements. The end goal is worth it IMO. My main Interest in Ethereum (and Maidsafe) like most developers in the community is not so much money but the dream of having a truly decentralised web one day. Impossible? maybe, but I'm willing to try.
- nickparker 10y agoAs I understand it: It's true of any platform, but Etherium is at a far higher risk of getting hacked because the language is Turing complete. There could conceivably be a smart contract blockchain with a simplified language that was still capable of most of Etherium's good sides with the safety net of static verification tools.
- heliumcraft 10y agoALL general purpose programming languages (C++, Java, etc..) are Turing Complete and this is an essential feature for creating decentralised applications (or any software really).
- PeCaN 10y agoUm, no, that's just factually incorrect. You can do very, very many useful things without Turing completeness. You cannot be fully general, but there's active research on how far you can get. Restricted subsets of query languages like SQL and Datalog are perhaps the most common (though more or all SQL implementations are Turing complete) and indeed quite useful. I can easily imagine a system built on a non-Turing complete logical query language that defines data and rules for presentation. You could get pretty far with that. You can't create _any_ application, but calling Turing completeness “essential … for decentralized applications” is incorrect. It's essential for a _subset_ of applications that require Turing completeness. I've been saying ETH is broken for a while. Its computational ability means contracts _cannot_ be formally verified. This is why I didn't buy into the DAO, and sure enough there's a bug in the DAO (ironically recursion related).
- nickbauman 10y agoI upvoted you because I like your spirit. I'm very wary of cryptocurrencies in general because I think they're trying to solve a problem based on a flawed understanding of money.
- dkarapetyan 10y agoI think you believe a little too much. There are far better alternatives out there. The first thing that comes to mind for a truly decentralized web is IPFS. As for comparisons to the internet you're giving Ethereum too much credit and not enough credit to the original architects of the internet. Those folks were geniuses and academics, not web 2.0 up and comers. There is a world of difference between the two. One kind can do rigorous and scientific thinking and the other one can't and instead cobbles together a VM for a turing complete language to perform arbitrary computations in an untrusted, bug ridden, informally specified environment. As Alan Kay once said > The Internet was done so well that most people think of it as a natural resource like the Pacific Ocean, rather than something that was man-made. When was the last time a technology with a scale like that was so error-free? The Web, in comparison, is a joke. The Web was done by amateurs. -- Alan Kay. Ethereum is of the web kind. It's amateurish.
- aminok 10y agoNothing that provides people with optionality is a "bad idea". Trial and error, and development, will produce ever better (and more secure) applications on Ethereum.
- beefield 10y agoIn my view bitcoin's challenges are a bit deeper than just the implementation. What these challenges are, depends a bit what you think bitcoin is: -as an investment, bitcoin is fundamentally a ponzi scheme. someone may argue that it is a challenge only if you are too late in the game, but for me, that is a reason I am not touching it as an investment. -as a money (store of value and measure of value), there is a fundamental issue that there exists no mechanism whatsoever that would stabilize it's value (against neither a typical consumption basket, nor USD or any other currency) -as a currency (means to make transactions). You might argue that it is only about implementation that the network can handle a couple of transactions a second. But a widely used currency should handle _lot_ more than that. Assuming one billion transactions a day means roughly one transaction per person per ten days globally. Every single byte you need to store a transaction implies a gigabyte of data per day into the however implemented network. I would call that a challenge beyond just implementation.
- gnaritas 10y ago> -as an investment, bitcoin is fundamentally a ponzi scheme. I don't believe you know what a ponzi scheme is if you think this because it's not remotely true. From google: a form of fraud in which belief in the success of a nonexistent enterprise is fostered by the payment of quick returns to the first investors from money invested by later investors. There is no fraud in bitcoin, no phony investment with lying and paying out returns from later investor money. Absent fraud and a nonexistent fake "investment", something isn't a ponzi scheme. Early investors making money from the rise in value of something does not make something a ponzi scheme, that's how all investments work. There is nothing fraudulent about bitcoin and thus it is not remotely a ponzi scheme. > s a money (store of value and measure of value), there is a fundamental issue that there exists no mechanism whatsoever that would stabilize it's value (against neither a typical consumption basket, nor USD or any other currency) Absolutely true, but by design, they don't want a stable value, they want a fixed amount of currency and want value to fluctuate via supply and demand. Bitcoin is inherently anti-keynesian by design. This is why it'll never be more than a commodity.
- TylerE 10y ago
- EthanHeilman 10y ago>So really “Segregated Witness” is about segregated signatures. Why the wacky name with the word “witness” then? I’m not sure… I think Bitcoin people just love inventing jargon. Witness is standard term in cryptography, Bitcoin people did not invent it. For instance a signature can be a witness to the fact that you hold a particular private key[0]. >I am also confused about the security properties of the Lightning Network. What happens when one of the hubs gets popped? Can someone steal all of the unsettled transactions? Suddenly this proposed scaling element starts taking on the security properties of Bitcoin exchanges, which are notorious for being popped. If "a hub gets popped" the attacker should be not be able to steal the unsettled transactions. If we were trusting the hubs, like say how we trust coinbase, the LN would be much much easier to design. [0]: https://en.wikipedia.org/wiki/Proof_of_knowledge https://en.wikipedia.org/wiki/Proof_of_knowledge
- sigil 10y agoI tried to read and understand the Lightning Network paper recently. Glad I'm not the only one: If I’ve gotten anything wrong here, it’s because the Lightning Network is ridiculously complex: the paper is some 57 pages written in blockchainiac gobbledygook terminology. I’m the sort of person who reads academic papers for fun, and can attest that this is not a paper I remotely purport to understand or enjoyed reading. I think there are very few people on Planet Earth who have read this paper and understand it. If you're one of these Very Few People and you're reading this, a question: do Lightning's channels only reduce on-chain transaction volume in the case of recurring payments (eg subscriptions)? What is the anticipated savings if the Lightning Network is rolled out -- how much of current transaction volume could be handled in channels?
- CIPHERSTONE 10y ago1.21 gigawatts via the lightning network flux capacitor.
- DennisP 10y agoI don't know Bitcoin well enough to understand the LN paper, but I've read articles on the basic ideas and think I understand enough to implement LN on Ethereum, where it's much easier. If channels were not networked together, then they'd only be good for recurring payments. But there's a trick that lets you network them, so A can have recurring payments to B, and B can have recurring payments to C, D, and E, and now A can pay all the others via his one channel to B. And it's done in a way that prevents B from being able to run away with money intended for C,D,E.
- RustyRussell 10y ago> LN on Ethereum, where it's much easier. Genuine question? What makes it easier? Thanks!
- zmanian 10y agoBitcoin script provides a no elegant way to invalidate old states. There are various solutions to this in lightning network tx but they end up requiring actively watching the network in case an old state is broadcast. If you have a better mechanism for invalidate the previous state, the whole system can be massively simplified.
- aminok 10y ago>I am also confused about the security properties of the Lightning Network. What happens when one of the hubs gets popped? Can someone steal all of the unsettled transactions? Suddenly this proposed scaling element starts taking on the security properties of Bitcoin exchanges, which are notorious for being popped. No, the whole point of LN transactions is that you do not need to trust intermediary nodes, or 'hubs', as he calls them. Every transactor has a copy of a valid Bitcoin transaction that will settle payments owed to them and these debts are collaterized by lock-timed money on the blockchain. It is theoretically totally secure.
- pg_is_a_butt 10y agoSTOP WITH THE ETHEREUM POSTS. it is dead. let it die. all you nerds blew 150M on nothing. get over yourselves.
- alcio 10y agoTallying pages, flowcharts and formal specifications is no basis for scientific evaluation. Coming from a Bitcoin background, I found the Lightning paper quite a refreshing read compared to pure academia papers. The ideas behind are very clever, several implementations are under way and implementors are building interoperability standards along the way (https://github.com/lightning-core/lightning https://github.com/lightning-core/lightning).
- j1vms 10y agoSomewhat off topic, could someone post a list or examples of non-trivial (or relatively, non-trivial) decidable languages that have implemented compilers/interpreters? I should say no requirement on supported hw architectures, nor currently active development/maintenance.
- grapevines 10y agoAgda is a programming language where "each program in it must terminate and all possible patterns must be matched. Without this feature, the logic behind the language becomes inconsistent, and it becomes possible to prove arbitrary statements." Since all programs terminate, reasoning about arbitrary properties about said programs becomes decidable.
- j1vms 10y agoThanks for the pointer. It appears that proof assistants [0], like Aqda as you mentioned and one of its influences Coq [1], have the properties I were describing and indeed are examples of total functional programming [2]. [0] https://en.wikipedia.org/wiki/Proof_assistant https://en.wikipedia.org/wiki/Proof_assistant [1] https://en.wikipedia.org/wiki/Coq https://en.wikipedia.org/wiki/Coq [2] https://en.wikipedia.org/wiki/Total_functional_programming https://en.wikipedia.org/wiki/Total_functional_programming
- irascible 10y agoEtherium sounds like a giant broken paxos implementation.
- mrep 10y agoCan someone explain to me how these decentralized systems make our current system more economically efficient? I just cannot see why anyone would actually use it outside of the illegal market.
- mhluongo 10y agoA couple benefits cryptocurrency brings over the traditional finance system, off the top of my head. * democratic access. I don't need to ask Visa, PayPal, or any other payment processor to accept payments online. There are plenty of businesses underserved today. Some of these are in "gray" areas, others aren't. * disintermediation of middle-men. There are tons of rent-seekers in finance (eg, banks protected by a regulatory moat). An open system that competes with them will lower prices for everyone.
- brokenmachine 10y agoFor a start, I'm going to hazard a guess that you have never sent money to family overseas. With bitcoin you can transfer money internationally for cents and in seconds.
- vectorpush 10y ago> I'm going to hazard a guess that you have never sent money to family overseas. Bitcoin is utterly useless in this regard. Converting bitcoin to usable currency is very impractical in most locales and nearly impossible in others (no, meeting up with strangers to exchange bitcoins for cash at a 20% markup does not count).
- brokenmachine 10y agoMaybe useless if you need to convert it to paper dinosaur money at the other end... No middlemen taking a cut at every step is one advantage of Bitcoin, and very fast international transfers is another. I think of Bitcoin as an awesome idea for a replacement of the current corrupt system, not something that integrates well with it. It is not perfect but it's certainly better than the current system. Might be unrealistically idealistic but I hope a cryptocurrency succeeds. Anyway, it is still possible for people to transfer Bitcoin between themselves with no middlemen.
- darawk 10y agoThe whole blocksize debate is pretty strong evidence IMO that bitcoin's leadership is completely broken. They took what was a trivial to implement, obviously correct (in the sense of program correctness) fix: double the block limit. And turned it into two complicated solutions that do little to address the underlying issue. It's hard to imagine a more clearcut example of exactly the sort of bad engineering practices that will doom any project. Ethereum on the other hand has serious issues, but they seem fixable. If Vitalik is willing to seriously rethink the design of Solidity and make greater efforts towards formally verifiable contracts, and then they get proof of stake working, I think there's some chance it could actually achieve some of the hopes of cryptocurrency enthusiasts. Unfortunately i'm not sure how willing they are to modify the language to make it more verifiable.
- riprowan 10y ago> They took what was a trivial to implement, obviously correct (in the sense of program correctness) fix: double the block limit. Not to mention, 2MB was a compromise from 8MB which was a compromise from 20MB. Where's the compromise from the other side?
- darawk 10y agoYa. It's absolute silliness. Rushing in these complicated solutions just to avoid some half-baked slippery slope argument about the block size. You don't need to keep raising the block size forever, just do it until you have a good, clean solution to the scaling problem.
- riprowan 10y agoAgree about slippery slope. There has been so much misinformation and propaganda spread that some people are now convinced that a fork to change any consensus rule could lead to the change of any consensus rule - even the 21M coin cap. The result is that the community has become polarized and toxic over something that ought to be noncontroversial.