0% found this document useful (0 votes)
24 views2 pages

CS 519 Cryptography Final Exam Questions

The document is a final exam for a Cryptography and Network Security course, consisting of three questions covering various topics in cryptography. It includes questions on stream ciphers, MACs, RSA encryption, ElGamal encryption, Kerberos, VPNs, replay attacks, SSL, and Mobile IPv6 security. Additionally, it presents a protocol for establishing a session key using Diffie-Hellman public keys and asks for proofs of correctness and security against attacks.

Uploaded by

tedid49270
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)
24 views2 pages

CS 519 Cryptography Final Exam Questions

The document is a final exam for a Cryptography and Network Security course, consisting of three questions covering various topics in cryptography. It includes questions on stream ciphers, MACs, RSA encryption, ElGamal encryption, Kerberos, VPNs, replay attacks, SSL, and Mobile IPv6 security. Additionally, it presents a protocol for establishing a session key using Diffie-Hellman public keys and asks for proofs of correctness and security against attacks.

Uploaded by

tedid49270
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

CS 519

Cryptography and Network Security


Instructor: Ali Aydın Selçuk
Department of Computer Engineering, Bilkent University

Final Exam
January 5, 2013

Question 1. (60 pts.) Answer briefly each of the following questions:

a. What is the weakness about using the same key stream multiple times for encryption
in a stream cipher? How can it be solved in practice?

b. What are the differences between a MAC and a digital signature? What are the
respective advantages of each?

c. What is the “cube root problem” in RSA encryption? How does PKCS address it?

d. What is the risk of using the same k value multiple times in ElGamal encryption?
Discuss briefly.

e. Describe briefly how an offline dictionary attack works. How does salt help defending
against these attacks?

f. Does the Kerberos login protocol defend against off-line password guessing with eaves-
dropping? Explain briefly.

g. What is the limitation of EKE-type protocols that Augmented EKE (A-EKE) tries
to solve? What is the approach of A-EKE to solve this problem?

h. What is a virtual private network (VPN)? How can IPsec help establishing a VPN?
Which mode of IPsec operation would be used for this kind of application?

i. What is a replay attack? Describe the replay protection mechanism in AH and ESP.
Explain how it works briefly.

j. Does the SSL session establishment protocol (i.e., the main handshake protocol of
SSL) have the feature of “perfect forward secrecy”? Why/why not?

k. Two approaches regarding generation of qualified (legally-binding) signature keys is,


(i) the user to generate the key pair and get his public key certified by the CA, or,
(ii) to have the key pair generated by the CA on a trusted computer. Name a relative
advantage of each approach.

l. Describe briefly Bellovin’s connection hijacking attack on IPsec encryption without


authentication. Why is the TCP sequence number a source of complication in this
attack? How can it be tackled?
Question 2. (20 pts.) Explain the following points regarding Tuomas Aura’s talk on
Mobile IPv6 security:

a. What is the problem with the binding updates when no authentication is present?

b. What is the approach of Aura et al. to this problem?

c. What is the basic solution they propose?

d. What is the problem with this solution when satellite links are common?

e. What would be a simple solution to prevent such passive attacks? (without any major
changes to the basic setting such as adding a PKI)

Question 3. (20 pts.) A protocol to establish a fresh session key using long-term, certified
Diffie-Hellman public keys is the protocol of Yacobi and Shmuely. The protocol, in a slightly
modified form, is as follows:

• The system has a common prime modulus p and a generator g. Each party i has a
long-term private key αi ∈ Zp−1 and a public key Pi = g αi mod p.

• To establish a session key between i and j, party i generates a random Ri ∈ Zp−1 ,


computes Xi = αi + Ri mod p − 1, and sends Xi to j. Similarly, j computes a random
Rj ∈ Zp−1 , Xj = αj + Rj mod p − 1, and sends Xj to i.

• i computes the session key as

Ki,j = (g Xj Pj−1 )Ri mod p

and j computes
Kj,i = (g Xi Pi−1 )Rj mod p.

a. Show that the protocol is correct (i.e., Ki,j = Kj,i ).

