Purdue University - Department of Computer Science - CS 555: Cryptography

CS 555: Cryptography

List of Topics (By Week):

  1. Introduction (1 week)
    Basic terms. Basic goals and concepts. Brief history of cryptography and cryptanalysis. Uses and misuses. Politics.

  2. Basic number theory (2 weeks)
    Divisibility. Primality. Bases, congruences, modular aritmetic. GCDs. Euclidian algorithm. Fermat & Euler theorems. Finding large primes, Pohlig-Hellman, RSA.

  3. Basic Information Theory (1.5 weeks)
    Entropy. Equivocation. Work factors. Key size vs. message size. Redundancy. Unicity distance. Perfect secrecy.

  4. Elementary & historical ciphers (2 weeks)
    Caesar cipher. Transposition and substitution. Polyalphabetic ciphers. Product ciphers. DES. IDEA. Exponentiation ciphers.

  5. Cipher modes (2 weeks)
    Block ciphers. Stream ciphers. ECB, OFB, CFB, CBC. Public vs. private keys. Meet-in-the-middle. LFSRs. Diffie-Hellman key exchange.

  6. Applications (1.5 weeks)
    Mental poker. Quadratic residues. Oblivious transfer. Zero-knowledge proofs.

  7. Authentication methods (2 weeks)
    One-way ciphers. Authentication functions. Message digests. MD5, SHA, Tripwire. Kerberos, SESAME.

  8. Privacy-enhanced communication (1 week)
    Privacy, non-repudiation, digital signatures. Certificate hierarchies, X.509. PGP. PKI.

  9. Applications (1 week)
    Digital cash. Digital voting. Contract signing.

  10. Key Management (1 week)
    Threshold schemes. Random number generation. Key escrow. Key recovery.


Last Updated: Apr 25, 2017 4:54 PM

Department of Computer Science, 305 N. University Street, West Lafayette, IN 47907

Phone:(765) 494-6010 • Fax: (765) 494-0739

Copyright © 2016 Purdue University | An equal access/equal opportunity university | Copyright Complaints

Trouble with this page? Disability-related accessibility issue? Please contact the College of Science.