0% found this document useful (0 votes)
16 views12 pages

Understanding Blockchain Technology Basics

Blockchain is a distributed database that records transactions securely and transparently without the need for third-party intervention. It has evolved since its introduction in 1991, with Bitcoin being its first practical implementation, and now includes various applications across multiple sectors. Key features include decentralization, immutability, and consensus mechanisms, with different types of blockchains such as public, private, hybrid, and consortium, each having its own advantages and disadvantages.

Uploaded by

Anish Murali
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views12 pages

Understanding Blockchain Technology Basics

Blockchain is a distributed database that records transactions securely and transparently without the need for third-party intervention. It has evolved since its introduction in 1991, with Bitcoin being its first practical implementation, and now includes various applications across multiple sectors. Key features include decentralization, immutability, and consensus mechanisms, with different types of blockchains such as public, private, hybrid, and consortium, each having its own advantages and disadvantages.

Uploaded by

Anish Murali
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

BLOCKCHAIN TECHNOLOGY

UNIT-1
What is Blockchain?
The blockchain is a distributed database of records of all transactions or digital events that
have been executed and shared among participating parties. Each transaction is verified by
the majority of participants of the system.

Blockchain is a technology where multiple parties involved in communication can perform


different transactions without third-party intervention. Special nodes verify and validate
these transactions.

It contains every single record of each transaction. Bitcoin is the most popular
cryptocurrency an example of the blockchain.

Blockchain Technology Records Transaction in Digital Ledger which is distributed over the
Network thus making it incorruptible. Anything of value like Land Assets, Cars, etc. can be
recorded on Blockchain as a Transaction.

Evolution and History of Blockchain:


 1991: Blockchain was first introduced by Stuart Haber and W. Scott Stornetta. They
described a system where document timestamps could not be tampered with.
 2008: The concept gained attention with the introduction of Bitcoin by an anonymous
person or group, known as Satoshi Nakamoto, in a whitepaper titled "Bitcoin: A Peer-to-Peer
Electronic Cash System." Bitcoin was the first practical implementation of blockchain
technology.
 2009: Bitcoin network was launched, and the first block (Genesis Block) was mined.
 2013: Vitalik Buterin proposed Ethereum, which expanded blockchain functionality beyond
cryptocurrency by introducing smart contracts.
 2015: Ethereum was launched, bringing decentralized applications (DApps) into focus.
 Present: Blockchain continues to evolve with applications in finance (DeFi), supply chain,
healthcare, governance, and more.

Characteristics/Features of Blockchain/Advantages:
 Decentralization: Unlike traditional systems that rely on a central authority, blockchain relies
on a distributed network of nodes, reducing control by a single entity.
 Immutability: Once data is added to the blockchain, it cannot be altered or deleted. This
ensures the integrity of the data.
 Transparent: Because every node or participant in Blockchain has a copy of the Blockchain
data, they have access to all transaction data. They themselves can verify the identities
without the need for mediators.
 Secure/cryptography: Data on blockchain is encrypted and linked via cryptography, making it
resistant to hacking or unauthorized access.
 Consensus Mechanism: Blockchain uses consensus algorithms like Proof of Work (PoW) or
Proof of Stake (PoS) to agree on the validity of transactions across nodes.
 Distributed Ledger: The entire blockchain is replicated across all nodes in the network,
ensuring that no single point of failure exists.
 Anonymity and Privacy: Users can remain anonymous, using cryptographic keys instead of
personal information for transactions.
Traditional databases vs Blockchain:

Blockchain Architecture / Components:


 Blocks: Each block contains a list of transactions, a timestamp, a nonce (in PoW), and the
hash of the previous block.
 Nodes: Nodes are the computers or devices that participate in the blockchain network by
validating transactions and blocks.
 Ledger: The blockchain itself serves as a ledger where transactions are recorded in a
