aes blowfish des tripledes

Comparación de DES, Triple DES, AES, cifrado blowfish para datos



tripledes (8)

¿Alguien tiene pros y contras juntos para comparar estos algoritmos de cifrado?


AES es el algoritmo estándar actualmente aceptado para usar (de ahí el nombre Advanced Encryption Standard ).

El resto no lo son


AES es un algoritmo criptográfico simétrico, mientras que RSA es un algoritmo criptográfico asimétrico (o clave pública). El cifrado y el descifrado se realizan con una sola clave en AES, mientras que usted usa claves separadas (claves públicas y privadas) en RSA. La intensidad de una clave AES de 128 bits es aproximadamente equivalente a la clave RSA de 2600 bits.


Aunque TripleDESCryptoServiceProvider es un método seguro y bueno, pero es demasiado lento. Si quiere referirse a MSDN obtendrá que le aconseje que use AES en lugar de TripleDES. Verifique el siguiente enlace: http://msdn.microsoft.com/en-us/library/system.security.cryptography.tripledescryptoserviceprovider.aspx verá esta atención en la sección de comentarios:

Nota Un algoritmo de cifrado simétrico más nuevo, Advanced Encryption Standard (AES), está disponible. Considere usar la clase AesCryptoServiceProvider en lugar de la clase TripleDESCryptoServiceProvider. Use TripleDESCryptoServiceProvider solo para compatibilidad con aplicaciones y datos heredados.

Buena suerte


Los métodos de cifrado descritos son cifrados simétricos de bloque de clave.

El estándar de encriptación de datos (DES) es el predecesor, encriptando datos en bloques de 64 bits usando una clave de 56 bits. Cada bloque está encriptado de forma aislada, que es una vulnerabilidad de seguridad.

Triple DES extiende la longitud de la clave de DES aplicando tres operaciones DES en cada bloque: un cifrado con la clave 0, un descifrado con la clave 1 y un cifrado con la clave 2. Estas claves pueden estar relacionadas.

DES y 3DES generalmente se encuentran al interactuar con productos y servicios comerciales heredados.

AES se considera el sucesor y el estándar moderno. http://en.wikipedia.org/wiki/Advanced_Encryption_Standard

Creo que se desaconseja el uso de Blowfish.

Es muy recomendable que no intente implementar su propia criptografía y, en su lugar, utilice una implementación de alto nivel como GPG para datos en reposo o SSL / TLS para datos en tránsito. Aquí hay un excelente y aleccionador video sobre vulnerabilidades de encriptación http://rdist.root.org/2009/08/06/google-tech-talk-on-common-crypto-flaws/


Todos estos esquemas, excepto AES y Blowfish, tienen vulnerabilidades conocidas y no deberían utilizarse.
Sin embargo, Blowfish ha sido reemplazado por Twofish .


Usa AES

En más detalles:

  • DES es el antiguo "estándar de cifrado de datos" de los años setenta. Su tamaño de clave es demasiado corto para una seguridad adecuada (56 bits efectivos, esto puede ser forzado por fuerza bruta, como se ha demostrado hace más de diez años ). Además, DES usa bloques de 64 bits, lo que plantea algunos problemas potenciales al cifrar varios gigabytes de datos con la misma clave (un gigabyte no es tan grande hoy en día).
  • 3DES es un truco para reutilizar las implementaciones DES, al poner en cascada tres instancias de DES (con distintas claves). Se cree que 3DES es seguro hasta al menos " 2 112 " de seguridad (que es bastante, y bastante lejos en el ámbito de "no se puede romper con la tecnología actual"). Pero es lento, especialmente en software (DES fue diseñado para una implementación de hardware eficiente, pero apesta en software, y 3DES consume tres veces más).
  • Blowfish es un cifrado de bloques propuesto por Bruce Schneier y implementado en algunos softwares. Blowfish puede usar llaves enormes y se cree seguro, excepto en lo que respecta a su tamaño de bloque, que es de 64 bits, al igual que DES y 3DES. Blowfish es eficiente en software, al menos en algunas plataformas de software (usa tablas de búsqueda dependientes de claves, por lo que el rendimiento depende de cómo la plataforma maneje la memoria y las memorias caché).
  • AES es el sucesor de DES como algoritmo de cifrado simétrico estándar para las organizaciones federales de los EE. UU. (Y también como estándar para casi todos los demás). AES acepta claves de 128, 192 o 256 bits (128 bits ya son muy irrompibles), utiliza bloques de 128 bits (por lo que no hay problema) y es eficiente tanto en software como en hardware. Fue seleccionado a través de una competencia abierta que involucró a cientos de criptógrafos durante varios años. Básicamente, no puedes tener más que eso.

Entonces, en caso de duda, use AES.

Tenga en cuenta que un cifrado de bloques es una caja que cifra "bloques" (fragmentos de datos de 128 bits con AES). Al encriptar un "mensaje" que puede ser más largo que 128 bits, el mensaje se debe dividir en bloques, y la forma real de hacer la división se llama modo de operación o "encadenamiento". El modo ingenuo (división simple) se llama BCE y tiene problemas. Usar un cifrado de bloques correctamente no es fácil, y es más importante que seleccionar entre, por ejemplo, AES o 3DES.


DES es el antiguo "estándar de cifrado de datos" de los años setenta.


DES AES Developed 1977 2000 Key Length 56 bits 128, 192, or 256 bits Cipher Type Symmetric Symmetric Block Size 64 bits 128 bits Security inadequate secure Performance Fast Slow