random design

Below is a rough schedule of how I expect this class to proceed and important dates.  You can expect to see this schedule revised as the course develops. You are expected to show up for lectures and be aware of any changes to the tentative schedule that I am providing for you here.

Lecture Schedule
Tuesday, January 4
Introduction-Caesar, Vigenere

Thursday, January 6
classical ciphers- Rectangular transposition, homophonic, Playfair, ADFGVX, snail

Tuesday, January 11

Quiz 1
Thursday, January 13
classical ciphers- Hill, Vernam, probability theory

Tuesday, January 18
probability theory and the game of craps
return quiz 1
Thursday, January 20
disease paradox, more craps, Hill problem

Tuesday, January 25

Quiz 2
Thursday, January 27
three sticks, monkey words, index of coincidence

Tuesday February 1
Monty Hall, index of coincidence, test for monoalphabetic substitution, breaking Vigenere
return quiz 2
Thursday, February 3
\( F( \sum_i m_i x_i ) \leq \sum_i m_i F(x_i) \), breaking rectangular transposition

Tuesday February 8
breaking monoalphabetic substitution, breaking ADFGVX, Intro to entropy

Thursday, February 10

Quiz 3
Tuesday February 15
more on Entropy, unicity distance

Thursday, February 17
trees and codes

Tuesday February 22 and 24
reading week

Tuesday March 1

Quiz 4
Thursday, March 3
coins, trees, codes

Tuesday March 8
decision trees, expected code length, perfect secrecy

Thursday, March 10
perfect secrecy, Vernam, gcd

Tuesday March 15
number theory computations

Thursday, March 17

Quiz 5
Tuesday March 22
Diffie-Hellman, number theory computations, RSA

Thursday, March 24
digital signatures, RSA, using primitive roots to solve equations

Tuesday March 29
El Gamal, breaking RSA, Diffie-Helman (factoring, discrete log)

Thursday, March 31
DES, Feistel, knapsack

The grade for this course will be based on three components listed on the grades page.  The final grade will be curved and will not be based on the absolute system of reference.

random design

The following is a list of main topics that we covered from my schedule when I taught the class last year. You can expect that we follow this list in roughly the same order.

Classical ciphers
     Rectangular transposition
     Morse code
probability theory
the game of craps
infinite monkeys
probability and vigenere
probability and rectangular transposition
index of coincidence
breaking monoalphabetic substitution
Introduction to entropy
unicity distance
trees and file compression
number theory
solving ax=b (mod n)
computing a^b (mod n)
Euler-Fermat theorem
primality testing
discrete log
Feistel cyphers