Major Components of Blockchain
1. Ledger
        o The ledger is the core component of blockchain.
        o It contains two parts:
                 World State → the current state of data stored on the blockchain.
                 Blockchain of Transactions → a record of all transaction invocations.
        o Together, they ensure both the latest state and the history of all changes are preserved.
  2. Smart Contract
        o Encapsulates business logic in code form.
        o When a transaction is invoked, it performs get and set operations on the ledger state.
        o Enables automation and removes the need for intermediaries.
  3. Peer Network
        o A broad term representing the nodes participating in transaction flow.
        o Responsible for generating agreement on transaction ordering.
        o Ensures correctness and validation of transactions before they become part of a block.
  4. Consensus Network
        o A collection of peers working together to maintain a consistently replicated ledger.
        o Provides mechanisms for reaching agreement (consensus) despite faults or malicious actors.
        o Guarantees trust in a decentralized environment.
  5. Membership
        o Manages identity and access control for participants in a permissioned blockchain.
        o Issues transaction certificates and ensures only authenticated users can transact.
        o Provides a trusted framework for secure participation.
  6. Events
        o Generate notifications about important blockchain activities.
        o Also track updates or actions related to smart contracts.
        o Useful for monitoring and triggering external applications, though they don’t handle distribution.
  7. System Management
        o Since blockchain runs across multiple organizations, it requires strong management.
        o Involves creating, changing, and monitoring blockchain components in a distributed manner.
        o Ensures smooth governance of the network.
  8. Wallet
        o A secure software/hardware component that stores and manages a user’s cryptographic
            credentials (public/private keys).
        o Enables users to sign transactions and prove their identity on the blockchain.
  9. System Integration
        o Connects blockchain with external systems in a bi-directional way.
        o Though not part of the blockchain itself, it is essential for real-world applications (e.g., supply
            chain systems, financial apps).
Feature         Public Blockchain        Private Blockchain                 Consortium/Federated Blockchain
Accessibility   Open to everyone         Restricted, only authorized users Restricted to selected organizations
Control         No central authority     Single organization                Multiple organizations
Speed           Slow (many nodes)        Fast (few nodes)                   Faster than public, slower than private
                High (many nodes,
Security                                 Lower (few nodes, centralized) Medium (shared control, still risk)
                decentralized)
                Limited due to large                                        Flexible; easier to scale with fewer
Scalability                              Scalable; size can be adjusted.
                network size.                                               participants.
                Anonymous            but                                    Partially private, shared among
Privacy                                  High privacy, confidential
                transparent records                                         members
                Cryptocurrencies,        Company        auditing,     asset Banking, supply chain, inter-org
Use Cases
                smart contracts          tracking                           collaboration
Examples        Bitcoin, Ethereum        Hyperledger, Corda                 Tendermint, Multichain
       Definition: Merkle Trees are data structures used to create a 'secured chain of blocks' by storing a series
        of data records, where each record connects to the previous one, containing the history of the entire
        chain; they are foundational to blockchain for efficient verification
     Structure:
        o Leaf Nodes: Contain the hash of individual documents or transactions.
        o Intermediate Nodes: Each non-leaf node contains the hash of the combination of its left and right
           child nodes.
        o Merkle Root: The top node, which is the hash of all underlying hashes, representing the entire tree;
           if any transaction changes, the root changes.
        o Tree Formation: It's a binary tree where hashes propagate upwards; used in Bitcoin to verify
           transactions efficiently without scanning the whole chain
==============================================================================
Cryptocurrency Usage
A cryptocurrency ecosystem is only as strong as its community. The active participation of developers, miners,
users, merchants, and traders ensures a robust and sustainable blockchain (BL) ecosystem.
Players of Cryptocurrency Ecosystem:
    1. Developers
            o They design, develop, deploy, and maintain blockchain protocols, applications, and interfaces.
            o Provide different levels of functionality to the ecosystem.
    2. Miners
            o Validate and record new transactions on the blockchain.
            o Use consensus mechanisms (like Proof of Work / Proof of Stake) to add blocks securely.
    3. Users
            o End-users utilize cryptocurrencies for transactions and investments.
            o Can also act as miners, investors, or validators.
            o Each user node stores a copy of the ledger to initiate and verify transactions.
    4. Merchants
            o Businesses or service providers who accept cryptocurrency as payment.
            o Facilitate real-world usage of digital currency.
    5. Traders
            o Also known as brokers.
            o Buy and sell cryptocurrencies based on market price movements.
            o Use exchange platforms to identify the cheapest exchange rates between tokens.
==============================================================================
1. Hot Wallets (Software Wallets)
     Definition: Hot wallets are software-based wallets connected to the internet, designed for convenience
        and everyday transactions.
     Characteristics:
            o Always online, making them accessible but vulnerable to hacking, phishing, or malware.
            o Free to use and easy to set up.
            o Suitable for short-term storage and frequent transactions, not long-term holding.
     Subcategories:
            o Desktop Wallets:
                    Software installed on a personal computer (Windows, Linux, or Mac).
                    Users control private keys, offering more security than web wallets if the system is secure.
                    Examples: Bitcoin Core, Electrum, Exodus.
            o Mobile Wallets:
                    Smartphone apps for managing cryptocurrencies on the go.
                    Convenient for payments (e.g., via QR codes) but vulnerable to device theft or malicious
                     apps.
                    Examples: Trust Wallet, Mycelium.
            o Online (Web) Wallets:
                    Browser-based wallets accessed via websites or cloud services.
                    Easy to use from any device but risky due to reliance on third-party servers and
                     susceptibility to phishing.
                    Examples: MetaMask, Coinbase Wallet.
                  
       Advantages:
            o Easy access and user-friendly for frequent transactions.
            o Often support in-app crypto swaps or DeFi integration.
      Disadvantages:
            o High security risks due to constant internet connectivity.
            o Not ideal for large crypto holdings.