decentralized manner. A transaction refers to a contract or agreement and transfers of assets
between parties. The asset is typically cash or property. The network of computers in
blockchain stores the transactional data as a copy with the storage typically referred to as a
digital ledger.
 Consensus Algorithm: Mechanism that ensures all nodes agree on the same version of the
blockchain. Examples include Proof of Work (PoW), Proof of Stake (PoS), and others.
 Chain: Chain is the concept where all the blocks are connected with the help of a chain in
the whole blockchain structure in the world. And those blocks are connected with the help
of the previous block hash and it indicates a chaining structure.
 Miners: Blockchain mining is a process that validates every step in the transactions while
operating all cryptocurrencies. People involved in this mining they called miners.
Blockchain mining is a process to validate each step in the transactions while operating
cryptocurrencies.

Distributed ledger technology:


Distributed Ledger Technology (DLT) is centered around an encoded and distributed database
where records regarding transactions are stored. A distributed ledger is a database that is
spread across various computers, nodes, institutions, or countries accessible by multiple
people around the globe.

Blockchain is one of the types of DLT in which transactions are recorded with an
unchangeable cryptographic signature called a hash. That is why distributed ledgers are
often called blockchains.
Features / Advantage of using DLT in Blockchain:
o Decentralized: It is a decentralized technology and every node will maintain the
ledger, and if any data changes happen, the ledger will get updated. The process of
updating takes place independently at each node.
o Immutable: Distributed ledger uses cryptography to create a secure database in
which data once stored cannot be altered or changed.
o Fault Tolerance: Distributed ledgers are highly fault-tolerant because of their
decentralized nature. If one node or participant fails, the data remains available on
other nodes.
o Transparency: Distributed ledgers are transparent because every participant can
see the transactions that occur on the ledger. This transparency helps in creating
trust among the participants.
o Lower Costs: Distributed Ledger Technology eliminates intermediaries and reduces
the costs associated with intermediaries, which makes the system more cost-
effective.
o Anonymity: The identity of each participant is anonymous and does not possibly
reveal their identity.
o Speed: Distributed Ledger Technology can handle large transactions faster than
traditional methods.

How are DLT and Blockchain Different:

Types Of Blockchain:
1) Public Blockchain:
These blockchains are completely open to following the idea of decentralization. They don’t have any
restrictions, anyone having a computer and internet can participate in the network.

 As the name is public this blockchain is open to the public, which means it is not owned by
anyone.
 Anyone having internet and a computer with good hardware can participate in this public
blockchain.
 All the computer in the network holds the copy of other nodes or block present in the
network
 In this public blockchain, we can also perform verification of transactions or records

Advantages:
o Secure: This blockchain is large as it is open to the public. In a large size, there is greater
distribution of records.
o Decentralized: There is no single platform that maintains the network, instead every user has
a copy of the ledger.
Disadvantages:
o Processing: The rate of the transaction process is very slow, due to its large size. Verification
of each node is a very time-consuming process.
o Energy Consumption: Proof of work is high energy-consuming. It requires good computer
hardware to participate in the network.

2) Private Blockchain:
These blockchains are not as decentralized as the public blockchain only selected nodes can
participate in the process, making it more secure than the others.
 These are not as open as a public blockchain.
 They are open to some authorized users only.
 These blockchains are operated in a closed network.
 In this few people are allowed to participate in a network within a company/organization.

Advantages:
o Speed: The rate of the transaction is high, due to its small size. Verification of each node is
less time-consuming.
o Scalability: We can modify the scalability. The size of the network can be decided manually.
Disadvantages:
o Security- The number of nodes in this type is limited so chances of manipulation are there.
These blockchains are more vulnerable.
o Count- Since there are few nodes if nodes go offline the entire system of blockchain can be
endangered.
3) Hybrid Blockchain:

It is the mixed content of the private and public blockchain, where some part is controlled by
some organization and other makes are made visible as a public blockchain.
 It is a combination of both public and private blockchain.
 Permission-based and permissionless systems are used.
 User access information via smart contracts
 Even a primary entity owns a hybrid blockchain it cannot alter the transaction

