10 ms·
Ask HN: Do we need fully decentralized systems?
Proponents of cryptocurrencies like Bitcoin and Ethereum argue that we need to have fully decentralized systems. While these systems are operational and decentralized, they have an abysmally low performance. At the moment Bitcoin can only process 3 transactions per second, and Ethereum can only handle 15 transactions per second globally for all applications.
At the same time, we already have less decentralized systems like Ripple (for payments) and NEO (for decentralized applications and smart contracts). The performance of these protocols is orders of magnitude higher than the performance of fully decentralized systems. For example, NEO at its current state can process around 10,000 transactions per second.
It is hard to speculate if Ethereum and similar systems will ever outperform other blockchains, but it can be reasonable to assume that fully decentralized systems will always have lower performance since they need to provide stronger guarantees. In this case, if less decentralized systems will have higher performance, are there any practical reasons to strive for full decentralization?
- coralreef 8y agoSociety doesn't really "need" blockchain technologies... That is, until the government screws up the economy and something like hyperinflation occurs. Or some system gets hacked, and information or money gets leaked/lost. The appeal in Bitcoin/crypto isn't capacity or speed, its security (from the state, from bad actors, etc.) That has a very high-value proposition and is worth investing in. In time, I think scaling solutions will make crypto much more practical.
- fastdev 8y ago> Or some system gets hacked, and information or money gets leaked/lost. I am not sure how blockchain/decentralized technologies allow protecting from hacks or money loss. They seem to be as susceptible to hacks as non-decentralized systems (e.g. the DAO) and lots of crypto money was lost in many different ways. > its security (from the state, from bad actors, etc.) This is right. Decentralized systems should give more security, but what about a cryptocurrency like NEO? It is significantly faster, but many criticize it because it is somewhat centralized (selected nodes voting for transactions instead of mining). Does it provide less security than Ethereum? If yes, in what cases is this difference critical? > I think scaling solutions will make crypto much more practical. This is true as well. But it seems that no-so-decentralized crypto (NEO, Ripple) can give practical benefits and provide higher performance. If Ethereum can scale, cryptocurrencies like NEO can scale as well. Are there any practical cases when using these solutions would be not enough, and developers would have to resort to a potentially slower but fully decentralized network?
- coralreef 8y agoRE: decentralized network security The 51% attack, or control over the network by a state or group of actors, basically destroys the integrity of the blockchain, as this group can now decide to move money from any account, restrict transactions, etc. The more likely a 51% attack can occur (via centralized systems) then the less secure we can call that network.
- hobofan 8y ago> as this group can now decide to move money from any account That's not accurate. They can double-spend, which can have equally bad effects, but without a way to forge transaction signatures (which is only possible with a broken cryptohash function), they can't just drain accounts.
- threeseed 8y ago> They seem to be as susceptible to hacks as non-decentralized systems Actually far more so. Banks can afford to spend whatever it takes to secure their infrastructure. Open source projects can't. Likewise banks and other financial services are subject to (at least in most countries) stringent regulations. Open source projects aren't. And in countries in Australia we have consumer protections which protect the consumer in the event of fraud, theft or security beach (irrespective of who is at fault). Unlike say Bitcoin where we have seen staggering amounts of money, "go missing".
- coralreef 8y agoBanks can afford to spend whatever it takes to secure their infrastructure. Open source projects can't. Isn't that a benefit of the blockchain? Since its inception in 2008, Bitcoin's database has never been hacked. They don't need to spend money on security, because mathematics is the security. The chain's integrity is powered by decentralized nodes and proof of work. At scale, while Proof of Work is increasing in cost, it is still probably cheaper and more secure than the aggregate cost of securing money at banks, servers, overhead, etc. And there are opportunities to make it cheaper through concepts like Proof of Stake.
- FLUX-YOU 8y ago>Or some system gets hacked, and information or money gets leaked/lost. Blockchain is worse for theft because someone can't arbitrarily pull money from a bad account and put it back. The amount of security you also need to take on to protect your private key is a vast increase from what you need to currently do for banks.
- coralreef 8y agoWell, depends on the context of "theft". A government could freeze your bank account and seize your assets quite easily, with no recourse. They can't do that with crypto. But yeah, the immutability of the blockchain has its tradeoffs.
- threeseed 8y agoSure but most people aren't getting their assets seized. And in that situation even if you had your assets in Bitcoins the government can still seize them if you've kept a record or wallet somewhere. Likewise if you're a person who is in the business of getting your assets seized then money is probably the least of your worries i.e. you're quite likely to be facing jail time.
- coralreef 8y agoMost people aren't getting their assets seized, that is until a national crisis occurs, ex. Greece: https://www.youtube.com/watch?v=9gW2UnmVuwI https://www.youtube.com/watch?v=9gW2UnmVuwI
- woah 8y agoPayPal is one of the few centralized ways to receive money over the internet, and the web overflows with stories of people who have had large sums frozen for a very long time.
- wellboy 8y agoThat's why Bitcoin has just implemented the Lightning Network and Ethereum is implementing Sharding and Plasma. Lightning is projected to be able to maintain 50,000 TPS in practice and billions of TPS in theory. Furthermore, PoS systems such as Nano and IOTA aren't really more centralized than PoW systems such as Bitcoin and Ethereum, since only 6 entities possess more than 51% of the hashing power in Bitcoin. That's definitely more centralized than Nano or IOTA. That's also the reason why Ethereum is moving to a PoS/PoW hybrid. In a nutshell, near instant transactions with very high scalability and a very high degree of decentralization are already here(Bitcoin, Nano, IOTA). However, these technologies have not yet proven themselves and need to show their resilience against black swan events and hacks of all kinds. We will see the results within the next year.
- paulsutter 8y agoWe’re just learning how to build decentralized systems. It’s a difficult challenge and most of the current attempts will fail, but some will succeed. Meanwhile centralized systems can solve many practical problems. The two approaches are not in opposition to each other. Are you trying to solve a practical problem today, or are you trying to build a very challenging zero-trust system of tomorrow?
- jchrisa 8y agoBitcoin / Blockchain are not distributed in one important regard. A truly distributed currency would allow one to transact while offline, and allow merging subgraphs of transactions, etc etc. Bitcoin chooses consistency over availability. Real world commodities can always be transacted, regardless of network connection.
- return1 8y agoi think nano/raiblocks currency can do that. and there may be others too however what you are asking is not a requirement - all online transactions will wait for an internet connection before actions can be taken, and this is true even today for physical goods - the paperwork must match before products can be moved.
- baddox 8y agoAFAIK, you can make offline transactions with parties you trust to not double spend, but it seems impossible by definition to have a distributed digital currency that can prevent offline double spends.
- return1 8y agoTorrents were fast - they still are if you can use something like popcorn time. What about upload speeds? They are universally awful - that's an impediment to decentralization and something that should change.
- megaman22 8y agoThe erosion of the torrent ecosystem over the past decade is a little sad. Although it's mostly because the legitimate services have been slowly taking the pants off their heads and making it more convenient to actually pay them for their content.
- return1 8y agoi think it's because isps etc became way more aggressive on piracy. still the system is there, waiting for something like a youtube failure to pick up the speed.
- arisAlexis 8y agoNEO will be fully decentralised at some point according to roadmap with voting for node operators. It will still be faster by design and its somewhat current centralised state is not the reason of its speed.
- CryptoPunk 8y agoNEO will not be fully decentralized. First of all, it is transitioning to Delegated Proof of Stake, which by design relies on a set of trusted third parties to establish consensus. For reference, the entire purpose of the original Bitcoin blockchain design was to obviate the need to rely on trusted third parties. Second, its implementation of DPOS will have a centralized gatekeeper which approves who can run for the position of delegate, after verifying their identity and that they are a legal entity.
- arisAlexis 8y agoyes it has gatekeepers. All POS systems have them but true Delegated is more controlled but since NEO holders can vote no single person/entity can take the sysyem downor alter transactions which is the whole idea
- bitwize 8y agoOne of the visions that tech people (including people who should know better, like Eric S. Raymond) like to masturbate to is that of a fully decentralized internet, entirely supported by mesh networking with short-range radio transceivers in everyone's PC/cellphone/tablet/other. It'll never happen, and the few times it's been tried, scalability, throughput, and reliability were all HUGE issues. Decentralization introduces friction, because you have to expend bandwidth/energy just looking for peer nodes to talk to, handshaking with them, determining optimal routes through the ad-hoc network, etc. All of this is Done For You in the hub and spoke/backbone model of a centralized network. And that's not even taking into account the problems of available spectrum and interference in the wireless mesh networking case.
- CryoLogic 8y agoI've read dozens if not hundreds of threads (on HN) about the benefits of decentralization. Can some of you give me the run down on the benefits of centralization? I think that discussion needs to happen as well for both discussions to be valid.
- legionof7 8y agoI'm pro-decentralization for a lot of things, but one big benefit of centralization is speed. It's a lot easier for one "node" to change something than a whole system. A real-world analog would be like a dictatorship vs a democracy. The dictatorship can make faster decisions but the democracy often makes better decisions.
- gitgud 8y agoI think one of the reasons decentralisation makes better decisions, is that every node has equal say in the decision. Whereas a centralised system may not ignore a lot of the nodes when making a decision.
- fastdev 8y agoIsn't this also its biggest drawback? If every node has equal say we need to have additional complicated logic to ensure consensus, while in a centralized system we do not need to this, since a centralized system is a source of truth and the only writer? The same logic applies to less decentralized systems like NEO that have a predefined set of voting nodes. Less nodes, means that we need less effort to achieve consensus, hence higher performance. So the question is: in what use cases truly decentralized systems cannot be replaced with not so decentralized systems?
- gitgud 8y agoPrecisely, centralization provides a simple architecture for the system. However, since all the power is concentrated to one "source of truth", it can lead to unfair decisions for the rest of the network. Decentralized systems are ideal went you want to ensure there's fair decisions for the whole network. It's much more complicated to build, but worth it in some cases eg; crypto currencies, governments etc. Also it's not strictly a black and white categorization, systems can have levels of decentralization; eg: the internet
- andreasklinger 8y agoDecentralized systems allow you to formalize market dynamics. Eg how selling/providing works. Through this you can create marketplaces to which everyone can connect to but nobody can leverage their own position to change the rules. A (naive [in details] weak) example i regularly use is electricity: Imagine you own solar roof panels and produce more electricity than you need. You want to sell it back. But you want to sell it at the highest possible price to the best payer. The centralized concept is that you sell it to your main provider and hope they pay the best price (or that your are able to move cheaply/quickly enough). Or that you sell it to a intermediary (or price-comparison service) that hopefully has the lowest rate (or that your are able to move cheaply/quickly enough). The decentralized approach to this is to announce the sale on the network/market and pick the best offer.
- jacoblambda 8y agoWith regard to stuff such as decentralisation of electricity I find it an interesting topic to try and formalise a method of determining how to support all the necessary infrastructure. For example, a flat tax on transactions would likely not work well. Alternatively could you base the tax on the regions or even the specific routes taken to transmit the power. With that, if you were basing fees on the routing, obviously rural and long distance routing would be penalised. How does one compensate for that and guarantee that low value infrastructure(rural) is properly maintained? Additionally, how would such a system address determining new infrastructure additions?
- andreasklinger 8y agothis might be a too complex topic to discuss properly here imo you address two things here very well - who pays for infrastructure - how do you do governance imo the second one could be solved if you decided how you want to do the first one.
- fastdev 8y agoElectricity marketplace is a good example and is commonly mentioned as a killer-app for blockchain technologies. But what technology would you use to implement this marketplace? Would you use a public, permissionless blockchain like Ethereum or should we use a private blockchain? There are private blockchains like JP Morgan Quorum (https://github.com/jpmorganchase/quorum https://github.com/jpmorganchase/quorum) that is based on Ethereum software and allows to have >10K transactions per second. These private blockchains use different consensus methods that are much less decentralized than public Ethereum, all participants are known, and access to the network is restricted. Would a private blockchain be a better fit in this case? If you would a public blockchain, could you elaborate why?
- chubot 8y agoI'm predisposed toward decentralization and personal control, but I have to admit centralization has benefits. It depends on the situation / market. A concrete example is AirBNB vs. craigslist for apartment bookings. I'm going on a trip to the east coast for a few months (from SF). Now craigslist has existed for a long time, and in theory I could book an apartment I found on craigslist for a month. Indeed, I looked on craigslist. But I've been advised not to do that, for reasons of trust. But I'm comfortable doing it with AirBNB, since I've used them before and had more or less good experiences. They do provide some service in case things go south (last minute cancellations, etc.) (And the AirBNB I booked is a legal one where the person owns the place, since I don't want to risk being kicked out during my trip.) Craigslist is more decentralized than AirBNB -- anybody can post a listing and anyone can contact you and try to book your apartment. But the decentralization doesn't mean it's a better system. I think it boils down to the details of a particular market, and decentralized vs. centralized is not always a helpful way to think about it. With regard to currency, I imagine BitCoin is better than the currencies of some governments. I don't think it's better than US currency, by a long shot. US currency has flaws, but I don't see that BitCoin actually addresses them. It's morphed into something else. Maybe a different system could address those problems.
- em3rgent0rdr 8y agotrust can be done in a decentralized fashion...see OpenBazzar.
- fastdev 8y agoGreat example! > With regard to currency, I imagine BitCoin is better than the currencies of some governments. I don't think it's better than US currency, by a long shot. US currency has flaws, but I don't see that BitCoin actually addresses them Out of curiosity why do you think Bitcoin won't replace USD? What flaws should a new system address?
- sliken 8y agoBitcoin isn't fast enough for a large city, let alone the planet.
- dustingetz 8y agoit’s possible to be both. society is structured in layers, some centralized some not. same with the human body.
- CryptoPunk 8y agoNEO can't do 10,000 tps. The entire network has gone offline, multiple times, when handling a single token sale: http://storeofvalueblog.com/posts/a-definitive-guide-to-neo/ http://storeofvalueblog.com/posts/a-definitive-guide-to-neo/ It's easy to benchmark massive tps rates on a closed testnet, as in this case of removing all safeguards from an Ethereum private network to get it to 1.5 million tps: https://medium.com/@suchi.blackwing/cryptocurrency-scaling-ethereum-to-1-5-million-tps-cd10f5e3f7cc https://medium.com/@suchi.blackwing/cryptocurrency-scaling-e...
- fastdev 8y ago> NEO can't do 10,000 tps. It seems that the article is just referring to the same 10K transactions per second number mentioned in the NEO documentation. >> The entire network has gone offline, multiple times, when handling a single token sale Is this a bug in the protocol or is it a fundamental issue with the approach?
- CryptoPunk 8y ago>>Is this a bug in the protocol or is it a fundamental issue with the approach? A bug in the protocol.
- fastdev 8y agoEthereum was a target of DDoS attacks few years ago and the community has made several updates to improve the protocol since.
- CryptoPunk 8y agoEthereum never went offline. The NEO network actually went offline.
- Geee 8y agoI don't think there's middle ground. Either there's someone in control or there isn't. If you want to trust the system it must be fully decentralized by design. You can't trust people in the long run.
- EGreg 8y agoTake it from someone who has been studying distributed systems while architecting his own for a year — https://intercoin.org https://intercoin.org You can have both. The SAFE network uses Kademlia to select a group of computers based on a content address. It achieves security by not allowing computers to set their own IDs in the system but having them be kicked around sections from time to time. The XRP consensus algorithm is essentially what you would want when implementing crypto currency. It is also pretty good for storing files. The trick to scalability is always one thing: horizontal partitioning, also known as sharding. As long as you can partition your data, you can scale up the wazoo. The tough part with crypto-currencies is verifying the history because coins can mix, whether it’s UTXOs or account based systems. So the coin you hold may be the product of transactions among millions of other coins. So I think the only way to really do sharding is to emulate how cash has $100, $20, $10 etc. in other words have tokens that never get subdivided but only exchanged in an operation to “get change”. Instead of subdividing tokens, you first check with a given address whether it has enough change, borrow the change, do the transaction, and then the recipient will send the change back to that address and get back a larger denomination. All this happens behind the scenes but reduces the growth of UTXOs which is a huge problem for Bitcoin and others. What I talked about here is a FULLY distributed system, that is nevertheless super fast.
- mychael 8y ago"Decentralized systems" != Cryptocurrencies. Email, BitTorrent, Git are all "decentralized systems" and they have nothing to do with finance and do not use blockchain tech. I realize crypto is hot right now, but lets try to have some perspective.
- subway 8y agoArguably, git is a blockchain, albeit one with a very weak (non-existant?) consensus model.
- zaarn 8y agoGit's consensus model is not weak or non-existant it's just not like Bitcoins. Rather, in Git's version a single person or group decides what the truth is and everyone follows that (or forks). It's human/social consensus. It can be as strong or stronger than bitcoin since any issues or conflicts are resolved to satisfaction in meatspace. Bitcoin Core and Bitcoin Cash are two forks of Bitcoin and nobody seems to be able to decide which is the proper one, people argue back and forth. Meanwhile in the repositories of both chains, people happily submit changes and commit them under the watch of the lead developers who control and check what goes in, rejecting harmful or bad merge requests, etc.
- lowry 8y agoLooking at the name... blockchain or chain of blocks... or a queue in CompSci speak... is less complex than git. Git is a directed acyclic graph.
- subway 8y agoThat kind of breaks down if you consider existing chains have forked. See Ethereum vs Ethereum Classic or Bitcoin vs Bitcoin Cash as examples. Git, Bitcoin, Ethereum, and Certificate Transparency logs are all examples of merkle trees (and argubly blockchains).
- mbrock 8y agoThere is kind of a consensus model: the fork with the most good work on it is the real one. If you come across a forest of different forks of Ruby On Rails, you can identify the project's main master by looking for the longest sequence of commits by known project participants...
- paraschopra 8y agoDecentralisation is oversold. I have a couple of arguments against it: a) the more users who compete in decentralisation, the more commodity like returns they will get for their time and resources; b) there is a real cost of making decisions, so decision fatigue is a real thing and you can’t expect all users to be completely engaged in decision making that’s expected for decentralisation projects; c) the history of how platforms like YouTube evolved shows us that there is tendency to move from individual users having meaningful contributions to groups dedicated to those platforms outcompeting users in their contributions. I blogged about it last month https://invertedpassion.com/decentralization-continuum/ https://invertedpassion.com/decentralization-continuum/
- anfilt 8y agoDencentralized does not equate to block chains or crypto currency... I would agree current and popular crypto currencies are not that efficient. However, look at bit-torrent and it can exceed what centralized hosting can provide. Email is decentralized, heck even http is decentralized. Dencetralization is quite common. Even the US government is dencetralized to a degree. You have state, county and city governments. Its just a property that things may have.
- fastdev 8y ago> Email is decentralized, heck even http is decentralized. I'll quote my answer to the similar from this thread: "Blockchain-based systems allow storing a shared, verifiable state. Anybody has a chance (depending on mining resources) to make a decision regarding the next state change in the system by mining the next block, but this block will be rejected if the state change is invalid (e.g., in case of Bitcoin a transaction spends non-existing funds)." I think that HTTP is not a good example. While no one controls all HTTP endpoint, organizations that use HTTP are centralized. E.g., when you want to book a taxi using Uber, the company that provides a service store all the data, facilitates transactions, and the state of the system. This is different from decentralized apps on Ethereum network where a state change can be performed by any mining node. The question here is: do we need to have an "Uber on a blockchain" and if we need it, do we need it to be on a public fully decentralized blockchain? > However, look at bit-torrent and it can exceed what centralized hosting can provide. Agree, but I don't know any commercial organization that is using bit-torrent to serve files. Most companies use S3-like services and to my knowledge bit-torrent is only used to share content by non-profit organizations (e.g., Linux distro on a bit-torrent) or pirates.
- joansanchez 8y agohi
- arca_vorago 8y agoYes and No. Look, I think that decentralization has a lot to offer and has many applications where it makes sense, but lately I've heard a bit too much decentralization-for-decentralizations-sake talk going on. The internet still goes through backbone nodes (which are the important interconnects of ISP's deep in datacenters). We are still transversing a physical medium limited by the laws of physics. That said, this is why meshnets for example are a great proper project for decentralization to overcome that sort of physical layout root issue (taking it to p2p radio comms of some sort). Everybody talks about the cloud likes it's a new magic. It's fucking not. It's just servers in datacenters like it always was, but with nicer interfaces for remote customers. Except the cloud providers lock you in, by design. The ISP connects the servers of the cloud providers in datacenters to the public internet, but those servers reside in datacenters. Servers which run in prime conditions, with good hardware, and have the proper infrastructure and people to support them and give them uptimes in the four 9's depending on datacenter tier. Decentralization might be able to approach this though due to the strength of it's topology. Another issue is privacy. The ISP and the state level actors have your data and you know it... and are entities you at least theoretically have legal options for recourse against. Everyone knows your IP when you start running p2p decentralized platforms. That's why for example you should not be running a tor exit node from your home network. In this day of easy data on people, your IP is a hop skip and a jump away from you being doxed. Or ddossed, or various other things. I could go on, but the point is decentralization has a place. Use the right tool for the right job, and stop trying to make a multi-tool that does everything cause it always fucks something up.