This course will teach you the language and practice of modern cryptographic methods and how it is used in the real world today. You will gain first-hand understanding of such topics as digital certificates, encryption, signatures, hashing, and when each type of algorithm is appropriate. We will examine applications such as disk encryption, secure email and key management, certificate generation and administration, and others.
Lectures will help you understand the applications and limitations of cryptography and guide you through process of understanding the often dense language used to describe cryptographic methods. We will not only explain the meaning of terms like "RSA," "AES," and "Diffie-Hellman," but will show how the algorithms themselves are deployed in the real world. What are running time and performance considerations? What key length is best under what circumstances? Which standards should I deploy? What off the shelf, approved standards are best and most appropriate for my application? To answer these questions, we will take a broad look at key NIST standards.
The class will also examine cryptographic policy including the encryption debate that pits law enforcement against civil libertarians, as well as exploring issues around export restrictions of cryptography.
You will also learn how to utilize cryptographic libraries to understand the basic building blocks that are used to protect data. By the end of the course, you will feel comfortable conversing about cryptography, and you will understand the proper applications of all of the most important cryptographic protocols and algorithms.
Topics Covered Include
- Need for Cryptography
- Crypto Policy
- Fundamental Language around Cryptography
- Basics of Cryptographic Algorithms
- Applications of Cryptography
- Digital Certificates
- NIST standards and recommendations
- Secure Cryptographic Protocols
- Key Management
Who should attend?
This class is intended for anyone interested in modern cryptographic methods or anyone working in a technical field. This includes, but is not limited to, managers, programmers or system and network administrators. A background in computer science or similar field will be helpful.
General IT knowledge or Computer Science background.