RSA Theory

This is our proof of the RSA algorithm. There are probably more elegant and succinct ways of doing this. We have tried to explain every step in terms of elementary number theory and avoid the `clearly it follows...' technique favoured by many text books.

Document formats available

rsa_theory.pdf (93 kB)
rsa_theory.ps (160 kB)
rsa_theory.pdf (zipped) (82 kB)
rsa_theory.ps (zipped) (79 kB)
rsa_theory.dvi (zipped (7 kB)

The document was written with LaTex (source: rsa_theory.tex) and generated on a Windows system using the wonderful TeXniCenter.

Hints

You may find these useful...

RSA Encryption scheme

Encryption: ciphertext, c = RsaPublic(m) = me mod n
Decryption: plaintext, m = RsaPrivate(c) = cd mod n
Inverse transformation: m = RsaPrivate(RsaPublic(m))

RSA Signature scheme

Signing: signature, s = RsaPrivate(m) = md mod n
Verification: check, v = RsaPublic(s) = se mod n
Inverse transformation: m = RsaPublic(RsaPrivate(m))

Bibliography

Thanks to Chris Arrettines and Jonathan Covington for pointing out the typo in Fermat's Little Theorem.

Revision History

To comment on or criticise this please Contact Us.    Return to the RSA page.    [Top]Return to top of page

This page last updated: 5 May 2007