DLT

icon picker
blockchain

most common definition: timestamped log of transactions replicated on multiple peers.
blockchain is more than just a database,
it’s a whole system with moving parts and systems which must work together.
it’s a distributed ledger and settlement/transaction processing system all in one.
distributed consensus
it requires that all nodes in the network form consensus.
this means that when transactions are broadcasted to the network,
these transactions must be validated by the network.
some of the peers / nodes might be evil (hahaha) and intentionally report a tampered version of blockchain data.
the entire network uses democracy to come to a consensus on the current state of data
and any non-conformant or outlier peers are ignored/blocked.
in order for a blockchain network to be fair and valid, most of the nodes have to be fair.
if 51% of the nodes are compromised the network is hacked.
since the networks are globally distributed, this is not a possibility.
data storage in blocks
each time a cluster of transactions is validated by the network,
they are included in the next block on the chain,
and history is recorded in the network’s historical ledger of transactions.
each block stores a data blob (which is usually a list of transactions), its block number, and hash of the previous block
image.png
block is represented by json object here for better understanding
when creating a new block, the hash of the previous block is calculated and added to the next block.
if the previous block is altered later in time,
the next block will be invalid as the prevHash stored in it will not match the actual hash of previous block.
the data in the blockchain is safeguarded from tampering using one-way hash functions
every 10 minutes a new set of transactions are hashed,
or compacted into a small data set to create the next block.
it is indeed a chain of blocks.
the users that are responsible for creating new blocks are called miners

blockchain big picture

in a distributed blockchain network
multiple peers have a process (peer.exe) running that maintains a ledger on their local storage.
this process connects to other process instances running on other machines
to receive updates on new blocks, transactions, health and validity checks etc. to keep itself updated.
a transaction/block can be appended by any peer and is then broadcast-ed to all peers.
since multiple peers are adding transactions/blocks simultaneously,
the consensus protocol along with the ledger implementation
ensures “validity” and ordering of transactions in blocks forming the blockchain.

different purposes of blockchains

some blockchains, such as Ethereum, can host applications,
sort of acting like the Google Play Store of the decentralized world.
Ethereum is like the operating system for which decentralized applications can run off of.
this is because Ethereum is ,
which means that the network can process complete programming languages.
in other words, developers can actually launch usable applications to be hosted on the network.
bitcoin is not turing complete and it’s purpose is only for the use case of digital cash.


Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.