¿Qué algoritmo TrueCrypt es el más seguro?

83

Si el rendimiento no es motivo de preocupación, ¿qué algoritmo TrueCrypt es el más seguro de usar?

  • AES
  • Serpiente
  • Triple DES
  • Dos peces
  • AES-Twofish
  • Serpiente-Twofish AES
  • Serpiente-AES
  • Serpiente-Twofish-AES
  • Serpiente doble
Amir Rezaei
fuente
13
Todos son seguros, de lo contrario no estarían en el producto. Pero use AES, ya que es el estándar.
Ian Boyd el
13
Diría que, a menos que haya una agencia gubernamental después de usted, es más probable que la calidad de su contraseña sea un problema que el algoritmo de cifrado.
Col
3
Eso es tan raro; Podría haber jurado que el título preguntaba cuál es el más rápido . ಠ_ ఠ
Synetech

Respuestas:

37

Estos son los resultados de la votación en la ronda final del concurso AES:

Rijndael 86-10 = 76
Serpent 59-7   = 52
Twofish 31-21 = 10
RC6 23-37 = -14
MARS 13-83 = -70 

( http://csrc.nist.gov/archive/aes/round2/comments/20000523-msmid-2.pdf , vinculado a través de la serpiente truecrypt , lea también eso).

entonces, por una variedad de razones, Rijndael se convirtió en AES, que es el sucesor de DES (y 3DES).

y, solo porque apareció hoy en news.ycombinator.com, la historia de AES:

http://www.moserware.com/2009/09/stick-figure-guide-to-advanced.html

akira
fuente
62

Usando TrueCrypt 7.0a, el método más seguro de cifrado es: Use el cifrado en cascada AES-Twofish-Serpent con el método XTS. Use el algoritmo de hash Whirlpool. (SHA-512 está muy cerca del segundo lugar aquí ... es discutible ... Me estoy inclinando hacia Whirlpool porque SHA-512 ya está teniendo un sucesor desarrollado por temor a que se base en un SHA-1 más antiguo que tiene ha sido comprometido.) Lo MÁS IMPORTANTE es usar una contraseña MUY segura. Más de 20 a 30 caracteres, mayúsculas, minúsculas, números, símbolos. Utilice el comprobador de contraseñas en línea de Microsoft para una prueba de resistencia También puede usar Keyfiles para proteger aún más su contraseña.

Recomiendo el AES-Twofish-Serpent sobre el Serpent-Twofish-AES porque quieres que el cifrado más externo (AES sea la primera capa que necesitan romper) sea el más estándar en la industria. Ese es el más probado y verdadero y el más probado de todos. Además, si alguien supone que un archivo está encriptado con AES, no hay forma de ver que luego está encriptado con Twofish ... así que hacen todo este trabajo para romper el AES, solo para descubrir que Twofish se interpone en su camino ahora. Y luego, nuevamente después de Twofish, se encuentran con Serpent, que es la bestia más grande de todas (aunque es menos utilizada / probada que AES, todavía tiene un margen de seguridad mucho mayor que AES)

Si usa Keyfiles, le recomiendo que TrueCrypt cree 3 keyfiles para usted. Cree un archivo de claves para cada algoritmo hash que proporcionen. También puede agregar algunos archivos .jpg y algunos archivos .mp3. Sin embargo, me aseguraría de hacer que cada archivo de clave sea de solo lectura.

Sin embargo, esto probablemente sea excesivo.

Charles Hepburn II
fuente
2
Dices usar 20-30 caracteres, pero ¿no es exagerado? Incluso 10 caracteres en minúscula serían 26 ^ 10 = 141,167,095,653,376 combinaciones (4 millones de años en una verificación por segundo). ¿Más que suficiente, sin duda?
Dan W
12
@Dan W: A una verificación por segundo, seguramente. Sin embargo, aunque los métodos de hash varían mucho en rendimiento, el hardware de calidad del consumidor se acerca mucho más a probar miles de millones de contraseñas por segundo. Su contraseña de diez caracteres en minúscula se descifraría en cuestión de horas.
Marca Thomas el
77
Su justificación para el orden en cascada no tiene ningún sentido. Un atacante tendrá que atravesar cada capa (cada una con una clave independiente), independientemente de si AES es el primero o el último.
jjlin
15

Las cifras en cascada (AES-Twofish-Serpent, etc.) deberían ser las más seguras. Sus datos se cifran con un algoritmo, luego la salida de los mismos se cifra con el segundo algoritmo, cuya salida se cifra con el tercer algoritmo. Según la documentación de TrueCrypt , cada algoritmo usa una clave diferente, cada una derivada de su frase de contraseña.

Si se encuentra una vulnerabilidad en uno (o dos) de estos cifrados, sus datos aún deberían estar seguros, ya que un atacante aún no podría romper los cifrados restantes.

Chris Acheson
fuente
8
Me gustaría agregar que si solo se elige un cifrado, es probable que Serpent sea el más seguro, pero es significativamente más lento que AES (tenga en cuenta que la selección del gobierno del Estándar de cifrado avanzado implicó el rendimiento, no solo la seguridad).
bwDraco
5

Ya sea AES-Twofish-Serpent o Serpent-Twofish-AES. Pero el AES regular es suficiente.

Fantius
fuente
5

Rijndael ganó la competencia AES principalmente porque es la más rápida y fácil de implementar en hardware, no porque sea la más "segura". Twofish y Serpent generalmente se consideran más seguros, pero dado que son todos muy sólida, que es una afirmación muy subjetiva. Y, por supuesto, el cifrado con múltiples algoritmos será aún más "seguro", pero reducirá aún más la velocidad.

Una vez más, todos son sólidos como una roca, por lo que mi consejo sería ir con lo que sea más rápido en su máquina (generalmente AES).

BlueRaja - Danny Pflughoeft
fuente
1

He leído que encadenar algoritmos juntos puede resultar en una seguridad más débil debido al algoritmo utilizado para seguir uno con el otro.

Además, la eficiencia y la velocidad se verán afectadas si utiliza uno de los cifrados combinados.

Recomendaría Rijndael (AES) o Serpent y si quieres que sea seguro: el elemento más crucial es la clave, así que haz una clave muy larga con al menos uno de cada conjunto de mayúsculas y minúsculas, números y símbolos.

funkotron
fuente
1

Aunque existen algunos peligros al conectar en cascada múltiples cifrados, Truecrypt parece tratarlos de la mejor manera posible. No agrega ningún texto claro conocido a la salida del primer cifrado y utiliza claves independientes para cada uno, por lo que al encadenar los diferentes algoritmos debería aumentar la seguridad.

Sin embargo, me mantendría alejado de 3DES. Después de leer la página Truecrypt que enumera las opciones de algoritmo, ni siquiera enumera el triple DES, por lo que es posible que lo hayan eliminado recientemente.

pipTheGeek
fuente
3
Para aquellos interesados ​​en una discusión más profunda de los "peligros" en cascada de múltiples cifrados, consulte este tema: crypto.stackexchange.com/questions/6486/…
Tiago
Una gran responsabilidad de 3DES sería que es dolorosamente lenta en comparación con los cifrados más modernos, mientras que, en el mejor de los casos, ofrece una seguridad similar. (3DES puede llevarlo a 112 bits de seguridad debido a que se encuentra en los ataques intermedios, mientras que AES-128 actualmente lo acerca a 128 bits de seguridad con un rendimiento mucho mejor). Además, el uso de bloques de 64 bits por parte de DES responsabilidad debido a la difusión limitada posible con bloques más pequeños.
un CVn
0

Es posible que pueda usar una contraseña más corta si está usando archivos de claves, y si no está preocupado por los golpes de rendimiento, usar AES Twofish y Serpent causará mucho dolor de cabeza a aquellos que intentan ingresar al material encriptado. Pero tampoco pase por alto que también puede tomar un archivo encriptado y colocarlo dentro de un archivo encriptado más grande. De esta manera, puedes "permitir" a tus atacantes que miren el contenedor exterior y hacerles creer que tienen el contenedor completo. Cuando, de hecho, no tienen nada en absoluto. Siéntase libre de poner algo ligeramente sombreado en el archivo externo, pero nada que realmente pueda causarle problemas. Creo que una gran cantidad de fotos pornográficas encajaría muy bien en este proyecto de ley, aquí hay algo que alguien querría ocultar, y como tal, tiene una buena razón. El contenedor externo no revela que el contenedor interno exista. Coloque su material real dentro del contenedor interno. Aún mejor es hacer que el contenedor externo sea "débil" con una contraseña insuficiente y sin archivo de claves. Deje que sus atacantes piensen que rompieron su encriptación, y se encoja de hombros y diga: "Maldita sea, eres bueno, me tienes completamente en paz".

Gene Abshire
fuente
0

El mejor criptoanálisis público para cada uno, suponiendo variantes de 256 bits (mayor complejidad de tiempo es mejor, pero todo tipo de advertencias):

  • Rijndael: 2 ^ 254.4 complejidad de tiempo (ignorando los ataques clave relacionados que no estarían en cuestión aquí)
  • Serpiente: 12 rondas de 32, 2 ^ 228.8 complejidad de tiempo (pero requiere 2 ^ 118 textos claros conocidos)
  • Twofish: 6 rondas de 16 (pero requiere 2 ^ 51 textos claros elegidos)
  • 3DES: 2 ^ 118 (con 2 ^ 32 textos claros conocidos; tenga en cuenta que 3DES usa 168 bits, por lo que la fuerza bruta es 2 ^ 168 en lugar de 2 ^ 256)

Sin lugar a dudas, 3DES es el menos seguro, pero eso no lo hace necesariamente inseguro (salvo la preocupación habitual de puerta trasera no publicada). Sin embargo, lo evitaría. Todos los otros algoritmos generalmente se consideran seguros. Determinar la presencia de una puerta trasera colocada intencionalmente en cualquiera de ellos probablemente requiera que Snowden publique más documentos. Y, sinceramente, si alguno de los 3 principales tuviera una puerta trasera, sería una revelación absoluta. Dado su historial, personalmente estoy feliz de asumir que todavía son seguros.

Bob Aman
fuente
3DES con tres claves independientes (168 bits de material clave) es vulnerable a un ataque de encuentro en el medio, lo que significa que la seguridad efectiva es la de una clave de 112 bits. en.wikipedia.org/wiki/Triple_DES#Security
un CVn
0

En 2001, el Instituto Nacional de Estándares y Tecnología (NIST) lanzó el Estándar de cifrado avanzado (AES) y preseleccionó a cinco candidatos (a través de múltiples conferencias de candidatos) con algoritmos opuestos para representar el estándar. El cifrado de la Serpiente fue uno de ellos, obteniendo kudus de alta seguridad, pero finalmente se convirtió en finalista del cifrado de Rijndael. Si bien esto tuvo lugar hace unos años, ofrece una visión fascinante del cifrado electrónico de datos y las compensaciones entre rendimiento y seguridad. Curiosamente, el rendimiento ganó!

En comparación con los otros cinco candidatos, el cifrado Serpent tuvo el factor de seguridad más alto 3.56, que fue bastante bueno teniendo en cuenta el hecho de que el siguiente mejor fue el cifrado Twofish con un factor de seguridad de 2.67. Rijndael-256 tenía un factor de seguridad de 1.56

https://www.100tb.com/blog/security-performance-serpent-cipher-rijndael/

https://veracrypt.codeplex.com/wikipage?title=Serpent

skan
fuente
-1

Dado que no hay ataques conocidos contra AES que hagan factible el forzamiento de fuerza bruta (ref: https://en.wikipedia.org/wiki/Advanced_Encryption_Standard#Known_attacks ), a menos que espere que las agencias de 3 letras dediquen toda su potencia informática para el próximo milenio para romper su disco, AES es el camino a seguir. La última versión de TrueCrypt y sus horquillas admiten AES-NI, que en mi Core i7 3770 proporcionan un rendimiento de más de 2.5 GB / seg.

Su conexión a la dirección IP anunciada por este dominio utiliza el cifrado AES en la mayoría de los navegadores (aunque CloudFlare tiene la clave que ve su navegador y descifra y vuelve a cifrar sus datos antes de enviarlos a los servidores de StackExchange, por lo que no use su TrueCrypt / VeraCrypt / CipherShed contraseña para su contraseña de StackExchange porque si dichas agencias de 3 letras rompieran su disco, interceptarían su contraseña en el proxy CloudFlare y lo intentarían antes de intentar la fuerza bruta que nunca irá a trabajar).

William
fuente
-2

Le recomiendo que use el hash Whirlpool con estos algoritmos, ya que es el más fuerte.

Para los algoritmos de cifrado, debe usar una cascada. Recomiendo AES, Twofish, Serpent. AES es bastante débil (en comparación con otros algoritmos, pero es el más rápido) y es el estándar de la industria, por lo tanto, será efectivo como capa externa. Twofish es aún más fuerte y después de descifrar la capa AES, habrá otra capa (Twofish) que es aún más fuerte. La serpiente es la más fuerte y esta cascada es efectiva.

Información adicional: para las contraseñas, la NSA tiene una computadora cuántica que puede descifrar muy rápidamente. No confiaría en la NSA (diseñaron AES). Recomendaría un mínimo de 40 letras, minúsculas y mayúsculas, números, símbolos y sin palabras del diccionario o información personal (fechas de nacimiento, etc.) y podría usar archivos de claves. Si está en riesgo por un adversario, use las características de negación plausibles integradas en TrueCrypt.

Guerrero invicto786
fuente
No hay ataques conocidos de Quantum Computing en AES. Las computadoras cuánticas no son más rápidas que nuestras computadoras binarias. Solo son diferentes.
Mark Lopez
La NSA no diseñó AES. AES fue diseñado por un par de criptógrafos belgas bajo el nombre de Rijndael, revisado (y fuertemente golpeado) por criptógrafos de todo el mundo durante la competencia NIST AES, y estandarizado por NIST como AES después de que ganó la competencia en base a un conjunto de criterios muy conocidos públicamente . Si se va a involucrar en una fuente de papel de aluminio, por favor, al menos comprenda sus hechos. Además, AES no tiene nada que ver con las contraseñas.
un CVn
En cuanto a la negabilidad plausible, hay un argumento convincente de por qué eso no funcionará en la práctica en las preguntas frecuentes de Linux cryptsetup , sección 5.18 "¿Qué pasa con la negabilidad plausible?" que también toca en la sección 5.2 "¿Es inseguro LUKS? ¡Todos pueden ver que tengo datos cifrados!". En cierto sentido, es una variación de xkcd.com/538 (sí, un uso legítimo para un enlace xkcd).
un CVn
-2

AES

Rijndael (actualmente THE AES) es el mejor algoritmo.

Desde https://crypto.stackexchange.com/questions/24307/why-is-aes-unbreakable :

Primero, no se dice que AES sea irrompible, simplemente que ninguno de los ataques conocidos actualmente reduce el costo computacional a un punto donde es factible. El mejor ataque actual en AES-128 requiere 2 ^ 126.1 operaciones, si tuviéramos una computadora (o clúster) varios millones de veces más eficiente que cualquier computadora actual y pudiéramos operar en el límite termodinámico de Landauer, se necesitarían 234 petajulios solo para incrementar un contador a través de cada valor clave. Eso es aproximadamente la mitad del consumo anual de electricidad de Noruega. En realidad, calcular una ronda de AES requiere varias veces esa cantidad de energía.

Dos peces

De Wikipedia :

Twofish es un cifrado de bloque de clave simétrica con un tamaño de bloque de 128 bits y tamaños de clave de hasta 256 bits. Fue uno de los cinco finalistas del concurso Advanced Encryption Standard, pero no fue seleccionado para la estandarización. Twofish está relacionado con el cifrado de bloques anterior Blowfish.

Las características distintivas de Twofish son el uso de cuadros S precalculados dependientes de la clave y un programa de claves relativamente complejo. La mitad de una clave de n bits se usa como la clave de cifrado real y la otra mitad de la clave de n bits se usa para modificar el algoritmo de cifrado (cuadros S dependientes de la clave). Twofish toma prestados algunos elementos de otros diseños; por ejemplo, la transformación pseudo-Hadamard (PHT) de la familia de cifrados SAFER. Twofish tiene una estructura Feistel como DES. Twofish también emplea una matriz separable de distancia máxima.

En la mayoría de las plataformas de software, Twofish era un poco más lento que Rijndael (el algoritmo elegido para el Estándar de cifrado avanzado) para las claves de 128 bits, pero es algo más rápido para las claves de 256 bits.

Serpiente

De Wikipedia :

Serpent es un cifrado de bloque de clave simétrica que fue finalista en el concurso Advanced Encryption Standard (AES), donde ocupó el segundo lugar de Rijndael. Serpent fue diseñada por Ross Anderson, Eli Biham y Lars Knudsen.

Al igual que otras presentaciones de AES, Serpent tiene un tamaño de bloque de 128 bits y admite un tamaño de clave de 128, 192 o 256 bits. [2] El cifrado es una red de permutación de sustitución de 32 rondas que opera en un bloque de cuatro palabras de 32 bits. Cada ronda aplica una de ocho cajas S de 4 bits a 4 bits 32 veces en paralelo. Serpent fue diseñado para que todas las operaciones se puedan ejecutar en paralelo, utilizando segmentos de 32 bits. Esto maximiza el paralelismo, pero también permite el uso del extenso trabajo de criptoanálisis realizado en DES.

Serpent adoptó un enfoque conservador de la seguridad, optando por un amplio margen de seguridad: los diseñadores consideraron que 16 rondas eran suficientes contra los tipos de ataque conocidos, pero especificaron 32 rondas como seguro contra futuros descubrimientos en criptoanálisis. El informe oficial del NIST sobre la competencia AES clasificó a Serpent con un alto margen de seguridad junto con MARS y Twofish, en contraste con el margen de seguridad adecuado de RC6 y Rijndael (actualmente AES). En la votación final, Serpent tuvo el menor número de votos negativos entre los finalistas, pero obtuvo el segundo lugar en general porque Rijndael tuvo votos sustancialmente más positivos, el factor decisivo fue que Rijndael permitió una implementación de software mucho más eficiente.

SHA es mucho mejor que MDA, Whirpool, etc. Pero encontraron una manera de romper SHA. Ahí viene SHA-2 (HMAC). Nuevamente encontraron una manera de romperlo. Ahí viene SHA-3 (Kakee o algo así). Pero en TrueCrypt, VeraCrypt, CipherShed o TrueCryptNext no existen SHA-3 .--------------------------- Fuente: Cualquier lugar en mi memoria ;-)

AES-Twofish-Serpent + SHA-512 = MEJOR ALGORITMO Y HASH PARA TrueCrypt Y OTROS.

Gigabyte
fuente
-3

Después de una búsqueda rápida, diría AES 256 bits.

Evitaría Triple AES y Triple Blowfish. Ejecutar el mismo algoritmo varias veces puede resultar en menos seguridad que usar el algoritmo original una vez.

fuente

gulbrandr
fuente
1
Parece creíble como especulación, pero Triple DES ciertamente se ve reforzada por los múltiples pases. (A menos que el diseñador de la implementación subyacente cometa un error y haga "EK2 (DK1 (EK1 (texto sin formato)))" como Simon Singh hizo en su desafío de cifrado: P)
RJFalconer
55
1) Tu fuente es una broma. Una publicación aleatoria en el foro. 2) No hay razón para creer que el cifrado triple con diferentes claves debilitará el cifrado.
CodesInChaos