Hacker News new | past | comments | ask | show | jobs | submit login
Blockchain Is a Semantic Wasteland (medium.com)
67 points by hunglee2 8 months ago | hide | past | web | favorite | 76 comments



I like to tell people that I could build them a blockchain in less than an hour. Of course, ordinary people including people who invest in cryptocurrencies don't believe this because they don't understand what a blockchain is at all. Upon firing up Codepen and making a simple blockchain, the concept immediately seems less cool to them.

To me, the whole blockchain aspect of cryptocurrencies and related technology isn't particularly interesting, but the idea of automated consensus is. You can tell if someone actually knows a thing or two if they aren't just slobbering over "the blockchain."


You could probably make a simple social network in an hour too. It doesn't make you Facebook. Once the tech matches a market need, though, interesting things can happen.


I don't think those things are comparable. A blockchain is a data structure. A social network is a product involving (many) data structures, including graph-based ones. If you talk about a social network I generally understand what you're talking about. Not so with the term "blockchain."

I think part of the parent's point is that, at their core, blockchains are really relatively simple. But because they're data structures and people confuse them with actual products built over blockchains, there is a lot of semantic overloading that goes on.

When people refer to blockchains they may be variously referring to distributed consensus, the cryptographic primitives, the proof of work, the Merkle trees, the cryptocurrency or the end product built involving all of these things. These are all components which can be decomposed from the blockchain, which belies a general ignorance and lack of critical engagement with the concept for many advocates.

To be clear I'm not saying blockchains don't have viable use cases. Rather I'm saying there is a lot of noise inherent to any discussion about them.


To be fair, a blockchain is the data structure, the mining software, the client wallets, the protocol of broadcasting and collecting transactions, the network of computers to make this work, and the people who use them.

Not to mention the various added value innovations to make a particular blockchain attractive and useful to some people.


> To be fair, a blockchain is the data structure, the mining software, the client wallets, the protocol of broadcasting and collecting transactions, the network of computers to make this work, and the people who use them.

No, that's not really correct - and this is exactly what I'm talking about. Saying a blockchain is all of these things is like saying a website is the backend application, the client web browser, the TLS protocol and all the users who use the website. But most of those things aren't the website.

When we talk about the architecture of any given web application, we decompose these interactions and distinguish between them. We generally even distinguish between backend, frontend, infrastructure and and middleware resources on the server side. This allows us to productively talk about things with precision. In contrast any discussion involving the term "blockchain" suffers because it means 10 things to nine different people.

It's not even an issue of generality. It would probably be fine if the term "blockchain" referred to entire networks and protocols built over blockchain data structures. Then referring to a blockchain would be like referring to "the internet." The real problem is the lack of precision, because in conversation different people are crossing all sorts of layers of abstraction, each to varying degrees of knowledge and expertise. That makes ascertaining the accuracy of claims a murky business for those who aren't substantially well informed.


The problem is no one can think of one. As is often repeated here, there doesn’t seem to be any use case for blockchain that is superior to other technology, other than a cryptocurrency. And even they are rife with problems.


I propose voting. You turn your mobile phone into a voting booth.

The only thing you need is to verify your identity on your phone. In Sweden we have a national system called BankID which is in use everywhere, so this is solvable.

Then you can publish your votes on the blockchain so they're immutable and publicly verifiable. This has some benefits over traditional voting:

* You can vote from your phone

* Votes can be counted instantly in real time

* Votes can be independently verified

* You can verify that your vote is counted correctly and included

You should also be able to make your identity private using zero knowledge proofs so you can verify your own vote but everyone else can not track any individual vote.

Voting via your phone would save huge amounts of time and energy compared to paper voting and it would make holding these votes much easier. It would avoid situations like in the Bush/Gore election where votes were invalid, not counted properly and counted too late.

I believe this would be a superior voting scheme if implemented properly and adopted on a national level.


There is fundamentally no way to do voting on the blockchain that limits one person to one vote and still maintains a system that isn’t completely reliant on trusting a third party at every important level. To start, and this is really important. The end users MUST maintain their own private key and choose their own software that interacts with the blockchain directly. If they use some common website or mobile app then the blockchain is providing nothing. That site / mobile app is already in the middle of 100% of the data. BUT, how we verify people and distribute private keys without again trusting a middleman? And if we don’t distribute private keys and instead have people register online, what stops someone from registering 2 times, 10 times, 1000 times, 1 million times? If some party is saying who can and can’t register for private keys for this blockchain then they are… what? A trusted third party.

