What important/crucial real-world applications use blockchain?












69












$begingroup$


As part of some blockchain-related research I am currently undertaking, the notion of using blockchains for a variety of real-world applications are thrown about loosely.



Therefore, I propose the following questions:




  1. What important/crucial real-world applications use blockchain?

  2. To add on to the first question, more specifically, what real-world applications actually need blockchain - who may or may not currently use it?


From a comment, I further note that this disregards the notion of cryptocurrencies. However, the use of smart contracts can have other potential applications aside from benefits they can pose to the area of cryptocurrencies










share|cite|improve this question











$endgroup$












  • $begingroup$
    Some think that voting could be done using blockchains. I don't think this is a good idea, but you might be interested in research in that area.
    $endgroup$
    – Bakuriu
    Jan 6 at 23:05










  • $begingroup$
    We don't have a strict policy for list questions, but there is a general dislike. Please note also this and this discussion; you might want to improve your question as to avoid the problems explained there. If you are not sure how to improve your question maybe we can help you in Computer Science Chat?
    $endgroup$
    – Raphael
    Jan 6 at 23:29






  • 4




    $begingroup$
    See this The Register article: "Blockchain study finds 0.00% success rate and vendors don't call back when asked for evidence"
    $endgroup$
    – Uwe Keim
    Jan 7 at 12:44






  • 6




    $begingroup$
    @Bakuriu: Correction: some people think they can make a load of money selling people the idea that blockchains have some application in voting. They don't.
    $endgroup$
    – R..
    Jan 7 at 14:41






  • 5




    $begingroup$
    Relevant XKCD, in particular the final panel.
    $endgroup$
    – gerrit
    Jan 8 at 11:47
















69












$begingroup$


As part of some blockchain-related research I am currently undertaking, the notion of using blockchains for a variety of real-world applications are thrown about loosely.



Therefore, I propose the following questions:




  1. What important/crucial real-world applications use blockchain?

  2. To add on to the first question, more specifically, what real-world applications actually need blockchain - who may or may not currently use it?


From a comment, I further note that this disregards the notion of cryptocurrencies. However, the use of smart contracts can have other potential applications aside from benefits they can pose to the area of cryptocurrencies










share|cite|improve this question











$endgroup$












  • $begingroup$
    Some think that voting could be done using blockchains. I don't think this is a good idea, but you might be interested in research in that area.
    $endgroup$
    – Bakuriu
    Jan 6 at 23:05










  • $begingroup$
    We don't have a strict policy for list questions, but there is a general dislike. Please note also this and this discussion; you might want to improve your question as to avoid the problems explained there. If you are not sure how to improve your question maybe we can help you in Computer Science Chat?
    $endgroup$
    – Raphael
    Jan 6 at 23:29






  • 4




    $begingroup$
    See this The Register article: "Blockchain study finds 0.00% success rate and vendors don't call back when asked for evidence"
    $endgroup$
    – Uwe Keim
    Jan 7 at 12:44






  • 6




    $begingroup$
    @Bakuriu: Correction: some people think they can make a load of money selling people the idea that blockchains have some application in voting. They don't.
    $endgroup$
    – R..
    Jan 7 at 14:41






  • 5




    $begingroup$
    Relevant XKCD, in particular the final panel.
    $endgroup$
    – gerrit
    Jan 8 at 11:47














69












69








69


32



$begingroup$


As part of some blockchain-related research I am currently undertaking, the notion of using blockchains for a variety of real-world applications are thrown about loosely.



Therefore, I propose the following questions:




  1. What important/crucial real-world applications use blockchain?

  2. To add on to the first question, more specifically, what real-world applications actually need blockchain - who may or may not currently use it?


From a comment, I further note that this disregards the notion of cryptocurrencies. However, the use of smart contracts can have other potential applications aside from benefits they can pose to the area of cryptocurrencies










share|cite|improve this question











$endgroup$




As part of some blockchain-related research I am currently undertaking, the notion of using blockchains for a variety of real-world applications are thrown about loosely.



Therefore, I propose the following questions:




  1. What important/crucial real-world applications use blockchain?

  2. To add on to the first question, more specifically, what real-world applications actually need blockchain - who may or may not currently use it?


From a comment, I further note that this disregards the notion of cryptocurrencies. However, the use of smart contracts can have other potential applications aside from benefits they can pose to the area of cryptocurrencies







blockchain






share|cite|improve this question















share|cite|improve this question













share|cite|improve this question




share|cite|improve this question








edited Jan 6 at 9:32







rshah

















asked Jan 6 at 8:11









rshahrshah

4731511




4731511












  • $begingroup$
    Some think that voting could be done using blockchains. I don't think this is a good idea, but you might be interested in research in that area.
    $endgroup$
    – Bakuriu
    Jan 6 at 23:05










  • $begingroup$
    We don't have a strict policy for list questions, but there is a general dislike. Please note also this and this discussion; you might want to improve your question as to avoid the problems explained there. If you are not sure how to improve your question maybe we can help you in Computer Science Chat?
    $endgroup$
    – Raphael
    Jan 6 at 23:29






  • 4




    $begingroup$
    See this The Register article: "Blockchain study finds 0.00% success rate and vendors don't call back when asked for evidence"
    $endgroup$
    – Uwe Keim
    Jan 7 at 12:44






  • 6




    $begingroup$
    @Bakuriu: Correction: some people think they can make a load of money selling people the idea that blockchains have some application in voting. They don't.
    $endgroup$
    – R..
    Jan 7 at 14:41






  • 5




    $begingroup$
    Relevant XKCD, in particular the final panel.
    $endgroup$
    – gerrit
    Jan 8 at 11:47


















  • $begingroup$
    Some think that voting could be done using blockchains. I don't think this is a good idea, but you might be interested in research in that area.
    $endgroup$
    – Bakuriu
    Jan 6 at 23:05










  • $begingroup$
    We don't have a strict policy for list questions, but there is a general dislike. Please note also this and this discussion; you might want to improve your question as to avoid the problems explained there. If you are not sure how to improve your question maybe we can help you in Computer Science Chat?
    $endgroup$
    – Raphael
    Jan 6 at 23:29






  • 4




    $begingroup$
    See this The Register article: "Blockchain study finds 0.00% success rate and vendors don't call back when asked for evidence"
    $endgroup$
    – Uwe Keim
    Jan 7 at 12:44






  • 6




    $begingroup$
    @Bakuriu: Correction: some people think they can make a load of money selling people the idea that blockchains have some application in voting. They don't.
    $endgroup$
    – R..
    Jan 7 at 14:41






  • 5




    $begingroup$
    Relevant XKCD, in particular the final panel.
    $endgroup$
    – gerrit
    Jan 8 at 11:47
















$begingroup$
Some think that voting could be done using blockchains. I don't think this is a good idea, but you might be interested in research in that area.
$endgroup$
– Bakuriu
Jan 6 at 23:05




$begingroup$
Some think that voting could be done using blockchains. I don't think this is a good idea, but you might be interested in research in that area.
$endgroup$
– Bakuriu
Jan 6 at 23:05












$begingroup$
We don't have a strict policy for list questions, but there is a general dislike. Please note also this and this discussion; you might want to improve your question as to avoid the problems explained there. If you are not sure how to improve your question maybe we can help you in Computer Science Chat?
$endgroup$
– Raphael
Jan 6 at 23:29




$begingroup$
We don't have a strict policy for list questions, but there is a general dislike. Please note also this and this discussion; you might want to improve your question as to avoid the problems explained there. If you are not sure how to improve your question maybe we can help you in Computer Science Chat?
$endgroup$
– Raphael
Jan 6 at 23:29




4




4




$begingroup$
See this The Register article: "Blockchain study finds 0.00% success rate and vendors don't call back when asked for evidence"
$endgroup$
– Uwe Keim
Jan 7 at 12:44




$begingroup$
See this The Register article: "Blockchain study finds 0.00% success rate and vendors don't call back when asked for evidence"
$endgroup$
– Uwe Keim
Jan 7 at 12:44




6




6




$begingroup$
@Bakuriu: Correction: some people think they can make a load of money selling people the idea that blockchains have some application in voting. They don't.
$endgroup$
– R..
Jan 7 at 14:41




$begingroup$
@Bakuriu: Correction: some people think they can make a load of money selling people the idea that blockchains have some application in voting. They don't.
$endgroup$
– R..
Jan 7 at 14:41




5




5




$begingroup$
Relevant XKCD, in particular the final panel.
$endgroup$
– gerrit
Jan 8 at 11:47




$begingroup$
Relevant XKCD, in particular the final panel.
$endgroup$
– gerrit
Jan 8 at 11:47










4 Answers
4






active

oldest

votes


















95












$begingroup$

Apart from Bitcoin and Ethereum (if we are generous) there are no major and
important uses today.



It is important to notice that blockchains have some severe limitations. A
couple of them being:




  • It only really works for purely digital assets

  • The digital asset under control needs to keep its value even if it's public

  • All transactions need to be public

  • A rather bad confirmation time

  • Smart contracts are scary


Purely digital assets



If an asset is actually a physical asset with just a digital "twin" that is
being traded, we will risk that local jurisdiction (i.e. your law enforcement)
can have a different opinion of ownership than what is on the blockchain.



To take an example; suppose that we are trading (real and physical) bikes on the
blockchain, and that on the blockchain, we put its serial number. Suppose
further that I hack your computer and put the ownership of your bike to be me.
Now, if you go to the police, you might be able to convince them that the real
owner of the bike is you, and thus I have to give it back. However, there is no
way of making me give you the digital twin back, thus there is a dissonance: the
bike is owned by you, but the blockchain claims it's owned by me.



There are many such proposed use cases (trading physical goods on a blockchain)
out in the open of trading bikes, diamonds, and even oil.



The digital assets keep value even if public



There are many examples where people want to put assets on the blockchain, but
are somehow under the impression that that gives some kind of control. For
instance, musician Imogen Heap is creating a product in which all musicians
should put their music on the blockchain and automatically be paid when a radio
plays your hit song. They are under the impression that this creates an
automatic link between playing the song and paying for the song.



