Eksporter sertifikater og privat nøkkel fra en PKCS # 12-fil med OpenSSL

OBS: Denne artikkelen gjelder ikke for SSL.com-kodesignering og dokumentsigneringssertifikater. De private nøklene til denne typen sertifikater kan ikke eksporteres og de kan ikke genereres som .pfx-filer. SSL.com-kodesignerings- og dokumentsigneringssertifikater og deres private nøkler kan bare genereres og lagres i eSigner skysigneringsmiljøen yubikey enhet, eller en støttet Cloud HSM.

Denne fremgangsmåten vil lede deg gjennom å trekke ut informasjon fra en PKCS # 12-fil med OpenSSL. PKCS # 12 (også kjent som PKCS12 eller PFX) er et binært format for lagring av en sertifikatkjede og privat nøkkel i en enkelt, krypterbar fil. PKCS # 12-filer brukes ofte til å importere og eksportere sertifikater og private nøkler på Windows- og macOS-datamaskiner, og har vanligvis filnavnutvidelser .p12 or .pfx.

For flere nyttige veiledninger og de siste cybersikkerhetsnyhetene, registrer deg for SSL.coms nyhetsbrev her:

Hva er OpenSSL?
OpenSSL er en veldig nyttig åpen kildekode-kommandolinjeverktøysett for å jobbe med X.509 sertifikater, sertifikatsigneringsforespørsler (CSRs), og kryptografiske nøkler. Hvis du bruker en UNIX-variant som Linux eller macOS, er sannsynligvis OpenSSL allerede installert på datamaskinen din. Hvis du vil bruke OpenSSL på Windows, kan du aktivere Windows 10s Linux-delsystem eller installer Cygwin. Du kan også enkelt skape en PKCS # 12-fil med openSSL.

SSL.com tilbyr et bredt utvalg av SSL /TLS serversertifikater for HTTPS-nettsteder.

SAMMENLIGN SSL /TLS SERTIFIKATER

video

https://www.youtube.com/watch?v=S_imVMFOdhU

I alle eksemplene vist nedenfor, bytt ut navnene på filene du faktisk jobber med INFILE.p12, OUTFILE.crtog OUTFILE.key.

Vis PKCS # 12-informasjon på skjermen

For å dumpe all informasjonen i en PKCS # 12-fil til skjermen i PEM-format, bruk denne kommandoen:

openssl pkcs12 -info -in INFILE.p12 -noder

Du blir deretter bedt om å oppgi passordet til PKCS # 12-filen:

Skriv inn importpassord:

Skriv inn passordet som ble lagt inn når du oppretter PKCS # 12-filen, og trykk på enter. OpenSSL sender ut eventuelle sertifikater og private nøkler i filen til skjermen:

Bag Attributter localKeyID: AC 3E 77 9A 99 62 84 3D 77 CB 44 0D F9 78 57 7C 08 28 05 97 subject = / CN = Aaron Russell/emailAddress=*********@gmail.com utsteder = / C = USA / ST = Texas / L = Houston / O = SSL Corp / CN = SSL.com klientsertifikat Intermediate CA RSA R1 ----- BEGIN sERTIFIKAT ----- MIIF1DCCA7ygAwIBAgIQcOrAJCMayJsZBKJsyz / aQDANBgkqhkiG9w0BAQsFADB + MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hvdXN0b24x ETAPBgNVBAoMCFNTTCBDb3JwMTowOAYDVQQDDDFTU0wuY29tIENsaWVudCBDZXJ0 ... bwK6ABAZUq6QcvhD0LYsXya + ncDCR6wxb9E0DWd4ATQMzxGTu / yE3kT + 9Ef6IY + n armh3HZUfan2Hb64YD0tjLMca / PC + sKAZu28gB / 3HQRHIFugvh6RO3bIoorl0jUg 1Ml2r83JFDc ---- BiS0H

Krypter privat nøkkel

Hvis du ønsker å kryptere den private nøkkelen og beskytte den med et passord før den sendes ut, slipper du ganske enkelt -nodes flagg fra kommandoen:

openssl pkcs12 -info -i INFILE.p12

