Saltar al contenido

Generador de pares de claves

Key Pair Generator

Genera pares de claves RSA, ECDSA o Ed25519 y los exporta en PEM, JWK o OpenSSH.

Genera un par de claves pública/privada en el navegador y lo exporta como OpenSSH, PEM (SPKI y PKCS#8) o JWK. Ed25519, ECDSA P-256/P-384 y RSA 2048/3072/4096, todos producidos por el propio WebCrypto del navegador.

🔒 Se ejecuta por completo en tu navegadorrsaed25519keyscrypto
Algoritmo

Pequeña, rápida, moderna. El valor por defecto de SSH desde 2014.

Aparece al final de la línea de la clave pública de OpenSSH.

Las claves las genera la propia WebCrypto de este navegador (crypto.subtle.generateKey) en esta pestaña, y nunca salen de ella: no se transmite, registra ni guarda nada. Los formatos se verifican contra el propio OpenSSH en las pruebas de este proyecto. Genera la clave en la máquina que vaya a guardar la privada siempre que puedas; una clave que ha existido en una pestaña del navegador ha existido en la memoria de esa pestaña.

Cómo se usa

  1. Elige el algoritmo

    Ed25519 para cualquier cosa nueva: pequeña, rápida y el valor por defecto de SSH desde 2014. ECDSA o RSA cuando algo del otro extremo lo exige.

  2. Genera y elige el formato

    OpenSSH te da una línea de `authorized_keys` y una clave privada `openssh-key-v1`; PEM da SPKI y PKCS#8; JWK es para una biblioteca JOSE. La misma clave, tres grafías.

  3. Añade una frase de contraseña después de guardarla

    La clave privada se exporta sin cifrar. En local: `ssh-keygen -p -f id_key` para añadir una frase de contraseña, y `chmod 600` para que ssh acepte siquiera usar el archivo.

Preguntas frecuentes

¿Es seguro generar una clave privada en un navegador?

La clave nunca sale de la pestaña: WebCrypto la genera y nada se transmite, registra ni guarda. Pero una clave que ha existido en una pestaña del navegador ha existido en la memoria de esa pestaña, que es una superficie mayor que una shell. Para una clave que protege producción, génerala en la máquina que la va a tener.

¿Por qué a veces falta Ed25519?

Porque el WebCrypto de ese navegador no lo implementa. El soporte llegó tarde y de forma desigual; la página lo comprueba al cargar y oculta la opción en lugar de ofrecer algo que va a fallar. ECDSA P-256 es el equivalente más cercano con soporte amplio.

¿RSA 2048 o 4096?

2048 sigue estando bien y es considerablemente más rápida de generar y de usar. 4096 compra margen contra un futuro que nadie puede dimensionar, a un costo real en tiempo de handshake. Si eliges RSA por compatibilidad, 2048 suele ser lo que el otro extremo quería de todos modos.

¿De dónde sale la huella digital?

Es la huella SHA-256 de la clave pública en formato OpenSSH: la misma cadena que imprime `ssh-keygen -lf`, así que puedes comparar las dos directamente.

Puede recibir de

Después

Estas aceptan lo que produce esta herramienta, así que el resultado puede pasar directamente.