Difference between revisions of "Blockchain"

From Wikispooks
Jump to navigation Jump to search
(add video)
m (→‎Design features: t (This refers to a scenario called 51%-attack since a entity controlling 51% of votes in the consensus algorithm is able to introduce such a - fraudulent - change))
 
(16 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
''Not to be confused with [[p2p]] technology, which may or may not be used to store a blockchain''
 
{{concept
 
{{concept
 
|wikipedia=https://simple.wikipedia.org/wiki/Blockchain
 
|wikipedia=https://simple.wikipedia.org/wiki/Blockchain
|constitutes=surveillance technology,digital identity
+
|constitutes=surveillance technology?, Concurrent Versions System
|description=ID that allegedly can not be forged, perfect for tagging every person in the world.
+
|description=a method of storing a list of entries, which cannot be changed easily after they are created.
 
|start=1991
 
|start=1991
 
|interests=social credit system
 
|interests=social credit system
 
}}
 
}}
{{YouTubeVideo
+
A '''Blockchain''' (or '''block chain''') is a method of storing a list of entries, which cannot be changed easily after they are created. This is done by [[hash function]]s, [[consensus algorithm]]s and redundant storage an many computers. Transactions are secured by asymetric public key [[cryptography]], including [[digital signature]]s.
|code=JzrFAHwrhVc
+
 
|align=left
+
==Analogy with Wikispooks software==
|caption=[[Alison McDowell]] asks if it is prudent to place our "trust" in a technology of unknown origin? No one knows who or what [[Santoshi Nakamoto]] actually is and whose interests this invention advances. Why would we be so naive as to remake the world's social and economic structures around this code? What would it mean to live life on a ledger?
+
WS is based on the mediawiki software and may serve as practical example, although it has many more features. The pagename in a wiki is analogous to an ''address'' on a blockchain.
}}
+
 
A '''Blockchain''' (or '''block chain''') is a method of storing a list of entries, which cannot be changed easily after they are created. This also applies to the list.  This is done by using several concepts from [[cryptography]], including [[digital signature]]s and [[hash function]]s. In very basic terms, a blockchain combines the following two ideas:
+
When the ''View history'' link is clicked all changes ever made to the ''content'' of the ''address'' are displayed. It is important not to confuse the pagename or ''address'' with the ''content'' or ''entries'' it holds. Analogous to a page, a blockchain records changes to the contents of an address. The history itself is resistant to change. Like in wikiland an address may be created anytime and may have no content at this time. Content may be created offline, i.e. with a text editor and added to the database later.
 +
 
 +
This is analogous to creating and using an ''address'' on a blockchain offline. New addresses must be unique, but a clash is very unlikely in practice on a blockchain (due to the astronomical number of addresses and their randomly chosen characters). If the address does not exist yet a new address is created, just like in a wiki. 
 +
 
 +
Otherwise any content or transaction is written to the pre-existing address. The major difference to mediawiki is that every address or pagename has an owner, secured by a strong [[passphrase]]. Others may donate (add) to the address, but only the owner can spend (remove) after entering his passphrase (i.e. locally, most secure variant). After a number of changes occurred on different pages they are lumped together, sealed and called a ''block'', or package. Every block has a unique signature, links to the previous block and contains a fingerprint of the sum of all previous blocks - hence a block chain.
 +
 
 +
The concept of a blockchain is thus quite simple. The tricky part is when several people have different versions of the blockchain at different times, how to synchronize them? This is discussed on {{FA|Blockchain/Consensus}}.
 +
 
 +
==History==
 +
  {{YouTubeVideo
 +
  |code=sYaim16f3qw
 +
  |caption=John-McAfee-s-speech-about-government,-taxes,-banks
 +
  |align=right
 +
  |width=400
 +
  }}
 +
Programmers use Concurrent Versions Systems (i.e. cvs, [[git]], etc) to record changes to the code they produce. If a file has changed is determined by a [[hash function]], a fingerprint of the file. The history of edits is displayed as a chain of events. CVS makes it hard to alter previous events in such a chain. If two or more developers edit the same file simultaniously a conflict occurs, which is solved by either merging files manually or forking the chain (leading to a tree structure).
 +
 
 +
Every user has a copy of the complete chain (called a ''repository'') and every edit (''commit'') is marked by the fingerprint (hash) of all previous edits plus the current edit. It is therefore easy to identify if someone tempered with the history. This is called a [[hash tree]] or [[merkle tree]].
  
 +
==Design features==
 +
In very basic terms, a blockchain combines the following two ideas:
 
# Given some data, it is easy to calculate a [[checksum]] over the data.  Special [[hash function]]<nowiki/>s can be designed to calculate this checksum. These functions can be designed to return a value that always has the same length, which is not dependent on the length of the input. This value is called ''hash value'', or ''message digest''. The functions also have another property: Given the same input, they must return the same output (hash value/message digest).
 
# Given some data, it is easy to calculate a [[checksum]] over the data.  Special [[hash function]]<nowiki/>s can be designed to calculate this checksum. These functions can be designed to return a value that always has the same length, which is not dependent on the length of the input. This value is called ''hash value'', or ''message digest''. The functions also have another property: Given the same input, they must return the same output (hash value/message digest).
 
# In addition to the hash values, a block typically also contains a timestamp, and some payload. Each block uses a digital signature<ref>https://web.archive.org/web/20191016115436/https://www.ambiguousit.com/blockchain-security-is-blockchain-secure-enough-really</ref>, which allows detecting any change in the data since the signature was made. When new blocks of data are created, the newly created block will also contain the hash value of the previous block.<ref name="cryptocurrencytech">Narayanan, Arvind; Bonneau, Joseph; Felten, Edward; Miller, Andrew; Goldfeder, Steven (2016). Bitcoin and cryptocurrency technologies: a comprehensive introduction. Princeton: Princeton University Press. ISBN 978-0-691-17169-2.</ref>
 
# In addition to the hash values, a block typically also contains a timestamp, and some payload. Each block uses a digital signature<ref>https://web.archive.org/web/20191016115436/https://www.ambiguousit.com/blockchain-security-is-blockchain-secure-enough-really</ref>, which allows detecting any change in the data since the signature was made. When new blocks of data are created, the newly created block will also contain the hash value of the previous block.<ref name="cryptocurrencytech">Narayanan, Arvind; Bonneau, Joseph; Felten, Edward; Miller, Andrew; Goldfeder, Steven (2016). Bitcoin and cryptocurrency technologies: a comprehensive introduction. Princeton: Princeton University Press. ISBN 978-0-691-17169-2.</ref>
  
In most cases, a blockchain is managed by a [[peer-to-peer]] network. All peers use a common [[Communication protocol|protocol]] that specifies how they should communicate with each other, how a new block is created and validated. Once recorded, the data in any given block cannot be changed easily any more. Changing the block means all the blocks after it need to be changed as well. Depending on the protocol, this will require a majority of the peers, or even all the peers, to agree.
+
In most cases, a blockchain is managed by a [[peer-to-peer]] network. All peers use a common [[Communication protocol|protocol]] that specifies how they should communicate with each other, how a new block is created and validated. Once recorded, the data in any given block cannot be changed easily any more. Changing the block means all the blocks before it need to be changed as well. Depending on the protocol, this will require a majority of the peers, or even all the peers, to agree. (This refers to a scenario called 51%-attack since a entity controlling 51% of votes in the [[consensus algorithm]] is able to introduce such a - fraudulent - change)
  
 
Blockchains are secure by design. Blockchain technology is used where keeping a correct record is important. Use cases include  medical records,<ref>https://web.archive.org/web/20161225051907/http://mcdonnell.mit.edu/blockchain_ehr.pdf</ref><ref>https://web.archive.org/web/20170119053224/https://www.pubpub.org/pub/medrec|archive-date=19 January 2017</ref> identity management,<ref>https://web.archive.org/web/20170119054131/https://www.americanbanker.com/news/how-blockchain-fits-into-the-future-of-digital-identity|archive-date=19 January 2017</ref><ref>https://web.archive.org/web/20170131185730/https://bitcoinmagazine.com/articles/microsoft-building-open-blockchain-based-identity-system-with-blockstack-consensys-1464968713/</ref><ref>=https://web.archive.org/web/20170119054646/https://bitcoinmagazine.com/articles/department-of-homeland-security-awards-blockchain-tech-development-grants-for-identity-management-and-privacy-protection-1471551442/</ref> food traceability,<ref>https://web.archive.org/web/20170826120651/https://www.cnbc.com/2017/08/22/ibm-nestle-unilever-walmart-blockchain-food-contamination.html</ref> and [[voting]].<ref>https://web.archive.org/web/20180115001300/https://followmyvote.com/online-voting-technology/blockchain-technology/</ref>
 
Blockchains are secure by design. Blockchain technology is used where keeping a correct record is important. Use cases include  medical records,<ref>https://web.archive.org/web/20161225051907/http://mcdonnell.mit.edu/blockchain_ehr.pdf</ref><ref>https://web.archive.org/web/20170119053224/https://www.pubpub.org/pub/medrec|archive-date=19 January 2017</ref> identity management,<ref>https://web.archive.org/web/20170119054131/https://www.americanbanker.com/news/how-blockchain-fits-into-the-future-of-digital-identity|archive-date=19 January 2017</ref><ref>https://web.archive.org/web/20170131185730/https://bitcoinmagazine.com/articles/microsoft-building-open-blockchain-based-identity-system-with-blockstack-consensys-1464968713/</ref><ref>=https://web.archive.org/web/20170119054646/https://bitcoinmagazine.com/articles/department-of-homeland-security-awards-blockchain-tech-development-grants-for-identity-management-and-privacy-protection-1471551442/</ref> food traceability,<ref>https://web.archive.org/web/20170826120651/https://www.cnbc.com/2017/08/22/ibm-nestle-unilever-walmart-blockchain-food-contamination.html</ref> and [[voting]].<ref>https://web.archive.org/web/20180115001300/https://followmyvote.com/online-voting-technology/blockchain-technology/</ref>
Line 22: Line 42:
 
Blockchain was invented by Stuart Haber and Scott Stornetta in 1991 as a means to assure the integrity of digital records. Haber and Stornetta launched the world's first commercial blockchain; Surety<ref>http://www.surety.com/</ref> in 1995.
 
Blockchain was invented by Stuart Haber and Scott Stornetta in 1991 as a means to assure the integrity of digital records. Haber and Stornetta launched the world's first commercial blockchain; Surety<ref>http://www.surety.com/</ref> in 1995.
  
In 2008, [[Satoshi Nakamoto]] (a pseudonym) included as references 3 and 4 of [[Bitcoin]]<ref>https://bitcoin.org/bitcoin.pdf</ref> the two papers by Haber and Stornetta <ref>https://www.anf.es/pdf/Haber_Stornetta.pdf</ref><ref>http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.71.4891&rep=rep1&type=pdf</ref>  to serve as the public transaction [[ledger]] of the [[cryptocurrency]] [[bitcoin]].<ref name="te20151031">https://web.archive.org/web/20160703000844/http://www.economist.com/news/briefing/21677228-technology-behind-bitcoin-lets-people-who-do-not-know-or-trust-each-other-build-dependable</ref>  Because of its blockchain, [[bitcoin]] became the first digital currency to solve the double-spending problem without the need of a trusted authority or central [[Server (computing)|server]].  The bitcoin design has inspired other applications.<ref name="te20151031" /><ref name="nyt20160521">https://web.archive.org/web/20160522034932/http://www.nytimes.com/2016/05/22/business/dealbook/crypto-ether-bitcoin-currency.html </ref>
+
In 2008, '[[Satoshi Nakamoto]]' included as references 3 and 4 of [[Bitcoin]]<ref>https://bitcoin.org/bitcoin.pdf</ref> the two papers by Haber and Stornetta <ref>https://www.anf.es/pdf/Haber_Stornetta.pdf</ref><ref>http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.71.4891&rep=rep1&type=pdf</ref>  to serve as the public transaction [[ledger]] of the [[cryptocurrency]] [[bitcoin]].<ref name="te20151031">https://web.archive.org/web/20160703000844/http://www.economist.com/news/briefing/21677228-technology-behind-bitcoin-lets-people-who-do-not-know-or-trust-each-other-build-dependable</ref>  Because of its blockchain, [[bitcoin]] became the first digital currency to solve the double-spending problem without the need of a trusted authority or central [[Server (computing)|server]].  The bitcoin design has inspired other applications.<ref name="te20151031" /><ref name="nyt20160521">https://web.archive.org/web/20160522034932/http://www.nytimes.com/2016/05/22/business/dealbook/crypto-ether-bitcoin-currency.html </ref>
 +
 
 +
==Blockchain and privacy==
 +
{{FA|Central bank digital currency}}
 +
At first sight, the indefinite recording of all transactions in a blockchain is appealing to [[control freak]]s. All major [[central bank]]s announced the introduction of [[Money/Central bank digital currency|blockchain money]] until [[2025]] <ref>https://www.sparkasse.de/aktuelles/digitaler-euro.html (Ger)</ref>.
 +
 
 +
However, paradoxically it is the solution of the double spending problem which actually '''enables anonymity'''. It depends on the implementation of the additional information stored on the blockchain ("payload") and the way it is connected to the [[p2p]] network: if only the transactions are recorded then they become '''trustless''', i.e. there is no need to know who transferred money to whom. If by design for every transaction a new virtual address is used, then anonymity can be achieved '''if implemented correctly'''. <ref>"Satoshi" did this with his own invention, [[Bitcoin]]: he accessed the [[p2p]] network only with [[Tor]] and created a new identity for each transaction. The many attempts at de-anonymizing "Satoshi" were all unsucessful to this day (2022) </ref>
 +
 
 +
On the other hand, if the blockchain is designed to hold a bulk of private data (i.e. health records, product purchases, etc.), this amounts to a major [[Social_control#ID2020|privacy hazard]].
 +
 
 +
===[[John McAfee]] on blockchain and privacy===
 +
https://odysee.com/@enlightenedones!:1/John-McAfee-s-speech-about-government,-taxes,-banks,-corruption,-and-cryptocurrency:7
  
 
==References==
 
==References==

Latest revision as of 16:47, 14 April 2022

Not to be confused with p2p technology, which may or may not be used to store a blockchain

Concept.png Blockchain 
(surveillance technology?,  Concurrent Versions System)Rdf-entity.pngRdf-icon.png
Start1991
Interest of• Everipedia
• Phil Jolley
Subpage(s)Blockchain/Consensus
a method of storing a list of entries, which cannot be changed easily after they are created.

A Blockchain (or block chain) is a method of storing a list of entries, which cannot be changed easily after they are created. This is done by hash functions, consensus algorithms and redundant storage an many computers. Transactions are secured by asymetric public key cryptography, including digital signatures.

Analogy with Wikispooks software

WS is based on the mediawiki software and may serve as practical example, although it has many more features. The pagename in a wiki is analogous to an address on a blockchain.

When the View history link is clicked all changes ever made to the content of the address are displayed. It is important not to confuse the pagename or address with the content or entries it holds. Analogous to a page, a blockchain records changes to the contents of an address. The history itself is resistant to change. Like in wikiland an address may be created anytime and may have no content at this time. Content may be created offline, i.e. with a text editor and added to the database later.

This is analogous to creating and using an address on a blockchain offline. New addresses must be unique, but a clash is very unlikely in practice on a blockchain (due to the astronomical number of addresses and their randomly chosen characters). If the address does not exist yet a new address is created, just like in a wiki.

Otherwise any content or transaction is written to the pre-existing address. The major difference to mediawiki is that every address or pagename has an owner, secured by a strong passphrase. Others may donate (add) to the address, but only the owner can spend (remove) after entering his passphrase (i.e. locally, most secure variant). After a number of changes occurred on different pages they are lumped together, sealed and called a block, or package. Every block has a unique signature, links to the previous block and contains a fingerprint of the sum of all previous blocks - hence a block chain.

The concept of a blockchain is thus quite simple. The tricky part is when several people have different versions of the blockchain at different times, how to synchronize them? This is discussed on

Full article: Stub class article Blockchain/Consensus
.

History

John-McAfee-s-speech-about-government,-taxes,-banks

Programmers use Concurrent Versions Systems (i.e. cvs, git, etc) to record changes to the code they produce. If a file has changed is determined by a hash function, a fingerprint of the file. The history of edits is displayed as a chain of events. CVS makes it hard to alter previous events in such a chain. If two or more developers edit the same file simultaniously a conflict occurs, which is solved by either merging files manually or forking the chain (leading to a tree structure).

Every user has a copy of the complete chain (called a repository) and every edit (commit) is marked by the fingerprint (hash) of all previous edits plus the current edit. It is therefore easy to identify if someone tempered with the history. This is called a hash tree or merkle tree.

Design features

In very basic terms, a blockchain combines the following two ideas:

  1. Given some data, it is easy to calculate a checksum over the data. Special hash functions can be designed to calculate this checksum. These functions can be designed to return a value that always has the same length, which is not dependent on the length of the input. This value is called hash value, or message digest. The functions also have another property: Given the same input, they must return the same output (hash value/message digest).
  2. In addition to the hash values, a block typically also contains a timestamp, and some payload. Each block uses a digital signature[1], which allows detecting any change in the data since the signature was made. When new blocks of data are created, the newly created block will also contain the hash value of the previous block.[2]

In most cases, a blockchain is managed by a peer-to-peer network. All peers use a common protocol that specifies how they should communicate with each other, how a new block is created and validated. Once recorded, the data in any given block cannot be changed easily any more. Changing the block means all the blocks before it need to be changed as well. Depending on the protocol, this will require a majority of the peers, or even all the peers, to agree. (This refers to a scenario called 51%-attack since a entity controlling 51% of votes in the consensus algorithm is able to introduce such a - fraudulent - change)

Blockchains are secure by design. Blockchain technology is used where keeping a correct record is important. Use cases include medical records,[3][4] identity management,[5][6][7] food traceability,[8] and voting.[9]

Blockchain was invented by Stuart Haber and Scott Stornetta in 1991 as a means to assure the integrity of digital records. Haber and Stornetta launched the world's first commercial blockchain; Surety[10] in 1995.

In 2008, 'Satoshi Nakamoto' included as references 3 and 4 of Bitcoin[11] the two papers by Haber and Stornetta [12][13] to serve as the public transaction ledger of the cryptocurrency bitcoin.[14] Because of its blockchain, bitcoin became the first digital currency to solve the double-spending problem without the need of a trusted authority or central server. The bitcoin design has inspired other applications.[14][15]

Blockchain and privacy

Full article: Central bank digital currency

At first sight, the indefinite recording of all transactions in a blockchain is appealing to control freaks. All major central banks announced the introduction of blockchain money until 2025 [16].

However, paradoxically it is the solution of the double spending problem which actually enables anonymity. It depends on the implementation of the additional information stored on the blockchain ("payload") and the way it is connected to the p2p network: if only the transactions are recorded then they become trustless, i.e. there is no need to know who transferred money to whom. If by design for every transaction a new virtual address is used, then anonymity can be achieved if implemented correctly. [17]

On the other hand, if the blockchain is designed to hold a bulk of private data (i.e. health records, product purchases, etc.), this amounts to a major privacy hazard.

John McAfee on blockchain and privacy

https://odysee.com/@enlightenedones!:1/John-McAfee-s-speech-about-government,-taxes,-banks,-corruption,-and-cryptocurrency:7

References

  1. https://web.archive.org/web/20191016115436/https://www.ambiguousit.com/blockchain-security-is-blockchain-secure-enough-really
  2. Narayanan, Arvind; Bonneau, Joseph; Felten, Edward; Miller, Andrew; Goldfeder, Steven (2016). Bitcoin and cryptocurrency technologies: a comprehensive introduction. Princeton: Princeton University Press. ISBN 978-0-691-17169-2.
  3. https://web.archive.org/web/20161225051907/http://mcdonnell.mit.edu/blockchain_ehr.pdf
  4. https://web.archive.org/web/20170119053224/https://www.pubpub.org/pub/medrec%7Carchive-date=19 January 2017
  5. https://web.archive.org/web/20170119054131/https://www.americanbanker.com/news/how-blockchain-fits-into-the-future-of-digital-identity%7Carchive-date=19 January 2017
  6. https://web.archive.org/web/20170131185730/https://bitcoinmagazine.com/articles/microsoft-building-open-blockchain-based-identity-system-with-blockstack-consensys-1464968713/
  7. =https://web.archive.org/web/20170119054646/https://bitcoinmagazine.com/articles/department-of-homeland-security-awards-blockchain-tech-development-grants-for-identity-management-and-privacy-protection-1471551442/
  8. https://web.archive.org/web/20170826120651/https://www.cnbc.com/2017/08/22/ibm-nestle-unilever-walmart-blockchain-food-contamination.html
  9. https://web.archive.org/web/20180115001300/https://followmyvote.com/online-voting-technology/blockchain-technology/
  10. http://www.surety.com/
  11. https://bitcoin.org/bitcoin.pdf
  12. https://www.anf.es/pdf/Haber_Stornetta.pdf
  13. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.71.4891&rep=rep1&type=pdf
  14. a b https://web.archive.org/web/20160703000844/http://www.economist.com/news/briefing/21677228-technology-behind-bitcoin-lets-people-who-do-not-know-or-trust-each-other-build-dependable
  15. https://web.archive.org/web/20160522034932/http://www.nytimes.com/2016/05/22/business/dealbook/crypto-ether-bitcoin-currency.html
  16. https://www.sparkasse.de/aktuelles/digitaler-euro.html (Ger)
  17. "Satoshi" did this with his own invention, Bitcoin: he accessed the p2p network only with Tor and created a new identity for each transaction. The many attempts at de-anonymizing "Satoshi" were all unsucessful to this day (2022)


Wikipedia.png This page imported content from Wikipedia on 17.07.2021.
Wikipedia is not affiliated with Wikispooks.   Original page source here