The only thing it really does is to create a very large database for music which
is probably quite easy to download.



There is currently no way around having to put the full asset visible on the
chain. Some people are talking about "encryptions", "storing only the hash",
etc., but in the end, it all comes down to: publish the asset, or don't
participate.



Public transactions



In business it is often important to keep your cards close to your chest. You
don't want real time exposure of your daily operations.



Some people try to make solutions where we put all the dairy farmers' production
on the blockchain together with all the dairy stores' inventory. In this way we
can easily send trucks to the correct places! However, this makes both farmers
and traders liable for inflated prices if they are overproducing/under-stocked.



Other people want to put energy production (solar panels, wind farms) on the
blockchain. However, no serious energy producer will have real time production
data out for the public. This has major impact on the stock value and that kind
of information is the type you want to keep close to your chest.



This also holds for so-called green certificates, where you ensure you only
use "green energy".



Note: There are theoretical solutions that build on zero-knowledge proofs
that would allow transactions to be secret. However, these are nowhere near
practical yet, and time will show if this item can be fixed.



Confirmation time



You can, like Ethereum, make the block time as small as you would like. In
Bitcoin, the block time is 10 minutes, and in Ethereum it is
less than a minute (I don't remember the specific figure).



However, the smaller block time, the higher the chance of long-lived forks. To
ensure your transaction is confirmed you still have to wait quite long.



There are currently no good solutions here either.



Smart contracts are scary



Smart contract are difficult to write. They are computer programs that move
assets from one account to another (or more complicated). However, we want
traders and "normal" people to be able to write these contracts, and not rely on
computer science programming experts. You can't undo a transaction. This is a
tough nut to crack!



If you are doing high value trading, and end up writing a zero too much in the
transaction (say $10M instead of $1M), you call your bank immediately! That
fixes it. If not, let's hope you have insurance. In a blockchain setting, you
have neither a bank, nor insurance. Those $9M are gone and it was due to a
typo in a smart contract or in a transaction.



Smart contracts is really playing with fire. It's too easy to empty all your
assets in a single click. And it has happened, several times. People have lost hundreds of millions of dollars due to smart contract errors.



Source: I am working for an energy company doing wind and solar energy
production as well as trading oil and gas. Have been working on blockchain
solution projects.






share|cite|improve this answer











$endgroup$









  • 5




    $begingroup$
    "People have lost hundreds of millions of dollars due to smart contract errors." - Wow, this is really, really scary.
    $endgroup$
    – Pedro A
    Jan 6 at 12:47






  • 6




    $begingroup$
    Look at this, @PedroA, where some random person accidentally killed a smart contract, making $300M lost for ever.
    $endgroup$
    – Pål GD
    Jan 6 at 15:49








  • 18




    $begingroup$
    Well, while the provided stats are interesting (although a source would be welcome), i would like to emphasis the word contract in smart contract. An added zero in a contract, smart or not, can't be compared to a fault in a transaction. To me, wanting to discard professionnals in code in smart contracts is exactly like wanting to discard lawyers from (non-smart) contracts. If you care about contract's effects (in blockchain or in law), you need professionnals to write it. And either way, you need a strong proofreading. Do not fall for the harmful idea that good IT is simple IT.
    $endgroup$
    – aluriak
    Jan 6 at 20:03






  • 18




    $begingroup$
    @aluriak Judges will generally uphold contracts despite typos they might contain, unless the agreeing parties had a grossly differing interpretation of some figure or clause, in which case the judge might annul it, seeing that a misunderstanding took place. Self-executing code has no such forgiveness.
    $endgroup$
    – SeldomNeedy
    Jan 6 at 21:45








  • 5




    $begingroup$
    "There are theoretical solutions that build on zero-knowledge proofs that would allow transactions to be secret. However, these are nowhere near practical yet" ZCash Shielded addresses are a working implementation of zero-knowledge proofs used to hide individual transactions for monetary exchange. You can use them right now. I'd argue that's a practical implementation.
    $endgroup$
    – Ari Lotter
    Jan 7 at 20:57



















25












$begingroup$

There are varying definitions of blockchain, and the answer to this question depends a lot on whether you consider the broad or the narrow interpretation. Typical cryptocurrency implementations such as Bitcoin have two parts:




  1. A chain of blocks, linked by cryptographic hashes (SHA256 in Bitcoin) so that the identity of the newest block prevents modifying any earlier record. Most common structure is the Merkle tree, which was first patented in 1979.


  2. A peer-to-peer network of computers that decides what is the newest block (also called "consensus protocol"). In Bitcoin this is done by proof-of-work mechanism (so called mining), which distributes the trust and authority in the network.



A wide interpretation of blockchain would be anything that has the first part, a chain of blocks. These have many widely used applications that predate the cryptocurrencies. Some examples:





  • Git version control system, where Merkle tree is used to protect the version history of software against modification.


  • Certificate Transparency logs, which allow public monitoring of issued HTTPS certificates.

  • Many distributed database systems such as Apache Cassandra, where it is used to check for data consistency between nodes.


However, even though the Merkle tree is a "chain of blocks", many consider that it alone doesn't make a system blockchain based. After all, blockchain is considered a new invention, and Merkle tree definitely isn't new. There is merit to both sides of the argument.



As Pål GD's answer details, apart from cryptocurrencies, there haven't been any widely spread real applications of the full Merkle tree + peer-to-peer network combination.






share|cite|improve this answer











$endgroup$









  • 4




    $begingroup$
    I agree that git is a good starting point if you want to learn what a blockchain is, but it lacks one important thing: there is no consensus mechanism! In blockchain, the consensus mechanism is that the most "expensive" chain is the truth. There is no such thing in the git protocol.
    $endgroup$
    – Pål GD
    Jan 6 at 16:08






  • 1




    $begingroup$
    A Merkle tree is not a "blockchain" despite lots of buzzword-laundering scammers trying to convince people it is. Blockchain necessarily involves a consensus protocol of some sort. It can be (and often is) an idiotic one, but there at least needs to be one.
    $endgroup$
    – R..
    Jan 7 at 14:39






  • 4




    $begingroup$
    @R.. Hmm, what source do you base your comment on, or is it just your opinion? And defining "consensus protocol" is not straightforward either, is "whatever github.com contains" an example of an idiotic consensus protocol? ;)
    $endgroup$
    – jpa
    Jan 7 at 17:53










  • $begingroup$
    @jpa: Yes, I think degenerate cases like dictatorship (consensus defined as everyone agrees with the dictator) count as an idiotic consensus protocol. Otherwise iota wouldn't be a blockchain. ;-)
    $endgroup$
    – R..
    Jan 7 at 23:41



















10












$begingroup$

The given answers focus on the open p2p blockchains of Bitcoin and its likes.



There is however also such initiatives as Hyperledger, R3 Corda, and Enterprise Ethereum Alliance, etc. (Even cloud providers (eg aws) have offerings). These kinds of platforms tend to avoid the time-consuming proof-of-work part and do consensus between selected parties, not being open for anyone with an internet connection necessarily. They also do not always display information in the blocks to the entire world; and instead tend to have protections regarding who can read what on the chain.



These platforms tend to promote their usefulness in cases where parties not wanting to trust each-other, or a third party, with some information, still need a shared source of said data, with agreed-upon rules of how the data will be changed that can be verified.



Goals in using such distributed ledgers include different things, such as added security, transparency and auditability, anonymity, scalability, increased industry collaboration, and allowing for new business models. Which, and how, would depend on which industry and application, but maybe some ideas can be found in this survey or similar places. These kinds of platform are likely what existing companies would look at using if they got into the blockchain space.



Looking at pieces that the platforms advertise actually being used in, we find such initiatives as:



Commodity tracking
- for example major food producers and retailers joining a network aimed at "...connecting growers, processors, distributors, and retailers through a permissioned, permanent and shared record of food system data.".



Data sharing
- for example insurers sharing data for compliance reasons to a network where regulators with permission can look at it. There can also be improved handling of documents on a network instead of current siloes.



Personal information control
- for example hu-manity.co
controlling how personal data is shared with companies.



Since blockchain is new and untested, there would at the moment be more experiments and proof-of-concept applications rather than real-world ones. Many of them will turn out to be poor matches for a hyped technology looking for a problem to solve. However, permissioned or consortium distributed ledgers is one place too look where smaller projects have started to be launched for real applications.






share|cite|improve this answer











$endgroup$









  • 4




    $begingroup$
    A really important use case of the food network you describe is back-tracing food-borne illness—the network helps radically cut the time to identify sources.
    $endgroup$
    – D. Ben Knoble
    Jan 6 at 23:49










  • $begingroup$
    Nice examples. I would also add decentralized DNS as an application. Namecoin came out early with dot-bit and more recently there's the ethereum name service, etc.
    $endgroup$
    – sfmiller940
    Jan 8 at 19:15





















0












$begingroup$

An application that is not big yet, but that may become big soon is authentication of digital documents. I don't know anybody who does this yet, but it is being discussed.



The problem is this: An administrative authority of some sort has thousands, if not millions of digital documents in their care. How do we make sure that the documents that are in the database today are identical to the ones that were there yesterday?



This can have large legal consequences.



One could make several full backups on DVDs or something and store them is several different safe places, but this is costly and still not really safe.



Another problem is that these documents can be confidential and you really don't want to spread copies of them around.



Instead one can make lists of hash signatures and spread those around. They are much smaller and also not confidential. (If done right)



Now, I not sure we really need the chain aspect of block chains, two or three levels of Merkle trees are probably sufficient. However, as long as we are hashing things anyway, it costs very little to add the signature list as a document for the next batch. Maybe not necessary, but doesn't hurt.



One weakness in this system is that documents can be deleted. With only the hash value to go by we can't reconstruct them, but it would add a very visible hole in the data that should at least look ugly to those concerned.






share|cite|improve this answer









