19

I keep reading about private companies building blockchains for stuff like supply chain management, and about the billions of dollars that are going to be invested in blockchain over the next 5 years, but there is a gap in the logic here that I don't get.

Distributed Ledger Technology is totally reliant on participation to establish the principle of Distributed Trust. If there are not enough independent actors in the network, you cannot rely on the immutability of the ledger.

In Bitcoin, the blockchain provides a way for participants to "profit", thereby pulling independent participants into the network. Participants are attracted to Bitcoin as they view it as an alternative to another currency (fiat) they perceive to be weakening in value.

Private and Consortium blockchains make no sense to me, but let's say some agency decided they wanted to seed a new public blockchain to do something like: verify that a particular coffee brand came from FairTrade sources.

How would they incentivise independent actors to verify transactions in this chain? Is it the case that they have to create a token reward, and hope over time that the token develops some minimal transactional value, and hope that early adopters make a return? Why would such actors not just participate in standard cryptocurrency blockchains?

It seems like a very hard sell, given the effort involved in running Internet connected hardware.

From where I'm sitting, its hard to see how a public blockchain can have any application beyond replacing fiat currency.

Is my understanding of this correct?

  • having lived in "blockchain-island" Malta, I can stay that the blockchain is a solution looking for a problem. You see tons of application proposals that solve nothing, but add 'blockchain' to their concept to lure the investors. In the past years, I've almost never seen anything that would have made more sense when implemented with a blockchain. Most likely it's a buzz that will eventually fade. – Thomas Jul 2 at 12:41
36

There are a number of research papers that cover the question "Do you need a blockchain?", e.g. the eponymous paper by Wüst & Gervais (2017) and the extensive Blockchain Technology Overview by NIST (2018). At a quick glance, the article When do you need blockchain? Decision models. by Meunier appears to provide a survey collecting a broad range of answers to the question.

The general gist seems to be that you only need a blockchain if all of the following conditions apply to your use case:

  • an actual business problem that needs solving
  • shared consistent state
  • multiple authors
  • append-only data
  • no sensitive information
  • participants do not agree on single trusted third party

Since blockchains are complex and wasteful, they usually are not a better solution to problems that can be solved building on trusted third parties, audits, and distributed databases. If one or multiple of the listed criteria are not met, your problem can likely be more easily solved using these well-explored approaches. Blockchains tend to be the best approach only when they are the only option.

Meunier concludes a bit tongue-in-cheek that the only convincing application so far is the creation of unregulated money.

| improve this answer | |
  • 4
    If automobiles were new, the right question would not be "Do you need an automobile?" but "Does an automobile solve your problem better than a horse does?". Asking if you need a blockchain is asking entirely the wrong question. Sure, horses can solve a lot of the problems we currently use cars to solve, but we do that because cars are a better solution to those problems. Most of what email does, postal mail can do. Email just does it better (often much better), so email is displacing postal mail. – David Schwartz Jun 26 at 15:15
  • 5
    @DavidSchwartz and the answer for blockchain is typically "no". Unless your application meets all the above criteria and can somehow be integrated with a currency. – user253751 Jun 26 at 16:53
  • 6
    xkcd.com/2267 – Acccumulation Jun 27 at 0:25
  • 5
    @DavidSchwartz: Sure. But you can also replace "automobile" with "hot air balloon" in your analogy. Balloons were also new and exciting technology at one point in time, and indeed there are and were some tasks for which they're better suited than any other available mode of transport (especially before the later invention of airplanes). Indeed, back when they were invented, balloons were basically the only available way to lift a human up into the sky. But even back then, if you didn't absolutely need to get airborne, a horse or a ship would almost always be a better choice for transport. – Ilmari Karonen Jun 27 at 14:24
  • 2
    @DavidSchwartz Blockchain just not being applicable as a solution (with any inherent advantage over a simple database/...) to all but very specific problems is a larger limitation than scalability. What you're saying is "the only inherent limitation of a hot air balloon is its speed" - that still doesn't make it a very useful vehicle choice for going shopping or other short trips. Many applications don't require extreme scalability, but many also don't require blockchain. – ManfP Jun 28 at 11:28
6

You don't necessarily need to "buy" external participants

You can have a not-a-cryptocurrency blockchain that's maintained and controlled by a single mostly-trusted entity without any proof of work requirement. This makes the maintenance of the blockchain cheap and efficient, while still enforcing some technical constraints on what that entity can do, reducing the need to trust it. Of course, this assumes some external motivation (legitimate business need) for all the participants.

