CoderTools

Cifrado/Descifrado CAST5 (CAST-128)

Cifrado de bloque simétrico seguro con longitud de clave variable (40-128 bits)

Advertencia de seguridad

Esta herramienta es para fines educativos y de prueba. Para entornos de producción que requieren alta seguridad, considere usar AES-256 u otros algoritmos de cifrado modernos. Nunca comparta sus claves de cifrado.

CAST5 admite longitud de clave variable: 40-128 bits (5-16 bytes). Se recomienda clave de 128 bits para máxima seguridad.
Opciones de formato

Acerca del cifrado CAST5 (CAST-128)

CAST5 (también llamado CAST-128) fue diseñado por Carlisle Adams y Stafford Tavares en Nortel (Northern Telecom) y publicado como RFC 2144 en 1996. El nombre CAST viene de las iniciales de los diseñadores: Carlisle Adams Stafford Tavares. Usa bloques de 64 bits con longitudes de clave variables de 40 a 128 bits en pasos de 8 bits, y fue seleccionado como el cifrado simétrico obligatorio en OpenPGP (RFC 4880) y como el cifrado en bloque predeterminado en GnuPG 1.x hasta la versión 1.4.

CAST5 emplea tres funciones de ronda distintas — Tipo 1 (salida XOR), Tipo 2 (salida sustracción) y Tipo 3 (salida adición) — seleccionando diferentes pares de ocho S-boxes de 32 bits en un orden fijo a través de las rondas. Las claves de 80 bits o menos usan 12 rondas; las claves más largas usan 16. Las ocho S-boxes se construyeron usando funciones booleanas dobladas, dando a CAST5 límites de resistencia demostrables contra el criptoanálisis diferencial, establecidos formalmente en el diseño.

Características principales

  • Longitud de clave variable: 40–128 bits en pasos de 8 bits — soporta tanto el nivel de clave de 40 bits con restricción de exportación de EE. UU. de los años 1990 como la fuerza completa de 128 bits en un solo algoritmo
  • Tres funciones de ronda distintas (Tipo 1 XOR / Tipo 2 Resta / Tipo 3 Suma) que se alternan por ronda, cada una seleccionando un par diferente de las ocho S-boxes 32×8 bits
  • 12 rondas para claves ≤ 80 bits; 16 rondas para claves de 81–128 bits — compensación explícita del número de rondas para entropía de clave reducida
  • Algoritmo libre de regalías sin restricciones de patente

Modos de cifrado

  • CBC: Encadenamiento de bloques cifrados — cada bloque CAST5 de 64 bits se combina con XOR con el cifrado anterior antes de la secuencia de 12 o 16 funciones de ronda Feistel. Nota: OpenPGP (RFC 4880 §13.9) exige CFB-con-resync en lugar de CBC para cifrado masivo; CBC es el modo correcto cuando se usa CAST5 en contextos SSH2 (CAST128-CBC, RFC 4253).
  • ECB: Libro de códigos electrónico — cada bloque CAST5 de 64 bits es procesado independientemente por todas las 12 o 16 rondas. Bloques idénticos de texto plano siempre producen cifrado idéntico, revelando patrones de repetición. Con un ancho de bloque de 64 bits, una colisión de cumpleaños tiene 50% de probabilidad después de ~2³² bloques (~32 GB cifrados bajo una clave) — evitar ECB por completo.
  • CTR: Modo contador - Convierte el cifrado de bloques en cifrado de flujo, permite procesamiento paralelo
  • CFB: Retroalimentación de cifrado — el modo mandatado por OpenPGP (RFC 4880 §13.9): CAST5 en CFB de 64 bits con un paso de resincronización de dos bloques al inicio del mensaje. Este CFB-con-resync específico de OpenPGP permite a los destinatarios recuperar sincronización y detectar bloques iniciales manipulados.
  • OFB: Retroalimentación de salida — la función de bloque CAST5 re-cifra iterativamente el IV para generar un flujo de clave independiente del texto plano. Con un IV de 64 bits, el período estadístico del flujo de clave está limitado por el problema del cumpleaños a ~2³² ciclos; para flujos grandes o de larga duración, actualizar periódicamente el IV.
  • RAW: Modo de bloque único - Cifrado directo sin encadenamiento, solo para un bloque de 8 bytes

Comparación de algoritmos

Algoritmo Longitud de clave Tamaño de bloque Seguridad Velocidad
CAST5 (CAST-128) 40-128 bits 64 bits Buena Rápida
Blowfish 32-448 bits 64 bits Buena Rápida
AES 128/192/256 bits 128 bits Excelente Rápida
Twofish 128/192/256 bits 128 bits Excelente Rápida

Consideraciones de seguridad

  • No existe un ataque práctico de ronda completa contra CAST5-128; el mejor criptoanálisis publicado solo alcanza 6 de 16 rondas. Sin embargo, CAST5 con claves de 40 bits (grado exportación) es trivialmente roto por fuerza bruta — nunca usar claves menores de 128 bits en cualquier despliegue moderno.
  • El tamaño de bloque de 64 bits es la limitación principal de CAST5: en modo CBC o CFB, una fuga estadística de límite de cumpleaños aparece después de ~2³² bloques (~32 GB por clave). OpenPGP lo mitiga con claves de sesión por mensaje, pero los usos de streaming de larga duración requieren rotación de claves para grandes volúmenes.
  • OpenPGP (RFC 4880 §9.2) marca CAST5 como un algoritmo MUST-implement para compatibilidad con la base instalada de clientes GnuPG 1.x y PGP 8.x. Las nuevas implementaciones DEBERÍAN preferir AES-256 para mensajes recién generados — CAST5 es un requisito del lado receptor, no un predeterminado recomendado para nueva salida.
  • Para todos los nuevos diseños, reemplazar CAST5 con AES-128-CBC o AES-256-GCM. La limitación del bloque de 64 bits más que cualquier debilidad criptanalítica es el impulsor principal de la migración; CAST5-128 en sí permanece inrompible cuando se usa con claves suficientemente largas y gestión IV adecuada.

Casos de uso comunes

  • Compatibilidad de cifrado de correo y archivos OpenPGP: RFC 4880 §9.2 exige CAST5 en todas las implementaciones OpenPGP conformes, necesario para interoperabilidad con la base instalada de usuarios GnuPG 1.x y PGP 8.x que no han actualizado sus preferencias de cifrado
  • Cifrado simétrico GnuPG 1.x: GnuPG 1.0 a 1.4.x usaba CAST5 por defecto para cifrado de clave simétrica (frase de contraseña). Descifrar archivos o mensajes firmados de estas versiones GnuPG requiere CAST5, a menos que el remitente haya seleccionado explícitamente AES
  • Cifrado de transporte SSH2 CAST128-CBC: RFC 4253 define CAST128-CBC como cifrado SSH SHOULD-support. Los servidores SSH heredados y dispositivos embebidos con firmware limitado pueden todavía negociar CAST128-CBC si las suites AES no están disponibles
  • Descifrado forense y de archivo: correos cifrados PGP, imágenes de disco y conjuntos de respaldo de finales de los 1990s a mediados de los 2000s usan comúnmente CAST5. La recuperación de datos requiere CAST5 incluso si los sistemas actuales ya no generan nuevo contenido CAST5

Referencias

Menú Rápido

Sin herramientas recientes