$endgroup$













  • $begingroup$
    As you say, this just needs lists of hashes to be stored in multiple places; no need for the blockchain at all.
    $endgroup$
    – David Richerby
    Jan 9 at 11:59










  • $begingroup$
    @DavidRicherby, A "distributed list of hashes" may solve some problems, but not many. A public git repository would be way better. Still someone could be trying to do a major rebase operation, push through a new and improved history and claim "this is the right history, your history is the forged one". Blockchains try to make that impossible (like, if you want to do a major rebase operation in Bitcoin you will need to control all the worlds mining hardware ... came to think, Bitmain could probably do that?)
    $endgroup$
    – tobixen
    Jan 9 at 23:03












  • $begingroup$
    This problem does not require proof of work or crypto coin mining at all. And O.O.'s answer that touches on distributed ledger consensus between a few selected trusted parties addresses all that is required to solve this problem.
    $endgroup$
    – lamont
    Jan 10 at 19:34










  • $begingroup$
    Whom selects whom is to be trusted? I do not like the government choosing entities verifying the government work. Anyway, "proof of work" is not required for something to be called a "blockchain" (and personally I don't believe there is any future in PoW).
    $endgroup$
    – tobixen
    Jan 11 at 19:50














Your Answer





StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");

StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "419"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f102466%2fwhat-important-crucial-real-world-applications-use-blockchain%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























4 Answers
4






active

oldest

votes








4 Answers
4






active

oldest

votes









active

oldest

votes






active

oldest

votes









95












$begingroup$

Apart from Bitcoin and Ethereum (if we are generous) there are no major and
important uses today.



It is important to notice that blockchains have some severe limitations. A
couple of them being:




  • It only really works for purely digital assets

  • The digital asset under control needs to keep its value even if it's public

  • All transactions need to be public

  • A rather bad confirmation time

  • Smart contracts are scary


Purely digital assets



If an asset is actually a physical asset with just a digital "twin" that is
being traded, we will risk that local jurisdiction (i.e. your law enforcement)
can have a different opinion of ownership than what is on the blockchain.



To take an example; suppose that we are trading (real and physical) bikes on the
blockchain, and that on the blockchain, we put its serial number. Suppose
further that I hack your computer and put the ownership of your bike to be me.
Now, if you go to the police, you might be able to convince them that the real
owner of the bike is you, and thus I have to give it back. However, there is no
way of making me give you the digital twin back, thus there is a dissonance: the
bike is owned by you, but the blockchain claims it's owned by me.



There are many such proposed use cases (trading physical goods on a blockchain)
out in the open of trading bikes, diamonds, and even oil.



The digital assets keep value even if public



There are many examples where people want to put assets on the blockchain, but
are somehow under the impression that that gives some kind of control. For
instance, musician Imogen Heap is creating a product in which all musicians
should put their music on the blockchain and automatically be paid when a radio
plays your hit song. They are under the impression that this creates an
automatic link between playing the song and paying for the song.



The only thing it really does is to create a very large database for music which
is probably quite easy to download.



There is currently no way around having to put the full asset visible on the
chain. Some people are talking about "encryptions", "storing only the hash",
etc., but in the end, it all comes down to: publish the asset, or don't
participate.



Public transactions



In business it is often important to keep your cards close to your chest. You
don't want real time exposure of your daily operations.



Some people try to make solutions where we put all the dairy farmers' production
on the blockchain together with all the dairy stores' inventory. In this way we
can easily send trucks to the correct places! However, this makes both farmers
and traders liable for inflated prices if they are overproducing/under-stocked.



Other people want to put energy production (solar panels, wind farms) on the
blockchain. However, no serious energy producer will have real time production
data out for the public. This has major impact on the stock value and that kind
of information is the type you want to keep close to your chest.



This also holds for so-called green certificates, where you ensure you only
use "green energy".



Note: There are theoretical solutions that build on zero-knowledge proofs
that would allow transactions to be secret. However, these are nowhere near
practical yet, and time will show if this item can be fixed.



Confirmation time



You can, like Ethereum, make the block time as small as you would like. In
Bitcoin, the block time is 10 minutes, and in Ethereum it is
less than a minute (I don't remember the specific figure).



However, the smaller block time, the higher the chance of long-lived forks. To
ensure your transaction is confirmed you still have to wait quite long.



There are currently no good solutions here either.



Smart contracts are scary



Smart contract are difficult to write. They are computer programs that move
assets from one account to another (or more complicated). However, we want
traders and "normal" people to be able to write these contracts, and not rely on
computer science programming experts. You can't undo a transaction. This is a
tough nut to crack!



If you are doing high value trading, and end up writing a zero too much in the
transaction (say $10M instead of $1M), you call your bank immediately! That
fixes it. If not, let's hope you have insurance. In a blockchain setting, you
have neither a bank, nor insurance. Those $9M are gone and it was due to a
typo in a smart contract or in a transaction.



Smart contracts is really playing with fire. It's too easy to empty all your
assets in a single click. And it has happened, several times. People have lost hundreds of millions of dollars due to smart contract errors.



Source: I am working for an energy company doing wind and solar energy
production as well as trading oil and gas. Have been working on blockchain
solution projects.






share|cite|improve this answer











$endgroup$









  • 5




    $begingroup$
    "People have lost hundreds of millions of dollars due to smart contract errors." - Wow, this is really, really scary.
    $endgroup$
    – Pedro A
    Jan 6 at 12:47






  • 6




    $begingroup$
    Look at this, @PedroA, where some random person accidentally killed a smart contract, making $300M lost for ever.
    $endgroup$
    – Pål GD
    Jan 6 at 15:49








  • 18




    $begingroup$
    Well, while the provided stats are interesting (although a source would be welcome), i would like to emphasis the word contract in smart contract. An added zero in a contract, smart or not, can't be compared to a fault in a transaction. To me, wanting to discard professionnals in code in smart contracts is exactly like wanting to discard lawyers from (non-smart) contracts. If you care about contract's effects (in blockchain or in law), you need professionnals to write it. And either way, you need a strong proofreading. Do not fall for the harmful idea that good IT is simple IT.
    $endgroup$
    – aluriak
    Jan 6 at 20:03






  • 18




    $begingroup$
    @aluriak Judges will generally uphold contracts despite typos they might contain, unless the agreeing parties had a grossly differing interpretation of some figure or clause, in which case the judge might annul it, seeing that a misunderstanding took place. Self-executing code has no such forgiveness.
    $endgroup$
    – SeldomNeedy
    Jan 6 at 21:45








  • 5




    $begingroup$
    "There are theoretical solutions that build on zero-knowledge proofs that would allow transactions to be secret. However, these are nowhere near practical yet" ZCash Shielded addresses are a working implementation of zero-knowledge proofs used to hide individual transactions for monetary exchange. You can use them right now. I'd argue that's a practical implementation.
    $endgroup$
    – Ari Lotter
    Jan 7 at 20:57
















95












$begingroup$

Apart from Bitcoin and Ethereum (if we are generous) there are no major and
important uses today.



It is important to notice that blockchains have some severe limitations. A
couple of them being:




  • It only really works for purely digital assets

  • The digital asset under control needs to keep its value even if it's public

  • All transactions need to be public

  • A rather bad confirmation time

  • Smart contracts are scary


Purely digital assets



If an asset is actually a physical asset with just a digital "twin" that is
being traded, we will risk that local jurisdiction (i.e. your law enforcement)
can have a different opinion of ownership than what is on the blockchain.



To take an example; suppose that we are trading (real and physical) bikes on the
blockchain, and that on the blockchain, we put its serial number. Suppose
further that I hack your computer and put the ownership of your bike to be me.
Now, if you go to the police, you might be able to convince them that the real
owner of the bike is you, and thus I have to give it back. However, there is no
way of making me give you the digital twin back, thus there is a dissonance: the
bike is owned by you, but the blockchain claims it's owned by me.



There are many such proposed use cases (trading physical goods on a blockchain)
out in the open of trading bikes, diamonds, and even oil.



The digital assets keep value even if public



There are many examples where people want to put assets on the blockchain, but
are somehow under the impression that that gives some kind of control. For
instance, musician Imogen Heap is creating a product in which all musicians
should put their music on the blockchain and automatically be paid when a radio
plays your hit song. They are under the impression that this creates an
automatic link between playing the song and paying for the song.



The only thing it really does is to create a very large database for music which
is probably quite easy to download.



There is currently no way around having to put the full asset visible on the
chain. Some people are talking about "encryptions", "storing only the hash",
etc., but in the end, it all comes down to: publish the asset, or don't
participate.



Public transactions



In business it is often important to keep your cards close to your chest. You
don't want real time exposure of your daily operations.



Some people try to make solutions where we put all the dairy farmers' production
on the blockchain together with all the dairy stores' inventory. In this way we
can easily send trucks to the correct places! However, this makes both farmers
and traders liable for inflated prices if they are overproducing/under-stocked.



Other people want to put energy production (solar panels, wind farms) on the
blockchain. However, no serious energy producer will have real time production
data out for the public. This has major impact on the stock value and that kind
of information is the type you want to keep close to your chest.



This also holds for so-called green certificates, where you ensure you only
use "green energy".



Note: There are theoretical solutions that build on zero-knowledge proofs
that would allow transactions to be secret. However, these are nowhere near
practical yet, and time will show if this item can be fixed.



Confirmation time



You can, like Ethereum, make the block time as small as you would like. In
Bitcoin, the block time is 10 minutes, and in Ethereum it is
less than a minute (I don't remember the specific figure).



However, the smaller block time, the higher the chance of long-lived forks. To
ensure your transaction is confirmed you still have to wait quite long.



There are currently no good solutions here either.



Smart contracts are scary



Smart contract are difficult to write. They are computer programs that move
assets from one account to another (or more complicated). However, we want
traders and "normal" people to be able to write these contracts, and not rely on
computer science programming experts. You can't undo a transaction. This is a
tough nut to crack!



If you are doing high value trading, and end up writing a zero too much in the
transaction (say $10M instead of $1M), you call your bank immediately! That
fixes it. If not, let's hope you have insurance. In a blockchain setting, you
have neither a bank, nor insurance. Those $9M are gone and it was due to a
typo in a smart contract or in a transaction.



Smart contracts is really playing with fire. It's too easy to empty all your
assets in a single click. And it has happened, several times. People have lost hundreds of millions of dollars due to smart contract errors.



Source: I am working for an energy company doing wind and solar energy
production as well as trading oil and gas. Have been working on blockchain
solution projects.






share|cite|improve this answer











$endgroup$









  • 5




    $begingroup$
    "People have lost hundreds of millions of dollars due to smart contract errors." - Wow, this is really, really scary.
    $endgroup$
    – Pedro A
    Jan 6 at 12:47






  • 6




    $begingroup$
    Look at this, @PedroA, where some random person accidentally killed a smart contract, making $300M lost for ever.
    $endgroup$
    – Pål GD
    Jan 6 at 15:49








  • 18




    $begingroup$
    Well, while the provided stats are interesting (although a source would be welcome), i would like to emphasis the word contract in smart contract. An added zero in a contract, smart or not, can't be compared to a fault in a transaction. To me, wanting to discard professionnals in code in smart contracts is exactly like wanting to discard lawyers from (non-smart) contracts. If you care about contract's effects (in blockchain or in law), you need professionnals to write it. And either way, you need a strong proofreading. Do not fall for the harmful idea that good IT is simple IT.
    $endgroup$
    – aluriak
    Jan 6 at 20:03






  • 18




    $begingroup$
    @aluriak Judges will generally uphold contracts despite typos they might contain, unless the agreeing parties had a grossly differing interpretation of some figure or clause, in which case the judge might annul it, seeing that a misunderstanding took place. Self-executing code has no such forgiveness.
    $endgroup$
    – SeldomNeedy
    Jan 6 at 21:45








  • 5




    $begingroup$
    "There are theoretical solutions that build on zero-knowledge proofs that would allow transactions to be secret. However, these are nowhere near practical yet" ZCash Shielded addresses are a working implementation of zero-knowledge proofs used to hide individual transactions for monetary exchange. You can use them right now. I'd argue that's a practical implementation.
    $endgroup$
    – Ari Lotter
    Jan 7 at 20:57














95












95








95





$begingroup$

Apart from Bitcoin and Ethereum (if we are generous) there are no major and
important uses today.



It is important to notice that blockchains have some severe limitations. A
couple of them being:




  • It only really works for purely digital assets

  • The digital asset under control needs to keep its value even if it's public

  • All transactions need to be public

  • A rather bad confirmation time

  • Smart contracts are scary


Purely digital assets



If an asset is actually a physical asset with just a digital "twin" that is
being traded, we will risk that local jurisdiction (i.e. your law enforcement)
can have a different opinion of ownership than what is on the blockchain.



To take an example; suppose that we are trading (real and physical) bikes on the
blockchain, and that on the blockchain, we put its serial number. Suppose
further that I hack your computer and put the ownership of your bike to be me.
Now, if you go to the police, you might be able to convince them that the real
owner of the bike is you, and thus I have to give it back. However, there is no
way of making me give you the digital twin back, thus there is a dissonance: the
bike is owned by you, but the blockchain claims it's owned by me.



There are many such proposed use cases (trading physical goods on a blockchain)
out in the open of trading bikes, diamonds, and even oil.



The digital assets keep value even if public



There are many examples where people want to put assets on the blockchain, but
are somehow under the impression that that gives some kind of control. For
instance, musician Imogen Heap is creating a product in which all musicians
should put their music on the blockchain and automatically be paid when a radio
plays your hit song. They are under the impression that this creates an
automatic link between playing the song and paying for the song.



The only thing it really does is to create a very large database for music which
is probably quite easy to download.



There is currently no way around having to put the full asset visible on the
chain. Some people are talking about "encryptions", "storing only the hash",
etc., but in the end, it all comes down to: publish the asset, or don't
participate.



Public transactions



In business it is often important to keep your cards close to your chest. You
don't want real time exposure of your daily operations.



Some people try to make solutions where we put all the dairy farmers' production
on the blockchain together with all the dairy stores' inventory. In this way we
can easily send trucks to the correct places! However, this makes both farmers
and traders liable for inflated prices if they are overproducing/under-stocked.



Other people want to put energy production (solar panels, wind farms) on the
blockchain. However, no serious energy producer will have real time production
data out for the public. This has major impact on the stock value and that kind
of information is the type you want to keep close to your chest.



This also holds for so-called green certificates, where you ensure you only
use "green energy".



Note: There are theoretical solutions that build on zero-knowledge proofs
that would allow transactions to be secret. However, these are nowhere near
practical yet, and time will show if this item can be fixed.



Confirmation time



You can, like Ethereum, make the block time as small as you would like. In
Bitcoin, the block time is 10 minutes, and in Ethereum it is
less than a minute (I don't remember the specific figure).



However, the smaller block time, the higher the chance of long-lived forks. To
ensure your transaction is confirmed you still have to wait quite long.



There are currently no good solutions here either.



Smart contracts are scary



Smart contract are difficult to write. They are computer programs that move
assets from one account to another (or more complicated). However, we want
traders and "normal" people to be able to write these contracts, and not rely on
computer science programming experts. You can't undo a transaction. This is a
tough nut to crack!



If you are doing high value trading, and end up writing a zero too much in the
transaction (say $10M instead of $1M), you call your bank immediately! That
fixes it. If not, let's hope you have insurance. In a blockchain setting, you
have neither a bank, nor insurance. Those $9M are gone and it was due to a
typo in a smart contract or in a transaction.



Smart contracts is really playing with fire. It's too easy to empty all your
assets in a single click. And it has happened, several times. People have lost hundreds of millions of dollars due to smart contract errors.



Source: I am working for an energy company doing wind and solar energy
production as well as trading oil and gas. Have been working on blockchain
solution projects.






share|cite|improve this answer











$endgroup$



Apart from Bitcoin and Ethereum (if we are generous) there are no major and
important uses today.



It is important to notice that blockchains have some severe limitations. A
couple of them being:




  • It only really works for purely digital assets

  • The digital asset under control needs to keep its value even if it's public

  • All transactions need to be public

  • A rather bad confirmation time

  • Smart contracts are scary


Purely digital assets



If an asset is actually a physical asset with just a digital "twin" that is
being traded, we will risk that local jurisdiction (i.e. your law enforcement)
can have a different opinion of ownership than what is on the blockchain.



To take an example; suppose that we are trading (real and physical) bikes on the
blockchain, and that on the blockchain, we put its serial number. Suppose
further that I hack your computer and put the ownership of your bike to be me.
Now, if you go to the police, you might be able to convince them that the real
owner of the bike is you, and thus I have to give it back. However, there is no
way of making me give you the digital twin back, thus there is a dissonance: the
bike is owned by you, but the blockchain claims it's owned by me.



There are many such proposed use cases (trading physical goods on a blockchain)
out in the open of trading bikes, diamonds, and even oil.



The digital assets keep value even if public



There are many examples where people want to put assets on the blockchain, but
are somehow under the impression that that gives some kind of control. For
instance, musician Imogen Heap is creating a product in which all musicians
should put their music on the blockchain and automatically be paid when a radio
plays your hit song. They are under the impression that this creates an
automatic link between playing the song and paying for the song.



The only thing it really does is to create a very large database for music which
is probably quite easy to download.



There is currently no way around having to put the full asset visible on the
chain. Some people are talking about "encryptions", "storing only the hash",
etc., but in the end, it all comes down to: publish the asset, or don't
participate.



Public transactions



In business it is often important to keep your cards close to your chest. You
don't want real time exposure of your daily operations.



Some people try to make solutions where we put all the dairy farmers' production
on the blockchain together with all the dairy stores' inventory. In this way we
can easily send trucks to the correct places! However, this makes both farmers
and traders liable for inflated prices if they are overproducing/under-stocked.



Other people want to put energy production (solar panels, wind farms) on the
blockchain. However, no serious energy producer will have real time production
data out for the public. This has major impact on the stock value and that kind
of information is the type you want to keep close to your chest.



This also holds for so-called green certificates, where you ensure you only
use "green energy".



Note: There are theoretical solutions that build on zero-knowledge proofs
that would allow transactions to be secret. However, these are nowhere near
practical yet, and time will show if this item can be fixed.



Confirmation time



You can, like Ethereum, make the block time as small as you would like. In
Bitcoin, the block time is 10 minutes, and in Ethereum it is
less than a minute (I don't remember the specific figure).



However, the smaller block time, the higher the chance of long-lived forks. To
ensure your transaction is confirmed you still have to wait quite long.



There are currently no good solutions here either.



Smart contracts are scary



Smart contract are difficult to write. They are computer programs that move
assets from one account to another (or more complicated). However, we want
traders and "normal" people to be able to write these contracts, and not rely on
computer science programming experts. You can't undo a transaction. This is a
tough nut to crack!



If you are doing high value trading, and end up writing a zero too much in the
transaction (say $10M instead of $1M), you call your bank immediately! That
fixes it. If not, let's hope you have insurance. In a blockchain setting, you
have neither a bank, nor insurance. Those $9M are gone and it was due to a
typo in a smart contract or in a transaction.



Smart contracts is really playing with fire. It's too easy to empty all your
assets in a single click. And it has happened, several times. People have lost hundreds of millions of dollars due to smart contract errors.



Source: I am working for an energy company doing wind and solar energy
production as well as trading oil and gas. Have been working on blockchain
solution projects.







share|cite|improve this answer














share|cite|improve this answer



share|cite|improve this answer








edited Jan 7 at 6:17









SeldomNeedy

1032




1032










answered Jan 6 at 9:53









Pål GDPål GD

7,1502342




7,1502342








  • 5




    $begingroup$
    "People have lost hundreds of millions of dollars due to smart contract errors." - Wow, this is really, really scary.
    $endgroup$
    – Pedro A
    Jan 6 at 12:47






  • 6




    $begingroup$
    Look at this, @PedroA, where some random person accidentally killed a smart contract, making $300M lost for ever.
    $endgroup$
    – Pål GD
    Jan 6 at 15:49








  • 18




    $begingroup$
    Well, while the provided stats are interesting (although a source would be welcome), i would like to emphasis the word contract in smart contract. An added zero in a contract, smart or not, can't be compared to a fault in a transaction. To me, wanting to discard professionnals in code in smart contracts is exactly like wanting to discard lawyers from (non-smart) contracts. If you care about contract's effects (in blockchain or in law), you need professionnals to write it. And either way, you need a strong proofreading. Do not fall for the harmful idea that good IT is simple IT.
    $endgroup$
    – aluriak
    Jan 6 at 20:03






  • 18




    $begingroup$
    @aluriak Judges will generally uphold contracts despite typos they might contain, unless the agreeing parties had a grossly differing interpretation of some figure or clause, in which case the judge might annul it, seeing that a misunderstanding took place. Self-executing code has no such forgiveness.
    $endgroup$
    – SeldomNeedy
    Jan 6 at 21:45








  • 5




    $begingroup$
    "There are theoretical solutions that build on zero-knowledge proofs that would allow transactions to be secret. However, these are nowhere near practical yet" ZCash Shielded addresses are a working implementation of zero-knowledge proofs used to hide individual transactions for monetary exchange. You can use them right now. I'd argue that's a practical implementation.
    $endgroup$
    – Ari Lotter
    Jan 7 at 20:57














  • 5




    $begingroup$
    "People have lost hundreds of millions of dollars due to smart contract errors." - Wow, this is really, really scary.
    $endgroup$
    – Pedro A
    Jan 6 at 12:47






  • 6




    $begingroup$
    Look at this, @PedroA, where some random person accidentally killed a smart contract, making $300M lost for ever.
    $endgroup$
    – Pål GD
    Jan 6 at 15:49








  • 18




    $begingroup$
    Well, while the provided stats are interesting (although a source would be welcome), i would like to emphasis the word contract in smart contract. An added zero in a contract, smart or not, can't be compared to a fault in a transaction. To me, wanting to discard professionnals in code in smart contracts is exactly like wanting to discard lawyers from (non-smart) contracts. If you care about contract's effects (in blockchain or in law), you need professionnals to write it. And either way, you need a strong proofreading. Do not fall for the harmful idea that good IT is simple IT.
    $endgroup$
    – aluriak
    Jan 6 at 20:03






  • 18




    $begingroup$
    @aluriak Judges will generally uphold contracts despite typos they might contain, unless the agreeing parties had a grossly differing interpretation of some figure or clause, in which case the judge might annul it, seeing that a misunderstanding took place. Self-executing code has no such forgiveness.
    $endgroup$
    – SeldomNeedy
    Jan 6 at 21:45








  • 5




    $begingroup$
    "There are theoretical solutions that build on zero-knowledge proofs that would allow transactions to be secret. However, these are nowhere near practical yet" ZCash Shielded addresses are a working implementation of zero-knowledge proofs used to hide individual transactions for monetary exchange. You can use them right now. I'd argue that's a practical implementation.
    $endgroup$
    – Ari Lotter
    Jan 7 at 20:57








5




5




$begingroup$
"People have lost hundreds of millions of dollars due to smart contract errors." - Wow, this is really, really scary.
$endgroup$
– Pedro A
Jan 6 at 12:47




$begingroup$
"People have lost hundreds of millions of dollars due to smart contract errors." - Wow, this is really, really scary.
$endgroup$
– Pedro A
Jan 6 at 12:47




6




6




$begingroup$
Look at this, @PedroA, where some random person accidentally killed a smart contract, making $300M lost for ever.
$endgroup$
– Pål GD
Jan 6 at 15:49






$begingroup$
Look at this, @PedroA, where some random person accidentally killed a smart contract, making $300M lost for ever.
$endgroup$
– Pål GD
Jan 6 at 15:49






18




18




$begingroup$
Well, while the provided stats are interesting (although a source would be welcome), i would like to emphasis the word contract in smart contract. An added zero in a contract, smart or not, can't be compared to a fault in a transaction. To me, wanting to discard professionnals in code in smart contracts is exactly like wanting to discard lawyers from (non-smart) contracts. If you care about contract's effects (in blockchain or in law), you need professionnals to write it. And either way, you need a strong proofreading. Do not fall for the harmful idea that good IT is simple IT.
$endgroup$
– aluriak
Jan 6 at 20:03




$begingroup$
Well, while the provided stats are interesting (although a source would be welcome), i would like to emphasis the word contract in smart contract. An added zero in a contract, smart or not, can't be compared to a fault in a transaction. To me, wanting to discard professionnals in code in smart contracts is exactly like wanting to discard lawyers from (non-smart) contracts. If you care about contract's effects (in blockchain or in law), you need professionnals to write it. And either way, you need a strong proofreading. Do not fall for the harmful idea that good IT is simple IT.
$endgroup$
– aluriak
Jan 6 at 20:03




18




18




$begingroup$
@aluriak Judges will generally uphold contracts despite typos they might contain, unless the agreeing parties had a grossly differing interpretation of some figure or clause, in which case the judge might annul it, seeing that a misunderstanding took place. Self-executing code has no such forgiveness.
$endgroup$
– SeldomNeedy
Jan 6 at 21:45






$begingroup$
@aluriak Judges will generally uphold contracts despite typos they might contain, unless the agreeing parties had a grossly differing interpretation of some figure or clause, in which case the judge might annul it, seeing that a misunderstanding took place. Self-executing code has no such forgiveness.
$endgroup$
– SeldomNeedy
Jan 6 at 21:45






5




5




$begingroup$
"There are theoretical solutions that build on zero-knowledge proofs that would allow transactions to be secret. However, these are nowhere near practical yet" ZCash Shielded addresses are a working implementation of zero-knowledge proofs used to hide individual transactions for monetary exchange. You can use them right now. I'd argue that's a practical implementation.
$endgroup$
– Ari Lotter
Jan 7 at 20:57




$begingroup$
"There are theoretical solutions that build on zero-knowledge proofs that would allow transactions to be secret. However, these are nowhere near practical yet" ZCash Shielded addresses are a working implementation of zero-knowledge proofs used to hide individual transactions for monetary exchange. You can use them right now. I'd argue that's a practical implementation.
$endgroup$
– Ari Lotter
Jan 7 at 20:57











25












$begingroup$

There are varying definitions of blockchain, and the answer to this question depends a lot on whether you consider the broad or the narrow interpretation. Typical cryptocurrency implementations such as Bitcoin have two parts:




  1. A chain of blocks, linked by cryptographic hashes (SHA256 in Bitcoin) so that the identity of the newest block prevents modifying any earlier record. Most common structure is the Merkle tree, which was first patented in 1979.


  2. A peer-to-peer network of computers that decides what is the newest block (also called "consensus protocol"). In Bitcoin this is done by proof-of-work mechanism (so called mining), which distributes the trust and authority in the network.



A wide interpretation of blockchain would be anything that has the first part, a chain of blocks. These have many widely used applications that predate the cryptocurrencies. Some examples:





  • Git version control system, where Merkle tree is used to protect the version history of software against modification.


  • Certificate Transparency logs, which allow public monitoring of issued HTTPS certificates.

  • Many distributed database systems such as Apache Cassandra, where it is used to check for data consistency between nodes.


However, even though the Merkle tree is a "chain of blocks", many consider that it alone doesn't make a system blockchain based. After all, blockchain is considered a new invention, and Merkle tree definitely isn't new. There is merit to both sides of the argument.



As Pål GD's answer details, apart from cryptocurrencies, there haven't been any widely spread real applications of the full Merkle tree + peer-to-peer network combination.






share|cite|improve this answer











$endgroup$









  • 4




    $begingroup$
    I agree that git is a good starting point if you want to learn what a blockchain is, but it lacks one important thing: there is no consensus mechanism! In blockchain, the consensus mechanism is that the most "expensive" chain is the truth. There is no such thing in the git protocol.
    $endgroup$
    – Pål GD
    Jan 6 at 16:08






  • 1




    $begingroup$
    A Merkle tree is not a "blockchain" despite lots of buzzword-laundering scammers trying to convince people it is. Blockchain necessarily involves a consensus protocol of some sort. It can be (and often is) an idiotic one, but there at least needs to be one.
    $endgroup$
    – R..
    Jan 7 at 14:39






  • 4




    $begingroup$
    @R.. Hmm, what source do you base your comment on, or is it just your opinion? And defining "consensus protocol" is not straightforward either, is "whatever github.com contains" an example of an idiotic consensus protocol? ;)
    $endgroup$
    – jpa
    Jan 7 at 17:53










  • $begingroup$
    @jpa: Yes, I think degenerate cases like dictatorship (consensus defined as everyone agrees with the dictator) count as an idiotic consensus protocol. Otherwise iota wouldn't be a blockchain. ;-)
    $endgroup$
    – R..
    Jan 7 at 23:41
















25












$begingroup$

There are varying definitions of blockchain, and the answer to this question depends a lot on whether you consider the broad or the narrow interpretation. Typical cryptocurrency implementations such as Bitcoin have two parts:




  1. A chain of blocks, linked by cryptographic hashes (SHA256 in Bitcoin) so that the identity of the newest block prevents modifying any earlier record. Most common structure is the Merkle tree, which was first patented in 1979.


  2. A peer-to-peer network of computers that decides what is the newest block (also called "consensus protocol"). In Bitcoin this is done by proof-of-work mechanism (so called mining), which distributes the trust and authority in the network.



A wide interpretation of blockchain would be anything that has the first part, a chain of blocks. These have many widely used applications that predate the cryptocurrencies. Some examples:





  • Git version control system, where Merkle tree is used to protect the version history of software against modification.


  • Certificate Transparency logs, which allow public monitoring of issued HTTPS certificates.

  • Many distributed database systems such as Apache Cassandra, where it is used to check for data consistency between nodes.


However, even though the Merkle tree is a "chain of blocks", many consider that it alone doesn't make a system blockchain based. After all, blockchain is considered a new invention, and Merkle tree definitely isn't new. There is merit to both sides of the argument.



As Pål GD's answer details, apart from cryptocurrencies, there haven't been any widely spread real applications of the full Merkle tree + peer-to-peer network combination.






share|cite|improve this answer











$endgroup$









  • 4




    $begingroup$
    I agree that git is a good starting point if you want to learn what a blockchain is, but it lacks one important thing: there is no consensus mechanism! In blockchain, the consensus mechanism is that the most "expensive" chain is the truth. There is no such thing in the git protocol.
    $endgroup$
    – Pål GD
    Jan 6 at 16:08






  • 1




    $begingroup$
    A Merkle tree is not a "blockchain" despite lots of buzzword-laundering scammers trying to convince people it is. Blockchain necessarily involves a consensus protocol of some sort. It can be (and often is) an idiotic one, but there at least needs to be one.
    $endgroup$
    – R..
    Jan 7 at 14:39






  • 4




    $begingroup$
    @R.. Hmm, what source do you base your comment on, or is it just your opinion? And defining "consensus protocol" is not straightforward either, is "whatever github.com contains" an example of an idiotic consensus protocol? ;)
    $endgroup$
    – jpa
    Jan 7 at 17:53










  • $begingroup$
    @jpa: Yes, I think degenerate cases like dictatorship (consensus defined as everyone agrees with the dictator) count as an idiotic consensus protocol. Otherwise iota wouldn't be a blockchain. ;-)
    $endgroup$
    – R..
    Jan 7 at 23:41














25












25








25





$begingroup$

There are varying definitions of blockchain, and the answer to this question depends a lot on whether you consider the broad or the narrow interpretation. Typical cryptocurrency implementations such as Bitcoin have two parts:




  1. A chain of blocks, linked by cryptographic hashes (SHA256 in Bitcoin) so that the identity of the newest block prevents modifying any earlier record. Most common structure is the Merkle tree, which was first patented in 1979.


  2. A peer-to-peer network of computers that decides what is the newest block (also called "consensus protocol"). In Bitcoin this is done by proof-of-work mechanism (so called mining), which distributes the trust and authority in the network.



A wide interpretation of blockchain would be anything that has the first part, a chain of blocks. These have many widely used applications that predate the cryptocurrencies. Some examples:





  • Git version control system, where Merkle tree is used to protect the version history of software against modification.


  • Certificate Transparency logs, which allow public monitoring of issued HTTPS certificates.

  • Many distributed database systems such as Apache Cassandra, where it is used to check for data consistency between nodes.


However, even though the Merkle tree is a "chain of blocks", many consider that it alone doesn't make a system blockchain based. After all, blockchain is considered a new invention, and Merkle tree definitely isn't new. There is merit to both sides of the argument.



As Pål GD's answer details, apart from cryptocurrencies, there haven't been any widely spread real applications of the full Merkle tree + peer-to-peer network combination.






share|cite|improve this answer











$endgroup$



There are varying definitions of blockchain, and the answer to this question depends a lot on whether you consider the broad or the narrow interpretation. Typical cryptocurrency implementations such as Bitcoin have two parts:




  1. A chain of blocks, linked by cryptographic hashes (SHA256 in Bitcoin) so that the identity of the newest block prevents modifying any earlier record. Most common structure is the Merkle tree, which was first patented in 1979.


  2. A peer-to-peer network of computers that decides what is the newest block (also called "consensus protocol"). In Bitcoin this is done by proof-of-work mechanism (so called mining), which distributes the trust and authority in the network.



A wide interpretation of blockchain would be anything that has the first part, a chain of blocks. These have many widely used applications that predate the cryptocurrencies. Some examples:





  • Git version control system, where Merkle tree is used to protect the version history of software against modification.


  • Certificate Transparency logs, which allow public monitoring of issued HTTPS certificates.

  • Many distributed database systems such as Apache Cassandra, where it is used to check for data consistency between nodes.


However, even though the Merkle tree is a "chain of blocks", many consider that it alone doesn't make a system blockchain based. After all, blockchain is considered a new invention, and Merkle tree definitely isn't new. There is merit to both sides of the argument.



As Pål GD's answer details, apart from cryptocurrencies, there haven't been any widely spread real applications of the full Merkle tree + peer-to-peer network combination.







share|cite|improve this answer














share|cite|improve this answer



share|cite|improve this answer








edited Jan 7 at 17:54

























answered Jan 6 at 11:39









jpajpa

35124




35124








  • 4




    $begingroup$
    I agree that git is a good starting point if you want to learn what a blockchain is, but it lacks one important thing: there is no consensus mechanism! In blockchain, the consensus mechanism is that the most "expensive" chain is the truth. There is no such thing in the git protocol.
    $endgroup$
    – Pål GD
    Jan 6 at 16:08






  • 1




    $begingroup$
    A Merkle tree is not a "blockchain" despite lots of buzzword-laundering scammers trying to convince people it is. Blockchain necessarily involves a consensus protocol of some sort. It can be (and often is) an idiotic one, but there at least needs to be one.
    $endgroup$
    – R..
    Jan 7 at 14:39






  • 4




    $begingroup$
    @R.. Hmm, what source do you base your comment on, or is it just your opinion? And defining "consensus protocol" is not straightforward either, is "whatever github.com contains" an example of an idiotic consensus protocol? ;)
    $endgroup$
    – jpa
    Jan 7 at 17:53










  • $begingroup$
    @jpa: Yes, I think degenerate cases like dictatorship (consensus defined as everyone agrees with the dictator) count as an idiotic consensus protocol. Otherwise iota wouldn't be a blockchain. ;-)
    $endgroup$
    – R..
    Jan 7 at 23:41














  • 4




    $begingroup$
    I agree that git is a good starting point if you want to learn what a blockchain is, but it lacks one important thing: there is no consensus mechanism! In blockchain, the consensus mechanism is that the most "expensive" chain is the truth. There is no such thing in the git protocol.
    $endgroup$
    – Pål GD
    Jan 6 at 16:08






  • 1




    $begingroup$
    A Merkle tree is not a "blockchain" despite lots of buzzword-laundering scammers trying to convince people it is. Blockchain necessarily involves a consensus protocol of some sort. It can be (and often is) an idiotic one, but there at least needs to be one.
    $endgroup$
    – R..
    Jan 7 at 14:39






  • 4




    $begingroup$
    @R.. Hmm, what source do you base your comment on, or is it just your opinion? And defining "consensus protocol" is not straightforward either, is "whatever github.com contains" an example of an idiotic consensus protocol? ;)
    $endgroup$
    – jpa
    Jan 7 at 17:53










  • $begingroup$
    @jpa: Yes, I think degenerate cases like dictatorship (consensus defined as everyone agrees with the dictator) count as an idiotic consensus protocol. Otherwise iota wouldn't be a blockchain. ;-)
    $endgroup$
    – R..
    Jan 7 at 23:41








4




4




$begingroup$
I agree that git is a good starting point if you want to learn what a blockchain is, but it lacks one important thing: there is no consensus mechanism! In blockchain, the consensus mechanism is that the most "expensive" chain is the truth. There is no such thing in the git protocol.
$endgroup$
– Pål GD
Jan 6 at 16:08




$begingroup$
I agree that git is a good starting point if you want to learn what a blockchain is, but it lacks one important thing: there is no consensus mechanism! In blockchain, the consensus mechanism is that the most "expensive" chain is the truth. There is no such thing in the git protocol.
$endgroup$
– Pål GD
Jan 6 at 16:08




1




1




$begingroup$
A Merkle tree is not a "blockchain" despite lots of buzzword-laundering scammers trying to convince people it is. Blockchain necessarily involves a consensus protocol of some sort. It can be (and often is) an idiotic one, but there at least needs to be one.
$endgroup$
– R..
Jan 7 at 14:39




$begingroup$
A Merkle tree is not a "blockchain" despite lots of buzzword-laundering scammers trying to convince people it is. Blockchain necessarily involves a consensus protocol of some sort. It can be (and often is) an idiotic one, but there at least needs to be one.
$endgroup$
– R..
Jan 7 at 14:39




4




4




$begingroup$
@R.. Hmm, what source do you base your comment on, or is it just your opinion? And defining "consensus protocol" is not straightforward either, is "whatever github.com contains" an example of an idiotic consensus protocol? ;)
$endgroup$
– jpa
Jan 7 at 17:53




