Abstract:
With the advent of quantum computers, it is vital that we have quantum-proof encryption schemes to protect any sensitive data from hackers. One promising scheme is Commutative Supersingular Isogeny Diffie-Hellman, one of the few algorithms that has no known quantum attack scheme. However, CSIDH (pronounced sea-side) relies on advanced mathematical principles, making it difficult to understand. Because of its importance though, CSIDH needs to be explained in a format that is accessible to as wide an audience as possible. This paper provides an explanation of how CSIDH works, assuming only knowledge of modular arithmetic and basic calculus. We also include pseudocode for the key algorithms, allowing CSIDH to be implemented in C++. Finally, we provide a link to the C++ source code.