🔐 Cryptography Fundamentals – A Practical Guide
A hands-on journey through the core concepts, algorithms, and techniques of modern and classical cryptography. This repository blends theory with Python-based implementations — ideal for students, developers, and security enthusiasts.
📘 Contents 🧩 Chapter 1 – Cryptography Basics
Goals: Confidentiality, Integrity, Authentication, Non-repudiation
Symmetric vs. Asymmetric cryptography
🔡 Chapter 2 – Caesar Cipher
Theory and Python implementation
Brute-force and frequency analysis
🔤 Chapter 3 – Vigenère Cipher
Key-based substitution cipher
Kasiski examination and cracking methods
⚙️ Chapter 4 – One Time Pad (OTP)
XOR encryption and perfect secrecy
True vs. pseudo-random key generation
🧱 Chapter 5 – Data Encryption Standard (DES)
Step-by-step DES implementation
Linear and differential cryptanalysis
🧠 Chapter 6 – Advanced Encryption Standard (AES)
AES rounds, confusion & diffusion principles
🔑 Chapter 7 – Asymmetric Cryptosystems
Limitations of symmetric keys
Prime and random number roles
➗ Chapter 8 – Modular Arithmetic
Prime generation, factorization, and discrete logs
🤝 Chapter 9 – Diffie-Hellman Key Exchange
Secure key sharing and MITM vulnerability
🔒 Chapter 10 – RSA Algorithm
Public/private key encryption and factorization security
🔢 Chapter 11 – Advanced Modular Arithmetic
Euclidean & Extended Euclidean Algorithm (EGCD)
Modular inverses
🧮 Chapter 12 – Elliptic Curve Cryptography (ECC)
ECC theory and Python examples
Why ECC powers Bitcoin & modern crypto systems
🧾 Chapter 13 – Cryptographic Hashing
MD5, SHA families, and the Birthday paradox
💻 Tech Stack
Language: Python 🐍
Focus: Cryptography, Mathematics, Security
Avantika Shrivastava
GitHub: https://github.com/avantika77