2. Cold Wallets
      Definition: Cold wallets store private keys offline, offering maximum security for long-term
        cryptocurrency storage.
      Characteristics:
            o Not connected to the internet, making them immune to online threats like hacking or malware.
            o Require purchase (hardware) or manual setup (paper), less convenient for frequent use.
            o Ideal for holding large amounts or long-term storage.
      Subcategories:
            o Hardware Wallets:
                    Physical electronic devices that generate and store private/public keys offline using a
                     random number generator.
                    Connect to the internet only during transactions, then disconnect.
                    More secure than hot wallets but less user-friendly and costly.
                    Examples: Ledger, Trezor.
            o Paper Wallets:
                    Private and public keys printed or written on paper, often with QR codes for easy scanning.
                    Completely offline, immune to cyber threats but vulnerable to physical damage, loss, or
                     theft.
                    Created using trusted offline generators (e.g., bitaddress.org).
                    Less common today due to inconvenience and lack of recoverability.
      Advantages:
            o Highly secure against online attacks.
            o Full user control over private keys (non-custodial).
      Disadvantages:
            o Less convenient for regular transactions.
            o Risk of physical loss or damage; no recovery if keys are lost.
==============================================================================
UTXO: In bitcoin, the transaction lives until it has been executed till the time another transaction is done out of
that UTXO. UTXO stands for Unspent Transaction Output.
      It is the amount of digital currency someone has left remaining after executing a transaction.
      When a transaction is completed, the unspent output is deposited back into the database as input which
        can be used later for another transaction.
How is a UTXO created: UTXOs are created through consumption of existing UTXOs. Every Bitcoin
transaction is composed of inputs & outputs. Inputs consume existing UTXO, while outputs create a new
UTXO.
UTXO Model: The UTXO model does not incorporate wallets at the protocol level. It is based on individual
transactions that are grouped in blocks. The UTXO model is a design common to many cryptocurrencies, most
notably Bitcoin.
   Cryptocurrencies that use the UTXO model do not use accounts or balances. Instead, UTXOs are transferred
    between users much like physical cash.
   Each transaction in the UTXO model can transition the system to a new state, but transitioning to a new state
    with each transaction is infeasible.
   The network participants must stay in sync with the current state.
Explanation of the Diagram (UTXO Transaction Model)
     1. Tom’s Wallet (Left Side):Tom’s address: 0x123
            o Balance: 5 BTC (but not stored as one big chunk).
            o Instead, it is stored as multiple UTXOs (i/p) → for example, 4 inputs that together total 5 BTC.
These UTXOs are like separate “digital coins” Tom owns.
     2. Unlocking Inputs:
           o    When Tom wants to send 2 BTC to Alice, he must “unlock” his inputs using his private key (to
                prove ownership).
            o The unlocked inputs (totaling 5 BTC) are now available to spend.
    3. Creating Outputs (Right Side):
            o Tom sends 2 BTC to Alice’s address → this becomes one output.
            o Since Tom had 5 BTC and only used 2 BTC, the remaining 3 BTC must go back to Tom as
                change.
            o But in the UTXO model, this 3 BTC is not sent back as a single piece. Instead, it is broken into
                multiple smaller outputs:
                     1 BTC output
                     1.5 BTC output
                     0.5 BTC output
                     Together = 3 BTC back to Tom
So the outputs are:
            o 2 BTC → Alice (receiver)
            o 3 BTC → Tom (change, split into parts)
    4. Locking Outputs:
            o Once outputs are created, they are “locked” to the recipient’s address.
            o For Alice to use her 2 BTC later, she will need her private key to unlock it.
            o Similarly, Tom can only spend his 3 BTC change by unlocking those UTXOs in a future
                transaction.
    5. Allowing me to take my IA1 paper separately at a later time.
==============================================================================
A block in blockchain is made up of several important components, each of which ensures transparency,
security, and integrity of transactions. The major components are:
    1. Hash: A unique 256-bit identifier for each block, generated from its transactions.
    2. Confirmations: Show how many times a block is verified and added to the chain.
    3. Timestamp: Indicates when the block was first confirmed and added.
    4. Height: Position of a block in the chain (number of blocks linked before it).
    5. Miner: The entity who validates and adds the block; miner details include address, balance, and total
        transactions.
    6. Number of Transactions: Total transactions included in a block (Bitcoin allows ~1 MB of data per
        block).
    7. Difficulty: Represents how hard it is to find a valid hash; adjusts to maintain ~10-minute block time.
    8. Merkle Root: The root hash summarizing all transaction hashes in the block.
    9. Version: Indicates the protocol version used.
    10. Bits: A subunit of Bitcoin (1,000,000 bits = 1 BTC).
    11. Weight: Measures block size relative to the block limit.
    12. Nonce: A random value miners vary to find a valid PoW hash.
    13. Transaction Volume: Total bitcoins included in that block’s transactions.
    14. Block Reward: Incentive for miners for adding a block (initially 50 BTC, now reduced periodically).
    15. Fee Reward: Additional transaction fees collected by the miner.
==============================================================================
Parameter Hot Wallets                                       Cold Wallets
                Short-term storage, suited for everyday
Purpose                                                     Long-term storage, safe for large holdings
                transactions
Connectivity Requires internet (online storage)             Works offline, no internet required
Cost            Free to use                                 Must be purchased
                                                            Very secure from online threats, but risk of physical
Security        Vulnerable to cyber-attacks, malware
                                                            damage/loss
Accessibility Easy to access, very convenient               Less accessible, slower for transactions
Categories Desktop, Mobile, Online Wallets                  Hardware Wallets, Paper Wallets