T. Andrew Yang
|
last updated: 6/7/2021: first posted |
Total: 100 points
a.
(10 pts) Replay attacks
b.
(10 pts) Man-in-the-middle
attacks
a.
(10 pts) Explain
what data integrity means in this context.
b.
(10 pts) Explain
what origin integrity means in this context.
c.
(10 pts) Explain
what availability means in this context.
d.
(10 pts) Explain
what confidentiality means in this context.
e.
(10 pts) Explain
what non-repudiability means in this context.
a.
(10 pts) Digital Signature
is a cryptographic mechanism that that may be implemented in a computer system
to provide three security services (i.e., data integrity, signer origin
integrity, and signer non-repudiability). Explain how each of those
three security services is provided by the Digital Signature.
b.
(10 pts) Are there any drawbacks with the Digital Signature? Under what circumstances
it may not be effective to implement Digital Signatures?
Go to
the Index
Total:
100 points
1.
(10 pts) Explain the relationship between replay attacks and Denial of
Service (DoS) attacks. Hint: How would the hacker use replay attacks to cause Denial
of Service?
2.
(10 pts) Explain the differences
between replay attacks and man-in-the-middle
attacks.
3.
(10 pts) Explain the relationship
between Polluted DNS attacks and man-in-the-middle
attacks. Hint: How would polluted DNS
be used by the hacker to launch a main-in-the-middle
attack?
4.
(10 pts) Suppose entity A intends to send
a message (m) to entity B. The desirable security services are confidentiality,
data integrity, and origin integrity. Explain what each of
those security services mean in this context.
|
Figure 2-1:
Sample screenshot of a VM
|
|
Figure 2-2:
VM settings to enable shared clipboard
|
|
Figure 2-3:
Sample screenshot of a terminal window in the virtual box
|
Go to
the Index
Total:
100 points
1.
Review how the Euclid Algorithm works by entering 100 and 77 as
the two input numbers using the online gcd calculator at https://www.calculatorsoup.com/calculators/math/gcf-euclids-algorithm.php.
2.
(10 pts) Use the Extended Euclidian Algorithm (EEA) to find the values of x
and y for the equation 100x + 77y = 1. Show the intermediate steps.
NOTE: Always verify the derived values to ensure that they’d satisfy the given equation.
When necessary, switch the values of x and y.
3.
RSA key-pair generator
3.1.
(5 pts) Given two prime numbers, p = 11 and q = 23. The first step of
generating an RSA key-pair is to calculate the values of n and totient(n). Show
how the two values are calculated.
3.2.
(5 pts) Given n and totient(n), the public key (e) is selected, by making
sure e < n and gcd(e, totient(n)) = 1. Can the number 21 be selected as the
public key of this key pair? Justify your answer.
3.3.
(10 pts) Show the first 30 numbers in the set of potential public keys.
3.4.
(10 pts) Let the public key e be 51. Solve ed
mod totient(n) = 1 to determine the private key d. Show the detailed
steps. Hint: Use EEA. NOTE: Always verify the derived private key by
checking whether it’d satisfy the original equation.
Table 4.1: Three cases of comparison between the
plaintext and the ciphertext using AES-128-CBC
encryption
Cases |
Content of
plaintext files |
Content of
the ciphertext files (in hex) |
#1 |
Review how the Euclid Algorithm
works by entering 100 and 77 as the two input numbers using the online gcd
calculator at
https://www.calculatorsoup.com/calculators/math/gcf-euclids-algorithm.php. |
B4 21 13 1A EC 60 02 42 C7
A3 36 FD 2E 1C 42 D8 3B F6 C8 DD 95 17 DB 37 1F 2E 68 C1 CD 23 33 61 83 FD 0B
FC F5 FC 6E F7 E1 D7 62 18 E3 2F 6D 18 68 81 28 14 0C C2 F3 56 F9 64 03 2E 05
26 B6 BE 4F 65 53 F1 D9 71 1B 38 03 FB BA CD BA E7 B9 4E 9D 97 53 29 F8 05 6F
0A 7E 7C 8A 5A 73 6C B2 FB E5 D6 EB F0 18 D7 C0 E7 9C 7A A0 44 7B DE 89 8E 25
95 12 CD 49 69 D0 50 F4 45 17 03 3B C6 ED 43 6D 3E DB 4A C9 D2 B6 48 DF BA F1
95 D0 E1 65 2E 60 E0 6E C5 02 2F 09 8E E7 9B 63 FC 25 46 1B 0A 53 0A 7A 60 E1
C6 B1 11 B4 FF 88 B0 0A 51 08 27 70 B4 AE 00 4D 82 B9 23 CC 25 D4 D2 95 AC 55
52 72 D9 53 B8 47 36 B6 17 4E FC E5 B4 E5 CE 38 F9 |
#2 |
My name is John Doe. Review how
the Euclid Algorithm works by entering 100 and 77 as the two input numbers
using the online gcd calculator at
https://www.calculatorsoup.com/calculators/math/gcf-euclids-algorithm.php. |
9C D9 B8 FF A7 6A 89 47 E1 68 90 F5 DE 4C 1D A7 90 9D BE CD BF 41 6B FC 97 8C 7D D6 4A F6 27 04 FC
A8 2D 3D F3 84 E4 24 CC 52 C8 F5 02 FE CB A1 46 C5 FB 00 4C D3 5D 28 C4 C7 7B
AE 0F 03 B1 15 0D AD B1 CE 58 7B CE FB E7 4D 6A B5 76 3A 97 E4 33 A9 2E 78 B2
40 AE 88 9B 61 F2 AF 98 4C A1 03 3E 25 9B 2E B9 C3 51 A1 F6 22 E2 F8 C5 14 1A
4B 8B BB DC FD A1 AF D1 1E 54 1E 39 FF 13 D5 6B F8 D5 60 CE 93 BE D4 46 17 BC
1B 3D F3 B8 7E 4B E7 38 81 33 12 59 16 EC CF BB C0 5C 0E A5 74 28 D0 26 9F 84
7A A6 4A BC B1 64 E2 56 48 3F 2C 8D 93 1D 48 C4 B4 5A 12 C6 16 75 F0 E8 93 FC
1B 38 8D CA 62 7D 67 04 A9 A4 FD B8 AE F0 FD 39 FA 30 94 FB 69 FD 61 88 68 BE
24 E8 3E CF D4 D9 43 BD 4F |
#3 |
My name is John Doe. Review how the Euclid
Algorithm works by entering 100 and 77 as the two input numbers using the
online gcd calculator at
https://www.calculatorsoup.com/calculators/math/gcf-euclids-algorithm.php. |
9C D9 B8 FF A7 6A 89 47 E1 68 90 F5 DE 4C 1D A7 B4 51 37 39 16 BB C9 D3 A3 85 74 44 6E 70 50 0B 07
0C 2B E1 79 84 17 D9 32 90 5D E6 E4 F7 BE F9 18 B0 E9 63 8B 00 60 27 DE E2 8C
E5 30 4D B7 08 47 B7 13 10 9D FD E3 08 4B DC B5 3C FD D0 A3 F6 CA 6E 6F 94 BE
64 27 51 6C 8E 08 F2 11 F5 74 53 3D 9E 18 F7 98 E2 05 04 88 E8 AE 84 53 FE B7
A0 5B E4 7D 87 DD B6 8D 75 9D C0 E2 0D D9 33 4D A2 CE 89 E5 8F 4D A9 98 C8 A2
F4 D5 41 FF 90 61 EA E6 74 7A 7C 2E 04 A3 BE 20 1A C3 33 97 B1 89 36 F9 CC 4B
C6 D6 3B 0B E2 4A 4E DD 8E DB 02 42 22 D9 02 1B 34 44 24 12 7C 5E 63 DD D3 62
07 BC 0D 16 A9 94 E6 29 F4 A8 9D 7B 10 51 2D BC 88 6C E7 D5 5E 34 07 82 77 65
C2 DD B3 6F 61 02 9E 2B 2B |
Go to
the Index
Total:
100 points
1.
(10 pts) There exist dependency relationships between security mechanisms.
Those relationships are part of the prerequisites of deploying a given technology.
For example, the digital certificates mechanism (e.g., X.509) depends on the
Digital Signatures mechanism. Explain why digital certificates depend on
digital signatures, and what are implied by such a dependency (with
respect to deploying digital certificates in a computer system).
2.
Suppose a
protocol is designed to enable secure transmission of a session key from a user
to another user (in order to establish a secure session between the two). When Alice
wants to send a session key to
Bob, the key is to be encrypted
with Bob’s public key, and the encrypted key will then be decrypted by Bob
using his private key.
2.1.
(10 pts) What security service(s)
would be provided by this protocol. Justify your answer.
2.2.
(10 pts) Revise the given protocol in
order to provide confidentiality, data integrity, and origin integrity. Show the detailed steps of your revised
protocol.
Note: Clearly show which entity performs which operation in the protocol. You
may draw a diagram to illustrate the protocol.
3.
(Continued
from 2 above, Protection of a session key using the recipient’s public key)
3.1.
(10 pts) For this protocol to work,
the prerequisite is that Alice must have Bob’s correct public
key. In order to have Bob’s public key, Alice may request Bob to
send his public key over. If the hacker Eve
can successfully steal Bob’s public
key when it is on its way to Alice,
and then replace that public key with her own public key, she can succeed in
deceiving Alice to trust that what
she has received is Bob’s public key,
creating an erroneous binding between the owner (in this case Bob) and that
owner’s public key (in this case Eve’s public key). Such an attack is called man-in-the-middle
attack against the public key cryptography. Explain how this attack
may be mitigated? Justify your answer. Hint: Read Chapter 24 of Du’s
book.
4.
SSL/TLS
Certificates: Suppose
there exists an online company (C), and a customer (A) has visited C’s online
shopping site. To earn the customers’ trust, C has a TLS certificate installed
on its webserver.
1.1. (10 pts) Explain how C’s certificate would be created.
By whom? Draw diagrams if necessary to enhance your explanation.
1.2.
(10
pts) Explain how C’s
certificate would be verified by A’s browser.
1.3.
(10
pts) What are
accomplished by the handshake process between A’s web browser
and C’s web server?
1.4.
(10
pts) A successful handshake between
the browser and the server is followed by a secure session. Explain
which of the security services (confidentiality, data integrity, origin
integrity, availability, and non-repudiability) are provided in a secure SSL
session. Justify your answer by explaining how each of the applicable
security services is enabled.
1.5.
(10
pts) Suppose H has
taken C’s certificate and manually changed the subject information
in C’s certificate from C to H. Would this modification be detected by A during
the certificate verification process? Justify your answer.
Go to
the Index