El corto
El MITM necesita la clave privada del servidor para hacerse pasar por el servidor y descifrar
Mensajes privados que envías al servidor. La clave pública del servidor es para
autenticando mensajes firmados por el servidor y enviando mensajes privados a
El servidor, por lo que todavía necesita verificar su huella digital. Está bien si el MITM
tiene la clave pública también. Todo lo que significa es que el MITM también puede autenticar los mensajes del
servidor y enviar mensajes privados al servidor.
En general, si todas las claves públicas son conocidas por todos, cualquiera puede autenticar
Las firmas de cualquiera y cualquiera puede enviar un mensaje privado a cualquiera. Lo privado
los controles clave firman y descifran, de modo que idealmente nadie puede hacerse pasar por otro, y
nadie puede leer un mensaje privado enviado a otro.
El largo
NB: El siguiente es un modelo simplificado solo para fines educativos, destinado a
Ilustra el punto de la huella digital de la clave pública. Consulte esta otra pregunta para obtener más detalles sobre SSH .
Revisión. Por simplicidad, en lugar de SSH en una red de computadoras, considere una
Tablero de corcho público donde los agentes pueden publicar notas de texto. Al principio, el tablero es
blanco. Los agentes A
y S
desean comunicarse y desean proteger la privacidad
y la integridad de sus mensajes del agente malicioso M
. Asumir claves privadas
son conocidos solo por sus respectivos dueños.
-
A
publica A_pub
, y S
publica S_pub
.
-
A
cifra un mensaje con S_pub
, firma con A_priv
y publica.
-
S
descifra el mensaje con S_priv
, verifica la firma usando A_pub
.
-
S
cifra una respuesta con A_pub
, firma con S_priv
y publica.
- Creo que sabes lo que
A
hace aquí.
El agente M
no puede descifrar estos mensajes. M
puede publicar mensajes cifrados
a S
o A
. Sin embargo, un intento de falsificación fallaría. Un mensaje firmado con
M_priv
no pasaría la verificación utilizando A_pub
o S_pub
.
Ahora para la función de la huella digital de la clave pública. Supongamos que M
crea
M_pub
y M_priv
, e intenta engañar a A
publicando M_pub
como S_pub
:
Dear A,
My public key is
[contents of M_pub]
Love,
S
si
A
cree que esta mentira, A
cifrará los mensajes a S
con M_pub
para que M
puede descifrarlos y M
puede falsificar mensajes como S
usando M_priv
. Sin embargo, si
A
tiene la huella digital de S_pub
, A
puede compararla con la huella digital de
M_pub
y descubre la mentira. Por lo tanto, A
rechazará usar M_pub
para
cifrado de mensajes a S
y autenticación de mensajes de S
.
Por lo tanto, cuando SSH da una advertencia acerca de que la huella dactilar de la clave púbica es desconocida
o cambiado, significa que podría ser víctima de un ataque MITM. Si continúas,
el MITM podrá descifrar sus mensajes y forjar respuestas como el
servidor. Si la comprobación de huellas dactilares es satisfactoria, tiene una confianza muy alta.
no son víctimas de MITM, asumiendo que la huella digital que tiene es la verdadera
huella digital del servidor, las claves privadas (tanto la suya como la del servidor) son
de hecho privadas, las implementaciones de SSH son correctas, y la clave pública de criptografía matemática no es
comprometido.