kzen.dev
  • Otázky
  • Značky
  • Používatelia
Oznámenia
Odmeny
Registrácia
Po registrácii budete informovaní o odpovediach a komentároch na vaše otázky.
Prihlásiť sa
Ak už máte konto, prihláste sa a skontrolujte nové oznámenia.
Za pridané otázky, odpovede a komentáre budú udelené odmeny.
Viac na
Zdroj
Upraviť
Noah Goodrich
Noah Goodrich
Question

Čo je súbor Pem a ako sa líši od iných formátov súborov s kľúčmi generovanými protokolom OpenSSL?

Som zodpovedný za údržbu dvoch serverov Debian. Vždy, keď musím niečo urobiť s bezpečnostnými certifikátmi, vyhľadám si na Googli návody a lámem si hlavu, kým to konečne funguje.

Pri hľadaní však často narážam na rôzne formáty súborov (.key, .csr, .pem), ale nikdy sa mi nepodarilo nájsť dobré vysvetlenie, na čo ktorý formát slúži.

Chcel som sa spýtať, či by dobrí ľudia tu na ServerFault mohli poskytnúť nejaké vysvetlenie v tejto veci?

1361 2009-05-19T02:24:42+00:00 3
 HopelessN00b
HopelessN00b
Edited question 18 február 2015 в 3:19
Správa systému
certificate
pki
Solution / Answer
 sysadmin1138
sysadmin1138
19 máj 2009 в 2:49
2009-05-19T02:49:43+00:00
Viac na
Zdroj
Upraviť
#13967619

SSL je tu už dosť dlho, takže by ste si mysleli, že budú existovať dohodnuté formáty kontajnerov. A máte pravdu, existujú. Ako to už býva, je tu príliš veľa štandardov. Takže toto je to, čo viem, a som si istý, že sa pridajú aj iní.

  • .csr - Toto je žiadosť o podpis certifikátu. Niektoré aplikácie ich môžu generovať na predloženie certifikačným autoritám. Skutočný formát je PKCS10, ktorý je definovaný v RFC 2986. Obsahuje niektoré/všetky kľúčové údaje o požadovanom certifikáte, ako je subjekt, organizácia, štát a podobne, ako aj verejný kľúč certifikátu, ktorý sa má podpísať. Tieto údaje podpíše certifikačná autorita a vráti certifikát. Vrátený certifikát je verejný certifikát (ktorý obsahuje verejný kľúč, ale nie súkromný kľúč), ktorý môže mať niekoľko formátov.
  • .pem - Definovaný v RFC 1421 až 1424, je to kontajnerový formát, ktorý môže obsahovať len verejný certifikát (ako napríklad pri inštaláciách Apache a súboroch certifikátov CA /etc/ssl/certs), alebo môže obsahovať celý reťazec certifikátov vrátane verejného kľúča, súkromného kľúča a koreňových certifikátov. Mätúce je, že môže kódovať aj CSR (napr. ako sa používa tu), pretože formát PKCS10 sa dá preložiť do PEM. Názov pochádza z Privacy Enhanced Mail (PEM), neúspešnej metódy pre bezpečnú elektronickú poštu, ale použitý kontajnerový formát žije ďalej a je to preklad kľúčov x509 ASN.1 do formátu base64.
  • .key - Ide o súbor vo formáte PEM, ktorý obsahuje len súkromný kľúč konkrétneho certifikátu a je to len konvenčný názov a nie štandardizovaný. V inštaláciách Apache sa často nachádza v súbore /etc/ssl/private. Práva na tieto súbory sú veľmi dôležité a niektoré programy odmietnu načítať tieto certifikáty, ak sú nastavené nesprávne.
  • .pkcs12 .pfx .p12 - Pôvodne definovaný spoločnosťou RSA v Public-Key Cryptography Standards (skrátene PKCS), variant "12" bol pôvodne vylepšený spoločnosťou Microsoft a neskôr predložený ako RFC 7292. Ide o zaheslovaný kontajnerový formát, ktorý obsahuje dvojice verejných a súkromných certifikátov. Na rozdiel od súborov .pem je tento kontajner plne šifrovaný. Openssl ho dokáže premeniť na súbor .pem s verejnými aj súkromnými kľúčmi: openssl pkcs12 -in file-to-convert.p12 -out converted-file.pem -nodes

