Block chain (database)

A block chain or blockchain is a permissionless distributed database based on the bitcoin protocol that maintains a continuously growing list of data records hardened against tampering and revision, even by its operators. The initial and most widely known application of block chain technology is the public ledger of transactions for bitcoin, which has been the inspiration for similar implementations often known as altchains.

Etymology

The block chain consists of blocks that hold timestamped batches of recent valid transactions. Each block includes the hash of the prior block, linking the blocks together. The linked blocks form a chain, with each additional block reinforcing those before it, thus giving the database type its name. The original definition was written by Satoshi Nakamoto and found in the original source code of bitcoin.

Model

A block chain implementation consists of two kinds of records: transactions and blocks.

Transactions –

Transactions are the content to be stored in the block chain. Transactions are created by participants using the system. In the case of cryptocurrencies, a transaction is created any time a bitcoin owner sends cryptocurrency to another. System users create transactions that are passed from node to node on a best-effort basis. The system implementing the block chain defines a valid transaction. In cryptocurrency applications, a valid transaction must be digitally signed, spend one or more unspent outputs of previous transactions, and the sum of transaction outputs must not exceed the sum of inputs.

Blocks –

Blocks record and confirm when and in what sequence transactions enter and are logged in the block chain. Blocks are created by users known as "miners" who use specialized software or equipment designed specifically to create blocks. In a cryptocurrency system, miners are incentivized to create blocks to collect two types of rewards: a pre-defined per-block award, and fees offered within the transactions themselves, payable to any miner who successfully confirms the transaction.

Decentralisation –

Every node in a decentralized cryptocurrency system has at least a partial copy of the block chain. This avoids the need to have a centralized database. Transactions of the form payer X sends Y currency to payee Z are broadcast to this network using software applications. Network nodes can validate transactions, add them to their copy and then broadcast these ledger additions to other nodes. Cryptocurrencies use various timestamping schemes, such as proof-of-work, to avoid the need for a trusted third party to timestamp transactions. This prevents users from double-spending their coins. Whereas a conventional ledger records the transfers of actual bills or promissory notes that exist apart from it, the block chain is the only place that cryptocurrency can be said to exist, in the form of unspent outputs of transactions.

Advantages

The core advantages of the block chain architecture include the following:
  • The ability for independent nodes to converge on a consensus of the latest version of a large data set such as a ledger, even when the nodes are run anonymously, have poor interconnectivity and have operators who are dishonest or malicious.
  • The ability for any well-connected node to determine, with reasonable certainty, whether a transaction does or does not exist in the data set.
  • The ability for any node that creates a transaction to, after a confirmation period, determine with a reasonable level of certainty whether the transaction is valid, able to take place and become final (i.e., that no conflicting transactions were confirmed into the block chain elsewhere that would invalidate the transaction, such as the same currency units "double-spent" somewhere else).
  • A prohibitively high cost to attempt to rewrite or alter transaction history.
  • Automated conflict resolution that ensures that conflicting transactions (such as two or more attempts to spend the same balance in different places) never become part of the confirmed data set.

Debates

An ongoing debate disputes whether a block chain-like system without a native cryptocurrency can still be considered a block chain. Some have argued that cryptocurrency-less block chains serve as a distributed version of multiversion concurrency control (MVCC) in databases. Just as MVCC prevents two transactions from concurrently modifying a single object in a database, block chains prevent two transactions from spending a single output in a block chain. Others have interpreted block chains in a different way, arguing that block chains are more akin to finite state machine automata "where the state of the system is updated sequentially, via atomic transitions (transactions) that are replicated across every machine, in order.

Applications

Sidechains –

Sidechains are networks based on the bitcoin protocol that are isolated from the block chain, allowing activity to exist in isolation until confirmation on the block chain, at which point transferability becomes bidirectional. Examples:
  • Liquid - Exchange sidechain developed by Blockstream
  • ChromaWay - Sidechain platform for colored coins
  • DIONS - Digital I/O sidechain concept for identity
  • tØ (tee-zero) - SEC-approved sidechain

Alternative block chains –

Alternate block chains (altchains) are based on bitcoin technology in concept and/or code. These designs generally add functionality to the block chain design. Altchains can provide solutions including other digital currencies, although tokens used in these designs are not always considered to be such. Altchains target performance, anonymity, storage and applications such as smart contracts. Starting with a strong focus on financial applications, blockchain technology is extending to activities including decentralized applications and collaborative organizations that eliminate a middleman. Notable designs include:
  • Billon– Regulated "cryptocash" block chain solution as digital cash for governmental fiat currencies
  • Ethereum – Network supporting storage of turing-complete smart contracts at specified addresses with a 15-second block time. Uses Ether as its token.
  • Hyperledger – aims to create an open-standard, public, decentralised public ledger based on blockchain technology.
  • LaZooz – decentralized real-time ride sharing
  • Namecoin – Digital currency that can store data within a chain
  • Nxt –Cryptocurrency financial platform that uses proof of stake to reach consensus for transactions. It has an integrated Asset Exchange, messaging system and marketplace
  • Mastercoin –Metaprotocol with the ability to process various transactions and sub-currencies
  • Peercoin –Cryptocurrency-based token incorporating proof of stake in its consensus model
  • Swarm and Koinify – decentralized crowdfunding
  • Synereo – synchronous and asynchronous communication

Rights management –

The music industry lacks complete information about the rights holders for musical works. These include performers, composers and songwriters. Block chain technology can be used to 'provide the secure issuance and distribution of digital assets, including listing and registration of musical works for its clients and helping collecting societies provide more transparency and efficiency to all market participants'.

Trusted timestamp -

The bitcoin block chain can be used as a trusted timestamp for arbitrary messages. Third party application services store messages directly in the block chain, allowing anyone who has the block chain to read the message. Other applications store a hash value in the block chain, recording data existence and confirming data integrity without revealing data and without bloating the block chain. This information can be used to implement "colored coins" or side chains to support functionality such as smart contracts.