Cryptography, Week One

I first proposed this course a little over 2 years ago…and now it’s finally made it into reality.

Which–of course–comes with the drawback that now I actually have to *plan* the course each week. Funny how that works, right?

But, I have to say, it went really well the first week. I totally under-planned for the first day, but somehow I managed to swing an off-the-cuff lesson on modular arithmetic that had me looking up at the clock and saying “has it really been an hour already?” and my students saying the same. You know it was a successful day when students are amazed by how fast the class went by.

I know I’m probably not the only one who has a secret yearning to teach Crypto, so I’m going to try to post everything I do in class here. Added bonus: when I teach it again next year, I’ll actually know what the heck to do!

Day One:

Say hello, confirm that everyone knows everyone else (at least enough to say “hello” to), tell students their first assignment is to read the syllabus. Then give students the syllabus–which they quickly note is IN CODE! They are intelligent enough to realize that they are supposed to decrypt the message. This didn’t take very long (good to remember!) as I kept in all sorts of easy hints–it was pretty easy to realize my email address was going to end in for instance.

When they got the code, I passed out the plaintext version of the syllabus and had students read it. While students were decrypting and reading, I put some vocab up on the whiteboard. After asking about questions relating to the course, we went over the definitions. Then, a mini-lecture on inverse functions and how encryption and decryption functions are inverses. Talk about ROT13 (the algorithm I used to encrypt the syllabus) and how it is its own inverse. History of Caesar shift also happens here at some point. Then I connected the Casesar shift to modular arithmetic and we did a few examples. To end the class I had students each encrypt a message using a Caesar shift–I gave them “decoder ring” to help–and exchange with a partner to decrypt.

Homework was to write me a letter.

Day Two:

I use this PowerPoint, which takes up basically the whole class. The lecture is on frequency analysis, the second to last slide is from The Code Book. Students work on decrypting the message–this takes a while and students don’t finish before class is over. We don’t get to the last slide.

Day Three:

We start by having a discussion about the first chapter in The Code Book. I push the tables together so we’re sitting in a circle. They are well-trained from their Humanities class in having a discussion, so I don’t have to work very hard. Then we do slide 9 from the previous day’s PPT. I give each group of students a set of Scrabble tiles and they compute the relative frequencies of each letter. Then they decide whether they agree or disagree with the point distributions for each letter. Their assignment, which they finish for homework, is to write a memo to Hasbro Co. giving their recommendations for changes to the game (or, if they think no changes are necessary, they write explaining what they think is good about the game design).

Day Four:

Warm-up is a few problems on evaluating several numbers in mod 6. I somehow forgot to mention that modulos can be evaluated using division with remainders, so I choose my numbers to (hopefully) lead up to this insight. I make sure we talk about this now. In the previous class someone had mentioned a misconception about anagrams, saying that the reason they did not get used often for encryption was that they were too easy to decrypt. So, we used the Scrabble tiles again to do a lesson on permutations.

And that was it for the week.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s