What if I lose my private key? Can I just no longer vote for the rest of my life? If I can somehow reclaim my vote that means there is somebody that’s actually controlling that blockchain and it’s no longer trustless and reliable if some party has that power. If I lose my private key and lose my right to vote then that’s a bad system.

What if somebody starts paying people for their private keys? It seems like it’s illegal and immoral to let the practice continue but there’s no way of stopping it. Those private keys are either irrevocable which stays true to the blockchain and not trusting of a middleman OR there is some party the ability to revoke those keys and in that case… THAT’S a trusted middleman.

What happens if a user claims the vote they cast isn’t what the public ledger shows their public key/address as having voted for? What if a lot claim that?

What does the blockchain really provide in these kinds of imagined uses? That a certain set of private keys DID sign a certain set of transactions - assuming a 51% attack isn’t affordable enough for some party wanting to sway the election. That’s it. No connection to reality. Any non awful implementation of it involves inserting trusted third parties at every part of the process. And this isn’t because we’re ‘early’ and we’ll somehow figure these out. They’re fundamental to blockchain design.


> BUT, how we verify people and distribute private keys without again trusting a middleman?

In the case of a national election it's of course okay to trust that the government distributes the keys.

As I said in Sweden we have BankID. With it you log in to all banks, do your taxes, doctors appointments and journals, etc. These are given out at banks and service points which require your ID and send to your address (the exact same security checks as when you're voting). They can be withdrawn and renewed as needed.

We distribute the votes so 1 vote = 1 BankID vote. It's also technically possible to allow users to change their vote if done before the deadline.

All this can happen on any blockchain for example the very secure Bitcoin chain.

> What if I lose my private key?

You renew your BankID and you can change your vote.

> What if somebody starts paying people for their private keys?

What if somebody starts paying people to vote for them? Same problem.

> What happens if a user claims the vote they cast isn’t what the public ledger shows their public key/address as having voted for?

That it's even possible is an improvement over what we have today. Now I just don't know if my vote was counted incorrectly either by a tired worker or a corrupt one(s).

> What does the blockchain really provide in these kinds of imagined uses?

All votes can be counted publicly by anyone. There's no possibility for more votes than registered residents for example. There's no delay.

A lot of money is spent on setting up voting booths, collecting votes and counting them. This is much cheaper. We also don't throw away so much paper.

> assuming a 51% attack isn’t affordable enough for some party wanting to sway the election

Firstly a 51% attack would be easily detectable.

Secondly the only thing you can do is prevent people from voting. You cannot vote for them.

Thirdly all votes cast on the orphaned blocks can still be detected.


>We distribute the votes so 1 vote = 1 BankID vote. It's also technically possible to allow users to change their vote if done before the deadline.

You're describing a system where the government has a list of IDs and associated Private Keys and therefore knows who everyone votes for. That IS NOT OK.


There are ways to anonymize transactions. For example Monero's ring signatures and stealth addresses or ZCash's shielded transactions.

Also it's not that the government has their private keys. The government basically sends a token to an address the voter controls. So they cannot steal their votes and they cannot see where their transactions went.

So this is solvable.


> So this is solvable.

I'm not so confident. The Monero output from those transactions is actually only knowable to the intended recipient so I don't really know how this would work best. Would there be a pre-determined address that we're all sending our vote transactions to? Would that key be public so it could be audited by everyone? It seems like in this scenario systematic abuse by the government would be trivial. Just grant a few % extra tokens to address you control and sign the transactions to vote your way and the'd be no auditability, no knowing which votes came from where. In many elections the polling is good enough and the margin narrow enough that it would be extremely easy to do and not look suspicious.


For example we could have a single address and you vote by tagging your transaction in some way or several addresses which each correspond to one answer. These should all be public.

The initial seeding should also be public so the total amount of votes could be audited as well. It's possible to set it up so you can't ever create any new votes after the initial seed (this is possible in all current token schemes for example).

> Just grant a few % extra tokens to address you control and sign the transactions to vote your way and the'd be no auditability, no knowing which votes came from where. In many elections the polling is good enough and the margin narrow enough that it would be extremely easy to do and not look suspicious.

This is a big problem with paper voting actually. At least with the blockchain based voting you cannot create extra votes out of thin air.

With paper voting you might be able to say "the faulty votes came from this district". You could accomplish the same by setting up separate blockchain votes for each district and then just adding them together to form the final vote to get the same property.


>The initial seeding should also be public so the total amount of votes could be audited as well. It's possible to set it up so you can't ever create any new votes after the initial seed (this is possible in all current token schemes for example). I don't think this addresses the problem. In the US voter turn out is often 30-40% of registered voters. Total vote count would certianly not be a useful metric there.

I hate to be too pedantic about this but that's sort of the point. It doesn't sound like you're describing a blockchain anymore or at least getting any of the purported benefits of a blockchain. You have a central authority now setting up numerous separate instances, controling who gets the voting tokens, able to revoke and re-grant tokens at will, and in charge of setting and publishing the destination. The whole advantage of the blockchain is that there isn't a trusted 3rd party.

If you're already trusting the government you can do cryptographic hashing, a publicly readable database and build in a ton more transparency.


> In the US voter turn out is often 30-40% of registered voters. Total vote count would certianly not be a useful metric there.

We seed it with the # of registered voters. Sure they could try to withhold some % of votes and vote themselves but hopefully that should be noticed.

> It doesn't sound like you're describing a blockchain anymore or at least getting any of the purported benefits of a blockchain.

The blockchain here makes sure the votes are delivered and counted correctly, without permission or trust.

Yes we need to trust the government to set it all up but after that they can't interfere.

> able to revoke and re-grant tokens at will,

This is false. Only the voter can do this.


>Sure they could try to withhold some % of votes and vote themselves but hopefully that should be noticed.

I think with ring signatures obfuscating everything it might be tough or even impossible to detect.

I would certainly enjoy reading a research paper on the viability though!

>> able to revoke and re-grant tokens at will >This is false. Only the voter can do this.

Then I think I don't understand the system you're proposing. How does the user get back their ability to vote if they lose their private key in this scenario?


>What if somebody starts paying people to vote for them? Same problem.

Not really - paying someone to vote with the usual paper system doesn't work because you can't verify that they've voted the way you paid them to.


>you can’t verify that they’ve voted the way you paid them to.

Not if the voter opts in for the vote by mail.


> Voting via your phone would save huge amounts of time and energy compared to paper voting and it would make holding these votes much easier.

This would open up a whole can of worms for things like your employer (or other entity) being able to verify you voted "correctly", excluding people without smartphones, require ID to vote, &etc...


Before proposing using the BankID. Know that is "ID as a service" provided by the Swedish banks. Not the State- and it comes with a cost. Both an "visible" upfront administrative cost to set up the service and a "per use" cost for the vendors. This is to cover expenses for both the CA holder of the x.809 cert in the service but also a huge overhead going down in the pockets of the banks.. Not to forget to mention the data generated from the service that the banks then can use to generate new services and products.. This data now compose your GPS location, device ID, etc.


No. I won’t accept any technological innovations when it comes to voting. Votes should be paper and counted by hand. This is the ultimate safeguard against stealing an election - make sure as many pairs of eyes as possible are involved in every part of the process. Some things are important enough to be manual, cumbersome and expensive.


It's sad you won't even consider alternatives to the broken voting process we have today.


It’s sad that you’re a software developer and can’t see the unacceptable level of risk in using tech to vote.


Homomorphic elections is an idea that has been floating around since at least 2004 [0]. Some even have proof-of-concept implementations to go with their papers [1].

It doesn't need a blockchain (and predates blockchain), and it has some very nice properties, such as not requiring electricity proportional to how much an attacker might spend, and uncoercibility (as defined in their paper).

I think elections are poorly suited to blockchain for several reasons:

1. There is an authority (the government), so the lack of centralized trust of a blockchain adds nothing.

2. The core of a blockchain is preventing double-spends (double-votes) by picking which version of the truth is correct via some input proof-of-something. Unfortunately, there's more value in subverting an election than securing it, so it seems likely if the US uses $20k of computing power to secure the "vote blockchain", a malicious actor will simply spend $20m of compute power to reverse votes or otherwise stall out democracy. It turns out requiring work to secure something works much less well if it's not money. On the flip side, if we have to spend more for each election in proof-of-work computation than any attacker might spend, we quickly also are losing.

3. Blockchain's cryptography does not provide nice properties like uncoercibility, and those things would have to be baked on top, and yet can instead be built separately more simply (as proved by academic research like the one I linked and the hundreds of papers that cite it).

All 4 of the properties you mentioned are totally unrelated to blockchain technology. You could already get all the above if the government just ran an api that let users digitally sign and publish votes and check votes signed with their key, and that publicly exposes a full audit log. None of that requires blockchain, all it requires is that citizens get a private key (also required if it were a blockchain), don't have multiple, and that the private key isn't publicly associated with them for anonymity.

When you say "Blockchain would help because you could vote on your phone", what you really mean is "digital voting with cryptography to make it secure would be nice". Blockchain is irrelevant if all you want is a mobile app and cryptography that excludes the generals problem.

The actual problem is not a technical one in the first place. Elections are a mess for largely human reasons. Pretending that all we need is some magic technology to fix this problem is being wilfully ignorant.

[0]: https://eprint.iacr.org/2004/105.pdf

[1]: http://www.cs.cornell.edu/projects/civitas/


The difference with storing data on a sufficiently secure blockchain is that it's totally immutable and public. Yes the government could run a database with a public API but that requires much more trust that it's coded properly and that a hacker doesn't gain access.

This is why people are distrustful to voting machines and other techy solutions. Having everything verifiable in public addresses these concerns.

> There is an authority (the government), so the lack of centralized trust of a blockchain adds nothing.

The trust needed is for the government to distribute keys/votes instead of trusting the government to store and count your votes as well.

> a malicious actor will simply spend $20m of compute power to reverse votes or otherwise stall out democracy.

Yes they could. It is however easy to detect.

> so it seems likely if the US uses $20k of computing power to secure the "vote blockchain"

We would of course embed our votes in the much more secure Bitcoin ledger which is much harder to attack and runs without any help from the government (although they could help make it even more secure).


Lots of shoulds and might in your proposal. To attract my interest you would need to resolve any security issues with other electronic implementations.

Prove to me it's as safe or safer than pen & paper and I'll consider it.


What's so safe about pen & paper? Here in Eastern Europe, every time somebody ought to win elections but they seem like they don't, you always get two vans full of ballots who support the said candidate. Every time. Everybody knows they are fake ballots and nobody can do anything about it.

I would actually think voting through a blockchain with a solid proof function (obviously not mining for 30 minutes because phone batteries aren't very durable) is the much, much more secure scheme. Especially if executed over encrypted channels like TLS.

...Although with the levels of influence some people have, I wouldn't be surprised if they can catch the 4G traffic at least and fake that too (influencing all ISPs would be impossible even for them). But I will leave that exercise to the blockchain technologists, they seem to have invented mostly tamper-proof comms -- or so they claim?

Sure there are challenges but the physical voting is IMO well-documented to be very easily corruptable and fake-able. Well, at least outside the so-called "first world countries" it is. You guys can still believe in incorruptible democracy if it makes you feel better.


> What's so safe about pen & paper?

An agent has to be physically present to affect it, first of all. This helps a lot by constraining the field of actors from "potentially anyone with an internet connection" to "people who physically come in contact with the artifact". This is a widely underrated safety benefit with applicability all over, not just in elections.

The great benefit of paper voting is its simplicity. Any time you invent a complex contraption and tell the people to just trust that contraption's designers, e.g., the "blockchain technologists" you've mentioned, you've just built a new ruling class.

For something to work, it must use a process and mechanism that is plainly and obviously valid to anyone of sound mind. "Counting marks on paper" is such a process. You can't get much more complex than that before you're transferring control to a new elite.

People will always search for ways to unduly influence and damage processes by which power is ascribed. This is one of the main reasons why a process with trivial verification mechanisms is required for the public to credit the results.

In the year of Spectre and Meltdown, it is immensely naive to pretend that computers are ultimately trustworthy. Simplicity remains supreme, and computers are not simple.


mckmk outlined a lot of issues with online/blockchain voting that I echo, but I have some additional concerns.

It maybe feels dismissive when I put it this way, but you're describing HTML forms. I know you're arguing "votes on the blockchain [are] immutable and publicly verifiable", but there's nothing preventing a political regime claiming mass coercion or hacking and forking the history. Everything else is just a web app (we can even cover immutability, given INSERT only privileges and a UNIQUE constraint):

- You can vote from your phone

My phone has a browser.

- Votes can be counted instantly in real time:

This is how web apps work.

- Votes can be independently verified

Web apps generate logs and store information for later verification.

- You can verify that your vote is counted correctly and included

Ditto.

- You should also be able to make your identity private using zero knowledge proofs...

Either there's a way to map votes to people, unmasking their votes, or the government can pad the votes with junk IDs and no one can verify it. This system fundamentally cannot work.

===

Aside from these intractable, fundamental issues, the two main reasons we don't have online voting yet are:

- Not everyone has a computer or internet access

- It's extremely, dangerously insecure

And before you get into how secure blockchains are, please keep in mind we're not simply talking about technological security. There are so many ways to game this system, the primary one simply being you steal someone's BankID and vote for them. Personal information is stolen by malware all the time. And sure, when the victim goes to vote themselves and finds their vote was already cast, they can alert the authorities. But what if this is the case for a significant percentage of black people in Georgia? Will authorities fix the issue on Election Day? Will they fix 8 million of these issues on Election Day? What if an attacker files 8 million of these "someone voted for me" complaints in the last hour? This adds fragility to an election system that simply can't afford it.

All in all, you need to do a lot more research into the history of online voting proposals before you can seriously propose publishing votes on the blockchain. Which is my entire point about blockchain technology -- whenever someone wants to put something on it, two things are true:

- Other existing technology is a better fit

- The proposer is not an expert on the system they want to replace


> but there's nothing preventing a political regime claiming mass coercion or hacking and forking the history

How would a regime "fork the history" of the Bitcoin blockchain?

This isn't to solve voting in compromised countries, since you after all need to trust the government to give out votes and provide voting candidates, it's about making voting in governments with an already working democracy better. Like the western countries.

> Everything else is just a web app

Yes. The key point is you only need trust to seed the votes the rest can be done in a trustless and verifiable manner. My comment wasn't very clear.

> All in all, you need to do a lot more research into the history of online voting proposals before you can seriously propose publishing votes on the blockchain.

I'm not saying we should do this now. There are as you say many serious problems we would need to solve.

I was only proposing it as a possible use case with several substantial benefits.


I don't know camgunz, don't you remember that time before the blockchain when computers couldn't talk to each other over the internet and cryptographic hashes didn't exist? Because it seems like a lot of the proposed use cases are people who didn't know that those existed and or the power of those.


You don't need decentralization for this.


The benefits are:

* Immutable storage

* Public

Which is gained without any trust.


Well, we do use a blockchain whenever we use Git. Of course, nobody thinks that's cool or revolutionary since that's not sticking it to the man or getting anyone rich.

Don't get me wrong, I actually do think the idea of cryptocurrency is really fascinating and that it's worthwhile to try to find new ways to apply blockchains, but as you say, they currently solve a very limited number of problems.


The tweet from the article is correct: "blockchain" is only popular because Bitcoin is an extremely profitable pyramid scheme / money laundering service. There are no use cases that aren't (already) better served by existing technology. We have:

- databases

- distributed databases

- distributed hash tables

- cryptographic signing

- authentication

I've heard all kinds of ideas that are just bad. Verifiable check in systems (use an app and a database), services were actually delivered (scan a barcode and use a database) supply chain tracking (scan a barcode and use a database).

Do you need Sybil resistance from proof of work because your consensus system is public and trustless? Cool Bitcoin is your jam. Just try to avoid building an unusable currency this go around, although I can't imagine a single additional use for it, and to date no one else can either.

Oh and also try and avoid broiling our planet with your energy use. Earth backup system is not yet online.


> There are no use cases that aren't (already) better served by existing technology.

Repeating for the N:th time on HN.

* Porn

* Donations to wikileaks

* Pot

* Sending money to Venezuela

* Leaving Venezuela with your wealth intact

* Payments without giving all transaction info third parties (PayPal, VISA, etc)

* Digital payments for the unbanked

These are all served better by cryptocurrencies than other alternatives.

A common counterargument is fees are very high on Bitcoin. This is true but it's only an argument against Bitcoin not cryptocurrencies in general. See Bitcoin Cash for example.


These are all uses for Bitcoin, not uses for general blockchain tech, so they're not "additional" uses. But for what it's worth, I think Bitcoin itself is superfluous, being covered almost entirely by:

- Gift cards

- PayPal

- Credit Cards

- Cash / Cashier's Checks / Certified Checks / Money Orders / Wire Transfers

It wasn't at all necessary to build Bitcoin, with its planet-destroying proof of work energy usage, to pay for porn. And besides, the essence of anonymous payments using Bitcoin is the tumbler, not Bitcoin itself (which is super easy to track, precisely because it's got a blockchain).

P.S. If your "leaving Venezuela with your wealth intact" is a "national currencies can be unstable" argument, remember that Bitcoin is extremely unstable and has no system in place to regulate or stabilize it. In fact, because it's often at odds with government monetary policy, there's a base instability that will never go away.


You're right I was simply talking about cryptocurrencies.

The point is cryptocurrencies is simply better at the use cases I presented. You're welcome to come with a better alternative, the ones you list simply doesn't cut it.

> It wasn't at all necessary to build Bitcoin

Actually Bitcoin was built to address the print on demand fiat currency driven by debt and unaccountable fractional reserve driven economy we have today. Giving people the ability to actually own their money for real and not just IOUs.

That digital cash is an excellent use case to pay for porn online is just a coincidence, never the purpose.

> with its planet-destroying proof of work energy usage

As opposed to the planet-destroying energy consumption of the fiat institution today? Or the tobacco industry? Or the military? Or any number of stupid usages of energy (which dwarfs the Bitcoin usage) we have today?

That it's somehow "planet-destroying" is just ignorant. It may be inefficient but it's self regulating and it cannot increase endlessly.

> And besides, the essence of anonymous payments using Bitcoin is the tumbler, not Bitcoin itself

Please see Monero or the shielded transactions of ZCash for how real anonymous payments look.

Also the pseudo-anonymous nature of Bitcoin is already better than the precise data we give credit card companies today.

> remember that Bitcoin is extremely unstable and has no system in place to regulate or stabilize it

Bitcoin is very volatile yes. Yet it's amazingly stable compared to the inflation of 4000% in Venezuela. It will also become more stable as it becomes adopted more.


> Actually Bitcoin was built to address the print on demand fiat currency driven by debt and unaccountable fractional reserve driven economy we have today. Giving people the ability to actually own their money for real and not just IOUs.

Bitcoin only has value because it can be turned into those fiat currencies, and is thus only valuable as an extension of them. So either Bitcoin is worthless, or it's essentially a super-encumbered fiat currency. Unlike basically everything else, it's neither a service nor a commodity. So sure, insofar as you can own ones and zeros you can own Bitcoin. But it doesn't matter _at all_ if you can't turn it into Dollars.

> As opposed to the planet-destroying energy consumption of the fiat institution today? Or the tobacco industry? Or the military? Or any number of stupid usages of energy (which dwarfs the Bitcoin usage) we have today?

This is all whataboutism.

> It may be inefficient but it's self regulating and it cannot increase endlessly.

By "self regulating" do you mean "requires more and more energy use to add new blocks"? That's not very comforting. Plus "it cannot increase endlessly" isn't an argument that inspires faith. "Sure the flu might claim a lot of lives. But it can't claim _all_ of them." See?

> Please see Monero or the shielded transactions of ZCash for how real anonymous payments look.

Please see Visa gift cards for how everyone on earth pays anonymously for things online. We didn't need any of that stuff. As a cool bonus, it's extremely unlikely that the $100 you spend on the card won't turn into $50 because a foreign government shut down a Bitcoin exchange.

> it's amazingly stable compared to the inflation of 4000% in Venezuela. It will also become more stable as it becomes adopted more.

I think it would be a bad idea to denominate your wealth in the currency of an unstable government. I also think it would be a bad idea to denominate your wealth in a currency with no regulation and no backing whatsoever. The only good idea here is to denominate your wealth in a currency backed and regulated by a stable, liberal government.


> These are all served better by cryptocurrencies than other alternatives.

Excuse my ignorance, but why would that be the case?


The problem for porn and pot companies is while legal businesses credit card companies don't accept them.

In the case of porn sites they're forced to go through third parties which charge very large fees for each transaction.

Pot stores are also cash only. Unfortunately cash isn't possible to send digital which is what cryptocurrencies essentially want to be (the term "digital cash" is sometimes used). Interestingly there have been reports of pot stores going bankrupt when the nearby ATM has been removed.

The difference between 3rd party services like credit cards, PayPal, Apple Pay etc and cryptocurrencies is that nobody can prevent a payment for any reason.

This is also why it's better to donate to Wikileaks with cryptocurrencies instead of PayPal since PayPal can if they want to freeze Wikileaks account. In fact this has happened [0].

Another difference is that you don't need to trust a 3rd party to deliver your payment. This is why you can't send money to Venezuela via Western Union but you can with cryptocurrencies (as long as they have internet of course).

Leaving Venezuela's border means you'll get searched and forced to leave all your belongings. It's therefore very hard to bring your wealth with you as you'll most probably lose it or you can't carry it. With Bitcoin for example all you need to do is memorize or write down a 12 word seed and you can bring as much money as you want with you.

Finally it's very difficult to make digital payments in today's world if you can't get a bank account. In effect you're locked out of society pretty hard if this would happen to you. Cryptocurrencies are permissionless and is for everyone.

[0]: https://wikileaks.org/PayPal-freezes-WikiLeaks-donations.htm...


Thank you for the comprehensive answer! TIL


Not sure about digital payments for the unbanked. Are there any real cases of someone unbanked paying for something with crypto? I guess I can see how it could happen in theory.


For example many homeless people have smartphones but they can't get a bank account. It can be really hard to pay your bills if you don't have a bank account today.

Adoption wise we have very long to go but the tech is here.


I would if it were easier/cheaper than going to the corner store and buying a Visa Gift Card to make online purchases.


Jumping on a blockchain thread to ask this question-

Can anyone imagine ANY uses for a centralized blockchain?

IOTA uses tangle, but the idea is the same. Storing immutable data.

I understand Bitcoin, people commit currency fraud. Bitcoin is decentralized. Trustless currency sounds fantastic.

I do not understand these data coins that are centralized. It isnt trustless, and at this point, why not store in a write only sql database?


IOTA isnt trustless, it has a central Coordinator, which can and has censored transactions before.

Why dont they just use any SQL database? No one would be buying their coins if they didnt lie and glitter their Coordinator around with "the tangle" and "muh quantum safe crypto hash function which is broken by rookie level cryptoanalysis".


That is the "genius" behind IOTA or even Ripple. Once you discover that you can publish just a symbol to trade no matter what is behind (beyond a curated story) it is very tempting to start your own cryptoasset, even if the crypto aspect is empty. Just imagine what can happen if you can list your symbol in the NYSE or Nasdaq just putting a database behind.


It sounds like in-game currency without the actual game.


> why not store in a write only sql database?

Probably because the project wouldn't have seen funding without "blockchain" in the proposal title.


> Can anyone imagine ANY uses for a centralized blockchain?

Sure. A centralized chain can be used for anything that a decentralized one can be used for (with one exception [1]), you just have to trust the provider.

[1] The exception is that a decentralized chain cannot be used to fairly distribute rewards to the participants in a decentralized protocol. That makes it harder to use a centralized chain as money because you need a separate mechanism for controlling the money supply than the one that maintains the ledger. In a distributed chain, the same mechanism serves both purposes.


If you can trust the provider, why use an expensive blockchain instead of an inexpensive database?


Because the amount of trust required is significantly reduced if the provider uses a block chain. Without a block chain you need to trust that the provider will not change transactions retroactively. With a block chain you only need to trust that the provider will not censor transactions.


If it is centralised, i.e. one entity controlling write operations, you don't need a blockchain. See e.g. the "when to use a blockchain" flowchart on page 41 (53 of PDF) in the "NIST: Blockchain Technology Overview"[0].

Note also that many systems are sometimes erroneously referred to as using blockchains, for whatever reason (misunderstanding, marketing, etc.). Leaving aside the debate about how decentralised it is, the project you mention has a distributed ledger, but uses a Directed Acyclic Graph (which they call a tangle) rather than a blockchain. Similarly "permissioned blockchains" or "private blockchains" aren't really blockchains in the strict sense because they don't need a consensus mechanism (indeed many now call themselves Distributed Ledger Technology systems).

[0] https://nvlpubs.nist.gov/nistpubs/ir/2018/NIST.IR.8202.pdf


I can point you to a few examples of centralised blockchain designs that make sense, but one that is (imho) easy to understand is what Loom Networks uses.

Essentially, users money is kept in the public Ethereum blockchain so all the cryptoeconomic security properties are assured but the games are developed (and played) in a centralised side-chain using a technique called Plasma that doesn't charge users per tx and has very fast block times (~1 second iirc).

Plasma is a way of extending (for scalability or any other reason) a main-chain such as Ethereum with a new app-specific or industry-specific blockchain, in such a way that the users can always trust their money without having to fully trust the side-chain owner's best intentions.


Haber and Stornetta used one to hash and timestamp documents to prove they said whatever at a given time for legal purposes. Some of the hashes are published in the NYT. Satoshi built on their work in coming up with Bitcoin.


It turns out there are many instances where interacting parties don't have a good way to share transactional data. There's no actual technical reason they don't, they just don't (think...banks FTPing files containing EBCIDIC encoded emulated punches card records to each other+). For these cases, blockchains that are managed (PoA) look like a pretty great solution.

+I've no idea if this actually happens, just trying to paint a general picture of crazy band aid stuff that happens.


You’re describing a need for a standardized protocol not a blockchain.


> Can anyone imagine ANY uses for a centralized blockchain?

I haven't seen any compelling use for either a centralized blockchain (i.e. one entity controls committing the blocks) or a closed blockchain (i.e. access is limited to a group all of which have known identities). Only in the open, peer to peer, case does it seem to have any value at all.


I think there are a bunch of use cases, for example verifying authenticity of high-value products. For example, if you buy a bag from Louis Vuitton from some third party reseller or ebay, you could verify it against LV's centralized product blockchain by scanning/checking some code on the label in the bag.


> "you could verify it against LV's centralized product blockchain"

You can replace the word "blockchain" with "database" in this sentence and it'll still work, i.e. "you could verify it against LV's centralized product database".


Fair enough


I can do the same with my MacBook’s serial number at apple.com. You don’t need a blockchain for that.


I think you hit the nail on the head. The vast majority of blockchain ideas basically sub a blockchain in the role of a traditional database.

The "killer app" for blockchain technology is a currency.


The real question is whether it's good for anything else.


"A blockchain is a chain of blocks" is my new favorite definition. It's not a magic bean that solves all problems. It's just a tiny part of what makes Bitcoin function.


A big part of what makes Bitcoin function the way it does today is that there are a lot of people who believe that it's a magic bean. If enough people believe that something has value then it becomes a self-fulfilling prophecy.


It's hard to find someone who isn't neck deep in at least one ideology. The increased connectivity of the world seems to ensure we all find that niche which hits all our predispositions well enough we come to Believe in them completely.


I see the author's point of view. Hype can be bad, but if there is value there the hype cycle does wear down: https://upload.wikimedia.org/wikipedia/commons/9/94/Gartner_...


I work in public sector digitisation. We’ve spent a lot of money on blockchain proof of concepts, sales meetings and general hype. My colleagues in banking have spent even more.

All those resources have been a complete waste so far, and they’ve entirely been spent on blockchain because of hype. That is extremely bad, because all those resources could have been thrown at something useful.

For whatever reason blockchain has been extremely resilient to reality. It’s almost been a decade, and we’ve yet to see anything purposeful come our way. It’s still on Gartners list for 2019 though, so I guess we’ll spent another year burning money.


> Hype can be bad, but if there is value there the hype cycle does wear down

That is, if something called the "Hype Cycle" even exists. The Hype Cycle is a canonical example of survivorship bias and post hoc rationalization [0]. It is pretty much a compelling narrative not a reflection of technological evolution.

[0] https://www.linkedin.com/pulse/8-lessons-from-20-years-hype-...


If.


Exactly.


    you, sobbing: "you can't just point at every thing using
     a merkle tree and call them blockchains"
    me, pointing at git: "blockchain"
­— https://twitter.com/whitequark/status/946886702932557824


Good article.

Although I'm not completely in agreement with the author, the point is valid and we do need better taxonomy because not everything that uses a blockchain requires highlighting that component over the any other technology it also may rely on.

As for non-public (consortium, enterprise, centralised, etc) blockchains, here I have a very different opinion based on my own work experience, and would point to the Energy Web Foundation's (https://energyweb.org/) consortium network as a prime example or to the work being done on Plasma (https://www.learnplasma.org/en/) which allows for private chains to inhering the security properties of a root public chain like Ethereum, and makes extensive use of cryptoeconomics for trust minimisation.


I am not an expert, I just took the edX blockchain for business last year and have experimented with the Pact contract language (lisp like, it is implemented in Haskell) and Exonum.

I like the term Distributed Ledger Technology (DLT) and my interest is in permissioned (private) systems for use in business, potentially tied into AI (my placeholder site: http://hyperledgerai.com). This is on my free time, and in my free time I have become more interested in neural networks combined with symbolic AI code.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: