RSA

RSA is an asymmetric algorithm and is attributed to three people but reading this article will explain who developed the algorithm years earlier. When reading this article, try to understand the section on key generation, encrypting messages, decrypting messages, and signing messages. Most importantly, note the speed of RSA in comparison to DES that was discussed in the section on symmetric key encryption. Also note how attacks such as man-in-the-middle and RSA blinding attacks can be avoided.

Alice receives c from Bob, and knows her private key d. She can recover n from c by the following procedure:

Alice can then extract n, since n < N. Given n, she can recover the original message m.

The decryption procedure works because

and ed ≡ 1 (mod p-1) and ed ≡ 1 (mod q-1). Fermat's little theorem yields

     and     

which implies (as p and q are different prime numbers)