Guía de Generación de Par de Claves RSA: Cifrado de Clave Pública y Firma de Clave Privada

Codificación

Qué es un Par de Claves RSA

RSA es un algoritmo de cifrado asimétrico que utiliza un par de claves:

Clave Propósito Distribución
Clave Pública Cifrar / Verificar firma Se puede compartir abiertamente
Clave Privada Descifrar / Firmar Mantener solo para ti

Principio fundamental: Los datos cifrados con la clave pública solo pueden descifrarse con la clave privada; las firmas realizadas con la clave privada pueden verificarse con la clave pública.


Selección de Longitud de Clave

Longitud Nivel de Seguridad Caso de Uso
1024-bit ❌ Inseguro Sistemas heredados
2048-bit ✅ Seguridad base Uso cotidiano
3072-bit ✅ Mayor seguridad Datos moderadamente sensibles
4096-bit ✅ Alta seguridad Datos altamente sensibles / claves a largo plazo

Generar una clave de 4096-bit tarda 4-8× más que una de 2048-bit. El cifrado/descifrado también es más lento. Elige según tus necesidades.


Generar un Par de Claves: Paso a Paso

Paso 1: Abrir la herramienta de Par de Claves RSA

Visita la herramienta de Par de Claves RSA y selecciona una longitud de clave (se recomienda 2048 o 4096).

Paso 2: Generar el Par de Claves

Haz clic en "Generar Par de Claves". La herramienta produce automáticamente:

  • Clave pública: texto en formato PEM que comienza con -----BEGIN PUBLIC KEY-----
  • Clave privada: texto en formato PEM que comienza con -----BEGIN PRIVATE KEY-----

Paso 3: Guardar las Claves

Clave pública  → Envíala a cualquiera que necesite cifrar datos para ti
Clave privada → Guárdala de forma segura, nunca la filtres (¡no la subas a Git!)

Formato PEM Explicado

PEM es un texto de clave codificado en Base64. Formatos comunes:

-----BEGIN PUBLIC KEY-----      ← Clave pública PKCS#8
MIIBIjANBgkqhkiG9w0BAQEFAAOC...
-----END PUBLIC KEY-----

-----BEGIN RSA PRIVATE KEY-----  ← Clave privada PKCS#1
MIIEpAIBAAKCAQEA0d7...
-----END RSA PRIVATE KEY-----

-----BEGIN PRIVATE KEY-----      ← Clave privada PKCS#8
MIIEvgIBADANBgkqhkiG9w0BAQEF...
-----END PRIVATE KEY-----

PKCS#8 es el formato universal; PKCS#1 es específico de RSA. La mayoría de los sistemas modernos prefieren PKCS#8.


Cifrado con Clave Pública + Descifrado con Clave Privada

Usando la herramienta de Cifrado/Descifrado RSA:

  1. Pega el texto plano en el cuadro de entrada
  2. Selecciona "Cifrar con Clave Pública"
  3. Pega la clave pública del destinatario
  4. Haz clic en cifrar para obtener el texto cifrado
  5. El destinatario descifra con su clave privada para recuperar el original

Firma con Clave Privada + Verificación con Clave Pública

Firmar demuestra "este mensaje realmente provino de mí":

  1. En la herramienta de Cifrado/Descifrado RSA, selecciona "Firmar con Clave Privada"
  2. Ingresa el mensaje y tu clave privada
  3. Genera el valor de la firma
  4. Otros verifican la firma con tu clave pública, confirmando que el mensaje no fue alterado

RSA vs AES: Cuándo Usar Cada Uno

Escenario Recomendación Razón
Cifrado de archivos grandes AES RSA es demasiado lento para datos masivos
Intercambio de claves RSA Cifrar la clave AES con la clave pública
Firmas digitales RSA La naturaleza asimétrica es ideal
Tokens JWT RSA El servidor firma con la clave privada, los clientes verifican con la clave pública

En la práctica, se combinan frecuentemente: RSA transmite la clave AES, AES cifra los datos reales (cifrado híbrido).


Problemas Comunes

Problema Causa Solución
Error al descifrar Claves no coinciden Confirmar que las claves pública y privada son del mismo par
Error de datos demasiado largos RSA tiene un límite de longitud Usar AES en su lugar o cifrar por segmentos
Error de análisis de formato Faltan encabezados PEM Verificar que copiaste la clave completa
Generación lenta Clave de 4096-bit Normal; probar con 2048-bit primero

Resumen

Los pares de claves RSA son la base del cifrado asimétrico. Dominar el cifrado de clave pública y la firma de clave privada, y comprender las implicaciones de seguridad de la longitud de clave, es esencial para el desarrollo seguro. La herramienta de Par de Claves RSA y la herramienta de Cifrado/Descifrado RSA te permiten completar todo el flujo de trabajo directamente en tu navegador.

#RSA#密钥对#非对称加密#公钥#私钥