Uwierzytelnianie klienta jest korzystne dla serwera. Zapobieganie występowaniu pośrednika to odrębna sprawa.
Jeśli wymiana kluczy wykorzystuje DH z podpisem serwera (w odniesieniu do klucza publicznego, który jest znany klientowi ) wtedy klient jest chroniony przed pośrednikiem: klient ma silne wyobrażenie o tym, z kim powinien rozmawiać, a podpis serwera zapobiega podszywaniu się pod serwer w jakikolwiek sposób (np. jako "pośrednik", co jest po prostu szczególnym rodzajem podszywania się).
Bez uwierzytelnienia klienta serwer nie wie, kto się z nim kontaktuje. Reszta protokołu (np. SSL / TLS) nadal będzie zapewniać ochronę przed atakami w następującym sensie: będzie to ten sam klient przez całą sesję i żadna inna strona nie może szpiegować zawartości danych lub zmienić dane w niewykryty sposób. W związku z tym „pośrednik” (na przykład: atakujący, który działa jako przekaźnik, odszyfrowując i ponownie szyfrując dane w locie) jest unikany, ponieważ klient zweryfikował podpis z serwera i dlatego używał „właściwego” klucza Diffiego-Hellmana, chroniąc atakującego przed wymianą kluczy.
Uwierzytelnianie klienta jako podpis, obliczane przez klienta z jego własnym kluczem prywatnym i odpowiadający kluczowi publicznemu znanemu serwerowi, może pomóc w zapobieganiu pośrednikowi w przebiegłej sytuacji, gdy klient nie (głupio) nie sprawdza podpisu z serwera. Nic nie może powstrzymać tego kretyńskiego klienta przed połączeniem się z fałszywym serwerem, ponieważ niczego nie sprawdza, a zatem można go dowolnie sprzeniewierzyć. Jednak uwierzytelnianie klienta jest wystarczające, aby serwer upewnił się, że jeśli klient w ogóle z nim rozmawia, zrobi to w bezpieczny sposób.
Kluczową kwestią jest tutaj kwestia definicji. Co to jest „mężczyzna w środku”? Jest to przypadek, w którym atakujący podszywa się pod zamierzonego peera (aby był to „prawdziwy środek”, atakujący podszywa się pod serwer w odniesieniu do klienta i klienta w odniesieniu do serwera). Ma to sens tylko wtedy, gdy istnieje „zamierzony peer”. Jeśli serwer nie dba o to, kto się z nim kontaktuje, nie ma pojęcia „pośrednika”.
W zwykłym scenariuszu HTTPS klient jest uwierzytelniany za pomocą hasła: klient musi od razu porozmawiać z odpowiednim serwerem (używając certyfikatu serwera), ponieważ klient nie chce nikomu wysyłać swojego hasła. Serwer po prostu chce mieć ciągłość : jeśli otrzymał poprawne hasło przez tunel SSL, to tunel jest dobry i taki pozostanie.