Blockchain and Cryptography
4.1 Cryptographic Foundations
Symmetric vs asymmetric cryptography.
Hash functions (SHA-256), digital signatures (RSA, ECDSA).
4.2 Blockchain Basics
Structure of a block, hash chaining.
Distributed ledger and consensus.
4.3 Consensus Algorithms
Proof-of-Work (PoW), Proof-of-Stake (PoS).
Byzantine fault tolerance.
4.4 Smart Contracts
Ethereum, Solidity programming.
Decentralized applications (dApps).
4.5 Security and Privacy
51% attacks, Sybil attacks.
Zero-knowledge proofs, zk-SNARKs.
4.6 Applications Beyond Cryptocurrency
Supply chain, healthcare, identity verification.
Advanced Algorithms and Complexity Theory
5.1 Algorithm Design Paradigms
Greedy, divide-and-conquer, dynamic programming, backtracking.
5.2 Graph Algorithms
BFS, DFS, Dijkstra, A*, Floyd-Warshall.
Minimum spanning trees: Kruskal, Prim.
5.3 Approximation and Randomized Algorithms
PTAS, FPTAS.
Monte Carlo, Las Vegas algorithms.
5.4 NP-Completeness
P vs NP, NP-complete and NP-hard problems.
Reductions and Cook-Levin theorem.
5.5 Parameterized Complexity
Fixed parameter tractability (FPT).
Kernelization.
5.6 Online Algorithms and Streaming
Competitive analysis.
Count-min sketch, Bloom filters.
5.7 Quantum Algorithms (Intro)
Qubits, superposition, Grover’s and Shor’s algorithms.