In this case, the immutability of the public ledger is not ensured by distributed proof of work incentives, but rather out-of-bounds verification - if all the involved parties periodically download the ledger, then any tampering with past data would be immediately detectable by everyone. For example, if some shipment of coffee has its providence recorded in such a ledger, then it's not possible for that central "mostly trusted" party to "go back" and alter the database after some scandal without it being immediately detectable by everyone else.

The key security factor that you're gaining is non-repudiation. You can have a shared consensus record of some financial transactions (e.g. a betting pool) on a non-proof-of-work blockchain. It won't be a currency, it won't be a settlement or enforcement mechanism for these transactions (that would happen in the physical world through legal means), but it will be a trustable shared consensus record of commitments made by all the involved parties. Such a record can be trivially verified and there's no need to spend (waste!) resources in motivating third parties to participate in that verification.

The other risk factors (reliability, censorship, etc) can be mitigated by legal, non-technical means for many non-currency applications.

| improve this answer | |
  • You know someone will publish something incorrect and then retract it and everyone will accept it as long as their explanation is convincing enough, mind you. – user253751 Jun 26 at 16:54
  • 1
    @user253751 That's a feature, not a bug - if you want to accept that change, that's your right; and if you don't, then you have solid evidence of what happened, which is all that's needed from the technical part of the solution. There needs to be an legal mechanism outside of the blockchain to enforce whatever consequences are appropriate in such a situation; the expected use case of such a solution is the normal business environment where you need to cooperate with potentially hostile competitors; there's no trust but legal enforcement of any agreement breach is a viable solution. – Peteris Jun 26 at 17:08
  • @user253751 on-chain technical resolution of conflicts (e.g. finality of transactions determined by possession of some key) is needed or useful only in the relatively small niches of business that involve counterparts that are anonymous or beyond the reach of law. For all other business, a solution where law or negotiations (e.g. everyone deciding to accept somethign) overrides tech is strongly preferrable. – Peteris Jun 26 at 17:10
  • 3
    It seems to me what you've described here is a hash-linked list, which is a tech that pre-dates bitcoin. I don't think its a bad answer per say, but I think it begs the question "how loose does the definition of 'blockchain' get before it stops being useful". – chytrik Jun 26 at 20:16
  • 1
    @chytrik Wellllllll, Minecraft now has a chain block... – user253751 Jun 26 at 21:12
4

This answer kind of jumps around a bit, but I think it's all relevant info. There is a TL;DR at the bottom that more directly answers the question.

Distributed Ledger Technology is totally reliant on participation to establish the principle of Distributed Trust. If there are not enough independent actors in the network, you cannot rely on the immutability of the ledger.

There are actually two things that contribute to building distributed consensus over time, and the distinction between them is quite important in the context of your question.

The bitcoin network is comprised of bitcoin nodes, and in addition to that there are bitcoin miners alongside it. All miners will require a node, but not all nodes are miners. (though if we hold number of nodes constant, a larger portion of those nodes also being miners is indeed a positive in terms of attaining 'distributed trust').

So what is distributed trust then? There are a few parts to it. Immutability of past transactions is one part. Consistency of network rules is another. If the rules were expected to change, how might that affect your investment? You probably wouldn't want someone else to change the rules in a way which unfairly benefits them, but causes you detriment, right?

Miners are incentivized via the block reward to continue appending blocks to the chain, the result of which is a probabilistic immutability of past blocks, and an incentive to continue creating new ones.

Nodes are run by individuals who want to interact with the network without having to trust any third party (sovereignty is the incentive), and it is all nodes reaching consensus together which defines what the consensus rules truly are. If one node tries to change a rule, the other nodes will simply ignore them. This is how consistency in network rules over time is achieved: rule changes generally require very wide-spread consensus among network participants.

So if you don't have enough users incentivized to run both nodes and miners, then you are going to have a hard time actually establishing distributed trust. But perhaps you can still market your product with buzzwords and grab a piece of that apparent 'billions of dollars' ready to flow in..


...let's say some agency decided they wanted to seed a new public blockchain to do something like: verify that a particular coffee brand came from FairTrade sources. How would they incentivise independent actors to verify transactions in this chain?

Supply chain tracking is the perfect example of an often cited 'blockchain application' that makes no sense, but not because of incentives. It fails even before that: the end user looking up their product's history will need to trust that the company that made the product input truthful data to the chain. What is to stop the company from just making up data, that has no truthful relation to the product that the 'supply-chain-tracking-proof' has been placed on? And so if you must trust the company anyways... well then why are we jumping through all these hoops trying to carefully craft incentives to create a functioning blockchain?

