Math 485: Mathematical Cryptography

From MathWiki
Revision as of 08:43, 30 October 2012 by Ls5 (Talk | contribs) (Offered)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Catalog Information


Mathematical Cryptography.

(Credit Hours:Lecture Hours:Lab Hours)





Math 313.


Math 371.


A mathematical introduction to some of the high points of modern cryptography.

Desired Learning Outcomes

This is a course in the mathematics and algorithms of modern cryptography. It complements, rather than being equivalent to, the current CS course on Computer Security (CS 465) and the current Information Technology course on Encryption and Compression (IT 531).


The requirement for Math 313 ensures both an appropriate level of mathematical maturity and a basic knowledge of linear algebra. The recommendation for Math 371 encourages students to be familiar with the concepts of groups, rings, and fields.

Minimal learning outcomes

The student should gain a understanding of the following topics. In particular this includes knowing the definitions, being familiar with standard examples, and being able to solve mathematical and algorithmic problems by directly using the material taught in the course. This includes appropriate use of Maple, Mathematica, or another appropriate computing language.

  1. Classical systems, including:
    • Substitution theory
    • Block ciphers
    • Enigma
  2. Elementary number theory as follows:
    • Euclid's algorithm
    • Modular arithmetic and the algorithm for modular exponentiation
    • Chinese Remainder Theorem
    • Fermat and Euler Theorems
    • Primitive roots
    • Legendre and Jacobi symbols
    • Elementary continued fractions
    • Simple discussion of finite fields
  3. The DES and AES encryption standards
  4. RSA and its strengths and weaknesses; attacks on RSA
    • Wiener's continued fraction attack on low decryption exponent
  5. Primality testing algorithms
  6. Factorization techniques
    • The Quadratic Sieve
  7. Discrete logarithms
    • Diffie-Hellman key exchange
    • ElGamal


Possible textbooks for this course include (but are not limited to):

Additional topics

If time allows, additional topics may include, but are not limited to: Elliptic curve cryptography, birthday attacks and probability, quantum cryptography (key distribution, Shor's algorithm), hash functions, digital signatures, and lattices and lattice algorithms (LLL algorithm, NTRU system, lattice attacks on RSA).

Courses for which this course is prerequisite