diferencia entre la clave pública y la clave del host y la seguridad de la clave del host

5

En SSH, ¿cuál es la diferencia entre la clave del host y la clave pública?

Clave pública Creo que es parte del par de claves privada / pública, por lo tanto, cualquier cosa enviada por el servidor (cifrada usando privado) puede ser descifrada por el cliente usando una clave pública y cualquier cosa enviada después de encriptar con clave pública solo puede ser desencriptada clave privada del servidor.

En SSH, el servidor envía una clave de host y se supone que el cliente debe conocer el hash de la clave de host o caché en un almacén local después de que el cliente reciba la clave por primera vez, lo que garantiza la autenticidad del host.

Mi pregunta es: ¿mi entendimiento de la diferencia entre los dos es correcto? Si es así, una vez, una máquina obtiene una clave de host de un servidor al conectarse a ella, ¿no puede copiar la clave de host y falsificar su identidad como servidor cuya clave de host copió o existe alguna relación entre la clave privada y la clave de host como? es entre clave pública y privada?

    
pregunta prasun 28.03.2015 - 16:58
fuente

1 respuesta

3

El host tiene un par de claves , que consiste en una clave pública y una clave privada. (Puede tener varios pares de claves en diferentes formatos; al comienzo de una conexión, el cliente y el servidor negocian para determinar un formato que ambos admitan). Hay una clave pública de host y una clave privada de host; también hay otros pares de claves (claves públicas y privadas) que no son pares de claves de host (en SSH, los usuarios también tienen pares de claves, con la clave privada que reside en el cliente).

Al comienzo de una conexión, las dos partes establecen un canal seguro con un intercambio de claves Diffie-Hellman , que les permite establecer una clave secreta compartida que los intrusos no pueden descubrir. En este punto, el cliente y el servidor tienen un canal seguro (que no puede ser manipulado por un intermediario sin ser detectado), pero aún no saben quién está en el otro extremo del canal.

Luego, el cliente envía un valor aleatorio al servidor, un desafío . El servidor responde enviando su clave pública , así como una firma del valor de desafío. Al calcular la firma del valor de desafío, el servidor demuestra que conoce la clave privada correspondiente a la clave pública que acaba de enviar. Si el cliente ha almacenado la clave pública del host en un archivo, a partir de ese momento sabe que el servidor es el mismo host con el que se comunicó anteriormente.

Este mecanismo, donde todo el mundo conoce potencialmente la clave pública, una parte envía un desafío y la otra parte responde al desafío de una manera que demuestra que conoce la clave privada (denominada prueba de posesión ), es un uso común de la criptografía de clave pública. Se basa totalmente en el hecho de que la criptografía de clave pública es asimétrica: saber que la clave pública no proporciona suficiente información para realizar cálculos que involucren la clave privada.

    
respondido por el Gilles 28.03.2015 - 17:49
fuente

Lea otras preguntas en las etiquetas