Konwerter CRT na PEM
Konwersja binarnego certyfikatu bezpieczeństwa CRT na format tekstowy PEM zakodowany w Base64 zapewnia jego zgodność z serwerami internetowymi Apache, Nginx oraz nowoczesnymi systemami Linux.
Porównanie formatów i specyfikacja techniczna
| Specyfikacja | CRT | PEM |
|---|---|---|
| Typ MIME | application/ | application/ |
| Typ | certyfikat publiczny X.509 | kontener certyfikatów ASCII zakodowanych w Base64 |
| Kompresja | brak | brak (dane zakodowane w Base64 w formacie PEM) |
| Standardowa specyfikacja | ITU-T X.509 / RFC 5280 | IETF RFC 7468 |
| Nagłówek z bajtami identyfikującymi | 30 82 (DER SEQUENCE) or -----BEGIN CERTIFICATE----- (PEM text) | 2D 2D 2D 2D 2D 42 45 47 49 4E (-----BEGIN CERTIFICATE / RSA PRIVATE KEY) |
Przegląd formatu i zastosowania
Certyfikaty bezpieczeństwa chronią dane przesyłane między przeglądarkami internetowymi a serwerami. Plik CRT często wykorzystuje format binarny o nazwie DER lub może być zwykłym plikiem tekstowym. Wiele serwerów WWW z systemem Linux, modułów równoważenia obciążenia i klientów poczty e-mail wymaga, aby certyfikaty bezpieczeństwa korzystały z formatu PEM. Pliki PEM używają standardowych znaków tekstowych i umieszczają dane zabezpieczeń wewnątrz określonych znaczników granic. Administratorzy systemów często spotykają się z tym wymogiem formatowania podczas przenoszenia certyfikatów bezpieczeństwa ze środowisk systemu Windows do systemów Linux. Serwery internetowe Apache i Nginx oczekują, że klucz publiczny i klucz prywatny będą znajdować się w plikach tekstowych PEM. Konwersja certyfikatu CRT gwarantuje, że oprogramowanie serwera poprawnie odczyta dane kryptograficzne podczas uzgadniania połączenia SSL.
Specyfikacja techniczna i analiza kodeków
Plik CRT używa typu MIME application/x-x509-ca-cert. Zawiera surowe dane binarne w przypadku przechowywania w formacie DER lub tekst, jeśli został wyeksportowany z określonych urzędów certyfikacji. Format PEM używa typu MIME application/x-pem-file. Skrót PEM oznacza Privacy Enhanced Mail i działa jako format kontenera do przechowywania kluczy kryptograficznych. Żaden z formatów nie używa kompresji, więc konwersja nie zmniejsza jakości pliku. Binarny plik CRT nie zawiera czytelnego tekstu, podczas gdy plik PEM charakteryzuje się czytelnymi nagłówkami, takimi jak -----BEGIN CERTIFICATE-----, po których następuje ciąg znaków ASCII zakodowanych w Base64 oraz znacznik końcowy -----END CERTIFICATE-----. Konwersja polega po prostu na tłumaczeniu surowych bajtów na czytelny tekst ASCII bez modyfikowania leżących u podstaw obliczeń klucza publicznego.
Zgodność z systemami operacyjnymi i przeglądarkami
Rozszerzenie pliku certyfikatu nie określa, czy jego zawartość jest zakodowana w DER, czy w PEM. Obsługa zależy od aplikacji i wymaganego kodowania. OpenSSL i wiele narzędzi serwerowych przyjmuje pliki PEM, a narzędzia certyfikatów Windows często obsługują certyfikaty X.509 w obsługiwanych kodowaniach i kontenerach.
Przydatne informacje
Zawsze weryfikuj za pomocą poleceń OpenSSL, czy twój klucz prywatny pasuje do nowo przekonwertowanego certyfikatu PEM przed ponownym uruchomieniem produkcyjnego serwera WWW.
Często zadawane pytania
Jak przekonwertować certyfikat CRT na PEM bez utraty jakości?
CRT i PEM to rozszerzenia plików, a nie stałe kodowania. Jeśli wejściem jest obsługiwany certyfikat, konwersja zmienia jego serializację lub kontener. Sprawdź certyfikat wynikowy w docelowym oprogramowaniu.
Czym różni się certyfikat CRT od certyfikatu PEM?
CRT to rozszerzenie nazwy pliku używane dla certyfikatów, których zawartość może być zakodowana w DER lub PEM. PEM to tekstowe kodowanie Base64 z etykietami oznaczającymi granice. Rzeczywiste kodowanie należy rozpoznać na podstawie zawartości pliku, a nie samego rozszerzenia.