La magia che impedisce a un utente malintenzionato di decodificare tutti i dati in questo modo è denominata "crittografia asimmetrica". Poiché non è necessario che la chiave di crittografia e la chiave di decrittografia siano uguali, è possibile inviare uno di questi all'apertura, consentendo a tutti di crittografare i messaggi futuri e mantenere comunque l'esclusiva possibilità di decrittografarli (l'altro, privato, chiave della coppia). Quelle chiavi sono diverse (appena generate) in ogni sessione SSL.
Diventa più complicato quando l'attaccante è disposto a inviare attivamente chiavi "false", ingannando gli altri a usarle. Quindi l'altro argomento di cui potresti voler leggere è "infrastruttura a chiave pubblica". Ciò fornisce un livello iniziale di fiducia basato su precedenti comunicazioni dietro le quinte, tra parti quali autorità di certificazione, operatore di server, produttore di hardware e venditori di sistemi operativi. Già prima che il primo pacchetto venga trasmesso all'interno del coffee shop, tutti conservano vari certificati, chiavi e contatti per gli amici di fiducia reciproca, i quali saranno utili per autenticare l'altra parte per quello che dicono di essere.
SSL può autorizzare sia i server che i client, ma poiché il server ha più controllo sulla chiave di sessione e anche sulla logica di business dell'interazione, è normale non preoccuparsi di autenticare i client.
Occasionalmente puoi imbatterti in scenari in cui le normali ipotesi si guastano. Errori logici in protocolli, CA incompleti, interferenze governative, hardware compromesso dalla fabbrica , chiavi che sono trapelate senza che nessuno se ne accorga e generatori di chiavi casuali che sono molto meno casuali di quanto desideri. Per la stragrande maggioranza di tali buchi, la privacy nel coffee shop è a rischio solo se l'attaccante interferisce attivamente e aiuta a guidare la conversazione verso il buco in qualche modo.