Generador de claves RSA y herramienta de cifrado/descifrado en línea
Generación local de claves de 512 a 4096 bits, 7 formatos de exportación, cifrado, descifrado, firma y verificación
Generador de claves RSA y herramienta de cifrado/descifrado en línea
RSA es uno de los algoritmos de cifrado asimétrico más conocidos: la clave pública puede publicarse para cifrar y verificar firmas, mientras que la clave privada debe mantenerse secreta para descifrar y firmar. Esta herramienta genera el par de claves localmente en el navegador y reúne cifrado, descifrado, firma y verificación en una sola página.
Generación de claves y formatos de exportación
- Longitudes disponibles: 512, 1024, 2048, 3072 y 4096 bits, con 2048 bits por defecto. Las longitudes de 512 y 1024 bits se indican como opciones de compatibilidad para sistemas antiguos y como inseguras.
- 7 formatos de exportación: combinación de PKCS#8 y SPKI (estándar), PKCS#1, clave pública OpenSSH, JWK, XML (.NET RSAKeyValue), Raw Base64 y Raw Hex.
- Raw Base64 y Raw Hex no contienen encabezados, pies ni saltos de línea y pueden insertarse directamente en variables de entorno, JSON o configuraciones.
- OpenSSH solo es adecuado para claves públicas. Las claves privadas continúan exportándose como PKCS#8.
Cifrado y descifrado
La pestaña de cifrado y descifrado utiliza la clave pública para cifrar y la clave privada para descifrar. Los métodos de padding disponibles son RSA-OAEP (SHA-256) y PKCS#1 v1.5. RSA solo puede cifrar datos relativamente cortos. La herramienta calcula el número máximo de bytes según la longitud de la clave y el padding: aproximadamente bytes de la clave menos 66 para OAEP y menos 11 para PKCS#1 v1.5. Si los datos son demasiado largos, se muestra una advertencia y se recomienda un cifrado híbrido: AES para los datos y RSA para la clave AES.
Firma y verificación
La pestaña de firma y verificación utiliza la clave privada para firmar y la clave pública para verificar. Los métodos disponibles son RSA-PSS (SHA-256) y PKCS#1 v1.5. La firma se genera en Base64 y puede transferirse con un clic al campo de verificación. El resultado indica claramente si la firma es válida o inválida. La página también recuerda que cifrado y firma tienen objetivos diferentes y no deben confundirse.
Importación de claves existentes y gestión de errores
- Las claves existentes pueden introducirse directamente en formato PEM, DER, OpenSSH, JWK o XML.
- Si se utiliza una clave pública en una operación que requiere una clave privada, se muestra una advertencia clara.
- Si una clave está cifrada con contraseña, se recomienda descifrarla y exportarla primero con openssl o PuTTYgen. La herramienta no ofrece descifrado en línea de contraseñas de claves.
- Si el descifrado falla, deben comprobarse la clave, el padding y el texto cifrado. Los formatos de clave que no puedan analizarse y los errores al cargar componentes también se indican.
Requisitos del entorno de ejecución
La generación de claves y todos los cálculos utilizan la interfaz WebCrypto del navegador. Solo está disponible en un contexto seguro, por lo que se requiere HTTPS. Durante la generación de claves grandes, la página muestra un estado de espera.
Casos de uso
- Generar rápidamente un par de claves de prueba para una integración de API y exportarlo en el formato requerido.
- Probar flujos de firma y verificación y detectar diferencias de algoritmo o padding.
- Comprobar la representación de diferentes formatos de claves en archivos de configuración.
- Enseñanza y demostración del cifrado asimétrico.
Privacidad y seguridad de los datos
El par de claves se genera localmente en el navegador. Las claves privadas y los textos en claro no se envían al servidor ni se almacenan. Dado que los navegadores no son adecuados para custodiar claves de producción de forma segura, las claves generadas aquí deben utilizarse únicamente para pruebas y aprendizaje. Para convertir únicamente el formato de una clave existente, se recomienda utilizar un conversor de formatos de claves RSA.
Generar pares de claves RSA en línea y realizar cifrado y firma
- Longitudes de clave de 512, 1024, 2048, 3072 y 4096 bits, con 2048 bits por defecto; 512 y 1024 bits están marcados como opciones de compatibilidad para sistemas antiguos
- Admite 7 formatos de clave: PKCS#8 y SPKI, PKCS#1, clave pública OpenSSH, JWK, XML, Raw Base64 y Raw Hex
- El cifrado y descifrado admiten RSA-OAEP (SHA-256) y PKCS#1 v1.5 y muestran el número máximo de bytes cifrables según la longitud de la clave
- La firma y verificación admiten RSA-PSS (SHA-256) y PKCS#1 v1.5; las firmas se generan en Base64 y pueden transferirse directamente al campo de verificación
- Las claves PEM, DER, OpenSSH, JWK o XML existentes pueden introducirse directamente
- El uso de una clave pública para una operación privada o de una clave protegida con contraseña se gestiona mediante advertencias claras