DES 801: Using Crypto Libraries
This course covers the basic usage of symmetric, asymmetric and hash functions in a common library (.NET, Java). After gaining an understanding of cryptographic functions and their capabilities, developers will learn how to implement them in common cryptographic libraries.
Upon completion of this course, participants will be able to:
- Further developer understanding of cryptographic implementation
- Identify appropriate algorithms, modes, and key sizes
- Understand how to make calls to the library
- Avoid common mistakes and pitfalls when writing cryptographic code
Key and IV Generation
This module covers the concept of how to create entropy, random numbers, and generating symmetric and asymmetric keys.
This module covers the selection of hash functions, why certain hash functions are no longer used, and how to utilize these functions in both Java and .NET applications.
MAC and Signature Algorithms
This module covers the recommended and acceptable HMAC and GMAC algorithms. Also covered is the utilization of both these types of functions in both Java and .NET applications.
Encryption Algorithm Selection
This module covers the recommended and acceptable encryption algorithms, their modes of operation, when to use these algorithms, and how to utilize these algorithms in both Java and .NET applications.
Key Exchange and Handling
This module explains the process of Key Exchange, Key Agreement, and Key Derivation. Also included are the secure process of handling keys in use and how to store keys securely.
This module explains how to create secure connections between computers and how to ensure the correct secure options are used, such as choosing an acceptable Cipher Suite, Enforcing Certificate Chain Validation, and Caching Trusted Certificates.