# COMP 150CRY: 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, graduate standing, any 100 level MATH course, or permission of the instructor
### Note:

This is a variation of COMP165.
The course description and prerequisites have been revised. For administrative reasons,
the number of this class has been changed to COMP 150CRY (COMP 150-1)
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.

We will be using ** Canvas ** as a framework.
We will be using ** Piazza ** for all class discussion.

We will be using ** Gradescope ** for homework submission

Contact the instructor for access codes to the above web sites.

## Textbook

*Introduction to Cryptography with Coding Theory* 3rd edition 2020 by Wade Trappe and Lawrence Washington. Publisher: Pearson

Last edited: 28 Jan. 2021