¿Cómo funciona HTTPS?
HTTPS se basa en criptografía de clave pública / privada . Básicamente, esto significa que hay un par de claves: la clave pública se usa para el cifrado y la clave privada secreta se requiere para el descifrado.
Un certificado es básicamente una clave pública con una etiqueta que identifica al propietario.
Entonces, cuando su navegador se conecte a un servidor HTTPS, el servidor responderá con su certificado. El navegador comprueba si el certificado es válido :
- la información del propietario debe coincidir con el nombre del servidor que el usuario solicitó.
- el certificado debe estar firmado por una autoridad de certificación confiable.
Si no se cumple una de estas condiciones, se informa al usuario sobre el problema.
Después de la verificación, el navegador extrae la clave pública y la utiliza para cifrar cierta información antes de enviarla al servidor. El servidor puede descifrarlo porque el servidor tiene la clave privada correspondiente .
¿Cómo previene HTTPS al hombre en los ataques medios?
En este caso, ¿G podrá obtener el certificado que A obtuvo previamente de W?
Sí, el certificado es la clave pública con la etiqueta. El servidor web lo enviará a cualquier persona que se conecte a él.
Si G puede obtener el certificado, ¿eso significa que G podrá descifrar los datos?
No. El certificado contiene la clave pública del servidor web . El proxy malicioso no está en posesión de la clave privada correspondiente. Entonces, si el proxy reenvía el certificado real al cliente, no podrá descifrar la información que el cliente envía al servidor web.
El servidor proxy puede intentar falsificar el certificado y proporcionar su propia clave pública. Sin embargo, esto destruirá la firma de las autoridades de certificación . El navegador advertirá sobre el certificado inválido.
¿Hay alguna forma en que un servidor proxy pueda leer HTTPS?
Si el administrador de su computadora coopera , es posible que un servidor proxy pueda detectar conexiones https. Esto se usa en algunas compañías para buscar virus y hacer cumplir las pautas de uso aceptable.
Una autoridad de certificación local está configurada y el administrador le dice a su navegador que esta CA es confiable . El servidor proxy utiliza esta CA para firmar sus certificados falsificados.
Ah, y por supuesto, el usuario tiende a eliminar las advertencias de seguridad.