A blockchain is a type of digital ledger where transactions grouped into blocks are replicated across a network of participants. Blockchains can enable a decentralized ledger system of transactions which do not rely on any central authority or trusted third parties for transaction validation. All participants in the peer-to-peer network are known as nodes, and maintain a full record of all transactions on the blockchain communicating directly following a protocol that forms a distributed consensus on the next valid block in the chain.
Each block in the blockchain contains a timestamp, transactional data, and a cryptographic hash link to the previous block. This creates a time-ordered chain of links from the genesis block to the most recent block that cannot be altered retroactively without alteration of all subsequent blocks, requiring a collusion of a large portion of the network.
Early work on cryptographically secure chains with timestamps was done by Haber and Stornetta including their 1991 paper “How to Time-Stamp a Digital Document". Building upon their previous work, Haber, Stornetta and Bayer published “Improving the Efficiency and Reliability of Digital Time-Stamping", which incorporated consideration of costs and benefits of three methods of digital timestamping including; linear linking, random witness, and merkle trees. Massias, Avila, and Quisquater extended this work to reduce the trust requirements for these digital timestamps.
In 2004, Hal Finney created and implemented reusable proofs of work (RPOW) drawing inspiration from Adam Back's hashcash. Key innovations also came from Wei Dai's b-money. Nick Szabo’s utilizes these ideas for timestamped proof of work to create a string of distributed property title registry for Bit gold. In 2008, an individual or group of individuals, released the bitcoin whitepaper under the name Satoshi Nakamoto and Bitcoin became the first successful implementation of a secure decentralized blockchain solving the double spend problem for a digital currency.
Blockchains are decentralized peer-to-peer networks with a shared append-only ledger maintaining a consensus through a protocol. The unique characteristics of blockchains make them potentially transformative for a variety of industries requiring secure online transactions. They have the potential to solve a fundamental problem of digital trust whereby two individuals can perform almost any arbitrary transaction without a centralized trusted authority approving their transaction. Financial transactions are a natural starting place for blockchain technology, however, with the development of smart contract technology numerous applications can be adopted such as voting, supply chain, electronic health records, estate and property records, and much more.
Cryptographic hash functions are a key components of every blockchain. Common hash functions are MD5, SHA1, SHA2, SHA3. Hash functions convert data of any size into a digital string of a specific length called a hash. An example MD5 hash:
MD5(“Golden”) = 7d2b88f5977b8a31c6193b4c81a43daf
Cryptographic hash functions have special properties differentiating them from other hash functions such as one way computation. This means the computation of the hash from the input data is trivial, but finding an input from the hash function is practically impossible with current computational technology (based on a mathematical difficulty of factoring large numbers).
The hash value obtained could then be fed into the hash function again and produce a new valid hash. This practice allows various structures of hashes with useful properties including the linear linked chains that connect blocks in a blockchain.
The hash of a block is calculated on the entire data set included in the block. Thus, a change to any bit of data in the block will hash that as output. That altered hash is now included in the next block, which changes the output hash of the next block and so on until all blocks post alteration are altered. This is a crucial aspect of the immutability property of the blockchain.
Public key cryptography
While chains of cryptographic hashes maintain the immutability of the blockchain, an additional cryptographic method called public key cryptography is needed to ensure that only those who own an entity on the blockchain such as a cryptocurrency token are able to initiate a transaction. Public key cryptography is based on a pair of keys called the public and private key (digital signature key). The public key is open and widely distributed, while the private key is kept secret and only know to the owner.
Access to private keys represent full ownership over something of value, typically a token or coin on the blockchain. As shown in the figure below the holding both the public and private keys allows for the creation of a digital signatures. The digital signature proves that the transaction came from the private key owner; no one without the key could impersonate the signature, and if the private key remains confidential to the owner they could not deny having processed the transaction.
Nodes verify valid transactions by checking that the digital signature was generated by the private key and the owner has enough value in their account to complete the transaction — this is simple for blockchains like bitcoin where nodes simply need to verify that the sender has enough unspent coins.
Turing complete smart contract platforms such as Ethereum require nodes to re-run smart contract codes and verify that sufficient resources are available to run the computations.
Each full node on the network replicates a history of all transactions on the blockchain. In addition to full nodes, some blockchains allow for other type of nodes like lightweight or spv nodes — which may contain only specific portions of the blockchain. The size of the blockchain increases over time which increases the capacity requirements to run a full nodes. This an important parameter for decentralized blockchain networks as increasing blockchain size comes with increased cost of storage for each user. The implications of trade-offs between blockchain size and numerous other factors has been a topic of significant debate within the bitcoin and cryptocurrency communities.
Blockchains use a variety of methods to determine consensus or agreement on the current state of the blockchain. At their core, all consensus mechanisms rely on financial incentives based on game theory, and the assumptions that users will act in their own monetary self interest.
Currently, most blockchains utilize consensus protocols with proof-of-work. Proof-of-work requires nodes to compete for a financial reward by solving complex computational puzzles and win the privilege of mining the next block in the chain. The Proof-of-work protocol was originally developed to deter denial of service attacks, and is designed such that the majority of computation power or hashrate controls has control of the network. Adversarial nodes must compete against the totality of the hashrate of all non colluding nodes in order to defraud the system. An adversarial majority node would also potentially favor generating new coins over attempting to undermine the system and the validity of their proportion of the network.
Consensus emerges from independent verification of each transaction by each full node on the network. Blocks are added to blockchains through mining nodes at different intervals depending on the how the protocol determines validity of blocks, and the participants ability to create those new blocks. Nodes then verify the new blocks and construct the chain. Nodes then select which blockchain they prefer, typically based on cumulative proof of work demonstrated on the longest chain, and consensus emerges. Note, that there are many alternative consensus mechanisms under active development producing blockchains or distributed ledgers with vastly different properties. Some of these consensus mechanisms rely on differing protocols like proof-of-stake (dPoS, Casper, Ourobouros, etc), proof-of-capacity, proof-of-coin age, proof-of-burn, proof-of-authority and many more.
Transactional logic and smart contracts
The history of transactions on the blockchain, including all transactions made by each address, is permanently open and visible to everyone. However, the identity of person operating a particular node is pseudo-anonymous. New addresses can be easily created on the blockchain without necessarily linking to an individual’s name. For example, if the Bitcoin or Ethereum address of an individual is discovered it becomes trivial to find all transactions performed with that address with tools such as Bitcoin block explorer or Etherscan.
Private & permissioned blockchains
Permissioned blockchains are different from public blockchains because the nodes allowed to participate in the network are restricted in some way. Projects developing private or permissioned blockchains include JPMorgan's Quorum, Multichain, R3, EWF, B3i, and many others.
Blocks may be added to two separate chains causing a fork. There are two kinds of forks — hard forks & soft forks. Hard forks cause a split in the blockchain; resulting in two separate and different permanent blockchains. These blockchains share the blocks prior to the fork; and have different blocks and data after the fork. A soft fork is a change to the protocol which does not result in different versions of the blockchain.
Disagreements within blockchain communities on changes to the blockchain protocol have resulted in significant controversy, most famously the bitcoin block size debate resulting in the Bitcoin Cash hardfork. Other controversial hard forks include the Ethereum hard fork due to The DAO vulnerability and hack, resulting in the blockchain Ethereum Classic blockchain.
In September 2017 the Swiss city of Zug announced intent to release an app to secure its citizens personal identity on the blockchain and associate it with a crypto address. Citizens would register independently on the app and then would be verified by city officials. The linking of a traditional personal centralized identity with a decentralized crypto-address is one initiative intended to improve digital identity. It is intended as a digital passport on the blockchain that could be used for various services such as e-voting. Zug is part of what is known as crypto valley, a region in Switzerland known for attracting decentralized and crypto entrepreneurship due to its crypto-friendly legislation.
The Monetary Authority of Singapore released a report announcing project Urbin, a report outlining plans for increased usage of blockchains in Singapore.
Russia has plans to release a cryptographic version of their national currency, and are calling it cryptoruble. The cryptoruble cannot be mined; and will be controlled and maintained by central Russian authorities.
The International Monetary Fund (IMF) and Christine Lagarde have spoken publicly about the potential of cryptocurrency and the possibility for an IMF based coin.
The first peer-reviewed journal focused on blockchain and cryptocurrency Ledger released its inaugural issue in 2016. It contained 10 articles ranging in topics like game theory, scaling techniques, anonymous transactions, governance, probabilistic analysis and more.
Research examining the role of blockchain in healthcare, conservation, and other biological fields is increasing as shown by the increasing academic papers being released.
Improved reliability and efficiency of digital time-stamps
Bayer, Haber, and Stornetta's paper examines and improves upon the resource usage of the Haber and Stornetta's previously proposed time-stamping. The links between time-stamped documents use cryptographic hashes, the grouping of the documents into blocks to reduce the amount of hash pointers required, and the organization of the links into a tree structure called a merkle tree. Additionally, they add research on secure names for bit-strings in a subsequent paper.
Early research on time-stamping digital documents
Haber and Stornetta's paper describes a digital notary type procedure allowing businesses to verify the date at which a document was created. The documents are linked together with digital timestamps such that it is infeasible for users to alter the date on the document. Each user time stamps their document as well as the previous document in the chain with a digital signature only they can provide, then broadcasts it to the network. Bitcoin uses a similar data structure for its digital ledger, and Satoshi Nakamoto references this paper in the bitcoin whitepaper.
Merkle Tree data structure is proposed
Ralph Merkle's 1980 paper on Protocols for Public Key Cryptosystems first describes the what is now known as the Merkle Tree, a data structure in the form of a tree of cryptographic hashes. This structure allows for a large amount of data to be verifiably stored in an efficient manner, a crucial aspect of blockchain architecture.
Against on-chain governance
Basic primer on blockchain — ledger basics, why it matters
Chris Berg, Sinclair Davidson, and Jason Potts
Beyond the bitcoin bubble
Blockchain governance — design components, approaches, suggestions
Blockchain: what is it good for? — including smart contracts
Building for the Blockchain
Vincent Chen and Ramon Recuero
Decrypting crypto, from bitcoin and blockchain to ICOs
Fair and Transparent Blockchain based Tendering Framework - A Step Towards Open Governance
Freya Sheer Hardwick, Raja Naeem Akram, Konstantinos Markantonakis
Funding the evolution of blockchains
Notes on blockchain governance
The Agoric papers series
Mark Miller and K. Eric Drexler
The Byzantine Generals Problem
Leslie Lamport, Robert Shostak, and Marshall Pease
The myth of the irrational token holder — why blockchain governance doesn’t fit squarely into any existing model
The truth about blockchain — framework for adoption to help big company executives understand state of development; strategic investments; challenges, resources, processes to facilitate adoption
Marco Iansiti and Karim Lakhani
Thoughts on governance and network effects
What do we mean by “blockchains are trustless”?
Why it’s hard to “get” bitcoin: the blockchain spectrum
WTF is the blockchain? — understanding the problem it solves before defining it
Documentaries, videos and podcasts
Albert Wenger of USV: "Decentralization & the Knowledge Age" | Blockstack Summit 2017
DEVCON1: History of the Blockchain - Nick Szabo
Nov 25, 2015
How Bitcoin Works Under the Hood
How the U.S. government used blockchain to fight fraud
Oct 26, 2016
How the US government is using blockchain to fight fraud | Kathryn Haun | TEDxSanFrancisco
Oct 26, 2016
May 1, 2013
Princeton's course: "Bitcoin and Cryptocurrency Technologies"
TED Talks: The Blockchain Explained Simply
The Blockchain and Us
What is Blockchain
Jun 8, 2016
- CryptocurrencyA cryptocurrency (or crypto currency) is a digital asset designed to work as a medium of exchange using cryptography to secure the transactions and to control the creation of additional units of the currency. Cryptocurrencies are a subset of alternative currencies, or specifically of digital currencies.
- Distributed ledgerA distributed ledger is a database of information held and replicated independently by participants in a network called nodes. A blockchain is a specific subtype of a distributed ledger.
- CryptographyCryptography or cryptology is the practice and study of techniques for secure communication in the presence of third parties.
- BitcoinBitcoin is a cryptocurrency and a digital payment system invented by an unknown programmer, or a group of programmers, under the name Satoshi Nakamoto. It was released as open-source software in 2009.
- PostchainPostchain is a mix of database and blockchain technologies.
- EthereumEthereum is an open-source, public, distributed blockchain computing platform featuring smart contract (scripting) functionality, which facilitates online contractual agreements.
- Proof-of-work systemA proof-of-work (POW) system (or protocol, or function) is an economic measure to deter DOS attacks and other abuses (e.g. spam) on a network by requiring some work from the service requester, usually meaning processing time.
- Proof-of-stakeProof-of-stake (PoS) is a system by which a network (e.g., a cryptocurrency blockchain) aims to achieve distributed consensus.
- Show More