##### Reference no: EM131206281

**Assignment Questions**

**Question 1. **Assuming you can do 2^{30} encryptions per second and key size is 64 bits:

i. How long would a brute force attack take? (Both maximum and average values)

ii. Give a scenario where this would be practical and another where it wouldn't.

iii. What happens if you double the key size?

Show the working process of your work in few steps.

**Question 2.** User A and B use Diffie-Hellman algorithm to exchange a shared key and generate public keys of their own. Consider a common prime number q = 71 and α (a primitive root of q) = 7. Determine the followings:

a. If user A has private key=5, what is A's public key?

b. If user B has private key=12, what is B's public key?

c. What is the shared key?

Show the working process of your work in at least three steps. Consult lecture notes and the text book.

**Question 3.** Alice and Bob agree to communicate privately via email using a scheme based on RC4, but they want to avoid using a new secret key for each transmission. Alice and Bob privately agree on a 128-bit key k. To encrypt a message m consisting of a string of bits, the following procedure is used:

i. Choose a random 80-bit value v

ii. Generate the ciphertext c=RC4(v||k) ⊕ m

iii. Send the bit string (v || c)

Answer the following:

a. Suppose Alice uses this procedure to send a message to Bob. Describe how Bob can recover the message m from (v || c) using k.

b. If an adversary observes several values of (v_{1} || c_{1}), (v_{2} || c_{2}) ....... Transmitted between Alice and Bob, how can he/she determine when the same key stream has been used to encrypt two messages?

c. If Alice and Bob agree to use 16-bit Cipher Feedback (CFB) mode instead of RC4, and a bit error occurs in the transmission of a ciphertext; how far does the error propagate?

**Question 4.**

a. Is it possible to perform encryption operations in parallel on multiple blocks of plaintext in CBC mode? Justify your answer.

b. How about decryption? Justify your answer.

**Question 5.** Consider p=17 and q=31 in the RSA encryption/decryption algorithm to be used to encrypt a message M=15. Using the algorithm, determine the followings:

a. Generate a public-private key pair.

b. Using the generated public key, encrypt the message to get the cipher text C.

c. Apply the private key on C to decrypt the original message M.

Show the working process of your work in at least three steps in both encryption and decryption.

**Question 6.** Answer the following in relation to a scenario where Bob and Alice use Kerberos for mutual authentication:

a. When Bob receives a ticket from Alice, how does he know it is genuine?

b. When Bob receives a ticket from Alice, how does he know it came from Alice?

c. Alice receives a reply, how does she know it came from Bob (that it is not a reply of an earlier message from Bob)?

d. What does the ticket contain that allows Alice and Bob to talk securely?

**Question 7.** In this problem we shall compare the security services that are provided by digital signatures (DS) and message authentication codes (MAC). We assume that Oscar is able to observe all messages sent from Alice to Bob and vice versa. Oscar has no knowledge of any keys but the public one in case of DS. State whether and how DS and MAC protect against each attack. The value auth (x) is computed with a DS or a MAC algorithm, respectively.

a. (Message Integrity) Alice sends a message x = "Transfer $1000 to Mark"in the clear and also sends auth (x) to Bob. Oscar intercepts the message and replaces "Mark" with "Oscar". Will Bob detect this?

b. (Replay) Alice sends a message x = "Transfer $1000 to Oscar" in the clear and also sends auth (x) to Bob. Oscar observes the message and signature and sends them 100 times to Bob. Will Bob detect this?

c. (Authentication with Bob cheating) Bob claims that he received a message x with a valid signature auth (x) from Alice (e.g., "Transfer $1000 from Alice to Bob") but Alice claims she has never sent it. Can Alice clear this question in either case?