Hero Decoder

Decodificatore CSR

Incolla qui sotto una Certificate Signing Request e questo decoder CSR ti mostrerà cosa contiene realmente: il Common Name e il resto del Distinguished Name, la chiave pubblica e la sua dimensione, l’algoritmo di firma e ogni Subject Alternative Name coperto dalla richiesta.

Leggere questi campi richiede pochi secondi. Saltarli costa una reissue. Una Certificate Authority firmerà volentieri una CSR con un dominio digitato male, e te ne accorgi quando i browser iniziano a mostrare errori di name mismatch su un certificato che hai già pagato e installato.

Decodifica il tuo file CSR

Incolla il testo completo della tua CSR nella casella, incluse le righe di intestazione e chiusura:

Una CSR valida inizia con —–BEGIN CERTIFICATE REQUEST—– e termina con —–END CERTIFICATE REQUEST—–.

I server Windows che eseguono IIS scrivono la riga iniziale come —–BEGIN NEW CERTIFICATE REQUEST—–. Entrambe le forme funzionano qui. Il file può arrivare con estensione .csr, .pem o .txt; conta solo il testo al suo interno. Questo decoder CSR online gratuito legge il PEM, il formato Base64 prodotto da quasi ogni server e panello di hosting.

Non hai ancora una CSR? Generane una con il nostro generatore CSR, oppure segui la guida alla CSR per la tua piattaforma.


Cosa ti mostra il decoder CSR

Ogni CSR contiene due elementi di cui una Certificate Authority ha bisogno: chi dici di essere e la chiave pubblica che vuoi far certificare. La parte relativa all’identità si chiama Subject, o Distinguished Name, ed è un insieme di campi etichettati piuttosto che un’unica lunga stringa. Il decoder scompone il Distinguished Name nelle sue parti e riporta i dettagli della chiave insieme a esso.

La tabella sottostante copre ogni campo restituito da questo decoder CSR, come si presenta un valore valido e cosa va storto quando non lo è.

CampoCosa èValore validoCosa si rompe se è errato
Common Name (CN)Il dominio principale che il certificato proteggeràwww.example.com, oppure *.example.com per un wildcardDeve corrispondere esattamente al nome di dominio completamente qualificato. Un errore di digitazione, o un www mancante, produce un errore di name mismatch in ogni browser e una reissue.
Subject Alternative Name (SAN)Un’estensione che elenca ogni dominio coperto dal certificatoDNS:example.com, DNS:www.example.comI browser leggono i SAN e ignorano il Common Name. Qualsiasi dominio mancante da questo elenco non è coperto, indipendentemente da quanto indicato nel CN.
Organization (O)Il nome legale della tua azienda registrataExample Corporation LtdVerificato rispetto ai registri pubblici per i certificati OV ed EV. Un nome commerciale o un’abbreviazione blocca la validazione.
Organizational Unit (OU)Un dipartimento o divisione all’interno dell’organizzazioneIT DepartmentLa delibera SC47 del CA/Browser Forum vieta l’OU nei certificati TLS pubblicamente affidabili emessi a partire dal 1° settembre 2022. Puoi comunque inserirlo in una CSR. Verrà rimosso dal certificato che riceverai.
Locality (L)La cittàSan FranciscoScrivila per intero. SF fa fallire la validazione OV.
State or Province (ST)Lo stato, provincia o regioneCaliforniaScrivilo per intero. CA viene letto come un’abbreviazione e respinto.
Country (C)Un codice a due lettere ISO 3166-1 alpha-2US, GB, DEEsattamente due lettere. USA e UK sono gli errori di formattazione più comuni nelle CSR.
emailAddressUn indirizzo di contatto opzionale nel Subject[email protected]Opzionale. La maggior parte delle CA pubbliche lo ignora.
Public key algorithmL’algoritmo che ha generato la coppia di chiaviRSA o ECDSALe chiavi ECDSA sono più piccole e più rapide da verificare. RSA ha un supporto più ampio su hardware più vecchio. Alcuni load balancer e appliance legacy accettano solo RSA.
Key sizeLa lunghezza della chiave pubblica2048 bit o 4096 bit per RSA; 256 bit o 384 bit per ECDSA2048 bit è il minimo per RSA presso qualsiasi CA pubblica. Una richiesta a 1024 bit viene respinta senza appello.
Signature algorithmL’algoritmo con cui è stata firmata la richiestaSHA-256 con RSA EncryptionSHA-1 non è più accettato. Questo campo descrive la firma della CSR stessa; la CA scelte l’algoritmo per il certificato che emette.