b. Show that a passive attacker Trudy who has broken a session key KA,B between Alice
and Bob can compute any future session keys between these two parties.

c. Describe a simple addition to the session key computation which will preclude this
and any similar attacks on this protocol.

Good luck

Common questions

Powered by AI

The SSL main handshake protocol does not inherently provide perfect forward secrecy because it does not require the key exchange to use ephemeral keys by default. For perfect forward secrecy, the protocol must employ temporary key exchanges, like the Diffie-Hellman Ephemeral (DHE) or Elliptic Curve Diffie-Hellman Ephemeral (ECDHE) modes, where session keys are derived from private information only held during the session, ensuring that long-term keys are not at risk even if compromised later .

Offline dictionary attacks occur when an attacker obtains a hashed password and attempts to discover the original password by hashing dictionary words and comparing them to the obtained hash. 'Salt' mitigates these attacks by adding a unique value to each password before hashing, ensuring that even identical passwords have different hash outputs. This renders precomputed hash tables, such as rainbow tables, ineffective, as each password-salt combination must be attacked individually .

A MAC provides data integrity and authentication using a shared secret key, which means both the sender and receiver must know the key. A digital signature, on the other hand, provides non-repudiation by leveraging asymmetric cryptography; only the signer has the private key required to create the signature, while anyone with the signer's public key can verify it. The advantage of a MAC is its efficiency due to symmetric key operations, while a digital signature offers stronger repudiation protection due to its asymmetric nature .

Reusing the same 'k' value in ElGamal encryption compromises the security of the encrypted messages. This is because the 'k' value serves as a random component that, when reused, can allow an attacker to deduce private keys by solving discrete logarithms, thus leading to potential message exposure. Ensuring the uniqueness of the 'k' value for each encryption is crucial in maintaining the scheme's security and preventing any form of pattern recognition or key recovery attacks .

Using the same key stream multiple times in a stream cipher leads to the vulnerability known as key stream reuse, which allows attackers to perform cryptanalysis on the encrypted messages. This is because if two messages are encrypted with the same key stream, the XOR of the two cipher texts will yield the XOR of the two plain texts, effectively removing the encryption. A practical solution is to ensure that each encryption session uses a unique key stream, often achieved through the use of a nonce or counter that modifies the key stream for each encryption .

A passive attacker who has compromised a session key in the Yacobi and Shmuely protocol can compute future session keys because the protocol, as described, lacks a mechanism to ensure the freshness of random numbers (Ri, Rj), which are crucial to the security of the session key computation. To mitigate this vulnerability, nonce or timestamp-based mechanisms could be introduced to ensure that each session incorporates unique, non-reused random values, thereby preventing future session keys from being predicted based on past sessions .

Standard EKE protocols do not prevent password brute force attacks even after an attacker gains access to the key exchange messages. Augmented EKE seeks to improve security by making it hard to verify password guesses without additional credentials such as those stored on the server-side. A-EKE accomplishes this by having the server store not the password but an encrypted version of it along with a salt, preventing attackers from verifying password guesses offline .

AH and ESP protocols protect against replay attacks by incorporating sequence numbers into their headers, ensuring that packets are processed in the order sent and that each packet's sequence number is unique. If the sequence number is detected as a duplicate or out of sequence, the packet is discarded. This sequential verification ensures that attackers cannot resend previously captured packets to recreate valid actions, maintaining communication integrity and freshness .

The cube root problem in RSA occurs when small public exponents (like e=3) are used, and the message to be encrypted is small enough that the cipher text equals the message cubed (or raised to e), without needing modular reduction, which allows the message to be easily recovered by computing the cube root. PKCS addresses this by padding the message before encryption, ensuring the plain text is of sufficient length such that modular reduction occurs, preventing the trivial recovery of the message .

Kerberos defends against offline password guessing by using a Ticket Granting Ticket (TGT) encrypted with a key derived from the user's password during the authentication process. Even if an attacker intercepts the TGT, they cannot perform offline attacks without first decrypting it, which requires guessing and verifying the password online each time. The requirement for the Authentication Server (AS) and Key Distribution Center (KDC) involvement in verification prevents offline trial and error, significantly limiting attack feasibility .

You might also like