¿SSH usa un par de claves para el cifrado o dos pares de claves?

1

Cuando el cliente SSH (OpenSSH) se conecta al servidor SSH, el servidor SSH proporciona su clave de cifrado pública (por ejemplo, /etc/ssh/ssh_host_rsa_key.pub ) al cliente SSH para que el cliente SSH pueda cifrar los datos enviados al servidor SSH y el servidor SSH pueda descifrar esto con su clave privada correspondiente (por ejemplo, /etc/ssh/ssh_host_rsa_key ). Ahora, cuando el servidor SSH envía datos al cliente SSH, ¿encripta los datos con su clave privada y el cliente SSH necesita descifrarlos con la clave pública correspondiente que recibió al inicio de la conexión SSH? ¿O el cliente SSH proporcionó su clave pública al servidor SSH y el servidor SSH usa esto para cifrar los datos y el cliente SSH usará su clave privada correspondiente para descifrar estos datos?

    
pregunta Martin 22.10.2015 - 13:03
fuente

1 respuesta

1

No. El protocolo es más complicado que esto y puede leer la descripción completa en RFC 4253 y similares. La clave de host no se utiliza como clave de cifrado. La clave del host simplemente verifica la autenticidad del host y te impide el ataque de Man In the Middle. Similar se usa la clave de identidad, que se usa solo para la autenticación.

Las claves de cifrado se crean en función del intercambio de claves (generalmente diffie-hellman) y hay 6 de ellas derivadas del material de clave proporcionado por el intercambio de claves. Tiene una clave de cifrado separada, IV (vector de inicialización) y una clave MAC para garantizar la integridad de cada mensaje. También tiene una clave separada para ambas direcciones (servidor- > cliente, cliente- > servidor).

    
respondido por el Jakuje 22.10.2015 - 13:13
fuente

Lea otras preguntas en las etiquetas