I dette tilfellet blir du bedt om å angi og bekrefte et nytt passord etter at OpenSSL sender ut eventuelle sertifikater, og den private nøkkelen blir kryptert (merk at teksten til nøkkelen begynner med -----BEGIN ENCRYPTED PRIVATE KEY-----):

Skriv PEM pass setning: Verifisering - Skriv PEM passfrasen: ----- BEGIN kryptert privatnøkkel som ----- MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIGwhJIMXRiLQCAggA MBQGCCqGSIb3DQMHBAiXdeymTYuedgSCBMjwGg78PsqiNJLfpDFbMxL98u3tK9Cs ... SGVCCBj5vBpSbBXAGbOv74h4satKmAMgGc8SgU06geS9gFgt / wLwehMJ / H4BSmex 4S / 2tYzZrDBJkfH9JpggubYRTgwfAGY2BkX03dK2sqfu + QVTVTKMj2VI0sKcFfLZ BDW = ----- END KRYPT PRIVATE NØKKEL -----

Pakk bare ut sertifikater eller privat nøkkel

Hvis du bare vil skrive ut den private nøkkelen, legger du til -nocerts til kommandoen:

openssl pkcs12 -info -in INFILE.p12 -noder -nocerts

Hvis du bare trenger sertifikatene, bruk -nokeys (og siden vi ikke er opptatt av den private nøkkelen, kan vi også trygt utelate -nodes):

openssl pkcs12 -info -i INFILE.p12 -nokler

Lagre sertifikater og private nøkler i filer

Du kan eksportere sertifikatene og den private nøkkelen fra en PKCS # 12-fil og lagre dem i PEM-format til en ny fil ved å spesifisere et utdatafilnavn:

openssl pkcs12 -in INFILE.p12 -out OUTFILE.crt -noder

Igjen blir du bedt om passordet til PKCS # 12-filen. Som før kan du kryptere den private nøkkelen ved å fjerne -nodes flagg fra kommandoen og / eller legg til -nocerts or -nokeys for bare å sende ut den private nøkkelen eller sertifikatene. Så for å generere en privat nøkkelfil, kan vi bruke denne kommandoen:

openssl pkcs12 -in INFILE.p12 -out OUTFILE.key -noder -nocerts

Og for å lage en fil som bare inneholder sertifikatene, bruk denne:

openssl pkcs12 -in INFILE.p12 -out OUTFILE.crt -nokeys

Konverter privat nøkkel til PKCS # 1-format

Eksemplene fremfor alt sender ut den private nøkkelen i OpenSSLs standard PKCS # 8 format. Hvis du vet at du trenger PKCS # 1 i stedet kan du pipe utgangen fra OpenSSLs PKCS # 12-verktøy til RSA- eller EC-verktøyet, avhengig av nøkkeltype. Begge kommandoene nedenfor sender ut en nøkkelfil i PKCS # 1-format:

RSA

openssl pkcs12 -in INFILE.p12 -noder -nocerts | openssl rsa -out OUTFILE.key

ECDSA

openssl pkcs12 -in INFILE.p12 -noder -nocerts | openssl ec -out OUTFILE.key

OBS: Du kan se forskjellen mellom PKCS # 8 og PKCS # 1 private nøkkelfiler ved å se på den første tekstlinjen. PKCS # 1-filer vil spesifisere algoritmen:
-----BEGIN RSA PRIVATE KEY-----

PKCS # 8-filer viser ikke algoritmen, og kan også være kryptert:
-----BEGIN PRIVATE KEY-----
or
-----BEGIN ENCRYPTED PRIVATE KEY-----


Takk for at du valgte SSL.com! Hvis du har spørsmål, kan du kontakte oss via e-post på Support@SSL.com, anrop 1-877-SSL-SECURE, eller bare klikk på chat-koblingen nederst til høyre på denne siden.

Abonner på SSL.coms nyhetsbrev

Ikke gå glipp av nye artikler og oppdateringer fra SSL.com

Hold deg informert og sikker

SSL.com er en global leder innen cybersikkerhet, PKI og digitale sertifikater. Registrer deg for å motta de siste bransjenyhetene, tipsene og produktkunngjøringene fra SSL.com.

Vi vil gjerne ha tilbakemeldinger

Ta vår spørreundersøkelse og fortell oss dine tanker om ditt nylige kjøp.