COSC 62 Applied Cryptography
Cryptography is the fundamental building block for establishing and maintaining trustworthy connections and communications in the Internet; it's the first line of defense for keeping adversaries from spying on credit card numbers being sent to Amazon or on whistleblower reports sent to journalists. This course will examine what's in this toolkit: symmetric ciphers, public-key cryptography, hash functions, pseudorandomness. To enable the well-cultured computer scientist to understand how these tools are used in the real world, this course will cover these topics from multiple perspectives: theoretical foundations, use in practical computing, implementation and management challenges, weaknesses and attacks, censorship circumvention, public policy questions, and prospects for the future.