Diffie-Hellman consente a due parti di generare una chiave segreta che non può essere recuperata da qualcuno che snooping sulla comunicazione. Questa chiave segreta può essere utilizzata per impostare un canale protetto tra le due parti che eseguono il protocollo DH.
La chiave segreta viene stabilita tra le due parti che scambiano i messaggi iniziali. Se invii un messaggio e ricevi una risposta, non hai modo di sapere che questo messaggio proviene dal tuo amico. Potrebbe venire da un uomo-in-the-middle invece. Un MitM può rispondere al tuo messaggio e inviare un messaggio al tuo amico, e quindi impostare una chiave segreta per comunicare con te e una per comunicare con il tuo amico. Da quel punto, sia tu che i tuoi amici avete un canale sicuro con il MitM, che può scegliere di inoltrare messaggi e curiosare su di essi, o modificarli, o rifiutarli o iniettare messaggi come desidera.
Non c'è modo di configurare un canale sicuro senza autenticazione. Se vuoi essere sicuro di comunicare con il tuo amico, devi conoscere qualcosa del tuo amico prima che il protocollo inizi, in modo che tu possa dire al tuo amico da un utente malintenzionato. Ad esempio, potresti avere la chiave pubblica del tuo amico. Il tuo amico affronta lo stesso problema.
Una volta che ciascuna delle parti conosce la chiave pubblica dell'altro, la DH è un modo possibile per stabilire un canale sicuro. I messaggi di configurazione DH sono firmati dalla chiave pubblica, quindi la parte ricevente può verificarne l'autenticità.