More Authentication Protocols




CS166

Chris Pollett

Nov 14, 2012

Outline

Perfect Forward Secrecy

Perfect Forward Secrecy - Session Keys

Naive Session Key Protocol

Naive session key protocol

Perfect Forward Secrecy -- Diffie Hellman

Diffie Hellman protocol

Ephemeral Diffie-Hellman

Ephemeral Diffie Hellman protocol

Mutual Authentication, Session Key, and PFS

Mutual Authentication and PFS protocol

Timestamps

Public Key Authentication with Timestamp T -- Sign Encrypt

Timestamp T PK Authentication protocol

Public Key Authentication with Timestamp T -- Encrypt Sign

Timestamp T Encrypt Sign Authentication protocol

Public Key Authentication with Timestamp T -- Replay

Timestamp T Encrypt Sign Replay Attack

Public Key Authentication

Public Key Authentication with Timestamp T -- Secure Encrypt and Sign

Secure Encrypt Sign Protocol

HW Problem

Exercise 9.2. The insecure protocol from two slides back can be modified to the messages Alice-to-Bob: "I'm Alice", `[{T,K}_(Bob)]_(Alice)`; Bob-to-Alice: `[T+1]_(Bob)` to make a secure protocol. Give two other distinct ways to slightly modify the protocol from two slides back so that that the result is secure. Your protocols must use a timestamp and "encrypt and sign".

Answer. The protocol from one slide back is such an answer. Notice there we encrypt using Alice PK `T+1` -- this is slightly better in that we would also not leak the timestamp, although it is likely that Trudy knows the current time already.

Another possibility is Alice-to-Bob: "I'm Alice", `[{T}_(Bob)]_(Alice)`; Bob-to-Alice: `[{T+1,K}_(Alice)]_(Bob)`. Only Bob (besides Alice) can compute `T+1`; only Alice can decrypt to find `K`.

Real-World Protocols

Next, we look at real protocols...

Secure Shell (SSH)

How SSH works

Simplified SSH

Simplified SSH Protocol

MiM Attack on SSH?

Purported Man-in-the-Middle SSH Attack Protocol