The blockchain is a threat to the distributed future of the Internet
lasindias.com
lasindias.com
Proof-of-work creates an illusion of dependence on blockchain miners. Proof-of-stake makes it clear that blockchains are run by a corporation that wants to maximize transaction fee revenue. Transaction validators have to do the best job of maintaining a unified historical record of all transactions for people to keep giving them business. Otherwise, users will choose different validators and carry on without them.
Blockchains are fancy spools of receipt paper. If the printer gets jammed, tear off the stuff you care about and staple it to a new spool. The printer doesn't control the people. The people employ the printer.
With that said, it's still unclear whether blockchains are the right choice for publishing. A decentralized Twitter doesn't need consensus on a historical record. An IPFS-based Twitter is probably a better way to start, then anchor the parts that need consensus on a blockchain, like usernames and timestamps.
Blockchains are much more than receipt paper. Receipt paper is a superfluous byproduct. The blockchain is the system of record.
If a blockchain has rules that don't meet my needs, I can choose a different blockchain. If I adopt a blockchain that changes its rules to be undesirable, I can take the history I care about and move it to another blockchain.
This argument depends on proof-of-stake. Some people think proof-of-work blockchains are the only useful ones, but I disagree. It's also a boring debate to have, so I won't be doing that here.
Had this happened with Bitcoin? I think I heard there are some quite major disagreements (something about block sizes and stuff) and there are a lot of users that aren't happy. I don't remember hearing them just "well, whatever" and forking off.
Ethereum is a general purpose blockchain. Forking it could hurt the value of ether, but for many applications, the value of ether doesn't matter. Moving a blockchain-based Twitter from one fork to another is relatively easy and consequence-free.
I'm not sure it's really consequence-free. It's essentially a netsplit, where the forking party lose connectivity with everyone who's left. Consider the case where Twitter (the centralized one) is suddenly falling apart over some issue into two distinct non-interoperating services. Technically - sure - it's a no-brainer, but socially it feels quite complicated to me.
(I guess, this would work if the app would be designed to use multiple blockchains. I need to give it some thought.)
This is not true of most currencies. Most currencies are valuable because governments force you to pay them on threat of imprisonment. Bitcoin does not have this feature and therefore, yes, it's hard to see what its fundamental value is.
Now, banks and such will be some of the biggest users; and your average Joe won't even understand what the problem is with trusting them with the blockchain. So... good luck with getting that consensus.
The biggest difficulty would be accurately identifying where the signature came from, but with clever timing mechanisms, it might be possible given the latency of light. I haven't thought about it much, but maybe require the current time be included in what gets hashed. Anyone cheating by using a future time could be caught by looking for missing transactions in that time space.
"The Casper protocol is intended to offer stronger finality guarantees than proof of work. First, there is a standard definition of “total economic finality”: it takes place when 2/3 of all validators make maximum-odds bets that a given block or state will be finalized. This condition offers very strong incentives for validators to never try to collude to revert the block: once validators make such maximum-odds bets, in any blockchain where that block or state is not present, the validators lose their entire deposits. As Vlad Zamfir put it, imagine a version of proof of work where if you participate in a 51% attack your mining hardware burns down."
https://blog.ethereum.org/2016/05/09/on-settlement-finality/
How is proof-of-work's dependence on miners an illusion? Seems like a fundamental property of proof-of-work that it depends solely on the consensus of miners.
And how does this happen? By a consensus of miners?
If I, as an individual, were to find reason to distrust a entity who makes up the majority of mining transactions, how likely is it that I will be able to use the main blockchain ever again?
Please assume that I have 100 BTC at a particular address or small set of addresses, and I don't like the Chinese mining consortia.
How do I actually move my value to a new chain that 1) excludes those mining consortia, 2) preserves my stored value, and 3) preserves my ability to transact with any other valid BTC address? How can I get this done by next week?
As I stated elsewhere, this is impractical for Bitcoin because the value of the currency would tank. For applications like the one in this article that use general purpose blockchains, forking is very practical.
Even when the point of the chain is not to store value, but just data, it seems that we're already losing the ability to track all the old data. Sure I extract a set of the stuff I want and carry on with the new fork, but no one else comes along, their data is lost, so they don't come along. If all I care about is a close network of friends, or perhaps an internal company data store, then fine, but how does one cleanly tear off a chunk of a network that looks like the graph of FB or Twitter? Am I missing something here?
> Sure I extract a set of the stuff I want and carry on with the new fork, but no one else comes along, their data is lost, so they don't come along.
That's not how it works. When you fork, you typically bring the entire history with you. It's the new data after the fork that causes problems. If people don't switch or publish to both, you're stuck.
I love it when people say this shit. Ok, I'll just go fork Bitcoin. Unless I'm not a programmer. And I sure hope that somebody else follows me into my fork. Only a group of major (powerful) market players will have the ability to threaten to fork. And even then, they probably won't, for the exact reason you stated: a fracture in the currency would kill people's confidence in the currency and tank its value.
This is a major worrying part about Bitcoin. Would it be really that difficult for a nation-state level player to buy enough capacity on the network to take it over?
...and a federated service is better than a handful of silos controlling the network.
So if the blockchain is supported by the mining of many small miners, it's a decentralized dream. But if there are a handful of miners validating the majority of transactions, then it ends up smelling a lot like the handful of silos situation. Not exactly the same but very similar.
Bitcoin forking is dangerous. If it goes bad and the community becomes overly fragmented then everyone loses. The strength of a position in Bitcoin is a combination of many factors, but the most important ones are related to the size of the community, its relative stability as a crypto coin, and the relative ubiquity of it.
Did you see the AKASHA discussion, last week?
PoW depends on blockchain miners by definition and the Bitcoin experience shows that at the end you have a concentration of power.
> With that said, it's still unclear whether blockchains are the right choice for publishing.
It is very clear that blockchains ARE NOT the right choice for publishing, its limitations for that purpose are based on strong computer science principles on distributed systems, consensus and network speed.
BTW one of my companies is focused in blockchain, cryptocurrencies, etc and I can't believe the level of hype experienced there. For example, I read about the DAO Ethereum crowdsale but we experience serious technical issues with Ethereum that clash with that hype.
All the new federated social systems have failed, replaced by commercial, centralized systems. (IRC and email live on. Google thinks it owns Usenet, rebranded as "Google Groups", and a big chunk of email never passes through SMTP.) Why? We had a good discussion of this recently by the creator of WhatsApp(?). Centralized systems can be upgraded and enhanced. Federated systems require massive cooperation to change. And federated systems don't generate much revenue.
The author helped WhatsApp move to an end to end encrypted protocol.
Compare:
"wordpress.com" (hosted): "Create your new website for free. WordPress.com is the best place for your personal blog or business site. Create Website (button)"
"wordpress.org" (download): "The latest stable release of WordPress (Version 4.5.2) is available in two formats from the links to your right. If you have no idea what to do with this download, we recommend signing up with one of our web hosting partners that offers a one-click install of WordPress or getting a free account on WordPress.com."
Open source just doesn't get user-friendly onboarding.
But they don't do that. These systems are actually distributed, and that's why they work.
But for networks which do, you may want to. For example, only one person may control this name, this domain, this tradeable asset, etc.
Blockchains are an addon to distributed models because they allow a distributed way to prove ownership of something. Say I want to look someone up by name instead of by cryptographic hash, how do I do it? You can't register a name in a Freenet or Bittorrent model.
People are using blockchains for too many things, but that's healthy. It's the only way we can find all the things they're useful for.
When bitcoin became an unfundable space, the VC's and such moved into "Blockchain", which was marketed as the good parts of bitcoin, without the bad.
Unfortunately, the space has seemingly gone on to only emulate the worst parts of bitcoin. Scams, ignorance, and get rich quick schemes. Currently, "blockchain" appears to be targeting centralized, decentralized, mutable, immutable applications. The blockchain movement is meaningless, and appears to be merely the exhaust gas from the bitcoin funding hype.
The blockchain protocol isn't going to 'save the world' - but once a little air gets let out of the balloon, it's going to see a lot of adoption in both financial institutions and back offices in a wide, wide, range of industries. For a world with lots of data and lots of shady actors, it just makes sense.
Overzealousness is unfashionable. Be unfashionable until you're convinced that you're actually wrong.
Bitcoin may be the best-known blockchain protocol, but there many others in active use.
But I wonder what would drive mass adoption for every day users - aside from a collapse of the current financial system.
For general public it doesn't really matter if AirBnb or Uber or Whatsapp are decentralised or not - we use them because they have reached a point through network effects where they have a ton of users/liquidity, are reliable and have smooth UX.
Also, I'm not sure storage issues are a solved problem for immutable decentralised databases.
Fast global microtransactions could be a useful consumer app but so far there is little need for those. And the UX for fiat->crypto->fiat transactions and wallets is far from what it needs to be for general public.
On the contrary, it would be as lightweight as possible. And the transactions in a Block, could point to trusted Oracles outside the Blockchain. And usecase involving streaming content like Movies (the example given by GP) would definitely NOT have the content on the Blockchain.
Rather, just the urls to trusted oracles, in the txn. With the hash of the txn, present in the Merkle Tree in the Block, for verification purposes, so that other parties can quickly verify the block is not fraudulent or tampered with.
Did someone take some time to tell author that internet is not www, and that www is not maintaining datacenters ?
I'm surprised that some people find this article informative.