Unit 2 - Cryptographic Fundamentals
Unit 2 - Cryptographic Fundamentals
Fundamentals
• Cryptographic Basics for Cryptocurrency: A
Short Overview of Hashing
• Cryptocurrencies rely heavily on cryptographic principles to ensure security,
immutability, and trust in a decentralized network.
• Hashing plays a crucial role in securing transactions, ensuring data integrity, and
enabling consensus mechanisms such as Proof of Work (PoW).
• Cryptographic Basics for Cryptocurrency: A
Short Overview of Hashing
1. What is Hashing?
b. Blockchain Structure (Merkle Trees): Transactions are grouped into blocks and
stored using Merkle Trees, where each leaf node is a hash of a transaction, and the
root hash represents the entire block’s transactions. This allows efficient
verification without downloading all transactions.
• Cryptographic Basics for Cryptocurrency: A
Short Overview of Hashing
4. Role of Hashing in Cryptocurrencies
c. Proof of Work (PoW) Mining: Bitcoin and many other cryptocurrencies use
PoW, where miners must find a nonce that produces a hash meeting a certain
condition (e.g., starting with a specific number of leading zeros). This process
secures the network and prevents fraudulent transactions.
1. Symmetric Encryption
• Description: In symmetric encryption, the same key is used for both encryption and
decryption. Both the sender and the recipient must have the secret key to encrypt and
decrypt the message.
1. Symmetric Encryption
• Example Algorithms:AES (Advanced
Encryption Standard): Commonly used
symmetric encryption scheme for securing
sensitive data.
✔ Identity verification: Public and private keys authenticate users in the system.
• Example Algorithms:
✔ RSA: An older asymmetric encryption algorithm used for securing communications and digital
signatures.
✔ Elliptic Curve Cryptography (ECC): A modern and more efficient asymmetric encryption algorithm
used in blockchain networks.
• Encryption Schemes in Blockchain
Elliptic Curve Cryptography (ECC): A modern and more efficient asymmetric encryption
algorithm used in blockchain networks.
✔ SigningKey.generate
creates a new private key
using the NIST384p elliptic
curve.