PASSWORD CRACKING SIMULATION
Lesson 2 of 5WARMUP: Guess the Password Game
Think of a 4-digit PIN. How many guesses would it take someone to crack it if they started at 0000 and tried every combination? That's 10,000 possibilities — but a computer can test them in milliseconds!
4 digits = 104 = 10,000 combinations
CORE CONCEPTS
A brute force attack tries every possible combination until it finds the right one. Python is perfect for automating this.
A dictionary attack uses a list of common passwords instead of trying every combination — much faster!
That's why you should NEVER use common passwords!
Password entropy measures how unpredictable a password is. Higher entropy = harder to crack.
MINI CHALLENGE: Crack the 3-Digit PIN
How fast can your Python script find a 3-digit PIN? Only 1,000 combinations to check!
MAIN PROJECT: Password Strength Checker
Build a Python algorithm that evaluates password strength based on length, character variety, and common patterns.
Check password length (min 8, ideal 12+)
Detect uppercase, lowercase, numbers, symbols
Check against a list of common passwords
Output: Weak / Moderate / Strong rating
QUIZ: Password Security
Test your knowledge of password cracking and defense.
1. What attack tries every possible combination?
2. Which password has the highest entropy?
3. What is the main advantage of a dictionary attack over brute force?