Next: About this document ...
CS007 Syllabus
Revision: pnk, September 11
Week 1
- Lecture 1 (Sept.2):
- History, Classical cryptography, Caesar cypher, attack types,
modular addition/subtraction, NIM, passwords, phone/credit card scenario,
emphasize the fact that security is not simply a function of key size,
[Security goals/building blocks/implementations. security assumptions]
- Lab 1:
- Introduction to MarkCalc: Caesar cypher(looped), substitution cypher
- Lecture 2 (Sept.4):
- function notation, subscript notation, functions with Caesar cypher, invertibility, key space attack, addition cypher, functions with addition cypher
- Homework 1:
- modular addition/subtraction, NIM, function notation (domain/co-domain)
Week 2
- Lecture 3 (Sept.9):
- dictionary attacks (eg:passwords), how to choose a key,
modeling the cleartext (relation to keyspace attack),
probability, randomness vs. uncertainty, probability as a function
- Lab 2:
- addition cypher, IFF, Venona lookalike, Kerberos
- Lecture 4 (Sept.11):
- weakness of addition cypher, one-time pad,
perfect secrecy (as related to one-time pad)
- Homework 2:
- probability, more on functions (applications to crypto)
Week 3
- Lecture 5 (Sept.16):
- perfect secrecy, Vernam cypher, one-time pad, Venona
- Lab 3:
- perfect secrecy (one-time pad, binary one-time-pad), secret sharing, determining perfect secrecy experimentally using probability distributions, Venona
- Lecture 6 (Sept.18):
- secret-sharing and threshold secret-sharing,
modular multiplication with specific prime moduli, inverses (prime
moduli), algebraic thinking
- Homework 3:
- more modular arithmetic esp. multiplicative inverses, perfect secrecy (one-time-pad), (threshold) secret sharing, MAC
Week 4
- Lecture 7 (Sept.23):
- primality, modular arithmetic (with arbitrary
moduli), review of threshold secret-sharing, MAC
- Lab 4:
- one-time-pad and addition cypher as commitment (lottery),
finding phi by enumeration, finding multiplicative inverse by
enumeration (some topics may be moved to next week's lab)
- Lecture 8 (Sept.25):
- Definition of commitment protocol, slightly
faulty schemes, near-perfect secrecy, Euler's phi function, polynomial
encryption(time permitting...)
- Homework 4:
- (polynomial encryption), rules of exponentiation,
primality, phi function, modular exponentiation and Euler-type
calculations (without knowing Euler's Theorem)
Week 5
- Lecture 9 (Sept.29):
- Ordinary logarithms, rules of exponentiation,
binary expansion, binary games (mind-reading cards, advanced NIM),
computer addition/multiplication of integers, computational
complexity and growth rates of functions
- Lab 5:
- multiplication timing experiments, Kerberos?
- Lecture 10 (Oct.2):
- NO LECTURE (Holiday)
- Homework 5:
- logarithms, binary, growth rates of complexity functions
(fastthink and slowthink), discrete logarithm for small moduli
Week 6
- Lecture 11 (Oct.7):
- One-way functions, application to passwords,
s-key, salting, discrete logarithm, exponential one-way function, intro to repeated squaring
- Lab 6:
- exponentiation experiments (motivated by exponential one-way
function) using TA-provided tools,(with repeated squaring), use of
one-way functions: skey, passwords, commitment [demonstrates need for nonce]
- Lecture 12 (Oct.9):
- Repeated squaring and analysis, growth
rates of complexity functions applied specifically to exponential
one-way functions, choosing security parameters
- Homework 6:
- repeated squaring, use formulas for estimating time for
exponentiation and discrete logarithm, choosing security parameters,
relating security assumptions to computational assumptions
Week 7
- Lecture 13 (Oct.14):
- ExpoCypher encryption, Fermat's theorem, Euler's
theorem, decryption
- Lab 7:
- NO LAB
- Lecture 14 (Oct.16):
- Euler's theorem and decryption again, Euclid's algorithm
- Homework 7:
- Expocypher encryption and decryption, Euler's Theorum,
Euclid's algorithm, again use formulas for estimating time for
exponentiation and discrete logarithm but this time for encryption, choosing security parameters
Week 8
- Lecture 15 (Oct.21):
- Euclid's algorithm (again) and analysis
- Lab 8:
- Timing experiments on modular inversion?, threshold
secret-sharing, MAC, ExpoCypher
decryption, IFF using ExpoCypher, other uses of
ExpoCypher (money, voting) (maybe some will spill over into next week)
- Lecture 16 (Oct.23):
- choosing security parameters, growth rates
, policy discussion
- Homework 8:
- Again use formulas for estimating time -this time for
decryption (Euclid's algorithm followed by repeated squaring), choosing security parameters
Week 9
- Lecture 17 (Oct.28):
- key agreement
- Lab 9:
- shared decryption, verifiable secret-sharing, basic key
agreement, Eve-in-the-middle, basic El Gamal, editing white pages (El Gamal)
- Lecture 18 (Oct.30):
- El Gamal
- Homework 9:
- El Gamal, key agreement
Week 10
- Lecture 19 (Nov.4):
- RSA, public key encryption
- Lab 10:
- RSA, RSA w/ small mod, RSA w/ even mod, RSA w/ small cleartext (and large exponent), signed garbage, shared signing
- Lecture 20 (Nov.6):
- digital signatures, certificates, shared signing
- Homework 10:
- digital signatures, RSA basics
Week 11
- Lecture 21 (Nov.11):
- message digest, hashing
- Lab 11:
- checks (simple), multiplying RSA sigs, combining RSA sig
blocks, hashing, hashes as commitment schemes
- Lecture 22 (Nov.13):
- certificates, PGP, SSL
- Homework 11:
- ?
Week 12
- Lecture 23 (Nov.18):
- Social Engineering/ Human security failure
- Lab 12:
- certificates, PGP?, SSL, SET
- Lecture 24 (Nov.20):
- SET (credit card)
- Homework 12:
- SSL, SET
Week 13
- Lecture 25 (Nov.25):
- blinded signatures, on-line and off-line payment
schemes, Brown card, checking (more complicated) (maybe some
spillover into next week)
- Lab 13:
- NO LAB
- Lecture 26 (Nov.27):
- NO CLASS (Thanksgiving)
- Homework 13:
- NO HOMEWORK
Week 14
- Lecture 27 (Dec.2):
- authentication
- Lab 14:
- zero-knowledge, authentication protocols, blinded signatures
- Lecture 28 (Dec.4):
- zero-knowledge and authentication protocols
- Homework 14:
- None
Week 15
- Lecture 28 (Dec.9, Reading Period):
- review
- Lab 15:
- NO LAB
- Lecture 29 (Dec.11, Reading Period):
- review
- Homework 15:
- NO HOMEWORK
Topics yet to be discussed:
Next: About this document ...
Kevin_Sikorski
9/26/1997