**MATH 418**

**Number Theory and Cryptography**

**Units: 3.00**

Time estimates for arithmetic and elementary number theory algorithms (division algorithm, Euclidean algorithm, congruences), modular arithmetic, finite fields, quadratic residues. Simple cryptographic systems; public key, RSA. Primality and factoring: pseudoprimes, Pollard's rho-method, index calculus. Elliptic curve cryptography.

**Learning Hours:**120 (36 Lecture, 84 Private Study)

**Requirements:**Prerequisite MATH 210/3.0 or (MATH 211/6.0* with permission of the Department).

**Offering Faculty:**Faculty of Arts and Science

**Course Learning Outcomes:**

- Design a cryptographic system with given real-world parameters.
- Perform analysis of cryptographic protocols.
- Perform computations and constructions in finite fields.
- Perform probability analysis of primality tests.
- Perform reasoning on elliptic curves.
- Rigorously prove results in number theory.
- Test various designs to determine which performs the best.
- Understand the algebraic structure of a group.