Así que chicos, hay un montón de diferentes sistemas de cifrado disponibles, pero que es la más segura para el uso en la actualidad?

Lista: http://www.php.net/manual/en/mcrypt.ciphers.php

InformationsquelleAutor Industrial | 2010-05-11

7 Comentarios

  1. 46

    Si no estás seguro de utilizar AES (también conocido como «Rijndael») con una clave de 128 bits. Si usted ha desarrollado algún tipo de fetiche sobre el tamaño de la clave, entonces usted podría cumplir con su irracional reparos por la selección de una clave mayor, por ejemplo, 192 o 256 bits; el extra costo no es elevado (+40% de la carga de trabajo para AES-256, en comparación con AES-128, y tiene un muy muy rápido a la red a la realidad, observar que la diferencia).

    Ten en cuenta que, sin importar el tamaño de la clave elegida, la correcta mcrypt de cifrado AES es siempre MCRYPT_RIJNDAEL_128. Esto es debido a que el estándar AES se refiere a que el sabor de la de cifrado Rijndael con un bloque de 128-bits de tamaño. Si desea AES-256, usted necesita usar MCRYPT_RIJNDAEL_128 con una de 256 bits (32 bytes) clave, no MCRYPT_RIJNDAEL_256.

    AES fue publicado en 1998 y aprobado por el gobierno de estados unidos como un estándar federal en el año 2001, y no muestra ningún signo de debilidad en la actualidad. Algunas propiedades matemáticas fueron encontrados más tarde, pero no el impacto real de la seguridad; en su mayoría, ponen de relieve que tenemos algunos relativamente precisa de conocimientos sobre el por qué de AES es seguro. Ningún otro algoritmo de cifrado simétrico, ha recibido tanta atención (por miles de talentosos criptógrafos) de AES.

    La mayoría de los problemas de seguridad provienen de cómo el algoritmo de cifrado que se utiliza, no el propio algoritmo. El uso de un adecuado modo de encadenamiento, añadir un MAC, administrar el relleno, y la mayoría de manejar los claves de forma segura. Si tienes todas las de este derecho (que es mucho más complicado de lo que parece), se vuelve en el tiempo para preocuparte de elegir los Rijndael, Twofish o lo que sea.

    • ¿Qué se entiende por «correcto modo de encadenamiento y añadir un mac» Se está hablando sobre el encadenamiento de bloques de cifrado modo de variante de la CMAC? Porque probablemente hay sólo 2 personas por LO que saben lo que es. También usted no dice nada sobre el uso de una inyección INTRAVENOSA.
    • Un curso completo sobre cómo un sistema de cifrado de bloque debe ser utilizado superaría mi paciencia, y la de muchos lectores. El punto de mi mensaje es: 1. responder a la pregunta precisa que se le pidió, y: 2. para hacer que el solicitante se siente que el problema es complejo y no debe ser abordado a la ligera. El modo CBC con una muestra aleatoria de IV codificado con el mensaje cifrado, y HMAC, son «adecuados suficiente» en mi punto de vista. La CMAC es sólo una MAC; de un modo avanzado que combina el cifrado y MAC, búsqueda GCM (Galois/Modo de Contador).
    • Hay GCM ejemplos para mcrypt PHP?
    • Podrías elaborar más sobre «el cumplimiento de su irracional reparos por la selección de una clave mayor»? Si la clave de 128 bits fue suficiente para todo, entonces ¿por qué 192 y 256 existen?
    • Los 192 bits y 256 bits de tamaño de clave existen para el cumplimiento con regulaciones inflexibles en el Ejército de los estados unidos, que llame para tres «niveles de seguridad» para el sistema criptográfico (esto tenía sentido cuando estas regulaciones fueron escritos en la década de 1930, debido a que en la previa era de la informática, no sabíamos cómo hacer un sistema de encriptación que era a la vez muy eficiente y muy seguro al mismo tiempo).
    • Usted tendría objeto si he añadido una edición especificando que en mcrypt, sólo RINJDAEL_128 es AES independientemente de keysize?
    • mi huésped.

  2. 5

    Además de Thomas Pornin la gran respuesta, también debe tener en cuenta lo que usted está tratando de lograr en términos de «seguridad» (confidencialidad/integridad/autenticidad y disponibilidad).

    Para cada caso, que tendrá que responder un par de preguntas, como… Que afecta esto? Dónde y por qué se usa (lo que se protege)? ¿Cuánto tiempo debe durar? etc.

    Por ejemplo, probablemente no existe un punto en el que realmente el cifrado de los datos de la sesión con un completo soplado sucesión de 256 bits operaciones cuando los datos son realmente sólo destinado a durar para decir de 20 a 30 minutos. Un seguro de 128 bits algoritmo sería cerca de dos veces más rápido o utilizar al menos cargas menos ciclos de reloj y ser tan importante (si no más) seguras.

    También hay ningún punto en el cifrado de algo que está destinado a durar mucho tiempo (como un documento confidencial o archivo de clave privada, etc…), con un débil, corto el método de la clave. Te gustaría a veces varios algoritmos con algún tipo de autenticación y el uso adecuado de relleno. Regularmente he cifrado y firmado de contenido a petición de clientes, utilizando varios algoritmos (en su mayoría twofish, AES, RSA).

    Y no olvidar (como Thomas señaló), se puede implementar un método seguro (o métodos) de forma poco segura. Con la enorme cantidad de variantes de cada fórmula y el tal, puede ser difícil de aplicar en la práctica algo que es «seguro».

    General, algo que es tan segura como la clave para desbloquearlo. Si dejo las llaves de mi auto en el coche con el coche desbloqueado, las teclas no son seguros y está abierto para la toma de cualquier persona que pasa caminando. Blowfish con una buena dispersión de 32 caracteres de la clave sería tan seguro como cualquier otra cosa en la actualidad. Un 3 caracteres de la clave, sin embargo, podría ser roto en un abrir y cerrar de ojos.

  3. 3

    «El más fuerte algoritmo de cifrado AES-256»

    De detalles sobre Bruce Schneier sitio web, AES-256 podría ser, irónicamente, el menos seguro de los tres tamaños de clave de 128, 192, y 256. Hay problemas con la generación de la clave de 256 bits.

    • Incorrecto, para uso general como un sistema de cifrado, no hay vulnerabilidades específicas para AES-256. La clave relacionadas ataque es principalmente de importancia si AES es usado para construir por ejemplo, una función de hash seguro.
  4. 2

    Algunos algoritmos son mejores que otros en diferentes cosas – no está seguro de cuál es su criterio para la «más segura» es.

    Ciertamente, usted no debe utilizar ninguna de las DES de los algoritmos basados en estos días (suponiendo que haya una libre elección). AES (Rijndael) es el estándar actual para el NIST y otros órganos.

    En general, más bits para un algoritmo específico de los medios más seguros, pero no asegurarse de que utiliza un vector de inicialización y el NO uso del BCE.

    HTH

    C.

    • Hola, vector de inicialización – ¿puede decirme más acerca de eso?
    • RTFM? Hay mucho mejor documentación y en el internet que pude rellenar aquí.
    • +1 BCE modo es para los tontos. Aunque IV son los muertos fácil de usar, sólo tiene que asegurarse de que no hay 2 mensajes son encriptados usando el mismo IV y la misma clave, por lo que puede utilizar la clave principal de una tabla que desea cifrar.
  5. 2

    Según el NIST papel, RJINDAEL tenía un bajo margen de seguridad en comparación con MARTE, twofish o serpiente. Si usted realmente necesita el más fuerte de cifrado, seleccione uno de ellos.

    http://csrc.nist.gov/archive/aes/round2/r2report.pdf

    Citar:
    «MARTE parece tener un alto margen de seguridad. Una caracterización precisa de MARTE es
    difícil por el hecho de que MARTE emplea dos tipos de rondas. MARTE
    ha recibido algunas críticas basadas en su complejidad, que pueden haber obstaculizado su
    el análisis de la seguridad durante la vigencia de la AES proceso de desarrollo.

    Rijndael parece tener un adecuado margen de seguridad. El margen de seguridad es un poco
    difícil de medir debido a que el número de rondas de cambios con el tamaño de la clave. Rijndael
    ha recibido algunas críticas por dos motivos: que su margen de seguridad es en la parte baja
    entre los finalistas, y que su estructura matemática puede conducir a ataques. Sin embargo, su
    la estructura es bastante simple, lo que puede haber facilitado su análisis de seguridad durante la
    período de tiempo especificado de la AES proceso de desarrollo.

    Serpiente parece tener un alto margen de seguridad. La serpiente también tiene una estructura simple,
    que puede haber facilitado su análisis de seguridad durante el período de tiempo especificado de la
    AES proceso de desarrollo.

    Twofish parece tener un alto margen de seguridad. Desde Twofish utiliza la clave dependiente de la
    la función round, el concepto de margen de seguridad puede tener menos sentido para este algoritmo
    que para los otros finalistas. La dependencia de la Twofish S-cajas en solo k/2 bits de
    la entropía en el k-bit clave del caso ha llevado a la especulación de que Twofish pueden ser susceptibles de un
    divide y vencerás ataque, aunque no tal ataque se ha encontrado. Twofish ha recibido
    algunas críticas por su complejidad, haciendo análisis de difícil durante la vigencia de la
    AES proceso de desarrollo.»

  6. 1

    Si quieres ver los detalles, hay un artículo, principalmente por mí, en los cifrados en bloque en http://en.citizendium.org/wiki/Block_cipher

    Para cumplir con las actuales normas de los estados unidos, el uso de AES, antes de Rijndael. Cualquiera de los otros finalistas del concurso de AES — Serpiente, MARTE, Twofish o RC-6 — debe estar bien así. Creo que se necesita una licencia para RC6, aunque.

    • Qué hay de malo con cifrado de secuencias?
  7. 0

    Yo normalmente uso AES-128 desde AES FIPS aprobado. El más fuerte algoritmo de cifrado AES-256 (MCRYPT_RIJNDAEL_256).

    mcrypt tiene un diseño modular y el nuevo sistema de cifrado puede ser añadido fácilmente.

    • MCRYPT_RIJNDAEL_256 no es AES. Es la variante del algoritmo Rijndael, pero con un tamaño de bloque de 256 (de ahí el nombre), como contraposición a la AES, que es la variante de Rijndael con un tamaño de bloque de 128. Si desea AES, a continuación, utilizar MCRYPT_RIJNDAEL_128, y el suministro de una de 128, 192 o 256 bits de la clave.

Dejar respuesta

Please enter your comment!
Please enter your name here