Describe the three components of a public-key encryption scheme
What does the acronym RSA represent?
Rivest, Shamir and Adleman
What is a trapdoor one-way function?
Efficient to execute one way, inefficient to execute in the inverse - unless you have the extra information that provides the “trapdoor”, i.e. makes the inverse efficient, too
What idea is RSA encryption based on?
The idea that it’s easy to multiply two large primes, but there is currently no known way to efficiently find the prime factors of a number n that is the product of two large primes
How are the parameters for the RSA encryption scheme set up?
What is the name of the first parameter?
What is made public and what is kept secret?
What is the minimum size of relevant value(s) needed?
The public param for RSA is an integer π (the modulus of the scheme) that is a product of two large primes:
Public: π
Secret: p and q
Minimum recommended size for π: 2048 bits long when represented in binary
Describe how to generate the keys for the RSA encryption scheme
Compute ΙΈ(π) = (p - 1)(q - 1)
Encryption key e must be a positive integer coprime to ΙΈ(π) so that e β Z*ΙΈ(π)
Decryption key d is the multiplicative inverse of e in Z*ΙΈ(π)
Describe the RSA encryption and decryption algorithms
(2 steps each)
Assuming our message π is represented as an element of β€π.
Encryption:
Decryption:
Use RSA encryption to encrypt the message π = 301.
Then use RSA decryption to decrypt it.
Necessary information:
The recipient also knows the private decryption key π = 251.
Encryption:
Decryption:
Appreciate that an an adversary who can factor an RSA modulus π can break RSA
Appreciate that it is not known whether breaking RSA is as hard as the problem of factoring the modulus π
Show that the RSA encryption scheme provides correctness for messages π that are coprime to π