Exposición de claves RSA

2

¿Hay algún límite para el número de bytes que puede usar una clave RSA antes de que pueda ser expuesta? En el cifrado simétrico, no se recomienda utilizar una clave para cifrar más de una cantidad específica de datos, por lo que debe transformarse en un estado inactivo. ¿Es lo mismo con RSA o esquemas de encriptación asimétricos? No encontré ninguna referencia para este problema ¿Alguien puede ayudar? Apreciaría esto

    
pregunta Ibrahim 12.02.2014 - 09:54
fuente

2 respuestas

3

Con RSA, cifrado usa solo la clave pública, por lo que todos pueden tomar una clave pública RSA y encripta billones de mensajes con ella. No hay límite allí. RSA descifrado utiliza la clave privada. Si un atacante puede enviarle "mensajes" de su elección para que usted los descifre, y puede resolver la clave privada a partir de sus respuestas, eso se denomina ataque de texto cifrado elegido . Se supone que RSA debe resistir CCA.

En 1998, Bleichenbacher publicó un CCA contra RSA, como se define en PKCS # 1 (el " v1.5 relleno "). Es decir, si envía chatarra aleatoria a un motor de descifrado RSA, esa chatarra se convertirá en "descifrar correctamente" (relleno sintácticamente correcto) con una probabilidad de 1/65536 o menos; esta información es suficiente para recuperar la clave privada en aproximadamente un millón de solicitudes.

La rotación frecuente de la clave privada (por ejemplo, una vez cada 100000 usos) podría haber sido una respuesta, pero no es práctica porque una PC básica, utilizada como servidor SSL, puede usar su clave privada 100000 veces en mucho menos que una hora. En su lugar, los criptógrafos comenzaron a pensar y encontraron dos soluciones:

  • "Ocultar" la información sobre el éxito del descifrado. Esto es lo que hacen los servidores SSL: si el descifrado no produce un valor correcto, solo use uno aleatorio y continúe; El protocolo de enlace SSL fallará un par de mensajes más tarde. Esto evita el ataque porque el atacante no puede distinguir entre "el descifrado falló porque el relleno fue incorrecto" y "el descifrado se realizó correctamente y obtuvo un secreto maestro previo que el atacante no tiene".

  • Use un mejor relleno con una probabilidad de "éxito en la basura aleatoria" considerablemente más pequeña. Esto se llama relleno OAEP .

La línea inferior es: SI hay un número máximo de mensajes que puede procesar con RSA, más allá del cual la clave privada esté expuesta, ENTONCES haciendo mal.

Hablando de eso, los mantras usuales en la rotación de teclas para algoritmos simétricos son a menudo más evocador y una tradición tradicional medio olvidada que las medidas de seguridad racional. Como sugiere @CodesInChaos, AES fue diseñado con un tamaño de bloque de 128 bits precisamente para que se pueda usar en gigatones de datos sin perder la clave secreta.

    
respondido por el Tom Leek 12.02.2014 - 13:15
fuente
0

Solo quiero aclarar algunos detalles primero, un cifrado con 128 bits de longitud no es de 128 bits, AES tiene muchos ataques publicados que seguramente verifican que AES-128 no es un 128 bit fuerte. Incluso con un número mejorado de rondas, es seguro decir que AES -128 tiene una potencia de aproximadamente 64 bits. Otro problema al que te enfrentas con cualquier cifrado de bloque es que tu mensaje en sí, tienes que hablar un idioma, este lenguaje está estructurado, una gran colisión puede ocurrir y sucederá, si tienes un cifrado sin colisión y siempre envías un texto de "hola" en cada bloque con ECB sus datos están expuestos y pueden ser expuestos Ahora volviendo a mi problema aquí, en RSA el método de cifrado y descifrado es el mismo pero con claves diferentes, si la clave se puede calcular "parcialmente" después de un cifrado de número "clave pública" La clave privada también se puede calcular después de varias operaciones. Aunque la principal diferencia es que una firma utiliza la salida de hash que mejora la aleatoriedad de la entrada, aunque las funciones de hash regulares SHA sufre una debilidad en la extensión de la longitud, lo cual es particularmente importante cuando tomamos la firma ya que generalmente los datos firmados en RSA tienen una estructura específica. Otro problema que también tiene cualquier función hash es el ataque de cumpleaños,! Me preocupa simplemente el número de veces que se puede usar una clave RSA sin exposición.

    
respondido por el Ibrahim 13.02.2014 - 22:37
fuente

Lea otras preguntas en las etiquetas