Teach students how a website can check a password in Python without keeping it. Students compare a stolen table of passwords with a stolen table of hashes, then make hashes with hashlib and store only hashes in a dictionary. They write a sign-up and a login that hashes each try, compares it with the stored hash and allows three tries before a lockout.
● Instant download · Lifetime access · Editable & print-ready
Short coding levels practice this lesson in CodeGrove, our code lab that runs in the browser. Students write the program, run it and check it, with no account and nothing to install. Use them with the lesson or as practice later.
See the levels→Students may think a site must keep your password to check it. This lesson shows that a login can store only a hash and compare hashes. Students see what a thief would find in each kind of table.
The try-it on Day 1, the lab on Day 2 and the quiz task on Day 3 run online in CodeGrove, our in-browser code lab, so students need a computer or tablet on those days. The Login Desk level practices hashing passwords with hashlib, storing only hashes in a dictionary, and writing a login that compares hashes and allows three tries. CodeGrove is free, with no accounts, sign-ins or installs.
Students write a sign-up that stores only hashes and a login that allows three tries in CodeGrove.
The same text always gives the same hash, so a login can compare hashes. A thief who steals the table gets hashes instead of passwords.
Students write a login with a counter that allows three tries, and break ends the loop when a try is right. They also learn that real sites add a salt and use a slow hash.
Every page is a print-ready PDF, and the Google Forms™ and Google Slides™ let you teach the same lesson in Google Classroom™.
Students write and run real Python in CodeGrove, our in-browser code lab, on a computer or tablet, with no accounts or installs.
Every day has its own answer key, and every written question has a sample answer and what to look for.
Each day's plan is timed activity by activity against real reading and writing speeds.
Reviews help me a lot, and they help other teachers pick the right resources for their classes. It takes about a minute.
Leave a reviewInstant download right after checkout: PowerPoint and Word files you can edit, print-ready PDFs, and links that copy the Google Forms™ and Google Slides™ into your Drive.
Yes. This lesson is part of the Unit 4 bundle and the complete Python Programming 2 course. Both cost less than buying the lessons one at a time.
No. It is a full-year, non-AP second course in Python for grades 9 to 12. For AP, see our AP Computer Science A and AP CSP courses.
Students know try and except, how to check input, and how to count tries in a while loop.
Yes, on the CodeGrove days. Each student needs a computer or tablet that's online, and CodeGrove needs no account or install. The bell ringers, notes, exit tickets and quiz are on paper.
Every page is a print-ready PDF. The slides are an editable PowerPoint and the guided notes an editable Word file. The exit tickets and the quiz also come as Google Forms™, and the deck as Google Slides™.
Written for Florida's Intermediate Programming course (9007220). The skills map in the lesson shows which standards each day teaches.