Una CSR può contenere anche attributi opzionali ed estensioni richieste che la maggior parte dei decoder salta. Una challenge password è una stringa opzionale che alcune CA usavano per autorizzare la revoca; lasciala vuota a meno che la tua CA non ne richieda una. Le estensioni richieste come keyUsage, extendedKeyUsage e basicConstraints descrivono cosa dovrebbe poter fare il certificato, sebbene la CA imposti i valori finali.


Come funziona la decodifica CSR

Una CSR è una richiesta di certificazione PKCS#10, un formato definito dalla RFC 2986. Il suo contenuto è descritto in ASN.1, serializzato in DER, che è binario, poi codificato in Base64 e racchiuso nelle righe di intestazione e chiusura PEM in modo che la richiesta sopravviva a e-mail e copia-incolla senza corrompersi.

La decodifica inverte questa catena. Lo strumento rimuove l’involucro PEM, riconverte il Base64 in DER, analizza la struttura ASN.1 ed etichetta ogni valore trovato.

Nessuna decrittazione avviene in alcuna fase, perché niente in una CSR è cifrato. Una CSR contiene la tua chiave pubblica. La chiave privata resta sul server che l’ha generata e non entra mai a far parte della richiesta. Chiunque intercetti una CSR può leggerla, ed è proprio per questo che è sicuro inviarla via e-mail a una Certificate Authority.

Ciò che una CSR contiene davvero è una firma. La richiesta è firmata con la chiave privata corrispondente alla chiave pubblica al suo interno, il che dimostra che possiedi quella chiave. Questo si chiama Proof of Possession, ed è così che una CA sa che la persona che richiede un certificato controlla la chiave da certificare.

Una volta che la CA valida la richiesta, emette un certificato X.509 contenente la tua chiave pubblica e i campi del Subject che è stata in grado di verificare.


Cosa controllare prima di inviare la tua CSR

Passa in rassegna l’output decodificato con questa lista prima che la richiesta si avvicini a una Certificate Authority. Usare il decoder come CSR checker a questo punto ti costa un minuto. Individuare lo stesso errore dopo l’emissione costa una reissue e un redeploy.

  1. Il Common Name corrisponde esattamente al tuo nome di dominio completamente qualificato, includendo o escludendo www come previsto. example.com e www.example.com sono due nomi diversi.
  2. Ogni dominio di cui hai bisogno compare nell’elenco SAN, non solo nel Common Name.
  3. Il paese è composto esattamente da due lettere. Controllalo rispetto all’elenco ISO 3166-1 alpha-2 se non sei sicuro.
  4. Stato e località sono scritti per intero, non abbreviati.
  5. L’organizzazione è la tua denominazione legale registrata, se stai acquistando un certificato OV o EV. I certificati Domain Validated ignorano questo campo.
  6. La chiave è RSA a 2048 bit o superiore, oppure ECDSA a 256 bit o superiore.
  7. L’algoritmo di firma è SHA-256 o più robusto.
  8. La sintassi wildcard è *.example.com, che copre solo un livello. Non copre shop.eu.example.com.
  9. Possiedi ancora la chiave privata da cui è stata generata questa CSR. Confermalo con il Certificate Key Matcher prima di effettuare l’ordine.

Problemi comuni delle CSR rivelati da un decoder

Name mismatch. Il Common Name o l’elenco SAN non corrisponde al dominio su cui il server risponde effettivamente. Questa è la ragione più comune per cui un certificato si installa e continua comunque a fallire nel browser.

SAN mancante. Il certificato è stato emesso, il Common Name sembra corretto, e un hostname continua a dare errore. Decodifica la CSR e verifica se quell’hostname è mai stato nell’elenco SAN. Se non lo era, non è mai stato coperto.

Un codice paese rifiutato. Tre lettere invece di due. La CA rifiuta la richiesta, di solito con un messaggio che non nomina il campo.

Uno stato abbreviato. CA invece di California, NY invece di New York. Gli ordini Domain Validated passano. Gli ordini Organization Validated e Extended Validation si bloccano nella validazione finché non li invii di nuovo.

