0% found this document useful (0 votes)
379 views6 pages

Student Solution Chap 10

This document provides information on symmetric-key cryptography and asymmetric-key cryptography. It discusses the key differences between the two, including that symmetric-key cryptography relies on shared secrecy while asymmetric relies on personal secrecy. It also provides examples of specific cryptographic algorithms like RSA and ElGamal. For RSA, it describes the encryption and decryption processes using the public and private keys. For ElGamal, it similarly describes how the cryptosystem works using discrete logarithms. The document also includes sample problems and solutions related to implementing symmetric and asymmetric encryption.

Uploaded by

priyapati21
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
379 views6 pages

Student Solution Chap 10

This document provides information on symmetric-key cryptography and asymmetric-key cryptography. It discusses the key differences between the two, including that symmetric-key cryptography relies on shared secrecy while asymmetric relies on personal secrecy. It also provides examples of specific cryptographic algorithms like RSA and ElGamal. For RSA, it describes the encryption and decryption processes using the public and private keys. For ElGamal, it similarly describes how the cryptosystem works using discrete logarithms. The document also includes sample problems and solutions related to implementing symmetric and asymmetric encryption.

Uploaded by

priyapati21
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

1

CHAPTER 10
Symmetric-Key Cryptography
(Solution to Odd-Numbered Problems)
Review Questions
1. Symmetric-key cryptography is based on sharing secrecy; asymmetric-key cryp-
tography is based on personal secrecy.
3. In cryptography, a trapdoor is a secret with which Bob can use a feasible algorithm
to decrypt the ciphertext. If Eve does not know the trapdoor, she needs to use an
algorithm which is normally infeasible.
5. RSA uses two exponents, e and d, where e is public and d is private. Alice calcu-
lates C = P
e
mod n to create ciphertext C from plaintext P; Bob uses P = C
d
mod n
to retrieve the plaintext sent by Alice.
a. The one-way function is the C = P
e
mod n. Given P and e, it is easy to calculate
C; given C and e, it difficult to calculate P if n is very large.
b. The trapdoor in this system is the value of d, which enables Bob to use P = C
d
mod n.
c. The public key is the tuple (e, n). The private key is d.
d. The security of RSA mainly depend on the factorization of n. If n is very large,
and the value of e and d are chosen properly, the system is secure.
7. ElGamal is based on discrete logarithm problem. The plaintext is masked with e
1
rd
to create the ciphertext. Part of the mask is created by Bob and become public; the
other part is created by Alice.
a. The one-way function is C = mask (P). Given P and the mask, it is easy to cal-
culate the C; given C is difficult to unmask P.
b. The trapdoor is the value of d that enables Bob to unmask C.
c. The public key is (e
1
, e
2
and n). The private key is d.
d. The security of ElGamal depends on two points; p should be very large and
Alice needs to select a new r for each encryption.
2
9. An elliptic curve is an equation in two variables similar to the equations used to
calculate the length of a curve in the circumference of an ellipse. Elliptic curves
with points belonging to the groups GF(p) or GF(2
n
) are used in cryptography.
Exercises
11. We use the 7-bit representation of character "a" as the plaintext.
13. n = 187 = 17 11 (n) = 17 11 = 160 d = e
1
mod (n) = 113. This
proves that the value of n in RSA must be very large.We could find d because we
could factor n. The modulus must be large enough to make the factorization infea-
sible.
15. In a real situation, the value of n is so large that it is impossible for Alice to check
if n and e are chosen properly. In this toy problem, it is easy to see that n is not
properly selected because n = 100 cannot be factored into two primes (n = p q).
Although we can still encrypt the message using e = 13 and n = 100, the encrypted
message cannot be decrypted. The problem prove that Bob needs to first select p
and q and be sure that they are primes before calculating n = p q. After the cor-
rect selection of n, then e needs to be selected in such a way that (n) and e be
coprimes. This problem has no solution.
17.
a. If e = 1, there is no encryption: C = P. If Eve intercepts the ciphertext, she has
the plaintext.
b. If e = 2, the cipher is actually Rabin, not RSA.
19. Eve has intercepted C = 57
a. Eve chooses X = 17 (which is in Z
143
*).
b. Eve calculates Y = C 17
7
mod 143 = 57 17
7
mod 143 = 137
c. Eve sends 137 to Bob and ask to decrypt it. The response is Z = 136 (We know
how to calculate this because we can easily find d = 103, but we assume that
Eve cannot; she needs to send the ciphertext to Bob and receive the plaintext.
d. P = (Z X
1
) mod 143 = (136 17
1
) mod 143 = 8 mod 143. Which is the
plaintext. This shows that RSA is very vulnerable to chosen-ciphertext attack.
Key Generation:
t = [287, 451, 943, 762, 564, 86, 623] a = [623, 86, 564, 287, 451, 943, 762]
Encryption:
Plaintext: x = [1, 1, 0, 0, 0, 0, 1] Ciphertext: s = 1471
Decryption:
s = (41
1
, 1471) mod 1001 = 293 1471 mod 1001 = 573
x = [0, 0, 0, 1, 0, 1, 1] Plaintext x = [1, 1, 0, 0, 0, 0, 1]
3
21. One solution is to use different padding with each plaintext. As we discussed in the
text, using OAEP encryption, each time with different random r, removes the rela-
tionships between different plaintexts that are sent by Alice to Bob.
23.
a. We choose e
1
= 3 (a primitive root of p = 31) and d = 10. Then we have e
2
= 3
10
mod 31= 25.
b. The common factor for calculation of C
2
s is e
2
7
mod 31 = 25
7
mod 31 = 25.
c.
25. Although the value of p (the modulus) and d are not given, we can assume a mod-
ulus which is greater that 17 and 37 and its primitive root is 2. We have chosen p =
53 and d = 3. In this case, we have p = 53, d = 3, e
1
= 2, and e
2
= e
1
3
mod 53 = 8.
a. Alice uses r = 9 to encrypt two messages, 17 and 37. The values of ciphertexts
are: C
1
= 35, C
2
=19, C
1
= 35 and C
2
= 32.
b. Eve intercepts C
1
= 35, C
2
=19, C
1
= 35 and C
2
= 32 and she know P = 17. Eve
can use the known-plaintext attack to find P.
27.

a. E(g
4
, 1) means that a = g
4
and b = 1. The equation of the curve is
y
2
+ xy = x
3
+ g
4
x
2
+ 1
P = "H" = 07 C
1
= 3
7
mod 31 = 17 C
2
= 07 25 mod 31 =

20 C = (17, 20)
P = "E" = 04 C
1
= 3
7
mod 31 = 17 C
2
= 04 25 mod 31 =

07 C = (17, 07)
P = "L" = 11 C
1
= 3
7
mod 31 = 17 C
2
= 11 25 mod 31 =

27 C = (17, 27)
P = "L" = 11 C
1
= 3
7
mod 31 = 17 C
2
= 11 25 mod 31 =

27 C = (17, 27)
P = "O" = 14 C
1
= 3
7
mod 31 = 17 C
2
= 14 25 mod 31 =

09 C = (17, 09)
C = (17, 20) P = 20 (17
10)1
mod 31 = 07

"H"
C = (17, 07) P = 07 (17
10)1
mod 31 = 04 "E"
C = (17, 27) P = 27 (17
10)1
mod 31 = 11 "L"
C = (17, 27) P = 27 (17
10)1
mod 31 = 11 "L"
C = (17, 09) P = 09 (17
10)1
mod 31 = 14 "O"
P = C
2
(e
2
r
)
1
mod p = C
2
(C
2
P
1
)
1
mod p = C
2
C
2
1
P mod p
P = 32 19
1
17 mod 53 = 32 14 17 mod 53 = 37
4
b. Assume that the irreducible polynomial is x
4
+ x + 1 (See Appendix G). We use
the process in Example 10.16 in the textbook Page 326 to find the points on the
curve as shown in Figure S10.27.
c. Bob chooses e
1
= (g
3
, g
8
) and d = 2. Then e
2
= d e
1
= (g
5
, g
3
). The public key
is the combination of e
1
, e
2
, and E(g
4
, 1). The private key is d.
d. Alice chooses P = (g
10
, g) and r = 3.
e. Alice calculates C
1
= r e
1
= (g
9
, g
10
) and C
2
= P + r e
2
= (1, g
6
).
f. Bob decrypt the message P = C
2
(d C
1
) = (g
10
, g) = P
29.
a. The following shows the encrypting algorithm. Alice uses the original message
(m), a random number (r) and two functions (G and H).
b. The following shows the decrypting algorithm. Bob uses the ciphertext (C), the
private key (d), modulus (n), and two functions G and H.
Figure S10.27 Part of the solution to Exercise 27
RSA_OAEP_Encrypt (m, e, n, r)
{
M pad (m)
P
1
M G(r)
P
2
H(P
1
) r
C Fast_Exponentiation (P
1
| P
2
, e, n)
return C
}
Points
Graph
x
y
0
0
1
1
g
g
g
2
g
2
g
3
g
3
g
4
g
4
g
5
g
5
g
6
g
7
g
7
g
8
g
8
g
9
g
9
g
10
g
10
g
11
g
11
g
12
g
12
g
13
g
13
g
14
g
14
g
6
P P
(0, 1) (0, 1)
(1, g
6
)
(1, g
13
)
(g
3
, g
8
) (g
3
, g
13
)
(g
5
, g
3
) (g
5
, g
11
)
(g
6
, g
8
)
(g
9
, g
10
) (g
9
, g
13
)
(g
10
, g) (g
10
, g
8
)
(g
6
, g
14
)
(g
12
, 0) (g
12
, g
12
)
5
31. The following shows the AddPoint algorithm. P(x) and P(y) are x and y compo-
nents of P. Calculations are done in GF(p) .
RSA_OAEP_Decrypt (C, d, n)
{
P Fast_Exponentiation (C, d, n)
P1, P
2
Split
m,k
(P)
r H(P
1
) P
2
M P
1
G(r)
m Extract (M)
return m
}
AddPoint (p, a, b, P
1
, P
2
)
{
if (P
1
(x) P
2
(x))
( (P
2
(y) P
1
(y) ) / (P
2
(x) P
1
(x) ) ) mod p
else
( (3 (P
1
(x))
2
+ a ) / (2 P
1
(y) ) ) mod p
P
3
(x) (
2
P
1
(x) P
2
(x)) mod p
P
3
(y) ( (P
1
(x) P
3
(x)) P
1
(y)) mod p
return P
3
}
6

You might also like