$begingroup$
@R.. Hmm, what source do you base your comment on, or is it just your opinion? And defining "consensus protocol" is not straightforward either, is "whatever github.com contains" an example of an idiotic consensus protocol? ;)
$endgroup$
– jpa
Jan 7 at 17:53












$begingroup$
@jpa: Yes, I think degenerate cases like dictatorship (consensus defined as everyone agrees with the dictator) count as an idiotic consensus protocol. Otherwise iota wouldn't be a blockchain. ;-)
$endgroup$
– R..
Jan 7 at 23:41




$begingroup$
@jpa: Yes, I think degenerate cases like dictatorship (consensus defined as everyone agrees with the dictator) count as an idiotic consensus protocol. Otherwise iota wouldn't be a blockchain. ;-)
$endgroup$
– R..
Jan 7 at 23:41











10












$begingroup$

The given answers focus on the open p2p blockchains of Bitcoin and its likes.



There is however also such initiatives as Hyperledger, R3 Corda, and Enterprise Ethereum Alliance, etc. (Even cloud providers (eg aws) have offerings). These kinds of platforms tend to avoid the time-consuming proof-of-work part and do consensus between selected parties, not being open for anyone with an internet connection necessarily. They also do not always display information in the blocks to the entire world; and instead tend to have protections regarding who can read what on the chain.



