Questa è una vecchia versione del documento!
Indice
Formati disponibili dei vari certificati TLS e utility
1. PEM (Privacy Enhanced Mail)
- Estensioni: .pem, .crt, .cer, .key
- Codifica: Base64 ASCII
- Contenuti: Può includere certificati, chiavi private e catene di certificati.
- Utilizzo: Comunemente usato in ambienti Unix/Linux. Facile da leggere e modificare con un editor di testo.
2. DER (Distinguished Encoding Rules)
- Estensioni: .der, .cer
- Codifica: Binaria
- Contenuti: Tipicamente contiene un singolo certificato.
- Utilizzo: Comunemente usato in ambienti Windows. Non leggibile dall'uomo.
3. PKCS#7
- Estensioni: .p7b, .p7s
- Codifica: Base64 ASCII o Binaria
- Contenuti: Certificati e catene di certificati, ma non chiavi private.
- Utilizzo: Usato per lo scambio di certificati. Comunemente visto in ambienti Windows.
4. PKCS#12
(è possibile utilizzare il tool messo a disposizione da Harica per generare questo formato)
- Estensioni: .p12, .pfx
- Codifica: Binaria
- Contenuti: Certificati, chiavi private e catene di certificati.
- Utilizzo: Usato per memorizzare più oggetti crittografici in un unico file. Comunemente usato per importare/esportare certificati e chiavi tra sistemi.
Tabella Riassuntiva
| Formato | Estensioni | Codifica | Contenuti | Utilizzo |
|---|---|---|---|---|
| PEM | .pem, .crt, .cer, .key | Base64 ASCII | Certificati, chiavi private, catene di certificati | Ambienti Unix/Linux, leggibile dall'uomo |
| DER | .der, .cer | Binaria | Singolo certificato | Ambienti Windows, non leggibile dall'uomo |
| PKCS#7 | .p7b, .p7s | Base64 ASCII o Binaria | Certificati, catene di certificati | Scambio di certificati, ambienti Windows |
| PKCS#12 | .p12, .pfx | Binaria | Certificati, chiavi private, catene di certificati | Importazione/esportazione tra sistemi, memorizzazione di più oggetti crittografici |
Conversione dei formati
Generazione del formato PKCS#12
E' possibile avvalersi del tool grafico via web messo a disposizione da HARICA a questo indirizzo:
https://www.harica.gr/en/Tools/PemToP12
In input saranno necessari il certificato in formato (.pem), la chiave privata in formato (.pem), la password che crittografa la chiave privata ed infine il file PEM bundle in formato (.pem)
Con il programma openssl da terminale Linux è possibile convertire dal formato PEM al formato PKCS#12 con il seguente comando:
openssl pkcs12 -export -out certificate.pfx -inkey private.key -in certificate.crt -certfile ca_bundle.crt Enter pass phrase for private.key: Enter Export Password: Verifying - Enter Export Password:
Generazione chiave privata e CSR
1. Utilizzare Algoritmi Forti RSA: Utilizzare una dimensione della chiave di almeno 2048 bit, ma 4096 bit è raccomandato per una maggiore sicurezza. Curva Ellittica (EC): Utilizzare curve come prime256v1 o secp384r1 per una forte sicurezza.
2. Utilizzare Archiviazione Sicura delle Chiavi Moduli di Sicurezza Hardware (HSM): Archiviare le chiavi in HSM per sicurezza fisica. File System Locale: Assicurarsi che le chiavi siano archiviate in modo sicuro con permessi appropriati.