Advantages:
o Ecosystem: Most advantageous thing about this blockchain is its hybrid nature. It cannot be
hacked as 51% of users don’t have access to the network
o Cost: Transactions are cheap as only a few nodes verify the transaction. All the nodes don’t
carry the verification hence less computational cost.
Disadvantages:
o Efficiency: Not everyone is in the position to implement a hybrid Blockchain. The
organization also faces some difficulty in terms of efficiency in maintenance.
o Transparency: There is a possibility that someone can hide information from the user. If
someone wants to get access through a hybrid blockchain it depends on the organization
whether they will give or not.

4)Consortium Blockchain:
It is a creative approach that solves the needs of the organization. This blockchain validates
the transaction and initiates or receives transactions.
 Also known as Federated Blockchain.
 This is an innovative method to solve the organization’s needs.
 Some part is public and some part is private.
 In this type, more than one organization manages the blockchain.

Advantages:
o Speed: A limited number of users make verification fast. The high speed makes this more
usable for organizations.
o Privacy: The information of the checked blocks is unknown to the public view. but any
member belonging to the blockchain can access it.
Disadvantages:
o Approval: All the members approve the protocol making it less flexible. Since one or more
organizations are involved, there can be differences in the vision of interest.
o Transparency: It can be hacked if the organization becomes corrupt. Organizations may hide
information from the users.

COMPONENTS:
[Link]:
o A block is a container for a collection of transactions or data.
o Structure of a Block:
 Data: Contains transaction details, such as sender, receiver, and amount.
 Hash: A unique cryptographic identifier of the block.
 Previous Block Hash: Links the block to the previous one, ensuring data integrity
across the chain.
 Nonce: A number used in consensus mechanisms (e.g., Proof of Work) to find a valid
block hash.
 Timestamp: Records the time when the block was created or added to the
blockchain.
[Link]:
o Transactions represent the data being transferred between parties in the blockchain.
o Each transaction contains:
 Sender and Receiver addresses (public keys).
 Amount or other data being transferred.
 A digital signature to authenticate the sender.
[Link]:
o Nodes are participants in the blockchain network, responsible for validating and relaying
transactions.
o Types of nodes:
 Full Nodes: Store the entire blockchain and participate in validating and relaying
transactions.
 Light Nodes: Store only a part of the blockchain, relying on full nodes for validation.
o Nodes communicate with each other to maintain the network’s decentralization and
consistency.

Consensus Mechanism:
There is no central authority present to validate and verify the transactions, yet every
transaction in the Blockchain is completely secured and verified. This is possible only
because of the presence of the consensus protocol which is a core part of any Blockchain
network. A consensus algorithm is a procedure through which all the peers of the Blockchain
network reach a common agreement about the present state of the distributed ledger. In
this way, consensus algorithms achieve reliability in the Blockchain network and establish
trust between unknown peers in a distributed computing environment. Essentially, the
consensus protocol makes sure that every new block that is added to the Blockchain is the
one and only version of the truth that is agreed upon by all the nodes in the Blockchain. The
Blockchain consensus protocol consists of some specific objectives such as coming to an
agreement, collaboration, cooperation, equal rights to every node, and mandatory
participation of each node in the consensus process.

 Proof of Work (PoW): This consensus algorithm is used to select a miner for the next block
generation. Bitcoin uses this PoW consensus algorithm. The central idea behind this
algorithm is to solve a complex mathematical puzzle and easily give out a solution.
This mathematical puzzle requires a lot of computational power and thus, the node who
solves the puzzle as soon as possible gets to mine the next block.
Examples include Bitcoin and Ethereum
 Proof of Stake (PoS): Proof of Stake (PoS) is a more energy-efficient alternative to PoW.
Instead of miners using computational power, validators are chosen to create new blocks
based on the number of tokens they "stake."
Examples include Ethereum 2.0 and Cardano.
 Delegated Proof Of Stake (DPoS): This is another type of Proof of Stake consensus algorithm.
