longitud de cifras frente a longitud de clave

3

ssh-keygen por defecto es RSA (para el protocolo SSH 2) y una clave de 2048 bits.

En esta descripción de ssh

         The supported ciphers
         are: 3des-cbc, aes128-cbc, aes192-cbc, aes256-cbc, aes128-ctr,
         aes192-ctr, aes256-ctr, arcfour128, arcfour256, arcfour, blow-
         fish-cbc, and cast128-cbc.  The default is:

           aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour128,
           arcfour256,arcfour,aes192-cbc,aes256-cbc,aes128-ctr,
           aes192-ctr,aes256-ctr

Por lo tanto, parece que los cifrados son de 128 o 256 bits, si inferir de números sin unidades. ¿Cuál es la justificación para que las cifras sean más cortas que la clave?

    
pregunta H2ONaCl 18.12.2012 - 09:11
fuente

3 respuestas

5

Esa es la longitud de la clave para RSA (cifrado asimétrico). Se utiliza para establecer la identidad del servidor y realizar la autenticación y el intercambio de claves simétricas. No realiza cifrado de la conexión.

Los cifrados que has descrito anteriormente son todos simétricos, se utilizan para cifrar la conexión. Al menos para AES, estoy seguro de que la longitud máxima de la clave es de 256 bits.

Para darle una idea básica de cómo funciona SSH:

  1. generar una clave de sesión aleatoria
  2. Cifre esta clave de sesión con los servidores públicos y su certificado privado
  3. el servidor descifra la clave de la sesión y se configura un cifrado simétrico entre el cliente y el servidor para enviar los datos. Dado que está cifrada con la clave pública del servidor, solo el servidor puede leerla. Dado que está cifrado con su certificado privado, el servidor sabe que debe provenir de usted (o, más precisamente, del titular de la clave privada correspondiente).

Si desea más información, hay una muy buena explicación aquí .

    
respondido por el Lucas Kauffman 18.12.2012 - 09:28
fuente
4

Es necesario diferenciar entre la función de intercambio de claves y la función de cifrado. El intercambio de claves sucede como dijo Lucas Kauffman. Ambas partes utilizan criptografía asimétrica para verificar su identidad (o la posesión de la parte de identidad privada) y acuerdan una clave de sesión que se usa con una función de cifrado como AES o las otras cifras que ha mostrado.

Como regla general, puede recordar: el criptografía asimétrica necesita mucho más tiempo de cálculo que uno simétrico. Esta es la razón por la que es útil utilizarlo para un acuerdo clave, pero no para el cifrado de datos a largo plazo.

Me dijeron en la universidad (no hace mucho) que teóricamente 80 bits de entropía (longitud de la clave) son suficientes para el poder de cálculo de hoy. Considerada la única forma de romper un cifrado es forzarla bruta. Y si considera que cada bit que agrega a la clave duplica el espacio de la clave, estamos muy bien con las claves de 128 o 256 bits para la próxima vez que se produzca.

    
respondido por el Stas Stelle 18.12.2012 - 15:53
fuente
0
  

"¿Cuál es la justificación de que los cifrados sean más cortos que la clave?"

Tal como lo entiendo, las claves asimétricas deben tener una relación matemática entre sí (Privada y Pública) que limita gravemente el número de posibilidades que puede tener, mientras que los cifrados simétricos tienen un suministro 'por bit' mucho mayor. combinaciones Este sitio hace un mejor trabajo para explicarlo.

Según cómo se modifica qué cifrado, o la longitud de clave que usa SSH, todavía estoy buscando. Para cambiar la longitud de la clave de autenticación asimétrica, use ssh-keygen -b 4096 para crear una nueva clave con 4096 bits, haga esto en el directorio / etc / ssh para actualizar la clave del servidor y crear una nueva clave. Asegúrese de tener acceso directo a la máquina cuando cambie las teclas, o puede bloquearse. Descubrí que puedes ir a 8192 bits (¡Overkill? ¡No sé una palabra!) Antes de que SSH ya no los acepte, incluso he empujado una Raspberry Pi a esa longitud.

    
respondido por el Cuthbert Nibbles 26.08.2015 - 23:19
fuente

Lea otras preguntas en las etiquetas