This is known as the 'oracle problem', involving situations where data from the physical world is required to be input to the blockchain. You must trust the oracle which is in charge of inputting the information.


From where I'm sitting, its hard to see how a public blockchain can have any application beyond replacing fiat currency.

Timestamping data is one application that exists and is utilized, for example see opentimestamps.org This is done on the bitcoin chain without creating any token or whatever, which is perhaps why there isn't as much investor-hype on it (there is no timestamp-coin to sell, after all).

Namecoin is perhaps interesting in this regard too, because while it makes more sense on technical level, it apparently has little value in the free market. So this is another example where a blockchain solution doesn't seem viable, but for the reason of poor market-fit. People just don't seem to care about using it, at least for now.


TL;DR: Incentivizing network participation is hard, and the incentives need to align not just for miners, but for nodes as well. Removing the network's native asset drastically alters these incentives, and it isn't clear if there is an alternative construction that will restore the game theoretic balance that will ensure 'distributed trust' can be maintained. I would guess that such a system might not really look like bitcoin much at all.

Additionally, there are potentially many reasons a blockchain is not a good solution to a particular problem, that preclude us from even reasonably wanting to consider how we might construct a 'distributed trust' network to address that problem in the first place.

| improve this answer | |
  • 1
    Thanks for detailed answer. Very informative. – Garreth McDaid Jun 26 at 9:01
2

Distributed Ledger Technology is totally reliant on participation to establish the principle of Distributed Trust. If there are not enough independent actors in the network, you cannot rely on the immutability of the ledger.

This is always an advantage of blockchain over every other technology and never a disadvantage. Think about this for just a second. There are only three cases:

  1. Immutability of the ledger is not particularly important. In this case, this is not a disadvantage of blockchain since it doesn't matter.

  2. Immutability of the ledger is important, and there is at least one independent actor that participants consider, correctly, to be totally trustworthy. In this case, there are enough independent actors that you can rely on immutability of the ledger since there is one independent actor that is totally trustworthy.

  3. Immutability of the ledger is important, and there is not at least one independent actor that participants are willing to consider totally trustworthy. In this case, a blockchain is going to be better than any non-blockchain solution because it permits you to have more than one party securing the system and there is no one party. It's also better because nobody can alter the database without a valid, signed transaction.

So in all cases, this either makes blockchain just as good as non-blockchain solutions and in one case, it makes it better. But that's not even true because even in case 2, blockchain solutions are better because less trust is extended to the trusted parties.

I also want to argue against the accepted answer. Asking whether you need a blockchain is the wrong question. When cars were invented, nobody needed them. Horses worked perfectly fine. The question is not whether you need a car because you have some application a horse cannot be used for but whether a car has advantages over a horse that make it the better choice for your application.

Blockchains require less trust because the only thing a violation of trust can do is prevent the network from making forward progress by leaving participants unable to agree on the order in which transactions are executed. In other technologies, a violation of trust can allow the entire database to be lost, replaced, subtly modified, and so on. Even if you have one party everyone trusts, blockchain reduces the costs and complexities for that party to keep the system secure.

| improve this answer | |
  • -100 If I had the reputation for it. Just because a solution is better or as good as another in one aspect this does not mean it's "just as good" in general. From engineering cost to the requirement that typically data should be mutable (not to say that one doesn't want log files which use merkle trees/hash trees to allow auditing) the cost of blockchain based solutions is significant. The accepted answer does a splendid job highlighting in which rare cases a blockchain makes sense outside of the 'cryptocurrency' use case it was designed for, whilst this answer barely touches upon one aspect. – David Mulder Jun 28 at 10:56
  • @DavidMulder The original question pointed out only one supposed disadvantage of blockchains and I showed that it's actually an advantage. You are confused about data mutability -- there is absolutely no difference between "first the data was A, now it's B" and "the data has, as an immutable state, that it was A and then appended on that it changed to B". Mutability and immutability are two ways of expressing precisely the same thing. – David Schwartz Jun 28 at 10:59
  • @DavidMulder As for cost, blockchains are only expensive if they do the initial distribution of a cryptocurrency in a decentralized way. That's still an advantage for blockchains because non-blockchains systems can't do that at all and blockchain systems that don't have that requirement don't have that cost. – David Schwartz Jun 28 at 11:01
  • @DavidMulder The accepted answer answers the wrong question -- when do you need a blockchain, that is, when do you have a problem that can't be solved without a blockchain. That's not the question the OP asked at all. (When do you need a car in the sense of when can a horse not possibly do the job is not the same question as whether a car is a good solution to some problem.) – David Schwartz Jun 28 at 11:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.