This type of consensus mechanism depends based on the delegation of votes. The users
delegate their votes to other users. Whichever user then mines the block will distribute the
rewards to the users who delegated to that particular vote.
Examples include EOS and TRON.
 Proof of Burn (PoB): With PoB, instead of investing in expensive hardware equipment,
validators ‘burn’ coins by sending them to an address from where they are irretrievable.
The more coins they burn, the better their chances of being selected to mine the next block.
 Proof of Elapsed Time: PoET is one of the fairest consensus algorithms which chooses the
next block using fair means only. It is widely used in permissioned Blockchain networks. In
this algorithm, every validator on the network gets a fair chance to create their own block.
All the nodes do so by waiting for a random amount of time, adding proof of their wait in the
block. There are additional checks in the algorithm to stop nodes from always winning the
election, and stop nodes from generating the lowest timer value.
 Proof of Authority (PoA): A small number of pre-approved validators are responsible for
creating blocks and validating transactions. PoA has high efficiency and low energy
consumption. There is a risk of centralization and dependency on the trustworthiness of
validators. Examples include VeChain and private Ethereum networks.

Cryptographic Foundations in Blockchain:


Blockchain technology is built on key cryptographic principles that ensure the security,
integrity, and authenticity of data in a decentralized network. These include hash functions,
digital signatures, public-key cryptography, and Merkle trees.

1. Hash Function:
A hash function is a function that takes an input (or ‘message’) and returns a fixed-size string
of bytes. The output, typically a number, is called the hash code or hash value. The main
purpose of a hash function is to efficiently map data of arbitrary size to fixed-size values,
which are often used as indexes in hash tables.
Key Properties of Hash Functions-
 Deterministic: A hash function must consistently produce the same output for the
same input.
 Fixed Output Size: The output of a hash function should have a fixed size, regardless
of the size of the input.
 Efficiency: The hash function should be able to process input quickly.
Applications of Hash Functions-

 Hash Tables: The most common use of hash functions in DSA is in hash tables, which
provide an efficient way to store and retrieve data.
 Data Integrity: Hash functions are used to ensure the integrity of data by generating
checksums.
 Cryptography: In cryptographic applications, hash functions are used to create secure
hash algorithms like SHA-256.
 Data Structures: Hash functions are utilized in various data structures such as Bloom
filters and hash sets.

2. Digital Signatures:
A digital signature is a cryptographic technique used to verify the authenticity and integrity
of a message or transaction.
How It Works:
o A user signs a message with their private key, producing a digital signature.
o Anyone with the user's public key can verify that the signature was created with
the corresponding private key, proving that the message came from the user and
hasn’t been altered.
Key Concepts:
o Private Key: A secret key that the user holds and uses to sign transactions.
o Public Key: A publicly shared key used to verify the digital signature.
o Signature: A hash of the data, encrypted with the sender’s private key.
Applications of Digital Signatures
Digital signatures can be used in various fields like :
o Healthcare: Digital signatures are used in healthcare to improve the efficiency of
administrative and treatment processes to strengthen data security.
o Legal: Digital signatures can be used to reduce the time to close contracts that
require multiple parties to validate and sign them.
o Manufacturing: Digital signatures are used in the manufacturing industry to speed
up processes like product design, quality assurance, and marketing sales.
o Cryptocurrencies: Digital signatures are used in cryptocurrencies to authenticate the
blockchain, and manage transaction data associated with the cryptocurrency.

