Quindi le app collegate a openssl usano PEM e Windows generalmente usa PKCS12, ma non mi sembra molto .DER in the wild - quale software server usa DER ?
Quindi le app collegate a openssl usano PEM e Windows generalmente usa PKCS12, ma non mi sembra molto .DER in the wild - quale software server usa DER ?
Non posso pensarne.
Non ricordo alcun software che si aspetta DER e rifiuta PEM. Di solito accettavano entrambi.
Windows considera DER con una piccola preferenza. La procedura guidata "Esporta certificato" è impostata su DER.
Oltre a questo, poca distinzione è fatta da Windows. DER e single-pubkey-PEM condividono entrambe le estensioni nome file .CER
e .CRT
.
Windows tratta i file di bundle PEM multicomponente in modo non vergognoso. Visualizza solo il primo oggetto in un pacchetto PEM e non dà alcuna indicazione che ci sia più dentro. Molto fuorviante. Quindi, se desideri raggruppare questi oggetti crittografici, devi davvero utilizzare PKCS # 12 / .PFX
, come hai detto tu.)
Aggiornamento 2015-12-18Fr
Ecco un piccolo frammento delle estensioni dei nomi dei file. Questo è dal mio PC Win10:
C:\>assoc .der
.der=CERFile
C:\>ftype CERFile
CERFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenCER %1
C:\>assoc | findstr /I cerfile
.cer=CERFile
.crt=CERFile
.der=CERFile
Penso che questo significhi che a Windows non interessa davvero quale estensione di nome file usi qui. Penso che puoi mescolare e abbinare liberamente da quei tre, indipendentemente dai contenuti effettivi. (Non ti avvisa se un file .DER
ha effettivamente contenuti PEM. Ho appena controllato.)
Sidenote: più estensioni dei nomi dei file crittografici di Windows
Questo cryptex.dll
apre anche altri file crittografici:
C:\>ftype | findstr /I cryptext
CATFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenCAT %1
CERFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenCER %1
CertificateStoreFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenSTR %1
CRLFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenCRL %1
P7RFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenP7R %1
P7SFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenPKCS7 %1
PFXFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenPFX %1
SPCFile=%SystemRoot%\system32\rundll32.exe cryptext.dll,CryptExtOpenPKCS7 %1
E questi tipi di file corrispondono a questo elenco di estensioni:
C:\>assoc | sort | findstr /I "catfile cerfile certificatestorefile crlfile p7rfile p7sfile pfxfile spcfile"
.cat=CATFile
.cer=CERFile
.crl=CRLFile
.crt=CERFile
.der=CERFile
.p12=PFXFile
.p7b=SPCFile
.p7r=P7RFile
.p7s=P7SFile
.pfx=PFXFile
.spc=SPCFile
.sst=CertificateStoreFile
.wbcat=wbcatfile
Per impostazione predefinita, i file OpenSSL vengono creati nel formato Privacy Enhanced Mail (PEM). I file SSL creati in ambienti operativi Windows vengono creati nel formato DER (Distinguished Encoding Rules). Sotto Windows, puoi importare un file creato in formato PEM o DER. Tuttavia, un certificato digitale creato in formato DER deve essere convertito in formato PEM prima che possa essere incluso in un elenco di trust in UNIX.
Ecco un esempio di conversione di un certificato digitale server dal formato di input PEM nel formato di output DER:
OpenSSL> x509 -inform PEM -outform DER -in server.pem -out server.der
Ecco un esempio di conversione di un certificato digitale server dal formato di input DER al formato di output PEM:
OpenSSL> x509 -inform DER -outform PEM -in server.der -out server.pem
Leggi altre domande sui tag tls certificates