Blockchain

From Wikispooks
Jump to navigation Jump to search

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 using several concepts from cryptography, including digital signatures and hash functions.

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.

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 p2p.

History

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 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.

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.

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