LoginSign Up
Blockchain

Blockchain

A blockchain is an append-only digital ledger storing a set of time-ordered transactions grouped in blocks that are linked together using cryptographic hashes.

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.

History

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.

Characteristics

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.

Hash functions

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.

Replication

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.

Consensus

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

Transactional logic on blockchains can be simple, such as the transactions of value in bitcoin, or arbitrarily complex code found in smart contracts employed by Ethereum and other blockchains.

Public blockchains

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.

Blockchain Forks

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.

Identity

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.

National cryptocurrencies

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.

Academic research

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.

Timeline

Bitcoin whitepaper released

The Bitcoin whitepaper by Satoshi Nakamoto describes the Bitcoin blockchain.

Efficient broadcast time-stamping

Benaloh and de Mare publish Efficient Broadcast Time-Stamping, which also describes techniques on digital time-stamping and ordering of documents.

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.

People

Name
Role
Related Golden topics

Satoshi Nakamoto

Further reading

Title
Author
Link
Type

Against on-chain governance

Vlad Zamfir

Basic primer on blockchain — ledger basics, why it matters

Chris Berg, Sinclair Davidson, and Jason Potts

Blockchain governance — design components, approaches, suggestions

Fred Ehrsam

Blockchain: what is it good for? — including smart contracts

Ed Felten

Building for the Blockchain

Vincent Chen and Ramon Recuero

Decrypting crypto, from bitcoin and blockchain to ICOs

Alex Rampell

Fair and Transparent Blockchain based Tendering Framework - A Step Towards Open Governance

Freya Sheer Hardwick, Raja Naeem Akram, Konstantinos Markantonakis

Academic paper

Fat protocols

Joel Monegro

Funding the evolution of blockchains

Fred Ehrsam

Notes on blockchain governance

Vitalik Buterin

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

Kathleen Breitman

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

Luke Duncan

What do we mean by “blockchains are trustless”?

Preethi Kasireddy

Why it’s hard to “get” bitcoin: the blockchain spectrum

Dhruv Bansal

WTF is the blockchain? — understanding the problem it solves before defining it

Mohit Mamoria

Documentaries, videos and podcasts

Title
Date
Link

Albert Wenger of USV: "Decentralization & the Knowledge Age" | Blockstack Summit 2017

2017

DEVCON1: History of the Blockchain - Nick Szabo

Nov 25, 2015

How Bitcoin Works Under the Hood

2013

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

Khan Academy

May 1, 2013

Princeton's course: "Bitcoin and Cryptocurrency Technologies"

2015

TED Talks: The Blockchain Explained Simply

2016

The Blockchain and Us

2017

What is Blockchain

Jun 8, 2016

Companies

Company
CEO
Location
Products/Services

References