Welcome to CSIA 410 Cryptology. In this class you will learn about cryptology which is the study or science of hiding and revealing hidden or secret messages. After completing this course you should have an operational understanding of basic cryptographic systems. Specifically you will learn about symmetric cryptography, block ciphers and secure hash functions, asymmetric cryptography, key exchange and public-key systems, and authentication.

This course description, like most course descriptions, is slightly problematic. It isn’t very helpful because it contains a list of terms like asymmetric public key encryption that will only make sense if you already know what they mean; otherwise the terms may sound like a bunch of gibberish. And if you already know what the terms mean then there’s a good chance that you already know quite a bit about cryptology so there may not be much point in taking the class. But don’t worry, if you don’t know what the terms mean you’ll learn about all of them in the class and by the end of the course description will make sense.

## 0 – Class Introduction

## 1 – General Purpose of Cryptology and Terminology

- Lecture Notes (PDF) – things I would normally tell you in class
- Homework (PDF)

## 2 – Manual Methods for Encrypting and Decrypting

- Lecture Notes (PDF) – Thins I would normally tell you in class
- Lab Manual Exercises (PDF)
- The Scytale (Video)
- [OPTIONAL] Methods For Attacking Transposition Ciphers (PDF)
- Online Tools for Substitution and Transposition Ciphers (Video)
- Homework Cracking Examples (Video)
- Additional Rail Fence Examples (Video)
- Using the Cryptoquote.org Lightning Round for Extra Credit (Video)

## 3 – Poly Alphabet and Mechanical Methods

- Lecture Notes – Things I would normally tell you in class (PDF)
- Trithemius Cipher Cracking (Video)
- Vigenere Cipher Cracking (Video)
- Homework 3 Questions (PDF) Use these to determine your answers before submitting them in Canvas.
- Cipher Text Files for Homework – The cipher text in the PDF may be wrong. Use these files instead. (.zip)

## Test 1

## 4 – Cryptography Goes Digital

- Lecture Notes – Things I would normally tell you in class (PDF)
- Homework 4 Questions (PDF)
- Demonstration of XOR and the Vernam Cipher (Video)
- Encrypting Text with the Vernam Cipher – How to convert text to ASCII binary (Video)
- Decrypting to Text with the Vernam Cipher (Video)
- LCG Explanation and using the MOD function to limit output (Video)

## 5 – Symmetric Stream Ciphers

## 6 – Symmetric Block Ciphers

- Lecture Notes – Things I would normally tell you in class (PDF)
- Homework 6 Questions (PDF)
- Data files for homework (.zip)
- The Difference Between Counter, Seed/Salt, Nonce, Initialization Vector and Key Stream in Block Ciphers (Video)
- AES Usage, It’s Everywhere (Video)
- How to See AES in Web Servers and Browsers (Video)
- How to See AES in Windows 10 (Video)
- Checking CPU for AES Support with cpu-z (Video)
- Cryptool (.zip) – You must unzip this before running the install.
- AES Encryption with cryptool (Video)
- AES Decryption with cryptool (Video)
- Cracking AES with Cryptool (Video)