110 likes | 284 Views
Exercises: Basic cryptography & key exchange protocols. Exercise 1. Alice and Bob want to verify that they possess a common key K , using a public one-way function h . They use the following protocol: Alice sends to Bob: h(h(K)) Bob verifies that the received value is correct
E N D
Exercise 1 • Alice and Bob want to verify that they possess a common key K, using a public one-way function h. They use the following protocol: • Alice sends to Bob: h(h(K)) • Bob verifies that the received value is correct • Bob sends to Alice: h(K) • Alice verifies that the received value is correct
Exercise 1 • Question 1: Why not have Alice send h(K) to Bob and then Bob send h(h(K)) to Alice? • Question 2: What keeps Malice from intercepting Alice’s transaction of h(h(K)) and then sending h(K) back to Alice (assuming that Malice does not know K) • Question 3: Beside h(h(K)), what can Alice send to Bob?
Exercise 2 • Consider the following protocol: • Alice sends to Trent: Alice, Bob, {K}KAT • Trent sends to Bob: Alice, Bob, {K}KBT • Bob sends Alice: {Hi, Alice. I am Bob}K How to attack this protocol?
Exercise 3 • In the step 5 of the protocol “challenge-response“, why does Alice send to Bob the value (NB - 1)?
Exercise 4 • In the “Session key from Trent” protocol: • Alice sends Trent: Alice, Bob • Trent sends Alice: {K}KAT , {K}KBT • Alice sends Bob: Trent, Alice, {K}KBT • Bob sends Alice: {Hi, Alice. I am Bob}K
Exercise 4 • In the “Session key from Trent” protocol, why does Trent send Alice two packages of key instead of sending one to Alice and one to Bob? • How to attack this protocol?
A B r S r T t t t g D g M C g N g g g g g g g g E g O Faculty of Math Faculty of CSE Exercise
Exercise • Can C, D, E read A? • Can M, N, O read A? • Can C, D, E read B? • Can S read B? • Can T read A?