Vai al contenuto

Generatore di coppie di chiavi

Key Pair Generator

Genera coppie di chiavi RSA, ECDSA o Ed25519 e le esporta in PEM, JWK o OpenSSH.

Genera una coppia di chiavi pubblica/privata nel browser e la esporta come OpenSSH, PEM (SPKI e PKCS#8) o JWK. Ed25519, ECDSA P-256/P-384 e RSA 2048/3072/4096, prodotte tutte dalla WebCrypto del browser stesso.

🔒 Funziona interamente nel tuo browserrsaed25519keyscrypto
Algoritmo

Piccola, veloce, moderna. Il valore predefinito di SSH dal 2014.

Compare in fondo alla riga della chiave pubblica OpenSSH.

Le chiavi le genera la WebCrypto di questo browser stesso (crypto.subtle.generateKey) in questa scheda, e non la lasciano mai: non viene trasmesso, registrato né salvato nulla. I formati sono verificati contro OpenSSH stesso nella suite di test di questo progetto. Quando puoi, genera la chiave sulla macchina che terrà quella privata; una chiave che è esistita in una scheda del browser è esistita nella memoria di quella scheda.

Come si usa

  1. Scegliere l’algoritmo

    Ed25519 per qualunque cosa nuova — piccola, veloce e il valore predefinito di SSH dal 2014. ECDSA o RSA quando qualcosa dall’altra parte lo pretende.

  2. Generare e scegliere il formato

    OpenSSH dà una riga per `authorized_keys` e una chiave privata `openssh-key-v1`; PEM dà SPKI e PKCS#8; JWK serve a una libreria JOSE. La stessa chiave, tre scritture.

  3. Aggiungere una passphrase dopo averla salvata

    La chiave privata viene esportata non cifrata. In locale: `ssh-keygen -p -f id_key` per aggiungere una passphrase, e `chmod 600` perché ssh accetti di usare il file.

Domande frequenti

È sicuro generare una chiave privata in un browser?

La chiave non esce mai dalla scheda: la genera la WebCrypto, e non viene trasmesso, registrato né conservato niente. Però una chiave che è esistita in una scheda del browser è esistita nella memoria di quella scheda, che è una superficie più ampia di una shell. Per una chiave che protegge la produzione, meglio generarla sulla macchina che la terrà.

Perché a volte Ed25519 non c’è?

Perché la WebCrypto di quel browser non lo implementa. Il supporto è arrivato tardi e in modo disomogeneo; la pagina controlla al caricamento e nasconde l’opzione invece di offrire qualcosa che fallirà. ECDSA P-256 è l’equivalente più vicino fra quelli supportati dappertutto.

RSA 2048 o 4096?

2048 va ancora bene ed è parecchio più veloce da generare e da usare. 4096 compra margine contro un futuro che nessuno sa misurare, a un costo reale in tempo di handshake. Se si sceglie RSA per compatibilità, di solito 2048 è comunque quello che voleva l’altra parte.

Da dove viene l’impronta?

È l’impronta SHA-256 della chiave pubblica nel formato OpenSSH — la stessa stringa che stampa `ssh-keygen -lf`, così le due si possono confrontare direttamente.

Può ricevere da

Dopo

Questi accettano ciò che produce questo strumento, così il risultato può passare direttamente.