# Difference between revisions of "Math 485: Mathematical Cryptography"

Line 1: | Line 1: | ||

− | + | == Catalog Information == | |

− | Title | + | === Title === |

+ | Introduction to Cryptography. | ||

− | + | === (Credit Hours:Lecture Hours:Lab Hours) === | |

+ | (3:3:0) | ||

+ | === Prerequisite === | ||

+ | [[Math 371]]. | ||

− | + | === Description === | |

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | Description | + | |

− | + | ||

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

− | + | == Desired Learning Outcomes == | |

− | 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 Information Security. | This is a course in the mathematics and algorithms of modern cryptography. It complements, rather than being equivalent to, the current CS course on Information Security. | ||

− | + | === Prerequisites === | |

− | The requirement for Math 371 ensures both an appropriate level of mathematical maturity and a basic knowledge of linear algebra. | + | The requirement for [[Math 371]] ensures both an appropriate level of mathematical maturity and a basic knowledge of linear algebra. |

− | Minimal | + | === 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 and Matlab. | 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 and Matlab. | ||

− | + | <div style="-moz-column-count:2; column-count:2;"> | |

+ | # Classical systems, including: | ||

+ | #* Substitution theory | ||

+ | #* Block ciphers | ||

+ | #* Enigma | ||

+ | # 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 | ||

+ | #* Elementary continued fractions | ||

+ | #* Simple discussion of finite fields. | ||

+ | # The DES and AES encryption standards. | ||

+ | # RSA and its weaknesses. Primality testing and factorization. The Quadratic Sieve. Wiener's continued fraction attack on low decryption exponent. | ||

+ | # Discrete logarithms. Diffie-Hellman key exchange. ElGamal. | ||

+ | # Lattices and Lattice Algorithms. The LLL algorithm. The NTRU system. Lattice attacks on RSA. | ||

− | + | </div> | |

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | + | ||

− | + | ||

+ | === Additional topics === | ||

If time allows: Elliptic curve cryptography. | If time allows: Elliptic curve cryptography. | ||

− | + | === Courses for which this course is prerequisite === | |

− | Courses for which this course is prerequisite | + | |

− | + | ||

None. | None. | ||

[[Category:Courses|485]] | [[Category:Courses|485]] |

## Revision as of 19:21, 18 August 2008

## Contents

## Catalog Information

### Title

Introduction to Cryptography.

### (Credit Hours:Lecture Hours:Lab Hours)

(3:3:0)

### Prerequisite

### Description

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 Information Security.

### Prerequisites

The requirement for Math 371 ensures both an appropriate level of mathematical maturity and a basic knowledge of linear algebra.

### 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 and Matlab.

- Classical systems, including:
- Substitution theory
- Block ciphers
- Enigma

- 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
- Elementary continued fractions
- Simple discussion of finite fields.

- The DES and AES encryption standards.
- RSA and its weaknesses. Primality testing and factorization. The Quadratic Sieve. Wiener's continued fraction attack on low decryption exponent.
- Discrete logarithms. Diffie-Hellman key exchange. ElGamal.
- Lattices and Lattice Algorithms. The LLL algorithm. The NTRU system. Lattice attacks on RSA.

### Additional topics

If time allows: Elliptic curve cryptography.

### Courses for which this course is prerequisite

None.