Certyfikat PEM (.pem)

IETF Standard

Privacy-Enhanced Mail (PEM) to uniwersalny, czytelny dla człowieka standard tekstu dla zasobów kryptograficznych, kodujący binarne certyfikaty DER i klucze prywatne jako tekst Base64 otoczony charakterystycznymi banerami '-----BEGIN...-----'.

Konwertuj CRT na PEM

Darmowy konwerter z CRT na PEM w przeglądarce. Konwertuj pliki natychmiast na swoim urządzeniu.

Inspekcja i metadane

Systemy operacyjne i analizatory plików identyfikują pliki PEM, sprawdzając początkową sekwencję bajtów binarnych:

Wybierz lub upuść pliki tutaj

Prywatnie - pliki nigdy nie opuszczają Twojego urządzenia

lub wklej Ctrl+V
Gwarancja prywatności bez przesyłania danych do sieci: 0 bajtów przesłanych na zewnętrzne serwery. Całe przetwarzanie odbyło się lokalnie w piaskownicy przeglądarki.

Podpis nagłówka na poziomie bajtów (Magic Bytes)

Systemy operacyjne i analizatory plików identyfikują pliki PEM, sprawdzając początkową sekwencję bajtów binarnych:

PODPIS HEX (OFFSET 0):

2D 2D 2D 2D 2D 42 45 47 49 4E

REPREZENTACJA ASCII: -----BEGIN

Normalizacja: IETF RFC 7468 / RFC 1421

Specyfikacja techniczna

Architektura konteneraKontener ASCII zakodowany w Base64, ograniczony znacznikami „-----BEGIN [LABEL]-----” i „-----END [LABEL]-----”, zawierający struktury binarne DER
KompresjaNieskompresowany format tekstowy
Kolejność bajtów (Endianness)Strumień tekstu ASCII / UTF-8
Przestrzenie kolorówNie dotyczy (kontener kryptograficzny)
Kanały i strukturaCertyfikaty, klucze prywatne (RSA/EC/DSA), żądania podpisania certyfikatu (CSR), klucze publiczne i listy unieważnionych certyfikatów
Maks. wymiaryNieograniczony strumień tekstu, który może zawierać kilka połączonych certyfikatów
PrzezroczystośćCzytelny tekstowy kontener ASCII
Streaming i progresywne ładowanieSekwencyjne odczytywanie kolejnych bloków PEM

Techniczna macierz porównawcza: PEM a konkurencja

Atrybut technicznyPEM (Bieżący)DERP12CRT
Tekst a plik binarnyCzytelny dla człowieka tekst Base64Tylko surowe bajty binarneZaszyfrowane archiwum binarneZazwyczaj tekst Base64
Wykorzystanie w chmurze i DevOpsUniwersalny standard (AWS, K8s)Tokeny sprzętowe / JavaImport do serwera Windows IISKonfiguracje serwerów WWW
Dozwolona zawartośćCertyfikaty, klucze prywatne, łańcuchy, żądania CSRPojedynczy certyfikat lub kluczPołączony certyfikat + zaszyfrowany kluczZazwyczaj tylko certyfikaty publiczne
Możliwość kopiowania i wklejaniaTak (wklej bezpośrednio do pól tekstowych)Nie (binarny)Nie (binarny)Tak (jeśli zakodowany w PEM)

Typowe tryby uszkodzeń i przewodnik odzyskiwania szesnastkowego

Błąd OpenSSL: 'PEM_read_bio: no start line'.

Główna przyczyna: Brakujący lub uszkodzony baner nagłówka „-----BEGIN ...-----” albo nieprawidłowe znaki końca linii CRLF w systemie Windows.

Odzyskiwanie: Przywróć standardowy nagłówek złożony z 5 myślników za pomocą File2File.app Certificate Tool.

Analiza bezpieczeństwa i wektory ataku na parser

Pliki PEM często zawierają nieszyfrowane klucze prywatne („-----BEGIN RSA PRIVATE KEY-----”). Ich ujawnienie może dać pełny dostęp do serwera.

Znane wektory ataku

  • Zatwierdzanie nieszyfrowanych kluczy prywatnych PEM do publicznych repozytoriów kontroli wersji.
  • Ataki typu directory traversal odczytujące klucze PEM serwera poprzez lokalne dołączanie plików (LFI).
  • Słabe hasła do zaszyfrowanych plików PEM z kluczami prywatnymi.

Najlepsze praktyki obronne: Chroń pliki PEM z kluczami prywatnymi za pomocą ścisłych uprawnień systemu plików (chmod 600) i nigdy nie dodawaj ich do systemu git.

Pochodzenie historyczne i kamienie milowe

2015IETF publikuje RFC 7468, formalizując tekstowe kodowania struktur PKIX, PKCS i CMS.
1998OpenSSL przyjmuje PEM jako swój główny format, czyniąc go de facto standardem w informatyce o otwartym kodzie źródłowym.
1993IETF publikuje RFC 1421 dotyczące Privacy-Enhanced Mail, wprowadzając tekstowe kodowanie danych kryptograficznych.

Główne zalety

  • Czytelny dla człowieka i gotowy do wklejenia: można go kopiować do formularzy internetowych, konsol chmurowych (AWS, GCP) oraz wiadomości e-mail.
  • Szeroko stosowany w OpenSSL, systemach Linux, Dockerze, sekretach Kubernetes i infrastrukturze chmurowej.
  • Obsługa wielu certyfikatów: umożliwia zapisanie pełnego łańcucha zaufania w jednym pliku tekstowym przez umieszczenie kolejnych bloków jeden pod drugim.

Ograniczenia techniczne i wady

  • Około 33% większy niż surowy binarny DER ze względu na narzut kodowania Base64.
  • Przypadkowe uszkodzenie: zmiany zawijania wierszy lub brakujące kreski w banerach mogą powodować błędy analizy składniowej.
  • Nieszyfrowane pliki PEM z kluczami prywatnymi stanowią ekstremalne zagrożenie bezpieczeństwa w przypadku wycieku.

Ciekawe informacje techniczne

  • Choć PEM powstał na potrzeby systemu szyfrowanej poczty elektronicznej, który nie zdobył popularności, jego kodowanie tekstowe stało się najpopularniejszym formatem kryptograficznym na świecie.
  • Każdy prawidłowy plik PEM zaczyna się od pięciu kresek: '-----BEGIN'.
  • Pełny łańcuch certyfikatów SSL tworzy się po prostu poprzez wklejenie wielu bloków 'BEGIN CERTIFICATE' jeden po drugim w jednym pliku .pem.

Często zadawane pytania techniczne

Czym jest plik .pem?

Plik .pem to oparty na tekście format służący do przechowywania certyfikatów bezpieczeństwa, kluczy prywatnych lub całych łańcuchów certyfikatów w czytelnym formacie Base64 z nagłówkami '-----BEGIN...-----'.

Jak przekonwertować plik PEM do formatu P12 lub PFX?

Możesz przekonwertować swój certyfikat PEM oraz klucz prywatny na zabezpieczony hasłem plik P12/PFX jednym kliknięciem za pomocą File2File.app bezpośrednio w przeglądarce internetowej.

Jak mogę sprawdzić datę ważności certyfikatu PEM?

Otwórz swój plik .pem w File2File.app, aby zdekodować datę wygaśnięcia, wystawcę oraz nazwy domen bez wysyłania jakichkolwiek danych na serwery zewnętrzne.