# COMP 165: Cryptography

## Course Description:

This is a introduction to cryptography, starting with the first ciphers, and leading up to present day issues.
We will discuss how codes and ciphers work, and how they can be broken.
We will cover both Private key (Symmetric) and Public Key (Asymmetric) cryptography.
Topics include: cryptographic protocols using block ciphers. Methods for key exchange, hashing, message authentication, and digital
signatures. Cryptographic protocols regarding secret sharing and digital cash. We will use a mathematical approach to prove properties
about the crypto systems we study.
## Prerequisites

COMP 160, or COMP 170, or any 100 level MATH course
### Note:

The course description and prerequisites have been revised. The ones here are the correct version. For administrative reasons,
the number of this class will be changing to COMP 150-x (where x is an unknown).
This course is similar to last year's COMP 165. This year it will be
slightly less mathematical, but will still spend a lot of time on
proofs. The prerequisite is "mathematical maturity", but since
there's no class on that, anyone who took either COMP 160 or COMP 170
should be familiar with the techniques of reduction which play a large
role in this course.
Last year many students suggested changing the prerequisites, which
seemed like a good idea.

## We will be using Piazza for all class information and discussion.

The syllabus and other information will be posted there.

**
Last edited: 29 Oct. 2019
**