RSA Cifrar y Descifrar

Herramienta gratuita de RSA Cifrar y Descifrar en línea. Procesamiento 100% local — tus datos nunca salen de tu dispositivo.

National Standards
Other
Salida

El resultado se mostrará aquí...

Entrada Cifrar

Usage Guide

Acerca de RSA

RSA (Rivest–Shamir–Adleman) es el algoritmo de cifrado asimétrico más ampliamente utilizado, inventado en 1977. Utiliza un par de claves matemáticamente vinculadas: una clave pública para el cifrado y una clave privada para el descifrado. La seguridad se basa en la dificultad computacional de factorizar enteros grandes. RSA es la base de las comunicaciones seguras modernas: los certificados SSL/TLS, HTTPS, SSH, PGP y las firmas digitales dependen de RSA o sus variantes.

Cifrado Asimétrico: A diferencia de los algoritmos simétricos (p. ej., AES), RSA utiliza claves diferentes para el cifrado y el descifrado. Puede compartir libremente la clave pública: solo el titular de la clave privada puede descifrar los mensajes cifrados con ella.

Pasos de Uso

Esta herramienta admite la generación de pares de claves RSA, cifrado y descifrado:

1. Seleccionar Tamaño de ClaveElegir el tamaño de clave (se recomienda 2048; 4096 para alta seguridad). Las claves más grandes son más seguras pero más lentas.
2. Generar Par de ClavesHacer clic en 'Generar Par de Claves' para crear un par de clave pública/privada. Ambas claves se exportan en formato PEM.
3. Guardar ClavesCopiar y guardar de forma segura ambas claves. La clave privada debe mantenerse en secreto: perderla significa una incapacidad permanente para descifrar.
4. CifrarPegar la clave pública, ingresar el mensaje en texto plano, hacer clic en 'Cifrar'. La salida es un texto cifrado codificado en Base64.
5. DescifrarPegar la clave privada, pegar el texto cifrado en Base64 en el campo de entrada, hacer clic en 'Descifrar' para recuperar el texto plano.
Protección de Privacidad: Todas las operaciones de generación de claves y criptografía se ejecutan completamente en su navegador. Ninguna clave ni texto plano se envía jamás a un servidor.

Esquemas de Relleno

RSA requiere un esquema de relleno para ser seguro. Esta herramienta admite dos opciones:

OAEP (Recomendado)Optimal Asymmetric Encryption Padding con SHA-256. El estándar moderno: probabilístico, semánticamente seguro y resistente a ataques de texto cifrado elegido. Use OAEP para todos los proyectos nuevos.
PKCS1v15 (Legado)Relleno PKCS #1 v1.5. Ampliamente compatible con sistemas más antiguos, pero vulnerable al ataque adaptativo de texto cifrado elegido de Bleichenbacher. Úselo solo para compatibilidad con sistemas heredados.
Advertencia de Seguridad: Siempre prefiera el relleno OAEP para nuevas implementaciones. PKCS1v15 se considera heredado y es vulnerable al ataque de Bleichenbacher.

Guía de Tamaño de Clave

Elegir el tamaño correcto de clave RSA es un equilibrio entre seguridad y rendimiento:

1024 bits (Débil)Ya no se considera seguro. Rompible con recursos informáticos modernos. No utilizar para ningún sistema nuevo.
2048 bits (Mínimo)El mínimo industrial actual recomendado por NIST y las principales CAs. Suficiente para la mayoría de las aplicaciones hasta ~2030.
3072 bits (Fuerte)Recomendado para sistemas que requieren seguridad más allá de 2030. Coincide con el nivel de seguridad de AES-128.
4096 bits (Alta Seguridad)Coincide con el nivel de seguridad de AES-192. Adecuado para claves de larga duración (p. ej., certificados de CA raíz) pero notablemente más lento.
Recomendación Práctica: Use 2048 bits para uso cotidiano y claves de corto plazo. Use 4096 bits para autoridades de certificación raíz o claves destinadas a permanecer válidas durante muchos años.

FAQ

Q: ¿Por qué RSA no puede cifrar archivos grandes directamente?

A: RSA solo puede cifrar datos más pequeños que su tamaño de clave menos la sobrecarga de relleno. Para una clave de 2048 bits con OAEP-SHA256, el texto plano máximo es solo 190 bytes. Para datos grandes, use cifrado híbrido: genere una clave AES aleatoria, cifre los datos con AES, luego cifre solo la clave AES con RSA.

Q: ¿Cuál es la diferencia entre el cifrado RSA y las firmas digitales RSA?

A: Cifrado RSA: Cifrar con la clave pública del destinatario; solo la clave privada puede descifrar. Garantiza confidencialidad. Firma Digital RSA: Firmar con la propia clave privada; cualquiera con la clave pública puede verificar. Garantiza autenticidad y no repudio.

Q: ¿En qué formato se exportan las claves?

A: Esta herramienta exporta claves en formato PEM estándar:
Clave privada: PKCS#8 (-----BEGIN PRIVATE KEY-----)
Clave pública: SPKI (-----BEGIN PUBLIC KEY-----)
Estos formatos son directamente importables por OpenSSL, Node.js crypto, Python cryptography, Java y la mayoría de las demás plataformas.

Q: ¿Es seguro compartir la clave pública públicamente?

A: Sí, ese es el punto central de la criptografía asimétrica. La clave pública está diseñada para distribuirse libremente. Sin embargo: 1) Nunca comparta la clave privada. 2) Verifique la autenticidad de la clave pública a través de un canal confiable para prevenir la sustitución por hombre en el medio. 3) Rote los pares de claves periódicamente.

