Hva er PEM-filformatet?
PEM-filendelsen brukes av sertifikatfiler for å lagre og transportere kryptografiske nøkler, sertifikater og andre typer data. PEM-filer er Base64-kodet og lagrer data i ASCII-tekstformat - hver blokk er pakket inn i gjenkjennelige hode- og bunntekstlinjer som -----BEGIN CERTIFICATE----- og -----END CERTIFICATE-----.
PEM-kodede sertifikatfiler brukes ofte på internettservere da de er enkle å vise med et standard tekstredigeringsprogram. PEM-filer brukes til å autentisere pålitelige nettsteder og er standardformatet på Unix-baserte webservere som Apache og Nginx. En enkelt .pem-fil kan bunte sammen flere blokker - for eksempel et serversertifikat, mellomliggende sertifikater og en privat nøkkel - alt i én fil. PEM er også mye brukt for SSH-nøkkelpar og TLS/HTTPS-konfigurasjon.
PEM-sertifikater bruker en digitalt signert offentlig nøkkel for sikkerhetsformål. Autentiseringsprosessen bruker den offentlige nøkkelen til å identifisere eieren av nøkkelen og bekrefte at de er den de utgir seg for å være. Private nøkler lagret i .pem-filer kan valgfritt beskyttes med et passord for ekstra sikkerhet.
Opprinnelig designet for Privacy-Enhanced Mail tidlig på 1990-tallet, ble PEM-kodingen formalisert som en IETF-standard i RFC 7468 (2015). Det er fortsatt det mest brukte beholderformatet for X.509-sertifikater og kryptografiske nøkler. Relaterte binære formater inkluderer .DER og PKCS#12-filer; .crt og .key-filer er ofte bare omdøpte .pem-filer som inneholder henholdsvis et sertifikat eller en nøkkel.
- PEM-filer støttes av OpenSSL og de fleste TLS/SSL-verktøysett.
- Åpning av en
.pem-fil med et tekstredigeringsprogram viser tydelig de markerte-----BEGIN-----og-----END-----hode- og bunnseksjonene. - En enkelt
.pem-fil kan inneholde forskjellige objekttyper:CERTIFICATE,PRIVATE KEY,RSA PRIVATE KEY,PUBLIC KEY,CERTIFICATE REQUEST, med flere.
Sikkerhet og trygghet
RISIKO: HIGHFaren med .pem er tilfellet med PRIVATE KEY. En .pem som inneholder «-----BEGIN PRIVATE KEY-----» (eller RSA/EC PRIVATE KEY) er en hemmelighet: alle som har den kan utgi seg for å være din server, dekryptere trafikk eller logge inn på din skyinstans. Lim ALDRI en privat nøkkel i .pem-format inn i en online «PEM-viser/konverterer» eller send den via e-post; gjør konverteringer lokalt med OpenSSL. Sett strenge tillatelser (SSH avviser en nøkkel som er lesbar for alle - «chmod 600 key.pem»). En .pem som bare er et CERTIFICATE (offentlig) er trygg å dele. Vær forsiktig med online sertifikatkonverterere for alt som involverer en nøkkel. Filene i seg selv er inaktiv tekst og kan ikke kjøres.
Formatdetaljer
i et nøtteskallProgrammer som åpner PEM-filer
Tekniske detaljer
dyp spesifikasjon| Koding | Base64-kodet DER-data pakket inn i ASCII hode- og bunntekstlinjer |
| Filstruktur | En eller flere PEM-blokker, hver avgrenset av `-----BEGIN <type>-----` og `-----END <type>-----` linjer |
| Underliggende binærformat | DER (Distinguished Encoding Rules), et binært ASN.1-serialiseringsformat |
| MIME-type | `application/x-pem-file` |
| Støttede objekttyper | `CERTIFICATE`, `PRIVATE KEY`, `RSA PRIVATE KEY`, `PUBLIC KEY`, `CERTIFICATE REQUEST` |
| Konvensjon for linjelengde | Base64-data brutt ved 64 tegn per linje i henhold til RFC 7468 |
| Støtte for flere objekter | En enkelt `.pem`-fil kan sette sammen flere PEM-blokker, for eksempel en fullstendig sertifikatkjede pluss en privat nøkkel |
| Vanlige alternative filendelser | `.crt`, `.cer`, `.key`, `.ca-bundle` - samme PEM-format, ulike navnekonvensjoner etter rolle |
| Beskyttelse av privat nøkkel | Nøkkelblokker kan krypteres med et passord ved bruk av PKCS#8 eller eldre PEM-krypteringshoder |
| Primære bruksområder | TLS/HTTPS-serversertifikater, SSH-nøkkelpar, CA-sertifikatbunter, kodesigneringssertifikater |
| Interoperabilitet | Kan konverteres til binær `.der` med `openssl x509 -outform DER`; PKCS#12 (`.p12`)-filer kan eksporteres til PEM |
| Tegnsett | Kun US-ASCII - Base64-alfabetet (A-Z, a-z, 0-9, +, /) pluss bindestreker i hode/bunn og typemerker |
| Håndtering av linjeskift | RFC 7468 krever LF (\n) linjeskift; mange verktøy godtar også CRLF for bakoverkompatibilitet |
| Syntaks for hode/bunn | Fem bindestreker, `BEGIN` eller `END`, et mellomrom, objekttypemerket, fem bindestreker - f.eks. `-----BEGIN CERTIFICATE-----` |
| Utgitt | PEM email RFCs 1421-1424 (1993); the encoding lives on as the textual format, codified in RFC 7468 (2015) |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | www.rfc-editor.org |
PEM-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om PEM-filer.