🌑

Explore / Study / Computer Science / Cryptography 459 words | 2 minutes

§14 Key-Exchange Protocols and Diffie-Hellman Key-Exchange

  1. Key-Exchange Protocols
    1. Key-Exchange experiment KEA,Πeav(n)\mathrm{KE}_{\mathscr{A}, \Pi}^{\mathrm{eav}}(n)KEA,Πeav​(n)
    2. Key-Exchange Security
  2. Diffie-Hellman Key-Exchange Protocol
    1. Diffie-Hellman Key-Exchange Protocol: Security

Key-Exchange Protocols

Key-Exchange experiment KEA,Πeav(n)\mathrm{KE}_{\mathscr{A}, \Pi}^{\mathrm{eav}}(n)

  • Fix a Key-Exchange protocol Π\Pi and an attacker (passive eavesdropper) A\mathscr{A}. Define the experiment KEA,Πeav(n)\mathrm{KE}_{\mathscr{A}, \Pi}^{\mathrm{eav}}(n):
    1. Two parties holding 1n1^n execute protocol Π\Pi. This results in a transcript trans\texttt{trans} containing all the messages sent by the parties, and a key k{0,1}nk \in \{0,1\}^n output by each of the parties.
    2. A uniform bit b{0,1}b \in \{0,1\} is chosen. If b=0b = 0, set k:=kk' := k. If b=1b = 1, choose k{0,1}nk' \leftarrow \{0,1\}^n uniformly at random.
    3. Attacker A\mathscr{A} is given trans\texttt{trans} and kk'. A\mathscr A then outputs a bit bb'.
    4. A\mathscr A succeeds and the experiment evaluates to 11 if and only if b=bb' = b.

Key-Exchange Security

  • Definition. The Key-Exchange Protocol Π\Pi is secure in the presence of an eavesdropper, if for all probabilistic, polynomial-time adversaries A\mathscr A, there is a negligible function ϵ(n)\epsilon(n) such that

    Pr[KEA,Πeav(n)=1]12+ϵ(n)\Pr[\mathrm{KE}_{\mathscr{A}, \Pi}^{\mathrm{eav}}(n) = 1] \le \frac{1}{2} + \epsilon(n)

Diffie-Hellman Key-Exchange Protocol

  • The Diffie-Hellman key-exchange protocol for the common input consisting of security parameter 1n1^n is formally described as follows:
    1. Alice runs G(1n)\mathscr{G}(1^n) to obtain (G,q,g)(\mathbb{G}, q, g).
    2. Alice chooses a uniform xZqx \in \mathbb{Z}_q, and computes hA:=gxh_A := g^x.
    3. Alice sends (G,q,g,hA)(\mathbb{G}, q, g, h_A) to Bob.
    4. Bob receives (G,q,g,hA)(\mathbb{G}, q, g, h_A). Bob chooses uniform yZqy \in \mathbb{Z}_q, and computes hB:=gyh_B := g^y. Bob sends hBh_B to Alice, and outputs the key kB:=hAyk_B := h^y_A.
    5. Alice receives hBh_B and outputs the key kA:=hBxk_A := h^x_B.

Diffie-Hellman Key-Exchange Protocol: Security

  • Theorem. If the Decisional Diffie-Hellman problem is hard relative to G\mathscr G, then the Diffie-Hellman key-exchange protocol Π\Pi is secure in the presence of an eavesdropper (with respect to KE^A,Πeav\widehat{\mathrm{KE}}_{\mathscr{A}, \Pi}^{\mathrm{eav}} ).

— Mar 24, 2023

Creative Commons License
§14 Key-Exchange Protocols and Diffie-Hellman Key-Exchange by Lu Meng is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. Permissions beyond the scope of this license may be available at About.