provable security authenticated key exchange
play

Provable Security Authenticated Key Exchange Joint work with - PDF document

Provable Security Authenticated Key Exchange Joint work with Emmanuel Bresson and Olivier Chevassut Lawrence Berkeley National Lab August 2003 David Pointcheval LIENS-CNRS Ecole normale suprieure Summary Summary Key Agreement and


  1. Provable Security Authenticated Key Exchange Joint work with Emmanuel Bresson and Olivier Chevassut Lawrence Berkeley National Lab August 2003 David Pointcheval LIENS-CNRS Ecole normale supérieure Summary Summary • Key Agreement and PKI-based Authentication – Security Model – Example • Password-based Authentication – Security Model – Example • Group Key Agreement – Security Model – Example • Conclusion David Pointcheval Provable Security - Authenticated Key Exchange - 2

  2. Summary Summary • Key Agreement and PKI-based Authentication – Security Model – Example • Password-based Authentication – Security Model – Example • Group Key Agreement – Security Model – Example • Conclusion David Pointcheval Provable Security - Authenticated Key Exchange - 3 Authenticated Key Exchange Authenticated Key Exchange Two parties agree on a common secret key, in order to establish a secret channel ( e.g. SSL) • Implicit authentication only the intended partners can compute the session key • Semantic security – the session key is indistinguishable from a random string – modeled via a Test -query David Pointcheval Provable Security - Authenticated Key Exchange - 4

  3. Further Properties Further Properties • Mutual authentication they are both sure to share the secret with the people they think they do • Forward-secrecy even if a long-term secret data is corrupted, previous shared secrets are still semantically secure David Pointcheval Provable Security - Authenticated Key Exchange - 5 Formal Model Formal Model � can ask history – reveal -queries A 1 B 1 – test -query � – execute -queries A i B i – send -queries – corrupt -queries A a B b 0/1 David Pointcheval Provable Security - Authenticated Key Exchange - 6

  4. Semantic Security Semantic Security • A misuse of the secret data is modeled by the reveal -query, which is answered by this secret data • For the semantic security, the adversary asks one test -query which is answered, according to a bit b , by – b =0 : the actual secret data – b =1 : a random string ⇒ the adversary has to guess this bit b David Pointcheval Provable Security - Authenticated Key Exchange - 7 Security Definitions (AKE) Security Definitions (AKE) Public data PROTOCOL . . . « Test » a key sk Flip a coin b sk if b =0, random if b =1 . . . Outputs b’ ( guess for b ) David Pointcheval Provable Security - Authenticated Key Exchange - 8

  5. Passive/Active Adversaries Adversaries Passive/Active • Passive adversary: history built using the execute -queries → transcripts • Active adversary: entire control of the network with send -queries: – to send message to Alice or Bob (in place of Bob or Alice respectively) – to intercept, forward and/or modify messages David Pointcheval Provable Security - Authenticated Key Exchange - 9 Forward Secrecy Forward Secrecy Forward secrecy means that the adversary cannot distinguish a session key established before any corruption of the long-term private keys: • the corrupt -query is answered by the long-term private key of the corrupted party • then the test -query must be asked on a session key established before any corrupt -query David Pointcheval Provable Security - Authenticated Key Exchange - 10

  6. Summary Summary • Key Agreement and PKI-based Authentication – Security Model – Example • Password-based Authentication – Security Model – Example • Group Key Agreement – Security Model – Example • Conclusion David Pointcheval Provable Security - Authenticated Key Exchange - 11 Diffie- -Hellman Hellman Key Exchange Key Exchange Diffie The most classical key exchange scheme has been proposed by Diffie-Hellman: � = <g> , cyclic group of prime order q • Alice chooses a random x ∈ � q , computes and sends X=g x • Bob chooses a random y ∈ � q , computes and sends Y=g y • They each can compute the session key K = Y x = X y David Pointcheval Provable Security - Authenticated Key Exchange - 12

  7. Properties Properties • If flows are authenticated, it is well-known to provide the semantic security of the session key under the Decisional Diffie-Hellman Problem • If one derives the session key as k = H( K ) , where H is assumed to behave like a random oracle, semantic security is relative to the Computational Diffie-Hellman Problem David Pointcheval Provable Security - Authenticated Key Exchange - 13 Authenticated Key Exchange Authenticated Key Exchange Alice ( S a , P a ) Bob ( S b , P b ) Bob, X , � ( S a ,X ) x ∈ � q , X=g x Alice, Y , � ( S b ,X,Y ) y ∈ � q , Y=g y K=Y x K=X y k= H( Alice , Bob , X , Y , K ) But there is no explicit authentication ⇒ replay attacks David Pointcheval Provable Security - Authenticated Key Exchange - 14

  8. Replay Attack Replay Attack Alice ( S a , P a ) Bob ( S b , P b ) The adversary intercepts Bob, X , � ( S a ,X ) “ Bob, X , � ( S a ,X ) ” x ∈ � q , X=g x y ∈ � q , Alice, Y , � ( S b ,X,Y ) He can initiate Y=g y K=Y x K=X y a new session with it k= H( Alice , Bob , X , Y , K ) Bob believes it comes from Alice – Bob accepts the key, but does no share it with Alice ⇒ no mutual authentication – The adversary does not know the key either ⇒ still semantic security David Pointcheval Provable Security - Authenticated Key Exchange - 15 Mutual Authentication Mutual Authentication Adding key confirmation rounds: mutual authentication [Bellare-Pointcheval-Rogaway Eurocrypt ‘00] Alice ( S a , P a ) Bob ( S b , P b ) Bob, X , � ( S a ,X ) y ∈ � q , Y=g y x ∈ � q , X=g x K=X y Alice, Y , � ( S b ,X,Y ), k 1 K=Y x k 1 =H 1 ( Alice , Bob , K ) k 1 correct? k 2 k 2 =H 2 ( Alice , Bob , K ) k 2 correct? k=H ( Alice , Bob , X , Y , K ) David Pointcheval Provable Security - Authenticated Key Exchange - 16

  9. Summary Summary • Key Agreement and PKI-based Authentication – Security Model – Example • Password-based Authentication – Security Model – Example • Group Key Agreement – Security Model – Example • Conclusion David Pointcheval Provable Security - Authenticated Key Exchange - 17 Password- -based Authentication based Authentication Password The parties share a low-entropy secret – a password exhaustive search is possible (say 2 20 ) – • Basic attack: on-line exhaustive search – the adversary guesses a password – tries to play the protocol failure ⇒ erase the password from the list – – restart… after 2 20 attempts, the adversary wins David Pointcheval Provable Security - Authenticated Key Exchange - 18

  10. Dictionary Attack Dictionary Attack The on-line exhaustive search – cannot be prevented – can be made less serious (delay, limitations, …) We want it to be the best attack… Off-line exhaustive search: – passive/active attack failure ⇒ erase MANY passwords from the list – this is called dictionary attack David Pointcheval Provable Security - Authenticated Key Exchange - 19 Summary Summary • Key Agreement and PKI-based Authentication – Security Model – Example • Password-based Authentication – Security Model – Example • Group Key Agreement – Security Model – Example • Conclusion David Pointcheval Provable Security - Authenticated Key Exchange - 20

  11. Example: EKE : EKE Example The most famous scheme EKE: Encrypted Key Exchange Must be done carefully Password π Bob Alice X’ = �� π (Bob, X ) x ∈ � q , X=g x ������� X = � π ( X’ ) Y’ = � π (Alice ,Y ) Y = � π ( Y’ ) y ∈ � q , Y=g y K=Y x K=X y k= H( Alice , Bob , X , Y , K ) David Pointcheval Provable Security - Authenticated Key Exchange - 21 Example: EKE : EKE Example Password π Alice Bob ������� X’ = �� π (Bob, X ) x ∈ � q , X=g x X = � π ( X’ ) Y’ = � π (Alice ,Y ) Y = � π ( Y’ ) y ∈ � q , Y=g y K=Y x K=X y k= H( Alice , Bob , X , Y , K ) Any redundancy is serious: From X’ , for any password π decrypt X’ – – check whether it begins with “Bob” David Pointcheval Provable Security - Authenticated Key Exchange - 22

  12. EKE - AuthA AuthA EKE - Password π Alice Bob EKE Bob, X’ = �� π ( X ) x ∈ � q , X=g x Bellovin-Merritt 1992 X = � π ( X’ ) Alice , Y’ = � π ( Y ) Y = � π ( Y’ ) y ∈ � q , Y=g y K=Y x K=X y k= H( Alice , Bob , X , Y , K ) Password π Alice Bob AuthA Bob, X’ = �� π ( X ) x ∈ � q , X=g x X = � π ( X’ ) y ∈ � q , Y=g y Bellare-Rogaway 2000 K=X y Alice , Y , k 1 K=Y x k 1 =H 1 ( Alice , k 1 correct ? Bob , K ) k= H( Alice , Bob , X , Y , K ) Provably secure if � is an ideal cipher [Bresson-Chevassut-Pointcheval ACM CCS ‘03] David Pointcheval Provable Security - Authenticated Key Exchange - 23 Improvement Improvement � = an ideal cipher replaced by the One-Time Pad � π ( m ) = � ( π ) ⊕ m [Bresson-Chevassut-Pointcheval LBNL-53099] Password π Bob Alice Bob, X’ = � X ⋅ � ( π ) x ∈ � q , X=g x X = X’ / � ( π ) y ∈ � q , Y=g y K=X y Alice , Y , k 1 K=Y x k 1 =H 1 ( Alice , k 1 correct ? Bob , K ) k= H( Alice , Bob , X , Y , K ) David Pointcheval Provable Security - Authenticated Key Exchange - 24

Recommend


More recommend