¿Qué tan fuerte es el impacto en el rendimiento de la firma cuando se utiliza RSA_AES_256_ECDH?

1

Para cifrar la comunicación web, uso SSL con una clave RSA con una longitud de 2048 bits, una clave AES con una longitud de 256 bits y el algoritmo ECDH para la negociación de las claves AES (o para intercambiar los parámetros DH) para calcular las claves de AES).

Según tengo entendido, el par de claves RSA solo se usa para firmar los mensajes para la negociación del secreto común para cifrar los datos de la aplicación con AES (265 bits). Derecho?

Mi pregunta: ¿Cuál de estos procedimientos tuvo el mayor impacto del rendimiento (cpu / ram) para cifrar una sesión de comunicación con ssl? ¿La firma del parámetro DH por RSA por longitud de clave? ¿O el cifrado AES? ¿Cómo es la proporción a la firma RSA por longitud de clave y cifrado AES por longitud de clave?

    
pregunta ftes 04.03.2015 - 15:19
fuente

1 respuesta

3

El costo de cifrar datos con AES es proporcional al tamaño de dichos datos. Si envía 2 terabytes de datos a través de su conexión SSL, cifrará 2 terabytes de datos y el costo de dicho cifrado hará que todo lo que pase con RSA empequeñezca. Por otro lado, si envía un solo byte a través de su conexión, los costos relacionados con el cifrado AES, naturalmente, serán insignificantes con respecto a RSA. Por lo tanto, no puede haber una respuesta absoluta a tu pregunta.

Todavía podemos decir lo siguiente:

  • A menos que esté desarrollando un código que se ejecute en una tarjeta inteligente, tanto RSA como AES tienen costos de RAM insignificantes.
  • AES-256 es teóricamente un 40% más lento que AES-128, pero existen otros costos (por ejemplo, los cálculos HMAC), por lo que se puede predecir que la diferencia en el rendimiento entre AES-256 y AES-128 será probablemente menor. Por otro lado, no hay una diferencia real en la seguridad entre AES-128 y AES-256; Sin embargo, AES-256 puede promocionar mejor su estatus de Alpha Male cuando trata con auditores y personal de marketing.
  • El tiempo de firma RSA es aproximadamente cúbico en el tamaño de la clave (es decir, una clave dos veces mayor significará ocho veces el costo de la CPU). Esto todavía depende de cómo funciona la implementación de RSA, y los costos asintóticos son siempre una aproximación. Es inútil ir más allá de 2048 bits, a menos que, una vez más, tenga que atraer a su harén para que lo envíe con su potente pantalla de una clave RSA de gran tamaño.
  • Las preguntas de rendimiento no existen in abstracto . El rendimiento debe ser medido . En una máquina real. Hasta que se tomen las medidas, no puede haber ningún problema de rendimiento, y discutir el rendimiento es solo una forma de pasar tiempo en reuniones en lugar de realmente, ya sabes, trabajar.
respondido por el Thomas Pornin 04.03.2015 - 15:36
fuente

Lea otras preguntas en las etiquetas