Una chiave troppo piccola. RSA a 1024 bit è inaccettabile per le CA pubbliche da anni. Rigenera la CSR con una chiave a 2048 bit o superiore; non puoi risolvere questo problema modificando la richiesta.

Il campo OU è scomparso. Hai inserito un dipartimento nel campo Organizational Unit e non è presente nel certificato emesso. È un comportamento previsto dal settembre 2022, non un errore da parte della CA. Leggi perché il campo OU è stato rimosso.

Una CSR che non corrisponde alla tua chiave privata. Di solito è il risultato della generazione di una seconda CSR e della perdita di traccia di quale coppia di chiavi corrispondesse a quale richiesta. Il Certificate Key Matcher risolve la questione in un solo passaggio.

Un dominio internazionale nella forma sbagliata. I domini non-ASCII devono apparire in Punycode, nella forma xn--, piuttosto che nel loro script nativo.


Decodificare una CSR con OpenSSL

Se hai OpenSSL installato, puoi leggere una CSR senza un browser:

openssl req -in example.csr -noout -text

Aggiungi -verify per controllare contemporaneamente la firma della richiesta stessa, il che confirma che la CSR non è stata modificata da quando è stata generata:

openssl req -in example.csr -noout -text -verify

L’output mette l’intero Distinguished Name sulla riga Subject:, in un’unica sequenza separata da virgole piuttosto che come campi separati, quindi leggilo da sinistra a destra: C, ST, L, O, OU, CN. Sotto di esso, Public Key Algorithm indica RSA o ECDSA, e Public-Key: fornisce la lunghezza in bit tra parentesi. Signature Algorithm appare due volte, una vicino all’inizio e una in fondo accanto al blocco della firma; entrambe si riferiscono alla firma della CSR stessa.

I Subject Alternative Name sono facili da trascurare. Non fanno parte della riga Subject. Guarda più in basso per il blocco Requested Extensions e la voce X509v3 Subject Alternative Name sottostante. Se quel blocco è assente, la CSR non ha alcun SAN.

Lo strumento web sopra è l’opzione più veloce quando OpenSSL non è installato, quando sei su Windows senza WSL, o quando la CSR proviene da un panello di hosting ed esiste solo come testo in una scheda del browser. L’output è la stessa informazione, etichettata in linguaggio semplice.


Decodificare una CSR per Sectigo, DigiCert o qualsiasi altra CA

Una CSR è un file PKCS#10, e il formato non cambia in base a chi la firmerà. Non esiste un formato CSR specifico per Sectigo o per DigiCert, quindi un unico decoder funziona per richieste destinate a qualsiasi Certificate Authority.

Ciò che varia tra le CA è quali campi vengono validati e con quale rigore. I certificati Domain Validated verificano solo il controllo del dominio e ignorano completamente il campo Organization. I certificati Organization Validated ed Extended Validation richiedono che i campi Organization, Locality, State e Country corrispondano ai registri pubblici, motivo per cui l’accuratezza di questi campi conta sempre di più quanto più si sale nella scala di validazione.


Domande frequenti

Che cos’è un decodificatore di CSR?

Un decodificatore CSR è uno strumento che legge una Certificate Signing Request e ne mostra il contenuto in un linguaggio semplice. Inverte la codifica Base64 e ASN.1 che rende un CSR illeggibile a occhio nudo, poi etichetta ogni campo: Common Name, Organization, Organizational Unit, Locality, State, Country, algoritmo della chiave pubblica, dimensione della chiave, algoritmo di firma e qualsiasi Subject Alternative Name. Ne useresti uno per verificare una richiesta prima di inviarla, oppure per capire perché un certificato che possiedi già si comporta in modo inaspettato.

Copia link

Come si legge un file CSR?

Incollalo in un decoder CSR, a volte indicato come visualizzatore CSR o lettore CSR, e leggi l’output etichettato. Un CSR appare come un blocco compatto di caratteri casuali perché è un dato binario codificato in Base64, quindi non c’è nulla di utile da vedere aprendo il file in un editor di testo. Se preferisci la riga di comando, openssl req -in example.csr -noout -text stampa le stesse informazioni.

Copia link

È possibile decriptare un CSR?

