CoderTools

Herramienta de Cifrado/Descifrado RSA

Cifrado con clave pública, descifrado con clave privada, generación de claves y firma digital

Acerca del Cifrado RSA

RSA es un algoritmo de cifrado asimétrico inventado por Ron Rivest, Adi Shamir y Leonard Adleman en 1977. RSA es uno de los algoritmos de cifrado de clave pública más utilizados, aplicado en cifrado de datos, firmas digitales e intercambio de claves.

La seguridad de RSA se basa en la dificultad de factorizar enteros grandes. Usa un par de claves: una clave pública para cifrar y una clave privada para descifrar. La clave pública puede distribuirse abiertamente, mientras que la clave privada debe mantenerse secreta.

Características

  • Generación de par de claves: Soporta 1024, 2048, 4096 bits
  • Cifrado con clave pública: Cifrar datos sensibles con clave pública
  • Descifrado con clave privada: Descifrar datos con clave privada
  • Firma digital: Firmar mensajes con clave privada
  • Verificación de firma: Verificar autenticidad con clave pública
  • Múltiples algoritmos hash: SHA-1, SHA-256, SHA-384, SHA-512
  • Selección de modo de relleno: Soporta OAEP (recomendado) y PKCS#1 v1.5 (compatibilidad heredada)
  • Formatos múltiples: Entrada/salida soporta Texto, Base64, Hex y más

Selección de Tamaño de Clave

Elegir el tamaño de clave correcto es crucial para seguridad y rendimiento:

  • 1024-bit: 1024 bits: No recomendado para sistemas nuevos, puede ser roto en años
  • 2048-bit: 2048 bits: Mínimo actualmente recomendado, adecuado para la mayoría de aplicaciones
  • 4096-bit: 4096 bits: Mayor seguridad, pero cifrado/descifrado más lento

Modo de Relleno

Esta herramienta soporta dos modos de relleno RSA. Elija según los requisitos de seguridad y las necesidades de compatibilidad:

  • OAEP: Relleno de cifrado asimétrico óptimo, proporciona seguridad semántica y protege contra ataques de texto cifrado elegido. Recomendado para sistemas nuevos.
  • PKCS#1 v1.5: Modo de relleno heredado con vulnerabilidad conocida al ataque Bleichenbacher. Recomendado solo para compatibilidad con sistemas heredados.

Opciones de Formato

Esta herramienta soporta múltiples formatos de datos para una integración fácil con diferentes sistemas:

  • Texto: Entrada/salida directa de texto UTF-8, adecuada para cadenas de texto regulares
  • Base64: Formato codificado Base64, comúnmente usado para transmisión de red y almacenamiento de datos binarios
  • Hex: Formato hexadecimal, conveniente para visualizar y depurar datos binarios

Casos de Uso

  • Comunicación segura: Cifrar datos sensibles antes de transmitir
  • Firmas digitales: Verificar autenticidad e integridad de mensajes
  • Intercambio de claves: Intercambiar claves simétricas de forma segura
  • Autenticación de identidad: Verificar identidad del remitente
  • Licencias de software: Generar y verificar licencias

Recomendaciones de Seguridad

  • Use al menos 2048 bits para el tamaño de clave
  • Mantenga las claves privadas seguras, nunca las transmita por canales inseguros
  • Rote los pares de claves periódicamente
  • Considere 4096 bits para datos altamente sensibles
  • Use cifrado híbrido (RSA + simétrico) para datos grandes

Limitaciones de RSA

  • RSA solo puede cifrar datos de longitud limitada (depende del tamaño de clave y relleno)
  • El cifrado/descifrado RSA es mucho más lento que el cifrado simétrico
  • Generalmente se usa para cifrar claves simétricas, no datos grandes directamente

Referencias