He estado leyendo acerca de cómo se utilizan los certificados para verificar el propietario de una clave pública en cifrado asimétrico. En este momento, todo me parece realmente teórico y me gustaría saber cómo funciona esto en la práctica. Por ejemplo, ¿los sitios en los que inicia sesión, como Facebook (o este) utilizan cifrado asimétrico?
Lo que no entiendo es esto: el certificado afirma, por ejemplo, Facebook es quien dice ser, y una vez verificada, se puede extraer de ella la clave pública. ¿No es esto más del rol del servidor DNS? Un usuario escribe facebook.com
y el servidor DNS es responsable de saber que facebook.com
se resuelve, por ejemplo. 1.2.3.4
?
Algunas conexiones no usan el servidor DNS, puedes decir. Por ejemplo, un cliente de correo puede estar configurado para conectarse a una dirección IP particular. No hay problema. Entonces ya deberías saber que la dirección IP es la correcta: si no es así, es como decir que enviaste un paquete a la dirección equivocada pero te molesta que la haya recibido la persona incorrecta.
La última pregunta, ¿son las claves públicas generalmente no proporcionadas por el propio propietario y en realidad la autoridad de certificación? hasta aquí la clave pública se extrae del certificado)? Por ejemplo, cuando me conecto a Facebook es su clave pública que me ha dado DigiCert Inc, ¿no es realmente Facebook?