Blockchains: How They Work and Why They’ll Change the World
spectrum.ieee.org
spectrum.ieee.org
Can a blockchain find people offering rides, link them up with people who are trying to go somewhere, and give the two parties a transparent platform for payment? Can a blockchain act as a repository and a replay platform for TV shows, movies, and other digital media while keeping track of royalties and paying content creators? Can a blockchain check the status of airline flights and pay travelers a previously agreed upon amount if their planes don’t take off on time?
If so, then blockchain technology could get rid of Uber, Netflix, and every flight-insurance provider on the market.
Really? All these applications can also be built using 'normal' systems architectures. If you build them on a blockchain, then you also get:
- A very low rate of transactions
- A very high computational cost to mine new blocks
- A very high storage cost for each node
- No way to reverse transactions in the case of error or fraud
So somehow the benefit of putting these applications on the blockchain has to outweigh these costs. The only benefit I can see is transparency. When you have information that must be publicly available and immune to tampering, then a blockchain could be a nice way to achieve that.But for these examples? I don't see any reason to use Ethereum or a blockchain at all to implement them. Can someone help me out here?
- Proof of Work isn't the only consensus algorithm, there are ones with lower computational costs, such as Proof of Stake
- See IPFS, and there are other distributed storage solutions
- One can add new ledger entries that refer to previous ones, to correct them
Aside from transparency (and note that privacy is also an option on some blockchains), the main benefit is that smart contracts can eliminate the need for 3rd parties, but still provide trustworthy transaction settlements. Third parties such as the Uber organization, or a bank. The tasks they perform can be provided automatically via programmable transaction handling on the blockchain (smart contracts). Another benefit of distributed software is that it is more resilient (in theory - the global architectures are still being developed), no central point of failure or high-value target for attack.
PoS still doesn't exist in the real world, as far as I know.
> See IPFS, and there are other distributed storage solutions
IPFS has nothing to do with blockchains per se, though for better or worse (IMO for worse), the team working on it is also heavily involved with the cryptocurrency world. You might be thinking of Filecoin, which looks reasonable and had probably the only ICO so far that isn't total bullshit, but while I'm hopeful, we still need to see if and when it actually gets deployed.
> the main benefit is that smart contracts can eliminate the need for 3rd parties, but still provide trustworthy transaction settlements
Let's not forget about the most important drawback of "trustless" systems - machines know no mercy. You'd better be sure you've covered all potential problems in the present and the future, because if you make a single mistake in the code and lose all your money, there will be - by design - literally no one to help you.
(There's this idea of replacing laws with smart contracts that occasionally pops up on the Internet; it's a stupid and dangerous idea precisely because of that.)
* BitShares and Steemit both use it, and I believe the forthcoming EOS network will as well. See https://bitshares.org/technology/delegated-proof-of-stake-co...
* Ethereum has successfully tested a new hybrid PoW/PoS system and is rolling it out on the main network soon. Links in this article: https://www.coindesk.com/ethereums-big-switch-the-new-roadma...
* PoS was just an example - there are a range of consensus algorithms that are not proof of work, which was the very first one. Ripple is a "real world" blockchain that does not use proof of work: https://ripple.com/build/xrp-ledger-consensus-process/
* Here's a few other consensus algorithms: https://www.coindesk.com/short-guide-blockchain-consensus-pr...
> because if you make a single mistake in the code and lose all your money, there will be - by design - literally no one to help you.
Actually there are, by design, roll-back mechanisms that can be deployed if the majority of the network agrees to carry it out. I believe the current controversy in the Bitcoin network is partially over the removal of such a mechanism. Various other blockchains and blockchain-like networks have correction mechanisms. Also note, its not always about storing money - thats just one use.
People have a problem: the software they have is not solving their problems very well. Before it was Oracle, then SAP then more recently IBM Watson and now it's blockchain.
A lot of business people don't realize they need to work closely with programmers to achieve their goals. The companies who know this are operating at global scale have nothing to do with blockchain in their architecture.
I know very massive entities with huge budgets in my region that are suffering intensely from their lack of a proper software engineering team. They don't even realize it so instead they just hire more manpower to deal with their bad backend systems. Oracle, SAP, and IBM just sell them garbage that solves 30% of their problem while introducing more problems and now they're eyeing blockchain cause they don't know better.
Even as a customer I recently had to convert my SIM card from post paid to prepaid with a telecom provider having revenue measuring in the billions. I go there and their system is down. Twice. They tell me this happens several times a week and have no idea when it will come back up. Ten employees that cannot do their job. I managed to catch them when their system was up and it took about an hour convert my SIM, and I had to wait there the entire time.
I feel that it's a failure for the people in charge to discern something that is going to solve their issues something that isn't. Most people just either accept the lowest bid RFP from a Banglore team or pay millions just because of the name behind the company.
This is a bit of a rant but I'm sick of how crappy everything is and a lot of this is very easy to fix. My credit union's website back in 2007 for a city in California was more useful and easier to use than what I have to deal with now from a bank with a yearly revenue in the hundreds of billions.
Or because they can't be seen ignoring a hype that too many others believe in. When decisionmaking for a publicly traded company you have to at least pretend to participate in the hype even if the only reason is a sufficiently large fraction of investors thinking that a sufficiently large fraction of their peers are believing in the hype. It's almost like magic.
- You want to stay anonymous
- You can't trust a third party
I would argue that a functional society would not need any blockchain services as it would provide the necessary privacy defenses to do anonymous transactions and the means to enforce trust.
In the same fashion, it was argued that BTC would be useless in a correctly functioning banking ecosystem.
What these systems offer is not something impossible to do otherwise, it is a lower bound on the services a society can provide (assuming internet and computers).
If tomorrow a country has a Zimbabwe moment, people will switch to BTC. If taxis end up being to corrupt, an etherum service can take the relay.
A lot of the blockchain enthusiasts are anarchists or libertarians. They assume society is already failing or on the verge of collapse. They often fail to see that not everyone is in that mindset.
Monero goes further and anonymises transactions between wallets.
In contrast, you cant make a bank transaction without linking your identity. This is what people are talking about when they say blockchains give anonymity.
If someone cares about anonymity, that’s a huge gamble to make that the system will never have a design or implementation flaw (in the case of things like zcash which are, unlike bitcoin, attempting to provide anonymity at all), and that everyone they ever do business with is trustworthy.
That last part is guaranteed to be false. Beyond the obvious capabilities of a state-level attacker, think about why Equifax has that data in the first place. People will buy things on credit and that depends on not being anonymous – churning IDs would be like only paying cash for everything, which is known not to be viable for anyone who isn’t rich. Secondly, think about how many businesses want this data for marketing purposes: you can churn wallets all you want and it won’t help when the vendors are passing that information to companies like Acxiom, Equifax, or Google.
You don't need to assume that to see obvious benefits of a blockchain. As long as there're stupid or evil people in society central authority systems like banks can fail, rob you or be hacked. Blockchain on the other hand is more reliable.
The body of evidence to date suggests that you're much more likely to be robbed of your cryptocurrency through fraud or incompetence than you are to lose your traditional currency from a bank.
https://magoo.github.io/Blockchain-Graveyard/
Furthermore, we've already seen examples of the "authorities" behind cryptocurrency executing a rollback to modify transactions they didn't like: https://www.coindesk.com/hard-fork-ethereum-dao/
I strongly dispute the notion that blockchain is more reliable. Maybe in some ideal universe where blockchain technology is not implemented and maintained by humans.
Because the technology (right now? maybe we'll see cryptocurrencies built in hardware/os eventually) is for competent geeks, not that greedy people that store their bitcoins on exchange wallets (or use any central server). One has to ask oneself if the blockchain is more reliable for him, just as he does with other things like choosing doctors etc.
I've been in countries where there are major trust issues with taxis, and the very worst case I could imagine would be a service which signals to anyone watching that I'm on the street in the middle of the night, holding a smartphone which also has the ability to make irreversible transactions of a large portion of my cash holdings to an anonymous endpoint, and I'll probably get into the next vehicle to stop for me.
For a significant proportion of mooted cases where trustlessness is mooted as an advantage of blockchain technology, trustlessness doesn't actually exist and/or centralisation actually reduces problems with trust
Meanwhile, with a credit card I can buy a product from Amazon or some joe-schmoe site nobody ever heard of, and have a guarantee that Visa will back me up if the latter is a scam.
At any rate, the advantage of Bitcoin/Ether is that sending Joe Schmoe your money doesn't mean you've exposed your credit card number and billing address (likely also your physical address) to Joe Schmoe. So there's pros and cons to either system. Refunds have existed since well before credit cards were a thing. Does it require a bit more of "buyer beware" ideology? Sure, but I don't think that's any different than a cash-based society.
The move to chipped credit cards (or Apple/Android Pay) also shields my real card number and makes information unusable in case of hacking. I already hide my address by having the card statements go to a PO Box and using that as my billing address, but I know that's not a widespread practice and some institutions forbid that.
If you want to keep middle men in between most things that we could potentially do programmatically, thats cool. I'm on the hype train.
- low tx rate? not for long - high computational cost? Security feature. Makes fraud/hacks very expensive. If you think energy conservation is more important, other chains don't have this cost (proof of stake). - high node storage cost? mining fees & block reward more than outweigh this. not everyone needs to run a full node (but anyone can). - no way to reverse transactions? feature. you can always add arbitration / escrow. openbazaar does this very nicely
If you go the traditional route, you will always have a company in the middle, taking their cut or selling you out behind the scenes.
Yet none of those blockchain enthusiasts could tell me a single USP that blockchains had over storage in a normal database on any concrete use case, with the sole exception of cryptocurrencies.
And the reason is simple: all those applications have none of the properties and problems the blockchain solves - which is an elegant niche solution tailor made for mutually mistrusting entities working together on a distributed ledger. That barely exists in real life.
Centralized systems are what you want in 99% of cases. They're more reliable, better controlled, have infinitely more throughput and usually, you want to be able to roll back transactions under certain conditions (fraud, mistakes, etc.)
Sure, you could store anything in a blockchain. Sure, something yada yada blockchain could "replace Netflix". It's just that apparently nobody can tell me _why_.
My only concern right now is that I can't short Blockchain technology because the relation of hype to actual usefulness and potential is so incredibly large that it will drag a big chunk of the tech sector down the drain.
In stark contrast to AI which is just as hyped, but isn't just supposed to "change everything" since years - it's actually starting to do so on a spectacular timeline.
Yup, refunds are the basis of customer service.
Think of it this way, if you were building money for computers, it would have atomic transfers and a changelog. Those properties, it turns out, are very useful, mostly because people dramatically underestimate how many transactions are between semi-untrusted parties (I would argue it is the majority of transactions). Yes, right now, crypto is a step backwards for many transactions, but that's because institutions that would traditionally support currency can't properly model the risk so only the brave entrepreneurs who accept unbounded risk participate. Over time, like any technology, traditional institutions will accept it as the regulatory regime becomes more clear.
The analogy to the beginning of the internet is obvious (the only real question is whether governments decide to ban it).
> And the reason is simple: all those applications have none of the properties and problems the blockchain solves - which is an elegant niche solution tailor made for mutually mistrusting entities working together on a distributed ledger. That barely exists in real life.
> Centralized systems are what you want in 99% of cases. They're more reliable, better controlled, have infinitely more throughput and usually, you want to be able to roll back transactions under certain conditions (fraud, mistakes, etc.)
While we're high on the hype cycle for blockchains and crypto currencies, it's easy to find actors that do not understand the limitations of the technology. It has heavy drawbacks when compared to centralized systems. That is true, I agree with that part of your comment.
What your position misses, are the huge unrealized upsides of blockchain tech. It's natural, because they are potential, unrealized and, as such, difficult to defend. Let me try my hand at it anyway, as high level as possible so we don't get lost in use case minutiae.
Blockchain allows you to eschew the need for a single central trusted party. This allows for fluid ecosystems, removing the need for a monopoly/oligopoly in scenarios that today require one. This removal of a market deficiency is known to increase innovation, through competition.
If you find it difficult to imagine use scenarios for blockchain, look for deficient markets caused by the need for centralized trust: monopolies and oligopolies. In each, you'll find an opportunity to create a more competitive market through blockchain.
How? This is just vague handwaving that doesn't actually explain how the blockchain can solve real problems. As of now, bitcoin is the only demonstrable use case for a blockchain, and while I don't think anyone could convincingly argue that bitcoin is useless, it's not going to cause an economic revolution like the advent of the internet.
- What if a kind of youtube existed where advertisers paid content creators directly instead of youtube taking a large percentage? And it was censorship resistant. - What if we could build app stores that don't take a 30-50% cut. - How about an entire p2p marketplace without fees like ebay? openbazaar.org - What about getting paid for things that are impossible right now because of CC tx fees? This unlocks microtransactions & an entire attention economy (see yours.org, steemit.com, more incoming) - How about p2p digital rights management to allow artists to keep more of their income? Several in the works. - How about any service that exists to keep records? I would love to see the day Pacer was replaced by a blockchain. - What if a kind of reddit could exist without centrally moderated channels and armies of fake users? - What if p2p rented data storage could be a fraction of the price of dropbox without selling your data? - What if you could rent computing power in a p2p fashion? - What if network/VPN rules could be tokenized in the hardware and network access could be metered and charged per minute in crypto? - What if you could receive payroll as a minute by minute stream? - What if the lottery was provably fair and 1000 times less of a ripoff? - What if we could replace obviously flawed political polling with prediction markets?
I could write this list all day. Not vague handwaving, all of these things are being worked on or already exist.
Youtube taking a large percentage has nothing to do with the nature of the technology and everything to do with the fact that they have no competition due to insane network effects and highly optimized research driven UX. Also hosting, indexing, and reliably streaming hundreds of TB of high quality video is not a trivial problem. Further, you cannot escape censorship when your concern is advertising revenue.
> What if we could build app stores that don't take a 30-50% cut.
Once again, this is not a technology problem: Google and Apple will never allow app store competitors on their platform, otherwise someone would have already done this (and it was done during the early iPhone days with the Cydia store available only by breaking Apple's security - no blockchain required)
> What about getting paid for things that are impossible right now because of CC tx fees?
The same problem exists with bitcoin tx fees such that all the proposed solutions to this problem involve finding a way to avoid the blockchain at all costs.
> This unlocks microtransactions & an entire attention economy (see yours.org, steemit.com, more incoming)
Microtransactions are not practical on the blockchain and most microtransaction concepts are DOA because nobody except crypto-enthusiast wants to pay 10 cents to upvote memes and cat pictures when they can do that for free, with a better selection, on sites like reddit. There is probably some limited potential for microtransactions when it comes to gaming or maybe publishing content, but once again, the real problem has very little to do with technology and much more to do with the fact that most content is crap and people don't want to pay for it.
> How about p2p digital rights management to allow artists to keep more of their income
Once again, not a tech problem. People would happily pay the artist if the artist self-published, but most don't do that because publishing through a platform or another distributor is the only practical option for discoverability. Once you're discovered, the payment aspect is a non-issue, e.g. famous artists who already deploy "pay what you want" style stores (Radiohead, Louis CK, Humble Bundle etc).
> How about any service that exists to keep records? I would love to see the day Pacer was replaced by a blockchain
Why? What problem does this solve? Storing records is already a solved problem. There are plenty of non-blockchain techniques for storing, auditing, and cryptographically verifying and securing records without any of the PoW drawbacks. Please offer even one practical example.
> What if a kind of reddit could exist without centrally moderated channels and armies of fake users
First of all, the blockchain does not solve the "fake user" problem, so I'm not sure what that means, but centralized moderation is not a problem for most people who just want to browse content and don't really care if someone gets banned for spamming "nigger" in comments. For those that really care about totally unbridled free-speech there are already non-blockchain alternatives like voat.co... what does a blockchain bring to the table?
> What if p2p rented data storage could be a fraction of the price of dropbox without selling your data
Economics of scale guarantees you'll never be able to beat a centralized solution like AWS when it comes to this type of thing. You might see some cheaper options for a time, but once the market catches up to the fact that AWS is achieving orders of magnitude cheaper storage than a faux meshnet of consumer harddrives, you'll find that this idea is totally impractical.
> What if network/VPN rules could be tokenized in the hardware and network access could be metered and charged per minute in crypto
Interesting idea, but nobody wants this.
> What if you could receive payroll as a minute by minute stream
Interesting idea, but there's no reason that employers would adopt this.
> What if the lottery was provably fair and 1000 times less of a ripoff
Not really a concern for those that operate the lottery.
> What if we could replace obviously flawed political polling with prediction markets
Vague, impractical and fraught with its own flaws.
> I could write this list all day.
Yes, but like 99% of blockchain related ideas, the problems that are actually solved are already solved without the insane drawbacks of PoW.
We also miss the upside of emailing everybody a huge Excel file, which would also accomplish distributed replication. It doesn't necessarily mean that most people fail to grasp the concept and enormous potential for sending a large Excel file, it's just that for their use case they have access to more performant tools.
> Blockchain allows you to eschew the need for a single central trusted party. This allows for fluid ecosystems, removing the need for a monopoly/oligopoly in scenarios that today require one.
Except that the system is designed for centralization towards the entity that has access to the cheapest and most subsidized electricity. While most popular cryptocurrencies have escaped that route, you can look into the variety of lower-league shitcoins, that are generally limited to a handful of miners - the rewards are just not there to compete with a giant centralized GPU farm.
They have enough sense to see that blockchain ecosystem is 1% innovation, 99% hype.
Those chains don't exist yet in any meaningful sense; at this point, AFAIK, it's not been proven that an energy-efficient PoS system even can be created theoretically. If it turned out it could be done and then if it was done, I'm sure lot of the negativity would disappear.
The underlying sentiment behind pessimism, at least for me, is that it seems that in the blockchain ecosystem, all the incentives are aligned in such a way to have the market push us into stupidly wasting huge amounts of electricity, storage and bandwidth for no tangible benefit. No need to wait for energy-efficient PoS or other things - you can earn your money right now.
Household computers were a thing in science fiction long before they were possible and I don't recall anybody doubting you could eventually transmit movies over the internet in a reasonable amount of time.
Then you continue with the usual hand waving when people point out weaknesses in the bitcoin architecture. Because the last thing we want is for the hype to die and the speculation to crash, am I right?
>If you want to keep middle men in between most things that we could potentially do programmatically, thats cool. I'm on the hype train.
You can do things programmatically without using the blockchain. Actually nowadays I'm pretty sure that for the vast majority of transactions online no human is the loop.
>- low tx rate? not for long
What makes you say that? If you think about segwit/lightning and friends I'll wait until I see them working in practice. I'm still skeptical that these solutions will manage to reach high amounts of transaction without losing the decentralized nature of bitcoin.
>- high computational cost? Security feature. Makes fraud/hacks very expensive. If you think energy conservation is more important, other chains don't have this cost (proof of stake)
You make it sound as if proof of stake was actually a thing. Has any serious blockchain successfully implemented PoS at this point? I know many people are talking about it but it's still very much theoretical as far as I know.
>- high node storage cost? mining fees & block reward more than outweigh this.
I don't understand this argument. Nodes and miners are two different things. If you do serious transactions on the network you should run a full node. Are you saying that people who run full nodes should invest in a mining rig to offset the cost? What if they live somewhere electricity is not cheap enough to turn a profit?
>- no way to reverse transactions? feature. you can always add arbitration / escrow
Yeah by using a... trusted third party. How would you scale this? Well, I can think of a way, you could set up organization who would take a small fee to act as trusted third parties. With a high enough volume of transactions these organizations would have a low incentive of cheating for any given arbitration since loss of trust would mean the end of their business and they could be sued. They could also offer loans and other things the blockchain can't provide on its own. You know, like a bank.
>If you go the traditional route, you will always have a company in the middle, taking their cut or selling you out behind the scenes.
The bitcoin network takes its cut as well and these days it's not exactly cheap. And what do you mean by "selling you out behind the scenes"? Privacy issues?
And with your scheme there's still the problem of how do you scale it? Even if you hope that you'll be able to settle the transaction without disagreement you still have to select a third party "just in case". I can't see working at scale unless you have "professional" third parties with good reputation who will be able to oversee a big number of transactions without being tempted to cheat the system. Why would these third party accept to work for free?
Maybe those parties would accept to be paid only in case of dispute but in this case (if the number of disputes is a very small proportion of all transactions) they'll probably ask for a significant amount of money to break even. You want this third party to be very reputable and hard to corrupt after all, that means that they must have a significant amount of money at stake. You don't want some dude doing it as his weekend project in his basement.
Furthermore the one contesting the transaction will have to be the one who pays the company because how could they force the other one to give money? In turns that means that this neutral third-party becomes biased, it has an incentive to side with whoever paid them to weigh in on the transaction since they've effectively become their customer.
That's kind of my problem with this entire blockchain thing, people are reinventing the wheel, telling everybody they're going to "kill the banks!" but they never stop to wonder why our current system works the way it does. I'm not saying that things are perfect as they are but if you don't learn from past mistakes you're doomed to reproduce them.
The fee when there is a dispute would have to be higher; I'd argue that this isn't terrible, since it gives the primaries a stronger incentive to work things out on their own.
Obviously it would help to have some kind of reputation system for arbitrators. That doesn't necessarily have to be on chain; anything that lets both primaries agree on an arbitrator is fine.
The contract is what forces the payment; the money in question is held by the contract, and if the arbitrator makes the decision, the contract automatically deducts the fee from the held funds and pays it.
You're right that sometimes people ignore why the current system works, but the flip side is dismissing blockchain solutions without first understanding how they work.
Free? Who pays for the blockchain? Last I looked into it, each transaction requires about enough electricity to power a house for an entire day. That isn't very free.
I agree the energy consumption of present-day blockchains is a problem; hopefully proof of stake will fix it.
regarding proof of stake
for counterarguments
Decred has, in production for months: <https://docs.decred.org/mining/proof-of-stake/>.
True, it's a hybrid Pow/PoS system, not a pure PoS one, which is indeed probably not workable: <https://docs.decred.org/research/hybrid-design/>.
If a single entity is able to get 51% of the hashrate why can't they effectively control which PoS tickets are selected?
Since the overall reward & transaction fees are distributed between both PoS & PoW, it seems to follow that at there will be fewer PoW miners resulting in less overall security vs. a pure PoW protocol.
That’s the intellectual blind spot which is making this so hard to understand: you’re invested in the technology and want to see it succeed, which means you’re inclined to minimize every downside and boost every possible use without asking whether something is better in addition to being possible.
Being old enough to remember when the internet was starting to go mainstream, there were op-eds like that but they got plenty of pushback because there were so many new things which you could do on the internet which were either impossible, unaffordable, or too cumbersome before. Yes, a modem connection was too slow to play a movie but you could read newspapers around the world, send email to anyone and have it arrive in seconds, download software or photos instead of having to drive to the store, research and trade stocks, chat, etc. and there was a clear path for technological improvements making that experience better over time. The average person could easily see things they’d like to do and the costs were getting more approachable every year.
In contrast, we have a ton of blockchain hype without a single legal use which solves a problem normal people care about better than existing, well-tested technology. There’s a lot of “that’ll change once these fundamental design flaws are solved in a way we don’t yet know how to do” hype being peddled by people who stand to profit if everyone buys in but, as during the dotcom bubble, that should inspire more rather than less skepticism.
Now, there are many technologies which are very useful for certain use cases despite the consumer failing to grasp what's going on behind the scenes, from Java VMs to graph databases to torrents, but certain things tend to be true of them (i) they weren't as exciting opportunities as the internet even if billion dollar businesses were built on them (ii) the developers explaining why existing solutions were good enough if not more optimal in many respects were often right.
I’ve seen the same trend for blockchain evangelists to have gone deep into that technology but have only a cursory understanding of the businesses they’re trying to enter. A great example is the retail purchase model which always comes up in Bitcoin discussions, which ignores the fact that most people think credit cards are just fine and like things such as fraud protection more than the hypothetical chance of a fractional overhead reduction. There might be room there but it’s an uphill fight and the value is capped at the lowest Visa, et al. are willing to drop their merchant fees to.
I think your comment about selling tech is also important because the model puts some unusual constraints on it: you can sell to developers by focusing on tech details but how many developers are paid to work on problems which require trustless distributed systems and low transaction volumes? Most big systems require the opposite.
Maybe this is your blind spot? You assume it has to be legal to be useful.
But in any case, there are legal use cases that work today: sending money with very little friction, including no need to provide a trusted third party or the payee your personally identifiable information.
With Ethereum, we'll soon have social networks and markets that participants can trust will not have fees increased and terms changed once the platform has become dominant. So you can have monopolies without monopolists.
I'm looking at what it takes to go mainstream — if it's predominately used for illegal activity, that'll deter normal people and legitimate businesses from adopting it and increases the likelihood of government regulation. As a simple example, how many people would use a tumbler if that started being seen as probable cause for a money laundering investigation?
> But in any case, there are legal use cases that work today: sending money with very little friction and with no need to provide a trusted third party or the payee your personally identifiable information.
How many people care enough about removing the trusted third party that they will use this instead of Google Wallet, Square, Venmo, etc. (and, soon, Apple Pay)? Some people value that but it seems unlikely that it's enough to make up for the smaller network, processing delays, and exchange fees.
Filesharing is arguably in this category and maybe shows that it's possible that something not generally used for legal purposes and not in the mainstream can nonetheless become widely used. But yes there is certainly a risk.
>Some people value that but it seems unlikely that it's enough to make up for the smaller network, processing delays, and exchange fees.
Right now cryptocurrency is in its infancy, so it has a lot of drawbacks, but it has obvious advantages that anyone can see, like being able to send money from your computer, without first registering with Google Wallet, Square, Venmo, etc, to anyone, anywhere in the world who also has the software installed on an internet connected device. This is a fundamental innovation in money transfer. You're right that it may not be enough to overcome the advantages that large trusted third parties can bring to make it go mainstream, but the advantages it has are obvious enough that people can see it potentially doing so.
Bitcoin is, what, ten years old. It predates the iPhone. I’d hardly call it still in its “infancy”
Anyone who spent time on cypherpunks-l in the 90s would also be familiar with the discussions of e-currencies like David Chaum's 1989 digicash (https://en.wikipedia.org/wiki/DigiCash) which did not use proof-of-work but did cover a lot of the same ground for anonymity, etc.
The components of an iPhone (e.g. the touchscreen, microprocessor, RAM, SSD drive) OTOH were already mass-produced and widely adopted in consumer electronic.
I don't want to understate the iPhone's impact. It spurred the development of better LCDs, touch interfaces and especially SSDs, but it was undoubtedly still working off a more established base than Bitcoin.
The consensus algorithms predating Bitcoin required some percentage of participants to be trusted identities, so were quite different than what Bitcoin pioneered.
Hashcash was a very limited experiment that had no consensus system. Utilizing the proof of work idea of Hashcash to create an identity-less consensus system was more conceptually groundbreaking than iPhone's marriage of touch screen mobility and personal computing.
While the iPhone added a personal computer to a mobile phone, in a user friendly touchscreen package, the blockchain created something that was totally new: distributed consensus without known and trusted parties.
I’m all for helping spread modern infrastructure around but it seems like the current cryptocurrencies are taking on significant overhead to solve problems which aren’t pressing for very many people.
There are over two billion people in the world who have no bank account or access to even basic financial services; “banking the unbanked” is much discussed in international development circles. Around 2013, Bitcoin advocates started claiming that Bitcoin could help with this problem.
Unfortunately:
* The actual problems that leave people unbanked are the bank being too far away, or bureaucratic barriers to setting up an account when you get there.
* Unless they use an exchange (which would functionally be a bank), they’d need an expensive computer and a reliable Internet connection to hold and update 120 gigabytes of blockchain.
* Bitcoin is way too volatile to be a reliable store of value.
* How do they convert it into local money they can spend?
* 7 transactions per second worldwide total means Bitcoin couldn’t cope with just the banked, let alone the unbanked as well.
* A centralised service similar to M-Pesa (a very popular Kenyan money transfer and finance service for mobile phones) might work, but M-Pesa exists, works and is trusted by its users – and goes a long way toward solving the problems with access to banking that Bitcoin claims to.
Advocates will nevertheless say “but what about the unbanked?” as if Bitcoin is an obvious slam-dunk answer to the problem and nothing else needs to be said. But no viable mechanism to achieve this has ever been put forward.
The free market sure seems to be okay with this. Those middle men provide valuable services like chargebacks, lines of credit, the ability to quickly provide large sums of money without using wheelbarrows to cart them around.
> I'm on the hype train.
You, and almost every other blockchain proponent are so blinded by hype and greed you can't see the very real, very fundamental flaws in bitcoin and "the blockchain". Bitcoin attracts the perfect intersection of people who don't understand economics, math, computer science, finance, business, sociology, or politics. Bitcoin is deeply flawed in all those areas.
i can somewhat +1 this just based on anecdotal evidence. a bunch of guys released an ICO and gathered about 15 mil in funding who ive met. i expected them to be extremely smart but i've found that they lucked out and simply wrote up some docs coding barely anything. the idea...seems cool? but i think they're in way over their heads based on what i've gathered from speaking with them. ICOs seem like a crazy scam
Cryptography is going through a new booming period.
Just skip the hype part and look at the math part..if an improvement is not using cryptography (for example the elliptic curve group directly), it most likely is not critical for scalability of the system.
No, it was founded by, and primarily attracted, weird conspiracy theory spouting goldbugs whose motivation was that (a) they thought a gold standard was still workable (b) they had a pathological aversion to the concept of credit in a banking system. Literally, conspiracy theory. https://davidgerard.co.uk/blockchain/the-conspiracist-gold-b...
The scammers didn't come along just this year with ICOs. Scammers have been endemic in Bitcoin as soon as they were tradeable for anything else at all. Bitcoin was founded by starry eyed naifs and this always attracts predators. Sometimes, e.g. pirateat40, the naifs are also the predators.
If you assume your conclusion, then your conclusion follows. I understand the desire, but a wider need doesn't follow, because a pure gold standard hasn't been adequate to the economy we actually have since the late 1600s. One of the big problems bitcoin has always had is that wishing doesn't make it so.
> I'll remind you that the early days of the internet attracted some weird characters too
Often literally the same characters, the cypherpunks.
- publish all "transactions" (of any nature)
- hash (transaction | hash of previous transaction) and sign the hash
- publish signed hashes along the transactions
- give customers back signed hashes of their transactions
This way you have a system with proovable immutability and guaranteed inclusion into the transaction log. If anyone can come up with a signed hash of a transaction not in the log, it means the system isn't trustworthy and should be punished, through legal or market means.
By the way, we already have a system like this in place: Certificate Transparency. There is no way one can buy "tokens" in such model though, so there is no incentive to hype it ¯\_(ツ)_/¯
Those complains are most of the time coming from free lunch seekers. The network have a value BECAUSE we inject value into it, and that's either direct investment or some energy spent during the mining.
No, it can't. The hard part of Uber isn't the app and the architecture that gets cars to meet together, it's pulling all the shady under-belly moves to avoid taxi regulation or lobby it in your favor, all while being profitable. I've seen quite a few "how I made an Uber clone in a day" posts on here. The tech is boring and simple, the business model and empire is what's important.
Similarly, there were dozens of streaming sites before Netflix and Spotify, but they never took off. Talking with media companies, getting licenses, negotiating royalties, hell, even funding your own productions to attract talent, that's the hard part. Blockchain tech doesn't solve this, it just replaces the MySQL in their complex tech stack.
Sure, these companies can replace their database with blockchain, but that won't stop "middle men" like Netflix from existing, it just... changes their tech stack.
This is where the blockchain shines. You're not going to be able to sue a Dapp, or order it to be taken down. The only enforcement mechanism becomes going after end-users, which is much more difficult than going after the trusted third party running the service.
I think increasing the cost of enforcing restrictions on trade is great from a societal perspective, given using the political system to restrict trade is highly profitable and thus overly done, but whether it's good or bad is beside the point that this is something that the blockchain architecture can do that the centralized server architecture can't.
Why not? If someone makes an app, which has to happen for a service to get users, that’s an endpoint which can be sued. The point where actual money is converted is similarly exposed, and attempts at obfuscation run into existing money laundering laws. Finally, a blockchain protocol which cannot comply with legal requirements can be banned entirely — and since they require public access, non-trivial data volumes, and regular updates blockchains are less resistant to filtering attempts.
>>The point where actual money is converted is similarly exposed, and attempts at obfuscation run into existing money laundering laws.
This is vastly more difficult than a court order to freeze a bank account. Maybe in the future it will get easier, but maybe not. As it is, a Dapp has far betters odds of both surviving censorship and profiting its maker in the face of municipal opposition than a centrally managed server.
>>Finally, a blockchain protocol which cannot comply with legal requirements can be banned entirely
Censoring a blockchain is much harder to do than sue a company in Silicon Valley to stop operating their service in a city.
It's something not even within the legal powers of municipalities, so right there the blockchain is far harder to stop than a traditional company.
I doubt the US wants to become a country that prosecutes people for running software, or imposes a national internet firewall. Countries will have to choose between having an open internet and having the power to restrict commerce. Hopefully most will choose the former.
>>since they require public access, non-trivial data volumes, and regular updates blockchains are less resistant to filtering attempts.
No, it requires much more than what you imply to ban a blockchain. Users can use lightweight verification, which needs very little data, and rely on full nodes outside of the country. A government would have to ban TOR and VPS, and really any encrypted communication into/out-of the country to have any hope of stopping the blockchain.
I just want to clarify that this article is one of many included in a full Spectrum issue dedicated to blockchain technology, which I had a hand in organizing. From the outset I was adamant that we acknowledge the costs and limitations of blockchains. Part of that treatment can be found in the last half of the overview.
But we also try to hit those notes in a separate piece, which you can find here.
https://spectrum.ieee.org/computing/networks/do-you-need-a-b...
The biggest problem I see is that developers might want to seek rents from their contracts as organizations do from their activities. That would perpetuate the problems of inequity and simply update the technology underlying our society. If contracts were all free public goods on the other hand, things could change dramatically. There would be other problems to be solved (e.g., distribution of crypto currencies, move away from centralized mining to better alternatives, etc.) but there would be hope!
I call BS on this. What application can replace people with logic attached to blockchain that also can't do the same with a simple database and code? (And I mean people doing useful work, not bureaucracy which hasn't been automated with macros yet) Blockchain is just a very slow database with distributed consensus. Apart from pure value transfer, what's the use case here where it's actually necessary?
And that's how those (trustless) decentralized ledgers should market themselves. It only needs to come down to that one simple thing: they increase the surface on which supply and demand can interact. The resulting friction generates wealth.
Lots of markets remained untapped because of that third-party need. Forgive the punctual essentialism, but increasing "capitalism"'s reach to those uncharted territories is good. In fact, it is precisely why I think it will take-off: the derived utility from an economic point of view is too high to be ignored.
Sometimes you don't need it to be trust-less or permission-less because some industries only have a handful players who already trust each other. That's not the full picture.
Obviously, there's an efficiency trade-off. But, don't make the mistake to throw the baby with the bath water. No system is perfect. No complex system behaves like it should. Bitcoin is imperfect. There are lots of bullshit and koolaid. Nonetheless, I believe the trend since Satoshi, with the long historical line of research he has built upon, published the Bitcoin paper is clearly upward. It should continue. Satoshi was the spark. Now (r)evolution will be incremental.
What we're seeing in practice is a lot of "Blockchain(tm)" products that are just this, and not actually a blockchain. Remember how Estonia has blockchains in everything and talks them up at every opportunity? Their local "KSI Blockchain" is just a ledger with hashes. https://davidgerard.co.uk/blockchain/2017/09/06/estonias-sma...
The Bitcoin-style decentralisation etc is not in practice useful for real things that aren't cryptocurrencies.
Transaction ledgers with hashes are great stuff! So if they get used more, that'll be the good outcome of "Blockchain(tm)" hype. But this article is just full of what are literally Bitcoin hyperbolic claims, with the buzzword changed.
This IEEE Spectrum "blockchain" issue has been consistently glib and lacking in detail. I'm very disappointed. This is supposed to be a magazine from an institute for engineers.
This is not true at all and shows a common misunderstanding of why the blockchain is useful.
The big breakthrough with blockchains and crypto currencies has very little to do with it it being a ledger with signed hashes. There are two main "good bits" of the blockchain:
- it provides a consensus algorithm to agree on a set of updates to the ledger. Not in git.
- it provides a mechanism for anyone to take part in this consensus algorithm while preventing sybil attacks. Also not in git.
It's been eight years, "where's the beef" is a reasonable question by now.
https://en.wikipedia.org/wiki/John_Gall_(author)#Gall.27s_la...
People like analogizing blockchain development to the development of the world wide web.
Tim Berners-Lee launched the first website in Dec 1990, Google launched in Sept 1998. And in between there were many companies founded that did things that lots of people liked. These companies found widespread use and patronage.
Satoshi Nakamoto launched bitcoin/and the blockchain idea in Jan 2009, it's currently Oct 2017.
What besides trading cryptocurrencies, and endless(half-bakedly) pontificating on, are people doing with blockchains?
What simple, functional, useful blockchain systems are people actually using today that have potential to grow into more useful and complex systems later?
So blockchains give you the ability to open a secure account of valuable digital assets and authorize spending via cryptographic signatures and business logic.
You couldn't do that before blockchains, and it's not hard to imagine interesting variations on the theme: for example the Colony project that's on the top of HN right now.
How is it superior to existing systems? For what applications?
Since blockchains are open source and programmable, that also means it's a checkings account that you can script in any way you want.
It's superior in that it doesn't require a bank. It's also an extremely transparent system, since blockchain transactions are visible to and auditable by everyone, and it has some strong security properties because of decentralization.
The thing is: not every problem is completely trivial to solve even if the basic idea of the blockchain is well known for some years now. I see progress, there are innovative ideas and implementation in the industry every year. It is not about the initial idea, the cryptoindustry is evolving just like the sowtware industry evolved. There may be more hype than necessary, but this stuff and its potential impact is real.
Then your understanding is wrong. It's document timestamping system, dragging along all that data is just a side effect of an implementation detail.
"In 2009, an anonymous hacker (or group of hackers) going by the name of Satoshi Nakamoto unveiled the first entirely digital currency"
In what sense was Satoshi a hacker? Even the modern use of "hacking out code" is a stretch here.
Also, it clearly was not the first digital cash. e-Gold and many others predate it.
It is spiritually based on your single node examples which I encountered earlier last week, so big thanks for that (was just enough to get me started).
Most of the logic resides in models/blockchain.js. You can interact with the node using the HTTP endpoints in routes.js.
Disclaimer: I have no idea what I'm doing, but it seems to work. Would love some feedback.
Alternatively, “proof of work”, as used in Bitcoin.
Having 51% of the computational power does not let you just make up transactions on your own or transfer funds to your own wallet. What it does allow you to do is pay a counter-party, receive some product from them, and then go back and create a new chain where you paid yourself, instead of the counter-party.
The ethereum whitepaper has a nice explanation of this. https://github.com/ethereum/wiki/wiki/White-Paper