Huellas digitales de claves RSA: ¿GitHub no coincide?

Aug 20 2020

Me pregunto cómo funcionan esas huellas dactilares RSA. Tengo una cuenta de GitHub y creé un par de claves RSA para configurar una conexión ssh. Luego seguí las instrucciones ... La primera vez que me conecto a mi GitHub, me da una huella digital RSA y a mí. SHA256:nThbkt6JwfF............Ok, estoy haciendo esto para el proceso de aprendizaje, así que busco en Google lo que esto significa e intento generar una huella digital desde mi clave RSA, y debería coincide con el de mi cuenta de GitHub, ¿verdad? Pero no es así, lo que obtengo después de usar: ssh-keygen -lf ~/.ssh/id_rsa no es lo mismo, es comoSHA256: t6Rjff8djE........

¿Estoy haciendo algo mal aquí en mi enfoque para ver si la huella dactilar proporcionada es legítima?

Respuestas

1 KamilKurzynowski Aug 20 2020 at 16:01

SSH requiere dos pares de claves público-privadas. Uno en el lado del servidor y otro en el lado del cliente. En términos simples, cuando desea cifrar algo que va al servidor, está utilizando la clave pública del servidor (se descifra en el lado del servidor utilizando la clave privada del servidor). Cuando el servidor le envía algo, está usando su clave pública (lo está descifrando usando su clave privada almacenada en su máquina).

El servidor presenta su huella digital (no la huella digital de su certificado). Para que pueda validar la clave pública presentada por el servidor. Por lo general, las huellas digitales se almacenan en caché, por lo que ssh no le preguntará la próxima vez.

Cuando configura su clave pública en el github, básicamente le dice a github qué clave usará para la autenticación y el intercambio de claves. Github “confía” en que esta clave proviene de usted porque se está autenticando con su contraseña para cargarla. En teoría, solo usted puede descifrar sus datos porque solo usted tiene la clave privada correspondiente. Al cargar la clave, establece una relación de confianza entre su máquina y el servidor de GitHub.

Si la huella digital de la clave que ha cargado es diferente a la huella digital de la clave en su máquina, lo más probable es que se deba a:

  1. Tomando huellas dactilares de claves incorrectas.
  2. La clave original se sobrescribió ejecutando el comando de generación varias veces.
  3. Confusión de huella digital proveniente del servidor (huella digital del servidor) con su propia huella digital de certificado.