3. Public-key cryptography:
Most of the time blockchain uses public-key cryptography, also known as asymmetric-key
cryptography. Public key cryptography uses both public key and private key to encrypt and
decrypt data. The public key can be distributed commonly but the private key cannot be
shared with anyone. It is commonly used for two users or two servers in a secure way.
Public Key: Public keys are designed to be public. They can be freely given to everyone or
posted on the internet. By using the public key, one can encrypt the plain text message into
the cipher text. It is also used to verify the sender authentication. In simple words, one can
say that a public key is used for closing the lock.
Private Key: The private key is totally opposite of the public key. The private key is always
kept secret and never shared. Using this key we decrypt cipher text messages into plain text.
In simple words, one can say that the private key is used for opening the lock.
Application in Blockchain:
o Wallets and Addresses: In blockchain, public-key cryptography is used to generate public
addresses (wallets). The private key allows access to and control over the cryptocurrency
or assets in the wallet.
o Transaction Security: Public-key cryptography ensures that only the holder of the private
key can authorize transactions from a wallet.

4. Merkle trees:

Merkle tree also known as hash tree is a data structure used for data verification and
synchronization. It is a tree data structure where each non-leaf node is a hash of its child
nodes. All the leaf nodes are at the same depth and are as far left as possible.
It maintains data integrity and uses hash functions for this purpose.

Structure:
o Leaf Nodes: Contain the hash of individual transactions or data blocks.
o Non-Leaf Nodes: Contain the hash of their child nodes.
o Merkle Root: The single hash at the top of the tree, representing the cumulative
hash of all the transactions in the block.
How It Works:
o Transactions are hashed and placed in leaf nodes.
o Hashes are combined pairwise up the tree to form the Merkle root.
o To verify that a transaction is included in a block, only the Merkle root and a few
intermediary hashes (Merkle Proof) are needed, allowing efficient verification
without downloading the entire blockchain.
Application in Blockchain:
o Efficient Transaction Verification: Merkle trees allow efficient and secure
verification of large sets of transactions in a block, enabling lightweight clients
(lightnode)to validate specific transctions without downloading the entire blkcn.
o Data Integrity: If even one transaction is altered, the Merkle root changes,
making it easy to detect tampering.

Applications of Cryptographic Foundations in Blockchain


1. Data Integrity and Immutability:
o Hash functions ensure that once data is added to the blockchain, it cannot be altered
without changing the entire chain of hashes.
2. Secure Transactions:
o Public-key cryptography and digital signatures enable users to securely sign and
verify transactions, ensuring that only authorized participants can move assets on
the blockchain.
3. Efficient Data Verification:
o Merkle trees allow efficient verification of large data sets, which is crucial for
scalability in large blockchain networks.

Summary
o Hash Functions provide a secure way to ensure data integrity by creating unique
digital fingerprints.
o Digital Signatures authenticate and validate the origin and integrity of data.
o Public-Key Cryptography secures user identities and transactions.
o Merkle Trees efficiently verify large amounts of data and ensure the integrity of
transactions in a block.
Zero-knowledge proofs:
(ZKPs) are cryptographic protocols that allow one party (the prover) to prove to another party (the
verifier) that they know a certain piece of information, without revealing the information itself. In
other words, ZKPs allow for verification without disclosure.

Key Properties of Zero-Knowledge Proofs:


1. Completeness: If the statement is true, an honest prover can convince the verifier that they
know the information with certainty.
2. Soundness: If the statement is false, no dishonest prover can convince the verifier of the
truth of the statement.
3. Zero-Knowledge: The verifier learns nothing beyond the fact that the statement is true. The
prover reveals no information about the actual data, keeping it completely secret.

Types of Zero-Knowledge Proofs


1. Interactive Zero-Knowledge Proofs:
o The prover and verifier communicate back and forth. The prover provides responses
to challenges posed by the verifier.
o Repeated rounds increase the confidence of the verifier that the prover knows the
information.
2. Non-Interactive Zero-Knowledge Proofs (NIZK):
o No direct interaction between the prover and verifier. Instead, the prover generates
a proof once, and any verifier can validate it later.
o This type of proof is useful in blockchain contexts because it can be stored or shared
without requiring interaction each time.

Applications of Zero-Knowledge Proofs in Blockchain