Niekoľko ďalších formátov, ktoré sa z času na čas objavia:

  • .der - spôsob kódovania syntaxe ASN.1 v binárnej podobe, súbor .pem je len súbor .der kódovaný v Base64. OpenSSL ich môže konvertovať na .pem (openssl x509 -inform der -in to-convert.der -out converted.pem). Systém Windows ich vidí ako súbory certifikátov. V predvolenom nastavení bude systém Windows exportovať certifikáty ako súbory vo formáte .DER s inou príponou. Napríklad...
  • .cert .cer .crt - Súbor vo formáte .pem (alebo zriedkavo .der) s inou príponou, ktorý Prieskumník Windows rozpozná ako certifikát, čo .pem nie je.
  • .p7b .keystore - Definovaný v RFC 2315 ako PKCS číslo 7, je to formát používaný systémom Windows na výmenu certifikátov. Java im rozumie natívne a často namiesto nich používa príponu .keystore. Na rozdiel od certifikátov v štýle .pem má tento formát definovaný spôsob, ako zahrnúť certifikáty certifikačnej cesty.
  • .crl - Zoznam odvolaných certifikátov. Certifikačné autority ich vytvárajú ako spôsob zrušenia autorizácie certifikátov pred vypršaním platnosti. Niekedy si ich môžete stiahnuť z webových stránok certifikačných autorít.

V súhrne existujú štyri rôzne spôsoby prezentácie certifikátov a ich súčastí:

  • PEM - riadi sa RFC, prednostne sa používa v softvéri s otvoreným zdrojovým kódom. Môže mať rôzne prípony (.pem, .key, .cer, .cert a ďalšie)
  • PKCS7 - otvorený štandard používaný v Jave a podporovaný systémom Windows. Neobsahuje materiál súkromného kľúča.
  • PKCS12 - Súkromný štandard spoločnosti Microsoft, ktorý bol neskôr definovaný v RFC a ktorý poskytuje zvýšenú bezpečnosť v porovnaní s formátom PEM s jednoduchým textom. Môže obsahovať materiál súkromného kľúča. Používa sa prednostne v systémoch Windows a možno ho voľne konvertovať na formát PEM pomocou openssl.
  • DER - Nadradený formát PEM. Je užitočné si ho predstaviť ako binárnu verziu súboru PEM zakódovaného do formátu base64. Mimo systému Windows sa bežne príliš nepoužíva.

Dúfam, že to pomôže.

 user2066657
user2066657
Edited answer 21 september 2018 в 7:28
Privacy-Enhanced Mail - Wikipedia
en.wikipedia.org
1679
0
Artificial intelligence to parse product page
productapi.dev
James F
James F
6 jún 2009 в 3:19
2009-06-06T15:19:28+00:00
Viac na
Zdroj
Upraviť
#13967620

Samotný PEM nie je certifikát, je to len spôsob kódovania údajov. Certifikáty X.509 sú jedným z typov údajov, ktoré sa bežne kódujú pomocou PEM.

PEM je certifikát X.509 (ktorého štruktúra je definovaná pomocou ASN.1), zakódovaný pomocou ASN.1 DER (pravidlá rozlišovania kódovania), potom prechádza kódovaním Base64 a je vložený medzi riadky s kotvou v podobe obyčajného textu (BEGIN CERTIFICATE a END CERTIFICATE).

Tie isté údaje môžete reprezentovať pomocou reprezentácie PKCS#7 alebo PKCS#12, na čo možno použiť nástroj príkazového riadka openssl.

Zjavnou výhodou PEM je, že sa dá bezpečne vložiť do tela e-mailovej správy, pretože má kotviace riadky a je 7-bitovo čistý.

V dokumente RFC1422 sú uvedené ďalšie podrobnosti o štandarde PEM, ktoré sa týkajú kľúčov a certifikátov.

 squareskittles
squareskittles
Edited answer 16 apríl 2019 в 9:21
145
0
Artificial intelligence to parse product page
productapi.dev
 mgold
mgold
15 marec 2012 в 12:24
2012-03-15T00:24:54+00:00
Viac na
Zdroj
Upraviť
#13967621

Niekedy je súbor .crt už súborom .pem. Pozri: https://stackoverflow.com/questions/991758/openssl-pem-key

 Community
Community
Edited answer 23 máj 2017 в 12:41
56
0
Pridať otázku
Kategórie
Všetky
Technológia
Kultúra / Rekreácia
Život / Umenie
Veda
Profesionálne
Obchod
Používatelia
Všetky
New
Popular
1
Анна Литвиненко
Registered pred dňom
2
Inessa bu
Registered pred mesiacom
3
Denis Babushkin
Registered pred mesiacom
4
asakuno asakuno
Registered pred mesiacom
5
aldo salerno
Registered pred mesiacom
Artificial intelligence to parse product page
productapi.dev
BG
DA
DE
EL
ES
FR
ID
IT
JA
KO
LT
LV
NL
NO
PT
RO
RU
SK
TR
ZH
© kzen.dev 2023
Zdroj
serverfault.com
na základe licencie cc by-sa 3.0 s uvedením autora