Datos estadísticos sobre el rendimiento de varios algoritmos de cifrado

4

¿Cómo puedo encontrar datos estadísticos sobre el rendimiento de varios sistemas de encriptación, como RSA, DSA, ECC, etc.?

    
pregunta adyusuf 26.11.2011 - 13:13
fuente

2 respuestas

7

Encontrará una gran cantidad de datos en el sitio eBACS (en particular en la sección "eBATS" para criptografía asimétrica). Tenga en cuenta, sin embargo, que:

  • Este sitio agrega muchas medidas, por lo que todo es bastante abrumador.
  • El rendimiento depende no solo del algoritmo, sino también de los esfuerzos de optimización invertidos por quien haya escrito el código.
  • La optimización de bajo nivel depende en gran medida de los detalles del sistema de destino, por lo que puede observar variaciones semi-dramáticas al usar el mismo código en sistemas similares pero no idénticos (especialmente si el tamaño del código es cercano al tamaño de caché L1 ).
  • Acerca de todas las medidas de eBACS están en máquinas bastante "grandes", que pueden ejecutar el marco. Así que estos son PC, sistemas de escritorio y servidores. eBACS carece singularmente de medidas en sistemas más pequeños como ARM9 o procesadores Mips pequeños, como se encuentra en enrutadores domésticos, teléfonos móviles baratos y dispositivos similares. Y tampoco hay cifras sobre cosas más pequeñas (tarjetas inteligentes).
  • Si tiene un servidor que usa una clave privada para la generación de firmas o el descifrado asimétrico, y si es serio con respecto a la seguridad, almacenará la clave privada en un Hardware Security Module , que es un tipo de tarjeta inteligente inflada. La operación de la clave privada se realiza en el HSM y el rendimiento del sistema host (una PC) es totalmente irrelevante. El HSM utilizará un circuito diseñado específicamente para optimizar la operación, y ese circuito no reaccionará como una CPU genérica, en cuanto al rendimiento.

(Para el último punto, un ejemplo es la velocidad de las operaciones de curva elíptica en varios campos. La implementación basada en CPU, es decir, el software, será mucho más rápida con curvas en los campos primarios GF (p) que para curvas sobre campos binarios GF (2 m ) ; pero FPGA / ASIC dedicado lo contrario es cierto.)

Entonces, si bien puede tener una gran cantidad de cifras, tenga en cuenta que el problema de definir una medida de rendimiento general de talla única para un algoritmo criptográfico asimétrico, es difícil.

    
respondido por el Thomas Pornin 26.11.2011 - 15:11
fuente
7

Si está preguntando sobre el rendimiento de varios algoritmos de cifrado, puede obtener un buen punto de partida ejecutando openssl speed . Por ejemplo, aquí hay una salida de muestra de OpenSSL:

                  sign    verify    sign/s verify/s
rsa 1024 bits 0.000489s 0.000025s   2046.5  39673.9
rsa 2048 bits 0.003075s 0.000089s    325.3  11241.0
                  sign    verify    sign/s verify/s
dsa 1024 bits 0.000256s 0.000291s   3899.0   3435.1
dsa 2048 bits 0.000880s 0.001048s   1136.3    954.2

Puede ver que las operaciones de verificación de firma RSA y cifrado RSA son extremadamente rápidas (10K-40K operaciones / segundo, según el nivel de seguridad). La generación de firmas RSA y el descifrado RSA son más lentos (300-2K ops / seg). La generación de firmas DSA y la verificación de firmas se ejecutan aproximadamente a la misma velocidad (1K-3K ops / sec).

Este punto de referencia no muestra la criptografía ECC, pero en general, debe esperar que la criptografía ECC sea más rápida y produzca firmas / textos cifrados más cortos que DSA, para un nivel de seguridad determinado.

    
respondido por el D.W. 26.11.2011 - 14:13
fuente

Lea otras preguntas en las etiquetas