These platforms tend to promote their usefulness in cases where parties not wanting to trust each-other, or a third party, with some information, still need a shared source of said data, with agreed-upon rules of how the data will be changed that can be verified.



Goals in using such distributed ledgers include different things, such as added security, transparency and auditability, anonymity, scalability, increased industry collaboration, and allowing for new business models. Which, and how, would depend on which industry and application, but maybe some ideas can be found in this survey or similar places. These kinds of platform are likely what existing companies would look at using if they got into the blockchain space.



Looking at pieces that the platforms advertise actually being used in, we find such initiatives as:



Commodity tracking
- for example major food producers and retailers joining a network aimed at "...connecting growers, processors, distributors, and retailers through a permissioned, permanent and shared record of food system data.".



Data sharing
- for example insurers sharing data for compliance reasons to a network where regulators with permission can look at it. There can also be improved handling of documents on a network instead of current siloes.



Personal information control
- for example hu-manity.co
controlling how personal data is shared with companies.



Since blockchain is new and untested, there would at the moment be more experiments and proof-of-concept applications rather than real-world ones. Many of them will turn out to be poor matches for a hyped technology looking for a problem to solve. However, permissioned or consortium distributed ledgers is one place too look where smaller projects have started to be launched for real applications.






share|cite|improve this answer