1. Privacy-Preserving Transactions:
o ZKPs can be used to prove the validity of transactions without revealing the
transaction details. For example, in the Zcash cryptocurrency, zk-SNARKs (a specific
type of ZKP) allow users to prove that a transaction is valid (e.g., the sender has
enough funds) without revealing the amounts or the sender and receiver's identities.
2. Authentication:
o ZKPs allow users to prove their identity or knowledge of a password without actually
sharing the password or identity details. This prevents the need to disclose sensitive
information to third parties, enhancing privacy.
3. Verifiable Computation:
o In distributed systems, ZKPs enable one party to prove that they performed a
computation correctly without having to share the details of the computation. This is
useful for off-chain computation in blockchain systems.
4. Voting Systems:
o In blockchain-based voting systems, ZKPs can ensure that votes are counted correctly
while maintaining voter anonymity. The vote can be verified without revealing who
cast it

Advantages of Zero-Knowledge Proofs


 Enhanced Privacy: Users can prove possession of information or the validity of a transaction
without revealing any sensitive data.
 Security: ZKPs allow secure authentication without revealing passwords or other personal
information.
 Efficiency: In non-interactive forms like zk-SNARKs, ZKPs enable fast and efficient proofs,
making them practical for use in real-time systems like blockchain.
challenges of Zero-Knowledge Proofs
 Complexity: Implementing ZKPs, especially zk-SNARKs and zk-STARKs, can be
computationally expensive and difficult to integrate into some systems.
 Trusted Setup (zk-SNARKs): Some forms of ZKPs (like zk-SNARKs) require a trusted setup,
which can introduce security risks if the setup is compromised.

Disadvantages of Blockchain Technology:


1. Scalability: The decentralized nature of blockchain technology can make it difficult to scale
for large-scale applications.
2. Energy Consumption: The process of mining blockchain transactions requires significant
amounts of computing power, which can lead to high energy consumption and
environmental concerns.
3. Adoption: While the potential applications of blockchain technology are vast, adoption has
been slow due to the technical complexity and lack of understanding of the technology.
4. Lack of Standards: The lack of standardized protocols and technologies can make it difficult
for businesses to integrate blockchain technology into their existing systems.

Blockchain project ideas


Here are a few project ideas for beginners looking to learn more about blockchain technology:
1. Cryptocurrency Wallet: Create a simple cryptocurrency wallet application that allows users
to send and receive digital assets.
2. Blockchain Explorer: Develop a web-based application that allows users to view and search
the transactions on a specific blockchain.
3. Smart Contract: Implement a simple smart contract on the Ethereum blockchain that can be
used to manage a digital token or asset.
4. Voting System: Create a blockchain-based voting system that allows for secure and
transparent voting while maintaining voter anonymity.
5. Supply Chain Management: Develop a blockchain-based system for tracking the movement
of goods and services through a supply chain, providing greater transparency and
traceability.

Future Scope of Blockchain Technology


Finance, supply chain management, and the Internet of Things are just a few of the sectors that
blockchain technology has the power to upend (IoT). The following are some potential uses for
blockchain in the future:
 Digital Identity: Blockchain-based digital IDs might be used to store personal data safely and
securely as well as offer a means of establishing identity without the need for a central
authority.
 Smart Contracts: A variety of legal and financial transactions could be automated using smart
contracts, self-executing contracts with the terms of the agreement put straight into lines of
code.
 Decentralized Finance (DeFi): Using blockchain technology, decentralized financial systems
might be built that support peer-to-peer transactions and do away with conventional
intermediaries like banks.
 Supply Chain Management: Blockchain technology can be applied to a permanent record of
how goods and services have been moved, enabling improved openness and traceability
across the whole supply chain.

Practical Byzantine Fault Tolerance (pBFT)

(pBFT) is a consensus algorithm designed to solve the Byzantine Generals Problem, which arises in
distributed systems when some nodes may act maliciously or fail in unpredictable ways. The pBFT
algorithm ensures that a distributed system can reach consensus (agreement) even when up to one-
third of its nodes are faulty or acting maliciously.

You might also like