No, perché una CSR non è crittografata. Questo è uno dei fraintendimenti più persistenti riguardo alle richieste di certificato. Una CSR è composta da dati ASN.1 codificati in Base64, che chiunque può decodificare senza chiave e senza password. Contiene la tua chiave pubblica, mai quella privata. Quello che le persone intendono quando dicono “decrittare una CSR” è decodificarla, ed è esattamente ciò che fanno sia questo strumento che il comando openssl req.

Copia link

È necessario decodificare un CSR prima di inviarlo a una Certificate Authority?

No. Invia il testo codificato esattamente come lo ha generato il tuo server, righe di intestazione e chiusura incluse. La CA lo analizza per conto suo. La decodifica serve a te, non a loro: è il modo in cui puoi individuare un dominio errato o un codice paese di due lettere prima che la CA trasformi il tuo errore in un certificato.

Copia link

Posso leggere il testo di un CSR nella riga di comando?

Sì. openssl req -in example.csr -noout -text stampa il contenuto decodificato nel tuo terminale. Aggiungendo -verify viene verificata anche l’autofirma del CSR. Consulta la sezione OpenSSL sopra per capire cosa significa ogni parte dell’output.

Copia link

Quali informazioni vedrò dopo aver decodificato il CSR?

Il Subject, chiamato anche Distinguished Name, che contiene il Common Name, l’Organization, l’Organizational Unit, la Locality, lo State e il Country. La chiave pubblica, con il suo algoritmo (RSA o ECDSA) e la sua dimensione in bit. L’algoritmo di firma con cui la richiesta è stata firmata. E, se la richiesta li include, i Subject Alternative Names che elencano ogni dominio che il certificato coprirà.

Copia link

Cos’è un Subject Alternative Name e perché è più importante del Common Name?

Un Subject Alternative Name è un’estensione che elenca ogni nome host coperto da un certificato. I browser moderni leggono l’elenco SAN e ignorano completamente il Common Name, quindi un dominio che compare solo come Common Name e non nell’elenco SAN non supererà il controllo. La maggior parte delle CA pubbliche copia automaticamente il Common Name nell’elenco SAN al momento dell’emissione, ma è meglio confermarlo con la propria CA piuttosto che darlo per scontato. Se hai bisogno di più nomi host su un unico certificato, elencali tutti.

Copia link

Perché il campo OU manca dal mio certificato emesso?

Perché non è più consentito. La ballot SC47 del CA/Browser Forum ha vietato il campo Organizational Unit nei certificati TLS a fiducia pubblica emessi a partire dal 1° settembre 2022, in quanto una CA non ha un modo affidabile per verificare il nome di un reparto. È ancora possibile includere l’OU quando si genera una CSR, e il decoder lo mostrerà, ma la CA lo rimuove prima dell’emissione. Non c’è nulla che non funziona.

Copia link

Che cos’è il PKCS#10?

PKCS#10 è lo standard che definisce il formato del CSR, specificato nella RFC 2986. Stabilisce quali campi contiene una richiesta di certificazione e come sono strutturati, motivo per cui lo stesso CSR funziona con qualsiasi Certificate Authority anziché essere vincolato a quella da cui l’hai acquistato.

Copia link


Strumenti SSL correlati

A historic windmill with text overlay reading 'Mill History'

Generatore CSR

Genera automaticamente la tua CSR (Certificate Signing Request) e la tua chiave privata, in base ai dettagli che fornisci compilando il modulo CSR.

Convertitore SSL

Convertì il tuo certificato SSL/TLS tra PEM, DER, PFX e P7B interamente nel tuo browser. Cambia formato in pochi clic in modo che il certificato si installi senza problemi su qualsiasi server o piattaforma che si aspetta un formato diverso.

Certificate Key Matcher

Verifica se il tuo certificato SSL, la chiave privata e la CSR provengono dalla stessa coppia di chiavi. Tutto viene eseguito nel tuo browser, quindi la tua chiave privata non lascia mai il tuo dispositivo.

SSL Checker

Verifica istantaneamente la validità, l’installazione e la configurazione di sicurezza del tuo certificato SSL. Testa la robustezza della crittografia, le date di scadenza e rileva i problemi comuni per garantire che il tuo sito web rimanga sicuro e affidabile per i visitatori.