\(
\def\ZZ{\mathbb{Z}}
\def\GG{\mathbb{G}}
\def\HH{\mathbb{H}}
\)
Print this page and give the answers.
Name:______________________________ Alpha:________________________________
- [10pts] Answer the following:
- \( \mathbb{Z}_{21}^* {=} \)
- \( \phi(35) {=} \)
- What is \(3^{-1} \pmod{ 21 }\)?
- What is \(4^{-1} \pmod{ 21 }\)?
- What is \( 4^{241} \bmod 35\)? Don't use a compuer for this.
- [4pts]
Consider Plain RSA encryption scheme. where the RSA modulus \(N\) in the public
key is \(N = 15\). What numbers are good to be \(e\) in the public key?
a. 2 b. 3 c. 4 d. 5
- [10pts] Consider Plain RSA encryption scheme. where the RSA modulus \(N =
35\) and \(e = 5\), that is \(pk = (35, 5)\).
- What is the encryption of message \(3\)? Don't
use the computer (but a calculator) for this.
- What is the decryption key \(d\) in this case? Don't use the computer for
this.
- [10pts] Give the answer to the RSA inversion problem:
N=648153784676707
e=7
C=251930644046701
Write a Python script to answer the question. (Hint: Try to factor N)
M =
You can also change an integer (say in variable M) to bytes using the following code:
M.to_bytes( (M.bit_length()+7)//8, 'big')
What is the message?
message =
- [6pts]
- TRUE/FALSE: The plain RSA is a deterministic encryption.
- TRUE/FALSE. The plain RSA is IND-CPA secure.
- TRUE/FALSE. The plain RSA is IND-CCA secure.