Q: ¿Cuándo debo usar RSA vs AES?

A: RSA es para intercambio de claves y pequeños secretos: lento, tamaño de texto plano limitado. AES es para cifrado masivo de datos: rápido, maneja cualquier tamaño. Úselos juntos: RSA para transmitir una clave AES, AES para cifrar los datos.

Q: ¿Qué es el ataque de Bleichenbacher y por qué importa?

A: El ataque de Bleichenbacher (1998) es un ataque adaptativo de texto cifrado elegido contra el relleno PKCS1v15. Un atacante puede eventualmente recuperar el texto plano sin la clave privada. Muchas implementaciones TLS del mundo real han sido vulnerables a variantes de este ataque (ataque ROBOT, 2017). El relleno OAEP es demostrablemente seguro contra esta clase de ataque.

Use Cases

Recomendado: Cifrado Híbrido con AES

Genere una clave AES-256-GCM aleatoria, cifre el contenido con AES, luego cifre la clave AES con la clave pública RSA del destinatario. Este es el patrón utilizado por TLS, PGP y S/MIME.

Recommended Configuration:
  • ✅ RSA-OAEP (SHA-256) para cifrar la clave AES
  • ✅ AES-256-GCM para cifrar los datos
  • ✅ RSA mínimo de 2048 bits; 4096 bits para claves de larga duración
  • ❌ No cifrar datos grandes directamente con RSA
Recomendado: Transmisión Segura de Secretos

RSA es adecuado para transmitir pequeños secretos — contraseñas, tokens, claves simétricas — a través de canales no confiables. Use relleno OAEP y al menos una clave de 2048 bits.

Recommended Configuration:
  • ✅ Relleno OAEP-SHA256 (recomendado)
  • ✅ Tamaño de clave de 2048 bits o 4096 bits
  • ✅ Verificar la autenticidad de la clave pública (certificado o huella digital)
  • 💡 Mantener los secretos por debajo de 190 bytes para OAEP-SHA256 de 2048 bits
Recomendado: Intercambio de Claves SSL/TLS (Informativo)

TLS 1.2 usaba RSA para el intercambio de claves. TLS 1.3 reemplazó el intercambio de claves RSA con ECDHE para la confidencialidad directa, pero los certificados RSA todavía se usan para la autenticación del servidor.

Recommended Configuration:
  • ✅ Mínimo 2048 bits para certificados TLS
  • ✅ 4096 bits para certificados de CA raíz
  • ✅ Se prefiere TLS 1.3 (usa ECDHE, no intercambio de claves RSA)
  • 💡 RSA en TLS 1.3 se usa solo para autenticación, no para intercambio de claves
Recomendado: Firmas Digitales (Concepto Clave)

Las claves privadas RSA pueden firmar datos, y la clave pública correspondiente verifica la firma. Use RSA-PSS para nuevas implementaciones; la firma PKCS1v15 es heredada pero todavía ampliamente compatible.

Recommended Configuration:
  • ✅ RSA-PSS (moderno, recomendado para firmas)
  • ✅ Firma PKCS1v15 (heredado, ampliamente compatible)
  • ✅ Hashear el mensaje primero (SHA-256 o más fuerte)
  • 💡 Las firmas usan la clave privada para firmar y la clave pública para verificar (opuesto al cifrado)
No Recomendado: Cifrado de Archivos Grandes

RSA no puede cifrar directamente datos más grandes que ~190 bytes (2048 bits, OAEP-SHA256). Siempre use AES para datos masivos y RSA solo para proteger la clave AES.

Recommended Configuration:
  • ❌ No cifrar archivos o cargas grandes directamente con RSA
  • ✅ Usar AES-256-GCM para los datos
  • ✅ Usar RSA-OAEP solo para cifrar la clave AES
  • 💡 Este patrón híbrido es utilizado por todos los protocolos seguros principales
No Recomendado: Cifrado de Datos al Estilo Simétrico

RSA es significativamente más lento (100–1000x) que el cifrado simétrico y tiene un límite estricto de tamaño de texto plano. Para cualquier cifrado masivo, siempre elija AES.

Recommended Configuration:
  • ❌ No usar RSA para cifrado de alta frecuencia o alto volumen
  • ✅ AES-256-GCM para cifrado masivo rápido y autenticado
  • ✅ Usar RSA solo para intercambio de claves o pequeños secretos
  • 💡 Combinar RSA + AES para lo mejor de ambos mundos

Recomendaciones de Mejores Prácticas

  • Siempre use relleno OAEP-SHA256 para nuevas implementaciones de cifrado RSA. PKCS1v15 es heredado y vulnerable a ataques estilo Bleichenbacher.
  • Use claves de 2048 bits como mínimo; prefiera 4096 bits para certificados o claves destinadas a permanecer válidas más allá de 2030.
  • RSA no puede cifrar datos más grandes que ~190 bytes (2048 bits, OAEP-SHA256). Para datos grandes, use cifrado híbrido: AES para los datos, RSA para la clave AES.
  • Mantenga la clave privada en secreto y guárdela de forma segura. Comprometer la clave privada expone todos los mensajes cifrados con la clave pública correspondiente.
  • Para firmas digitales, prefiera RSA-PSS sobre la firma PKCS1v15.

Discusión y Comentarios

0 comentarios
Yo