Wedneday 16 September
Today, we will explore the RSA cryptosystem. My advice is that you watch the three theory videos once only, and prioritise understanding the worked examples.
Related reading: Stein et al. 123–128 or Rosen p. 253–254 and 295–298
Whenever we have multiplication, we can have exponentiation; at least with non-negative integer exponents. The following definition applies to any ring; the same definition holds whether we have or .
Definition 1 When is non-negative integer, we define the th power of any element as the product where occurs times as a factor.
RSA is the most well-known public key cipher. This video gives the basic definitions.
Exercise 1.1 Calculate
How many multiplications do you need for each calculation?
Exercise 1.2 Consider the encryption function in .
- What is the corresponding decryption function (key)?
- Why did we not consider which corresponds so neatly to the English alphabet?
Problem 1.1 Generate an 8-bit RSA key.
Remark 1 In a real system we need a key size of 2048 or 4096 bits, so the exercise is really a toy example.
Exercise 1.3 Generate an RSA key, using as the modulus.
Problem 1.2 Encrypt the message using RSA with the encryption key and .
Exercise 1.4 Encrypt the plaintext with RSA using the encryption key .
Problem 1.3 Decrypt the message using RSA with the encryption key and .
Exercise 1.5 Decrypt the ciphertext with RSA using the decryption key .
Exercise 1.6 Tabulate the values for for each of the rings and . How many distinct elements do you get in each ring before the values start repeating? What can you say about these numbers?
If you want another worked example, you can try this one; recorded in 2013.