Twofish es un cifrador de bloques de clave simétrica diseñado por Bruce Schneier y su equipo en 1998 como sucesor de Blowfish. Cifra datos en bloques de 128 bits con claves de 128, 192 o 256 bits, y fue uno de los cinco finalistas en el concurso del NIST para seleccionar AES. Twofish no está patentado, es de uso gratuito y aún se considera seguro.
Twofish es un cifrador de bloques de clave simétrica creado por Bruce Schneier y su equipo como sucesor de Blowfish. Cifra datos en bloques de 128 bits utilizando claves de 128, 192 o 256 bits, y fue uno de los cinco finalistas en el concurso del NIST para elegir el Estándar de Cifrado Avanzado ( AES ). Aunque Rijndael ganó y se convirtió en AES, Twofish sigue siendo invulnerable y seguro. No está patentado y su uso es gratuito.
Puntos Clave
- Twofish es un cifrado de bloques de clave simétrica (bloque de 128 bits; claves de 128, 192 o 256 bits) diseñado por Bruce Schneier y su equipo.
- Sucedió a Blowfish y fue uno de los cinco finalistas de la AES; Rijndael ganó y se convirtió en AES en 2001.
- Twofish no está patentado, es de uso libre y de dominio público, por lo que cualquiera puede usarlo sin pagar regalías.
- Todavía se considera seguro: no existe ningún ataque práctico contra el cifrado completo, aunque se utiliza mucho menos que AES.
- Como cifrado simétrico, Twofish es resistente a la computación cuántica: el algoritmo de Grover solo reduce a la mitad su seguridad, por lo que Twofish-256 mantiene una seguridad de aproximadamente 128 bits contra ataques cuánticos.
¿Qué es Twofish?
Twofish es un cifrador de bloques de clave simétrica , lo que significa que la misma clave cifra y descifra, y procesa datos en bloques de tamaño fijo. Fue desarrollado por Bruce Schneier y un equipo de Counterpane como sucesor del anterior cifrador Blowfish, en respuesta a la necesidad de reemplazar el obsoleto Estándar de Cifrado de Datos (DES). En 1997, el NIST lanzó un concurso abierto para seleccionar un reemplazo moderno para DES, respondiendo así a las críticas de que DES se había diseñado a puerta cerrada.
Los criterios del NIST exigían un cifrado de bloques de 128 bits que admitiera longitudes de clave de 128 a 256 bits, sin claves débiles, un diseño limpio y fácil de analizar, y un buen rendimiento en una amplia gama de plataformas, incluidos dispositivos de bajo consumo. Twofish cumplió con todos estos requisitos, utilizando una estructura Feistel de 16 rondas con cajas de sustitución dependientes de la clave (cajas S). Se convirtió en uno de los cinco finalistas, junto con Rijndael, Serpent, RC6 y MARS. El NIST seleccionó a Rijndael como AES en 2000 (estandarizado en 2001), pero Twofish era ampliamente reconocido por su sólido margen de seguridad.
Twofish es de uso gratuito.
A diferencia de otros algoritmos de cifrado, Twofish fue deliberadamente puesto a disposición del público por sus creadores. No está patentado, es de uso libre y no conlleva regalías ni restricciones de uso. Esto fue una ventaja durante la competición AES y lo sigue siendo hoy: cualquier desarrollador o producto puede implementar Twofish libremente. (El artículo anterior mencionaba la posible "advertencia legal" como una desventaja, pero no hay ninguna patente de la que preocuparse, ya que Twofish siempre ha sido gratuito).
¿Es seguro Twofish?
Sí. Twofish sigue considerándose un cifrado seguro. En las décadas transcurridas desde su lanzamiento, no se ha encontrado ningún ataque criptoanalítico práctico contra el algoritmo completo de 16 rondas. Los resultados teóricos existentes se aplican únicamente a variantes con menos rondas o a condiciones específicas y no representan una amenaza para su uso en el mundo real. Su amplio margen de seguridad fue una de las razones por las que llegó a la ronda final de AES. Dicho esto, no está exento de consideraciones prácticas:
- Ataques de canal lateral: Como ocurre con la mayoría de los cifrados, una implementación descuidada puede filtrar información mediante análisis de temporización o consumo de energía. Este es un problema de implementación, no un fallo del algoritmo, y se mitiga mediante codificación de tiempo constante y resistente a ataques de canal lateral.
- Complejidad de implementación: Las cajas S dependientes de la clave y la estructura Feistel de Twofish hacen que su implementación correcta sea más compleja que la de otros cifrados, por lo que es importante contar con un código cuidadoso y bien revisado.
- Rendimiento y adopción: Twofish funciona bien tanto en software como en hardware, pero las CPU modernas incluyen aceleración AES dedicada (AES-NI), de la que Twofish no se beneficia, por lo que AES suele ser más rápido en la práctica. Esto, sumado a la creciente estandarización de AES, explica por qué Twofish está mucho menos extendido.
En resumen, Twofish es seguro, pero de nicho. Aparece en herramientas como GnuPG (OpenPGP) y software de cifrado de disco como VeraCrypt, donde se ofrece como una alternativa sólida o un complemento a AES, pero nunca alcanzó la ubicuidad de AES.
Twofish contra AES
Dado que Twofish y AES (Rijndael) compitieron directamente, la pregunta natural es cómo se comparan:
| Aspecto | Twofish | AES (Rijndael) |
| Tipo | Cifrado de bloque simétrico | Cifrado de bloque simétrico |
| Tamaño de bloque | 128 bits | 128 bits |
| Tamaños de clave | 128, 192, 256 bits | 128, 192, 256 bits |
| Estructura | Cajas S Feistel de 16 rondas, dependientes de la llave | Red de sustitución-permutación |
| Normalización | Finalista de AES (no seleccionado) | Seleccionado como AES (FIPS 197, 2001) |
| Aceleracion de hardware | Ninguno integrado en las CPU | AES-NI en procesadores modernos (mucho más rápido) |
| Adopción | Nicho (GnuPG, VeraCrypt) | Estándar global, casi universal. |
| Estado de seguridad | Seguro, sin rotura práctica | Seguro, sin rotura práctica |
Ambos son algoritmos de cifrado robustos e inquebrantables, con el mismo tamaño de bloque y clave. La diferencia práctica radica en el ecosistema: AES es el estándar, cuenta con soporte universal y se ejecuta más rápido gracias a la aceleración de la CPU, por lo que es la opción predeterminada. Twofish sigue siendo una alternativa sólida y gratuita.
¿Es Twofish seguro frente a la computación cuántica? Perspectivas para 2026.
Twofish se encuentra en una posición sólida para la era cuántica, por la misma razón que AES. Como cifrado simétrico, no se ve amenazado por el algoritmo de Shor, que rompe algoritmos de clave pública como RSA y ECC pero no se aplica al cifrado simétrico. El único ataque cuántico relevante es el algoritmo de Grover, que acelera la búsqueda de claves por fuerza bruta, reduciendo a la mitad la seguridad de la clave de un cifrado. En la práctica, esto significa que Twofish con una clave de 256 bits conserva aproximadamente 128 bits de seguridad incluso frente a una futura computadora cuántica, lo que se considera seguro. Así pues, mientras que la transición postcuántica afecta urgentemente a la criptografía de clave pública (donde el NIST finalizó ML-KEM, ML-DSA y SLH-DSA en 2024, y planea retirar RSA y ECC entre 2030 y 2035), los cifrados simétricos robustos como Twofish-256 y AES-256 siguen siendo resistentes a la computación cuántica y no necesitan ser reemplazados. La principal recomendación es simplemente usar una clave de 256 bits.
Cómo ayuda la consultoría de cifrado
Ya sea que utilice AES, Twofish o una combinación de algoritmos, lo importante es saber qué se implementa, dónde y si está configurado de forma segura. Los Servicios de Asesoramiento en Cifrado de Encryption Consulting evalúan su postura criptográfica, inventarian los algoritmos y tamaños de clave en uso, identifican configuraciones o implementaciones débiles y alinean todo con estándares como NIST y FIPS 140-3, incluyendo la planificación para la transición post-cuántica de su criptografía de clave pública. Respaldados por las prácticas certificadas ISO/IEC 27001:2022 y SOC 2.
Preguntas frecuentes
¿Qué es Twofish?
Twofish es un cifrador de bloques de clave simétrica diseñado por Bruce Schneier y su equipo como sucesor de Blowfish. Cifra datos en bloques de 128 bits utilizando claves de 128, 192 o 256 bits, basado en una estructura Feistel de 16 rondas con cajas de sustitución dependientes de la clave. Twofish fue uno de los cinco finalistas en el concurso del NIST para seleccionar el Estándar de Cifrado Avanzado (AES). No está patentado, es de uso gratuito y aún se considera seguro, aunque su uso es mucho menos extendido que el de AES.
¿Es seguro Twofish?
Sí. Twofish sigue considerándose seguro. En las décadas transcurridas desde su lanzamiento, no se ha encontrado ningún ataque criptoanalítico práctico contra el cifrado completo de 16 rondas. Los resultados teóricos existentes solo se aplican a versiones con rondas reducidas y no afectan su uso en la práctica. Su amplio margen de seguridad le permitió alcanzar la ronda final de AES. Las principales consideraciones prácticas son la calidad de la implementación (evitar fugas de canal lateral) y el rendimiento, ya que las CPU modernas aceleran AES, pero no Twofish.
¿Por qué Twofish perdió contra AES?
Twofish fue uno de los cinco finalistas de AES, pero el NIST seleccionó a Rijndael, que se convirtió en AES, en el año 2000. La decisión no se debió a la inseguridad de Twofish; todos los finalistas eran robustos. Rijndael fue elegido principalmente por su combinación de seguridad, velocidad y simplicidad en una amplia gama de hardware y software. Twofish es algo más complejo de implementar, y después de que AES se convirtiera en el estándar, las CPU incorporaron aceleración AES dedicada, lo que consolidó a AES como el estándar predeterminado más rápido y con mayor soporte.
¿Para qué se utiliza Twofish?
Twofish se utiliza como una alternativa robusta y gratuita a AES en diversas herramientas de seguridad. Aparece en GnuPG (la implementación de OpenPGP) y en software de cifrado de disco como VeraCrypt, a veces combinado con otros algoritmos de cifrado para mayor seguridad. Al no estar patentado ni ser de pago, los desarrolladores pueden implementarlo sin preocuparse por las licencias. Sin embargo, es un algoritmo de nicho en comparación con AES, que predomina por ser el estándar y beneficiarse de la aceleración por hardware.
¿Es Twofish mejor que AES?
Ninguno es claramente superior; ambos son cifrados de bloques seguros e inquebrantables con el mismo bloque de 128 bits y tamaños de clave de 128, 192 o 256 bits. AES es el estándar global, es compatible en casi todas partes y se ejecuta más rápido porque las CPU modernas incluyen aceleración de hardware AES, lo que lo convierte en la opción predeterminada en la práctica. Twofish es una alternativa igualmente robusta, sin patente y de libre acceso, pero su uso es mucho menos extendido y carece de aceleración de hardware, por lo que AES suele ser la mejor opción práctica.
¿Es Twofish seguro frente a la computación cuántica?
En general, sí. Como cifrado simétrico, Twofish no se ve amenazado por el algoritmo de Shor, que rompe algoritmos de clave pública como RSA y ECC, pero no se aplica al cifrado simétrico. El único ataque cuántico relevante es el algoritmo de Grover, que reduce a la mitad la seguridad efectiva de la clave, por lo que Twofish con una clave de 256 bits conserva aproximadamente 128 bits de seguridad frente a una computadora cuántica, lo cual se considera seguro. El uso de una clave de 256 bits mantiene a Twofish resistente a la computación cuántica, al igual que ocurre con AES.
Obtén claridad sobre tu cifrado
Ya sea que utilice AES, Twofish o ambos, lo importante es saber qué sistemas están implementados y si están preparados para la computación cuántica. Explore los Servicios de Asesoría en Cifrado de Encryption Consulting para inventariar su criptografía y crear una hoja de ruta hacia la preparación para la era post-cuántica.
