I teach two courses on cryptography at Santa Clara University. They each last one quarter. The first covers encryption and decryption and is called `Cryptography'. The second covers `Applied Cryptography' and has that name. The courses are taught to undergraduates and the first has no prerequisite except scientific sophistication. The first course is a prerequisite of the second, which requires programming ability. The students tend to be math, computer science and computer engineering majors.

To download a 100-page pdf file containing the lecture notes click on pdf version.

Below is the table of contents for my lecture notes. It also serves as the syllabi.

CRYPTOGRAPHY COURSE

Introduction

Vocabulary

Concepts

History

Crash Course in Number Theory

Properties of Mod

Calculator algorithms

Simple cryptosystems

Modern stream ciphers

Running time of algorithms

AES

Public key cryptography

RSA

Signatures

Hash functions

Finite fields

Discrete log cryptosystems

Diffie Hellman key exchange

ElGamal message exchange

Massey Omura message exchange

ElGamal signature system

Elliptic curves

Elliptic curve cryptosystems

Certificates

Transport Layer Security

APPLIED CRYPTOGRAPHY COURSE

Public key infrastructure

PGP and Web-of-Trust

Time stamping

KERBEROS

Key Management and Salting

Quantum cryptography

Blind signatures

Digital cash

Secret sharing

Committing to a secret

Digital Elections

I have also taught a CRYPTANALYSIS COURSE

Introduction

Vigenere cipher

Kasiski and Friedman tests

Modern stream ciphers

b/p keystream generator

Linear shift register keystream generator

Factoring

Fermat factorization

Continued fraction factoring

Elliptic curve factoring

Number fields

Number field sieve

Discrete log problem in F_p*

... when p-1 is smooth

Index calculus algorithm in F_{2^r}*

Tribute to Pollard

Cryptanalysis of DES

Linear cryptanalysis

Differential cryptanalysis

Other attacks on DES (including meet-in-the-middle)

Click on homepage to get back to my homepage.

*Last changed:* 20-Sep-2011