Algoritmo de dos peces:
Twofish es un cifrado de bloque simétrico; Se utiliza una sola clave para el cifrado y descifrado. Twofish tiene un tamaño de bloque de 128 bits y acepta una clave de cualquier longitud de hasta 256 bits. (NIST requirió el algoritmo para aceptar claves de 128, 192 y 256 bits). Twofish es rápido tanto en CPU de 32 bits como de 8 bits (tarjetas inteligentes, chips integrados y similares) y en hardware. Y es flexible; se puede usar en aplicaciones de red donde las claves se cambian con frecuencia y en aplicaciones donde hay poca o ninguna RAM y ROM disponibles.
Twofish grita en las CPU de gama alta, y es lo suficientemente flexible para pequeñas CPU de tarjetas inteligentes. También funciona bien en hardware. Y hay varias compensaciones de rendimiento entre el tiempo de configuración de la clave y la velocidad de cifrado que lo hacen único entre los candidatos AES.
- Informática: ¿Cuál es el futuro de la investigación en algoritmos?
- ¿Es una buena idea aprender algoritmos antes de los conceptos de OOP en la programación de Python?
- ¿Cuáles son algunas implementaciones reales de algoritmos altamente utilizados o patrones de diseño que ha utilizado en el desarrollo web front-end?
- ¿Cuáles son los algoritmos gráficos 'imprescindibles' para un programador competitivo?
- Silicon Valley (serie de televisión): ¿Cuál es el ejemplo más cercano en la vida real al algoritmo de compresión de Pied Piper?
Ningún otro algoritmo tiene la misma flexibilidad en la implementación: la capacidad de cambiar el tiempo de configuración de la clave por la velocidad de cifrado, y ROM y RAM por la velocidad de cifrado. Estas opciones existen en CPU de 32 bits, CPU de 8 bits y hardware.
Y Twofish hace esto con un diseño conservador. Elegimos no modificar la red básica de Feistel. No utilizamos rotaciones dependientes de datos, multiplicaciones de 32 bits ni ninguna otra primitiva mal entendida. El programa clave está diseñado para resistir incluso los ataques más desagradables. Y le dimos al cifrado 16 rondas cuando solo pudimos romper cinco.