CS 408-3
Applied Cryptography
Catalog Description
This course is a comprehensive introduction to modern cryptography, with an emphasis on the application and implementation of various techniques for achieving message confidentiality, integrity, authentication and non-repudiation. Applications to Internet security and electronic commerce will be discussed. All background mathematics will be covered in the course.
Prerequisite:
CS 220 and MATH 221 or their equivalents
Objectives
1.To understand the design principles of modern cryptographic algorithms.
2.To learn a variety of cryptanalytic and side-channel attacks.
3.To understand how cryptography is deployed in practice, with an emphasis on its application in network security.
4.To learn how to implement cryptographic algorithms with symbolic computation software.
Course Outline
| Lectures | ||
| 1. | Symmetric-key encryption
classical ciphers, one-time pad, stream ciphers (RC4), Feistel networks, DES, AES, modes of operation |
8 |
| 2. | Message integrity
hash functions, Merkle's meta method, parallel collision search, message authentication codes (CBC-MAC, HMAC) |
5 |
| 3. | Key escrow and secret sharing | 2 |
| 4. | Public-key encryption
RSA, ElGamal, padding schemes, semantic security |
9 |
| 5. | Signature schemes
RSA, DSA, ECDSA |
3 |
| 6. | Pseudorandom bit generation
random bit generation, cryptographically strong pseudorandom bit generators, Yao 's Theorem |
2 |
| 7. | Key establishment and management
key distribution centers, Diffie-Hellman and station-to-station key agreement, Merkle authentication trees, certificate authorities, public key infrastructures |
3 |
| 8. | Deployed cryptography
Kerberos, PGP, SSL/TLS, WEP/WPA, digital payment systems (SET, e-cash, micropayments), electronic voting |
6 |
| 9. | Selected advanced topics
zero-knowledge proofs, strong password protocols (EKE/STP), identity-based encryption, broadcast encryption, oblivious transfer |
2 |
| Total | 40 | |