1 Blockchains
1 Blockchains
Defn
• A blockchain is a type of distributed ledger technology (DLT) that
consists of growing lists of records, called blocks, that are securely
linked together using cryptography
• Each block contains a cryptographic hash of the previous block, a
timestamp, and transaction data (generally represented as a
Merkle tree, where data nodes are represented by leaves)
• The timestamp proves that the transaction data existed when the
block was created
• Since each block contains information about the previous block,
they effectively form a chain (compare linked list data structure),
with each additional block linking to the ones before it.
Consequently, blockchain transactions are irreversible in that, once
they are recorded, the data in any given block cannot be altered
retroactively without altering all subsequent blocks.
• Blockchains are typically managed by a
peer-to-peer (P2P) computer network for use as a
public distributed ledger
• where nodes collectively adhere to a
consensus algorithm protocol to add and validate
new transaction blocks. Although blockchain
records are not unalterable, since blockchain forks
are possible, blockchains may be considered
secure by design and exemplify a distributed
computing system with high
Byzantine fault tolerance
Structure and design
• A blockchain is a decentralized, distributed, and often
public, digital ledger consisting of records called blocks
that are used to record transactions across many
computers so that any involved block cannot be altered
retroactively, without the alteration of all subsequent
blocks
• This allows the participants to verify and audit
transactions independently and relatively inexpensively
• A blockchain database is managed autonomously using
a peer-to-peer network and a distributed timestamping
server.
Logical blockchain layers
• infrastructure (hardware)
• networking (node discovery, information
propagation and verification)
• consensus (proof of work, proof of stake)
• data (blocks, transactions)
• application (smart contracts/
decentralized applications, if applicable)
Blocks
• Blocks hold batches of valid transactions that
are hashed and encoded into a Merkle tree
• Each block includes the cryptographic hash of
the prior block in the blockchain, linking the
two. The linked blocks form a chain
• This iterative process confirms the integrity of
the previous block, all the way back to the
initial block, which is known as the genesis
block
Block time
• The block time is the average time it takes for
the network to generate one extra block in
the blockchain. By the time of block
completion, the included data becomes
verifiable. In cryptocurrency, this is practically
when the transaction takes place, so a shorter
block time means faster transactions.
Hard forks
• is a rule change such that the software
validating according to the old rules will see
the blocks produced according to the new
rules as invalid. In case of a hard fork, all
nodes meant to work in accordance with the
new rules need to upgrade their software. If
one group of nodes continues to use the old
software while the other nodes use the new
software, a permanent split can occur.
TYPES OF BLOCKCHAIN NETWORKS
Public blockchains
• A public blockchain has absolutely no access
restrictions. Anyone with an Internet connection
can send transactions to it as well as become a
validator (i.e., participate in the execution of a
consensus protocol)
• Usually, such networks offer economic incentives
for those who secure them and utilize some type
of a Proof of Stake or Proof of Work algorithm.
Private blockchains