$endgroup$









  • 4




    $begingroup$
    A really important use case of the food network you describe is back-tracing food-borne illness—the network helps radically cut the time to identify sources.
    $endgroup$
    – D. Ben Knoble
    Jan 6 at 23:49










  • $begingroup$
    Nice examples. I would also add decentralized DNS as an application. Namecoin came out early with dot-bit and more recently there's the ethereum name service, etc.
    $endgroup$
    – sfmiller940
    Jan 8 at 19:15


















10












$begingroup$

The given answers focus on the open p2p blockchains of Bitcoin and its likes.



There is however also such initiatives as Hyperledger, R3 Corda, and Enterprise Ethereum Alliance, etc. (Even cloud providers (eg aws) have offerings). These kinds of platforms tend to avoid the time-consuming proof-of-work part and do consensus between selected parties, not being open for anyone with an internet connection necessarily. They also do not always display information in the blocks to the entire world; and instead tend to have protections regarding who can read what on the chain.



These platforms tend to promote their usefulness in cases where parties not wanting to trust each-other, or a third party, with some information, still need a shared source of said data, with agreed-upon rules of how the data will be changed that can be verified.



Goals in using such distributed ledgers include different things, such as added security, transparency and auditability, anonymity, scalability, increased industry collaboration, and allowing for new business models. Which, and how, would depend on which industry and application, but maybe some ideas can be found in this survey or similar places. These kinds of platform are likely what existing companies would look at using if they got into the blockchain space.



