siempre sabes la dirección IP de la persona a la que envías
Oh, ¿verdad? Personalmente no tengo idea de en qué direcciones IP puedo encontrar mis servicios web favoritos. Por lo general, escribo un dominio y mi computadora se comunica con un tercero para preguntar sobre la IP correspondiente. Esto se conoce como Servicio de nombres de dominio (DNS). Verás en un segundo por qué menciono esto.
Un ejemplo clásico de un potencial atacante de hombre en el medio (MITM) es la persona que controla el enrutador al que está conectado. Sin la PKI en su lugar, fácilmente pueden pretender ser otra persona.
Digamos que vas a un café público y quieres acceder a tu bandeja de entrada de Gmail. Escribe 'gmail.com' en la barra de direcciones de tu navegador y se te presenta una página que solicita el nombre y la contraseña de tu cuenta de Gmail. ¿Cómo sabe que esa página es, de hecho, la que está alojada por Google y no, digamos, servida desde una máquina local en la sala de atrás del café? Un problema aquí es que su computadora habrá enviado una solicitud a un DNS remoto para solicitar la IP requerida, pero esta solicitud pasa por el enrutador, por lo que, sin medidas de seguridad adicionales, el MITM puede devolver una IP arbitraria. En segundo lugar, es posible que el enrutador haya dejado su solicitud y respuesta de DNS sin cambios, pero luego haya publicado la página falsa, independientemente de la IP a la que realmente intentaba acceder. Después de todo, confió en ellos para transmitir su solicitud y la respuesta de Gmail.
Y aquí es donde el cifrado de la capa de transporte y la infraestructura de clave pública entran en juego. Cuando intente comunicarse con un servidor que ejecuta HTTPS, le presentará una clave pública para encriptar otras comunicaciones, y esa clave generalmente estará firmada por una CA de confianza. Por lo tanto, sin acceso a la clave privada del servidor, un intermediario no puede leer ni manipular los datos intercambiados (de ahí el nombre encriptación de extremo a extremo para este tipo de mecanismo). Lo que hace la CA es asegurarse de que la clave pública presentada originalmente no pueda ser falsificada sin que usted se dé cuenta.
De manera similar, DNSSEC (DNS Security Extensions) se basa en PKI para detectar un MITM que está manipulando solicitudes / respuestas de DNS.