CoderTools

Cifrado/Descifrado Familia RC

Cifrados simétricos RC2/RC4/RC5/RC6 diseñados por Ron Rivest

⚠️ Aviso de seguridad

RC4 tiene vulnerabilidades conocidas y ha sido deprecado de TLS/SSL. Para máxima seguridad, considere usar AES-256. Todos los datos se procesan localmente en su navegador.

Longitud de clave RC2: 1-128 bytes. Tamaño de bloque: 64 bits. Bits de clave efectivos recomendados: 128
Opciones de formato

Acerca de la familia RC

La familia de cifrados RC fue diseñada por Ron Rivest en MIT y RSA Security. 'RC' originalmente significaba 'Rivest Cipher' o 'Ron's Code'. La familia incluye RC2, RC4, RC5 y RC6, cada uno con características distintas.

RC2 es un cifrado de bloque de 64 bits de 1987. RC4 es un cifrado de flujo que fue ampliamente usado en SSL/TLS y WEP. RC5 introdujo una estructura parametrizable innovadora. RC6 fue diseñado como candidato AES, extendiendo RC5 con multiplicación de enteros para mejor difusión.

Comparación de algoritmos

Algoritmo Tipo Longitud de clave Tamaño de bloque Seguridad Estado
RC2 Cifrado de bloque 1-128 bytes 64 bits Débil Deprecado
RC4 Cifrado de flujo 1-256 bytes N/A (flujo) Débil Deprecado
RC5 Cifrado de bloque 0-255 bytes 32/64/128 bits Bueno Seguro
RC6 Cifrado de bloque 16/24/32 bytes 128 bits Excelente Finalista AES

RC2 (Rivest Cipher 2)

RC2 es un cifrado de bloque de 64 bits diseñado en 1987. Utiliza una clave de longitud variable (1-128 bytes) y tiene un parámetro único de 'bits de clave efectivos' que puede limitar el espacio de búsqueda de claves.

Originalmente diseñado como secreto, RC2 estaba destinado a la compatibilidad de exportación con longitud de clave efectiva de 40 bits. Debido a vulnerabilidades conocidas, solo debe usarse para compatibilidad con sistemas heredados.

RC4 (Rivest Cipher 4)

RC4 es un cifrado de flujo diseñado en 1987. Genera un flujo pseudoaleatorio de bytes (flujo de claves) que se XORea con el texto plano. Conocido por su simplicidad y velocidad, fue ampliamente usado en protocolos SSL/TLS, WEP y WPA.

Debido a las vulnerabilidades descubiertas (especialmente en los primeros bytes del flujo de claves), RC4 ha sido deprecado de los protocolos de seguridad modernos. La variante 'RC4-Drop' descarta los bytes iniciales del flujo de claves para mitigar estos problemas.

RC5 (Rivest Cipher 5)

RC5, publicado en 1994, introdujo un diseño parametrizable con tres variables: tamaño de palabra (w), número de rondas (r) y longitud de clave (b). Esta flexibilidad permite adaptar RC5 a diferentes requisitos de seguridad.

RC5 usa rotaciones dependientes de datos como su principal operación no lineal, haciéndolo simple pero efectivo. Las configuraciones comunes incluyen RC5-32/12/16 (palabras de 32 bits, 12 rondas, clave de 16 bytes).

RC6 (Rivest Cipher 6)

RC6 fue presentado como candidato AES en 1998 y fue uno de los cinco finalistas. Extiende RC5 con multiplicación de enteros para mejor difusión y usa cuatro registros de trabajo en lugar de dos.

Con un tamaño de bloque fijo de 128 bits y soporte para claves de 128/192/256 bits, RC6 proporciona excelente seguridad. Aunque Rijndael fue seleccionado como AES, RC6 permanece como un algoritmo respetado y seguro.

Características principales

  • RC2: Cifrado de bloque heredado con longitud de clave variable, solo para compatibilidad
  • RC4: Cifrado de flujo extremadamente rápido, ideal para aplicaciones en tiempo real
  • RC5: Diseño parametrizable permitiendo compromisos flexibles de seguridad/rendimiento
  • RC6: Cifrado de bloque moderno con fuertes garantías de seguridad
  • Todos los algoritmos son libres de patentes y están disponibles gratuitamente para cualquier uso

Modos de cifrado (RC5/RC6)

  • CBC: Encadenamiento de bloques - Cada bloque se XORea con el bloque cifrado anterior. Recomendado para la mayoría de casos.
  • ECB: Libro de códigos - Cada bloque se cifra independientemente. No recomendado para datos sensibles.
  • CFB: Retroalimentación de cifrado - Convierte el cifrado de bloque en cifrado de flujo. Auto-sincronizante.
  • OFB: Retroalimentación de salida - Genera el flujo de claves independientemente. Sin propagación de errores.

Consideraciones de seguridad

  • RC4 NO debe usarse para nuevas aplicaciones debido a vulnerabilidades conocidas
  • RC4-Drop (descartar los primeros 768-3072 bytes) mitiga algunos ataques pero no se recomienda
  • RC5 con suficientes rondas (12+) y longitud de clave (128+ bits) se considera seguro
  • RC6 proporciona excelente seguridad comparable a AES

Casos de uso

  • Compatibilidad y migración de sistemas heredados
  • Fines educativos y de investigación
  • Sistemas embebidos con RC5 (implementación simple)
  • Aplicaciones de alta seguridad con RC6

Referencias