Looking at pieces that the platforms advertise actually being used in, we find such initiatives as:



Commodity tracking
- for example major food producers and retailers joining a network aimed at "...connecting growers, processors, distributors, and retailers through a permissioned, permanent and shared record of food system data.".



Data sharing
- for example insurers sharing data for compliance reasons to a network where regulators with permission can look at it. There can also be improved handling of documents on a network instead of current siloes.



Personal information control
- for example hu-manity.co
controlling how personal data is shared with companies.



Since blockchain is new and untested, there would at the moment be more experiments and proof-of-concept applications rather than real-world ones. Many of them will turn out to be poor matches for a hyped technology looking for a problem to solve. However, permissioned or consortium distributed ledgers is one place too look where smaller projects have started to be launched for real applications.






share|cite|improve this answer











$endgroup$









  • 4




    $begingroup$
    A really important use case of the food network you describe is back-tracing food-borne illness—the network helps radically cut the time to identify sources.
    $endgroup$
    – D. Ben Knoble
    Jan 6 at 23:49










  • $begingroup$
    Nice examples. I would also add decentralized DNS as an application. Namecoin came out early with dot-bit and more recently there's the ethereum name service, etc.
    $endgroup$
    – sfmiller940
    Jan 8 at 19:15
















10












10








10





$begingroup$

The given answers focus on the open p2p blockchains of Bitcoin and its likes.



There is however also such initiatives as Hyperledger, R3 Corda, and Enterprise Ethereum Alliance, etc. (Even cloud providers (eg aws) have offerings). These kinds of platforms tend to avoid the time-consuming proof-of-work part and do consensus between selected parties, not being open for anyone with an internet connection necessarily. They also do not always display information in the blocks to the entire world; and instead tend to have protections regarding who can read what on the chain.



These platforms tend to promote their usefulness in cases where parties not wanting to trust each-other, or a third party, with some information, still need a shared source of said data, with agreed-upon rules of how the data will be changed that can be verified.



Goals in using such distributed ledgers include different things, such as added security, transparency and auditability, anonymity, scalability, increased industry collaboration, and allowing for new business models. Which, and how, would depend on which industry and application, but maybe some ideas can be found in this survey or similar places. These kinds of platform are likely what existing companies would look at using if they got into the blockchain space.



Looking at pieces that the platforms advertise actually being used in, we find such initiatives as:



Commodity tracking
- for example major food producers and retailers joining a network aimed at "...connecting growers, processors, distributors, and retailers through a permissioned, permanent and shared record of food system data.".



Data sharing
- for example insurers sharing data for compliance reasons to a network where regulators with permission can look at it. There can also be improved handling of documents on a network instead of current siloes.



Personal information control
- for example hu-manity.co
controlling how personal data is shared with companies.



Since blockchain is new and untested, there would at the moment be more experiments and proof-of-concept applications rather than real-world ones. Many of them will turn out to be poor matches for a hyped technology looking for a problem to solve. However, permissioned or consortium distributed ledgers is one place too look where smaller projects have started to be launched for real applications.






share|cite|improve this answer











$endgroup$



The given answers focus on the open p2p blockchains of Bitcoin and its likes.



There is however also such initiatives as Hyperledger, R3 Corda, and Enterprise Ethereum Alliance, etc. (Even cloud providers (eg aws) have offerings). These kinds of platforms tend to avoid the time-consuming proof-of-work part and do consensus between selected parties, not being open for anyone with an internet connection necessarily. They also do not always display information in the blocks to the entire world; and instead tend to have protections regarding who can read what on the chain.



These platforms tend to promote their usefulness in cases where parties not wanting to trust each-other, or a third party, with some information, still need a shared source of said data, with agreed-upon rules of how the data will be changed that can be verified.



Goals in using such distributed ledgers include different things, such as added security, transparency and auditability, anonymity, scalability, increased industry collaboration, and allowing for new business models. Which, and how, would depend on which industry and application, but maybe some ideas can be found in this survey or similar places. These kinds of platform are likely what existing companies would look at using if they got into the blockchain space.



Looking at pieces that the platforms advertise actually being used in, we find such initiatives as:



Commodity tracking
- for example major food producers and retailers joining a network aimed at "...connecting growers, processors, distributors, and retailers through a permissioned, permanent and shared record of food system data.".



Data sharing
- for example insurers sharing data for compliance reasons to a network where regulators with permission can look at it. There can also be improved handling of documents on a network instead of current siloes.



Personal information control
- for example hu-manity.co
controlling how personal data is shared with companies.



Since blockchain is new and untested, there would at the moment be more experiments and proof-of-concept applications rather than real-world ones. Many of them will turn out to be poor matches for a hyped technology looking for a problem to solve. However, permissioned or consortium distributed ledgers is one place too look where smaller projects have started to be launched for real applications.







share|cite|improve this answer














share|cite|improve this answer



share|cite|improve this answer








edited Jan 6 at 23:51

























answered Jan 6 at 23:11









O.O.O.O.

20114




20114








  • 4




    $begingroup$
    A really important use case of the food network you describe is back-tracing food-borne illness—the network helps radically cut the time to identify sources.
    $endgroup$
    – D. Ben Knoble
    Jan 6 at 23:49










  • $begingroup$
    Nice examples. I would also add decentralized DNS as an application. Namecoin came out early with dot-bit and more recently there's the ethereum name service, etc.
    $endgroup$
    – sfmiller940
    Jan 8 at 19:15
















  • 4




    $begingroup$
    A really important use case of the food network you describe is back-tracing food-borne illness—the network helps radically cut the time to identify sources.
    $endgroup$
    – D. Ben Knoble
    Jan 6 at 23:49










  • $begingroup$
    Nice examples. I would also add decentralized DNS as an application. Namecoin came out early with dot-bit and more recently there's the ethereum name service, etc.
    $endgroup$
    – sfmiller940
    Jan 8 at 19:15










4




4




$begingroup$
A really important use case of the food network you describe is back-tracing food-borne illness—the network helps radically cut the time to identify sources.
$endgroup$
– D. Ben Knoble
Jan 6 at 23:49




$begingroup$
A really important use case of the food network you describe is back-tracing food-borne illness—the network helps radically cut the time to identify sources.
$endgroup$
– D. Ben Knoble
Jan 6 at 23:49












$begingroup$
Nice examples. I would also add decentralized DNS as an application. Namecoin came out early with dot-bit and more recently there's the ethereum name service, etc.
$endgroup$
– sfmiller940
Jan 8 at 19:15






$begingroup$
Nice examples. I would also add decentralized DNS as an application. Namecoin came out early with dot-bit and more recently there's the ethereum name service, etc.
$endgroup$
– sfmiller940
Jan 8 at 19:15













0












$begingroup$

An application that is not big yet, but that may become big soon is authentication of digital documents. I don't know anybody who does this yet, but it is being discussed.



The problem is this: An administrative authority of some sort has thousands, if not millions of digital documents in their care. How do we make sure that the documents that are in the database today are identical to the ones that were there yesterday?



This can have large legal consequences.



One could make several full backups on DVDs or something and store them is several different safe places, but this is costly and still not really safe.



Another problem is that these documents can be confidential and you really don't want to spread copies of them around.



Instead one can make lists of hash signatures and spread those around. They are much smaller and also not confidential. (If done right)



Now, I not sure we really need the chain aspect of block chains, two or three levels of Merkle trees are probably sufficient. However, as long as we are hashing things anyway, it costs very little to add the signature list as a document for the next batch. Maybe not necessary, but doesn't hurt.



One weakness in this system is that documents can be deleted. With only the hash value to go by we can't reconstruct them, but it would add a very visible hole in the data that should at least look ugly to those concerned.






share|cite|improve this answer









