Mathematical Foundations for Cryptography
- Integer Foundations
- Building upon the foundation of cryptography, this module focuses on the mathematical foundation including the use of prime numbers, modular arithmetic, understanding multiplicative inverses, and extending the Euclidean Algorithm. After completing this module you will be able to understand some of the fundamental math requirement used in cryptographic algorithms. You will also have a working knowledge of some of their applications.
- Modular Exponentiation
- A more in-depth understanding of modular exponentiation is crucial to understanding cryptographic mathematics. In this module, we will cover the square-and-multiply method, Eulier's Totient Theorem and Function, and demonstrate the use of discrete logarithms. After completing this module you will be able to understand some of the fundamental math requirement for cryptographic algorithms. You will also have a working knowledge of some of their applications.
- Chinese Remainder Theorem
- The modules builds upon the prior mathematical foundations to explore the conversion of integers and Chinese Remainder Theorem expression, as well as the capabilities and limitation of these expressions. After completing this module, you will be able to understand the concepts of Chinese Remainder Theorem and its usage in cryptography.
- Primality Testing
- Finally we will close out this course with a module on Trial Division, Fermat Theorem, and the Miller-Rabin Algorithm. After completing this module, you will understand how to test for an equality or set of equalities that hold true for prime values, then check whether or not they hold for a number that we want to test for primality.