Un bloc PEM cu tip CHEIE PRIVATĂ
conține o cheie în format PKCS8 (și mai precis PKCS8-necriptat) care poate fi pt. orice algoritm care include RSA; să vezi care, fă
openssl pkey -in pkcs8file -noout -text
Dacă este RSA, puteți converti în tip PEM CHEIE PRIVATA RSA
, care conține formatul „tradițional” OpenSSL, adică per-algoritm și nu PKCS8, și definit mai precis de PKCS1, cu
openssl rsa -in pkcs8file -out fișier trad
# sau în 1.1.0 în sus
openssl pkey -in pkcs8file -out tradfile -tradițional
Pe toate acestea puteți omite -în dosar
sau -out fișier
pentru a utiliza stdin sau, respectiv, stdout, care pot fi redirecționate sau transmise prin canalizare, așa cum este acceptat de sistemul de operare (sau pentru WSL, sistemul de operare simulat) și shell. Tu poate sa criptați fișierul în format tradițional specificând, de asemenea, un cifru (simetric sau PBE), dar din moment ce nu ați criptat fișierul în format PKCS8, nu știu de ce ați dori.
În schimb, puteți converti o cheie în format tradițional (RSA după cum aveți sau alta) în format PKCS8 folosind
openssl pkey -in tradfile -out pkcs8file
# implicit necriptat, dar puteți adăuga un cifr pentru a cripta
# sau
openssl pkcs8 -topk8 -in tradfile -out pkcs8file
# criptat implicit, dar adăugați -nocrypt pentru necriptat
Din nou puteți folosi stdin/stdout și redirecționați sau pipe.
Cu toate acestea, susțineți că aveți un „fișier cheie numit site.com.crt”. Este foarte puțin probabil. În timp ce extensia (dacă există!) a unui nume de fișier nu controlează de fapt conținutul, de obicei este aleasă (dacă este prezentă) să Reflectați conținutul, iar dacă acel fișier nu a fost numit de un nebun sau sadic, cel mai probabil conține un certificat, nu o cheie. Certificatele (de tipul relevant aici, mai ales X.509 sau PKIX) pot fi utilizate pentru a distribui și gestiona cheile publice într-un sistem de chei publice, în special o cheie publică infrastructură sau PKI, care este tipul de sistem de cheie publică pe care îl folosim în întreaga lume pentru majoritatea lucrurilor, dar un certificat nu este o cheie și o cheie nu este un certificat, la fel cum o mașină nu este un volan și un volan nu este o mașină.