$endgroup$













  • $begingroup$
    As you say, this just needs lists of hashes to be stored in multiple places; no need for the blockchain at all.
    $endgroup$
    – David Richerby
    Jan 9 at 11:59










  • $begingroup$
    @DavidRicherby, A "distributed list of hashes" may solve some problems, but not many. A public git repository would be way better. Still someone could be trying to do a major rebase operation, push through a new and improved history and claim "this is the right history, your history is the forged one". Blockchains try to make that impossible (like, if you want to do a major rebase operation in Bitcoin you will need to control all the worlds mining hardware ... came to think, Bitmain could probably do that?)
    $endgroup$
    – tobixen
    Jan 9 at 23:03












  • $begingroup$
    This problem does not require proof of work or crypto coin mining at all. And O.O.'s answer that touches on distributed ledger consensus between a few selected trusted parties addresses all that is required to solve this problem.
    $endgroup$
    – lamont
    Jan 10 at 19:34










  • $begingroup$
    Whom selects whom is to be trusted? I do not like the government choosing entities verifying the government work. Anyway, "proof of work" is not required for something to be called a "blockchain" (and personally I don't believe there is any future in PoW).
    $endgroup$
    – tobixen
    Jan 11 at 19:50


















0












$begingroup$

An application that is not big yet, but that may become big soon is authentication of digital documents. I don't know anybody who does this yet, but it is being discussed.



The problem is this: An administrative authority of some sort has thousands, if not millions of digital documents in their care. How do we make sure that the documents that are in the database today are identical to the ones that were there yesterday?



This can have large legal consequences.



One could make several full backups on DVDs or something and store them is several different safe places, but this is costly and still not really safe.



Another problem is that these documents can be confidential and you really don't want to spread copies of them around.



Instead one can make lists of hash signatures and spread those around. They are much smaller and also not confidential. (If done right)



Now, I not sure we really need the chain aspect of block chains, two or three levels of Merkle trees are probably sufficient. However, as long as we are hashing things anyway, it costs very little to add the signature list as a document for the next batch. Maybe not necessary, but doesn't hurt.



One weakness in this system is that documents can be deleted. With only the hash value to go by we can't reconstruct them, but it would add a very visible hole in the data that should at least look ugly to those concerned.






share|cite|improve this answer









$endgroup$













  • $begingroup$
    As you say, this just needs lists of hashes to be stored in multiple places; no need for the blockchain at all.
    $endgroup$
    – David Richerby
    Jan 9 at 11:59










  • $begingroup$
    @DavidRicherby, A "distributed list of hashes" may solve some problems, but not many. A public git repository would be way better. Still someone could be trying to do a major rebase operation, push through a new and improved history and claim "this is the right history, your history is the forged one". Blockchains try to make that impossible (like, if you want to do a major rebase operation in Bitcoin you will need to control all the worlds mining hardware ... came to think, Bitmain could probably do that?)
    $endgroup$
    – tobixen
    Jan 9 at 23:03












  • $begingroup$
    This problem does not require proof of work or crypto coin mining at all. And O.O.'s answer that touches on distributed ledger consensus between a few selected trusted parties addresses all that is required to solve this problem.
    $endgroup$
    – lamont
    Jan 10 at 19:34










  • $begingroup$
    Whom selects whom is to be trusted? I do not like the government choosing entities verifying the government work. Anyway, "proof of work" is not required for something to be called a "blockchain" (and personally I don't believe there is any future in PoW).
    $endgroup$
    – tobixen
    Jan 11 at 19:50
















0












0








0





$begingroup$

An application that is not big yet, but that may become big soon is authentication of digital documents. I don't know anybody who does this yet, but it is being discussed.



The problem is this: An administrative authority of some sort has thousands, if not millions of digital documents in their care. How do we make sure that the documents that are in the database today are identical to the ones that were there yesterday?



This can have large legal consequences.



One could make several full backups on DVDs or something and store them is several different safe places, but this is costly and still not really safe.



Another problem is that these documents can be confidential and you really don't want to spread copies of them around.



Instead one can make lists of hash signatures and spread those around. They are much smaller and also not confidential. (If done right)



Now, I not sure we really need the chain aspect of block chains, two or three levels of Merkle trees are probably sufficient. However, as long as we are hashing things anyway, it costs very little to add the signature list as a document for the next batch. Maybe not necessary, but doesn't hurt.



One weakness in this system is that documents can be deleted. With only the hash value to go by we can't reconstruct them, but it would add a very visible hole in the data that should at least look ugly to those concerned.






share|cite|improve this answer









$endgroup$



An application that is not big yet, but that may become big soon is authentication of digital documents. I don't know anybody who does this yet, but it is being discussed.



The problem is this: An administrative authority of some sort has thousands, if not millions of digital documents in their care. How do we make sure that the documents that are in the database today are identical to the ones that were there yesterday?



This can have large legal consequences.



One could make several full backups on DVDs or something and store them is several different safe places, but this is costly and still not really safe.



Another problem is that these documents can be confidential and you really don't want to spread copies of them around.



Instead one can make lists of hash signatures and spread those around. They are much smaller and also not confidential. (If done right)



Now, I not sure we really need the chain aspect of block chains, two or three levels of Merkle trees are probably sufficient. However, as long as we are hashing things anyway, it costs very little to add the signature list as a document for the next batch. Maybe not necessary, but doesn't hurt.



One weakness in this system is that documents can be deleted. With only the hash value to go by we can't reconstruct them, but it would add a very visible hole in the data that should at least look ugly to those concerned.







share|cite|improve this answer












share|cite|improve this answer



share|cite|improve this answer










answered Jan 9 at 11:49









Stig HemmerStig Hemmer

1373




1373












  • $begingroup$
    As you say, this just needs lists of hashes to be stored in multiple places; no need for the blockchain at all.
    $endgroup$
    – David Richerby
    Jan 9 at 11:59










  • $begingroup$
    @DavidRicherby, A "distributed list of hashes" may solve some problems, but not many. A public git repository would be way better. Still someone could be trying to do a major rebase operation, push through a new and improved history and claim "this is the right history, your history is the forged one". Blockchains try to make that impossible (like, if you want to do a major rebase operation in Bitcoin you will need to control all the worlds mining hardware ... came to think, Bitmain could probably do that?)
    $endgroup$
    – tobixen
    Jan 9 at 23:03












  • $begingroup$
    This problem does not require proof of work or crypto coin mining at all. And O.O.'s answer that touches on distributed ledger consensus between a few selected trusted parties addresses all that is required to solve this problem.
    $endgroup$
    – lamont
    Jan 10 at 19:34










  • $begingroup$
    Whom selects whom is to be trusted? I do not like the government choosing entities verifying the government work. Anyway, "proof of work" is not required for something to be called a "blockchain" (and personally I don't believe there is any future in PoW).
    $endgroup$
    – tobixen
    Jan 11 at 19:50




















  • $begingroup$
    As you say, this just needs lists of hashes to be stored in multiple places; no need for the blockchain at all.
    $endgroup$
    – David Richerby
    Jan 9 at 11:59










  • $begingroup$
    @DavidRicherby, A "distributed list of hashes" may solve some problems, but not many. A public git repository would be way better. Still someone could be trying to do a major rebase operation, push through a new and improved history and claim "this is the right history, your history is the forged one". Blockchains try to make that impossible (like, if you want to do a major rebase operation in Bitcoin you will need to control all the worlds mining hardware ... came to think, Bitmain could probably do that?)
    $endgroup$
    – tobixen
    Jan 9 at 23:03












  • $begingroup$
    This problem does not require proof of work or crypto coin mining at all. And O.O.'s answer that touches on distributed ledger consensus between a few selected trusted parties addresses all that is required to solve this problem.
    $endgroup$
    – lamont
    Jan 10 at 19:34










  • $begingroup$
    Whom selects whom is to be trusted? I do not like the government choosing entities verifying the government work. Anyway, "proof of work" is not required for something to be called a "blockchain" (and personally I don't believe there is any future in PoW).
    $endgroup$
    – tobixen
    Jan 11 at 19:50


















$begingroup$
As you say, this just needs lists of hashes to be stored in multiple places; no need for the blockchain at all.
$endgroup$
– David Richerby
Jan 9 at 11:59




$begingroup$
As you say, this just needs lists of hashes to be stored in multiple places; no need for the blockchain at all.
$endgroup$
– David Richerby
Jan 9 at 11:59












$begingroup$
@DavidRicherby, A "distributed list of hashes" may solve some problems, but not many. A public git repository would be way better. Still someone could be trying to do a major rebase operation, push through a new and improved history and claim "this is the right history, your history is the forged one". Blockchains try to make that impossible (like, if you want to do a major rebase operation in Bitcoin you will need to control all the worlds mining hardware ... came to think, Bitmain could probably do that?)
$endgroup$
– tobixen
Jan 9 at 23:03






$begingroup$
@DavidRicherby, A "distributed list of hashes" may solve some problems, but not many. A public git repository would be way better. Still someone could be trying to do a major rebase operation, push through a new and improved history and claim "this is the right history, your history is the forged one". Blockchains try to make that impossible (like, if you want to do a major rebase operation in Bitcoin you will need to control all the worlds mining hardware ... came to think, Bitmain could probably do that?)
$endgroup$
– tobixen
Jan 9 at 23:03














$begingroup$
This problem does not require proof of work or crypto coin mining at all. And O.O.'s answer that touches on distributed ledger consensus between a few selected trusted parties addresses all that is required to solve this problem.
$endgroup$
– lamont
Jan 10 at 19:34




$begingroup$
This problem does not require proof of work or crypto coin mining at all. And O.O.'s answer that touches on distributed ledger consensus between a few selected trusted parties addresses all that is required to solve this problem.
$endgroup$
– lamont
Jan 10 at 19:34












$begingroup$
Whom selects whom is to be trusted? I do not like the government choosing entities verifying the government work. Anyway, "proof of work" is not required for something to be called a "blockchain" (and personally I don't believe there is any future in PoW).
$endgroup$
– tobixen
Jan 11 at 19:50






$begingroup$
Whom selects whom is to be trusted? I do not like the government choosing entities verifying the government work. Anyway, "proof of work" is not required for something to be called a "blockchain" (and personally I don't believe there is any future in PoW).
$endgroup$
– tobixen
Jan 11 at 19:50




















draft saved

draft discarded




















































Thanks for contributing an answer to Computer Science Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


Use MathJax to format equations. MathJax reference.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f102466%2fwhat-important-crucial-real-world-applications-use-blockchain%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

Wiesbaden

Marschland

Dieringhausen