PEM·CRT·CER·DER 인증서 파일 차이와 올바르게 여는 방법
PEM은 Base64 텍스트와 BEGIN·END 헤더를 사용하는 인코딩이고 DER은 바이너리 인코딩입니다. CRT와 CER은 파일 용도를 나타내는 확장자로 PEM 또는 DER일 수 있으므로 확장자만 보지 말고 실제 내용과 파서 결과를 확인해야 합니다.
인증서 설치 오류는 확장자보다 내용 형식, 체인 순서, 개인키 혼동에서 자주 생깁니다. 변환부터 시도하기 전에 인증서인지, 개인키인지, 중간 인증서 묶음인지 구분하는 것이 먼저입니다.
먼저 보는 핵심 요약
- 텍스트 편집기로 열어 BEGIN CERTIFICATE가 보이면 일반적으로 PEM 형식입니다.
- DER은 바이너리라 텍스트 편집기에서 읽을 수 없으며 전용 파서나 openssl 명령으로 확인합니다.
- 인증서와 개인키, 루트·중간 인증서 체인은 서로 다른 파일이므로 내용과 용도를 구분합니다.
확장자와 실제 인코딩이 일치하지 않는 이유
CRT와 CER은 관행적인 확장자라 파일 내부가 PEM인지 DER인지 보장하지 않습니다. 운영체제와 서버 제품마다 선호 확장자도 다릅니다. 파일명을 바꾸는 것만으로 인코딩이 변환되지는 않으며 실제 ASN.1 인코딩을 읽어야 합니다.
PEM 파일에서 헤더로 내용을 구분하는 법
인증서는 BEGIN CERTIFICATE, 개인키는 BEGIN PRIVATE KEY 또는 알고리즘별 PRIVATE KEY 헤더를 사용합니다. 하나의 PEM에 여러 인증서가 이어지면 체인 묶음일 수 있습니다. 개인키가 섞여 있다면 공개 채널에 붙여 넣거나 저장소에 커밋해서는 안 됩니다.
DER 바이너리 파일을 확인하는 방법
텍스트로 열었을 때 깨진 문자처럼 보이면 DER일 수 있습니다. X.509 디코더나 openssl x509의 inform 옵션으로 파싱해 주체, 발급자, 유효기간, SAN이 정상적으로 나오는지 확인합니다. 파싱 실패만으로 파일이 인증서라고 단정할 수는 없습니다.
변환 후에도 반드시 검증해야 하는 항목
PEM과 DER 사이를 바꿔도 인증서의 주체와 유효기간은 같아야 합니다. SHA-256 지문을 비교하고 체인 순서, SAN, 공개키 알고리즘을 확인합니다. 서버 설치 전에는 개인키와 공개키가 짝을 이루는지도 별도 검증해야 합니다.
단계별로 확인하는 방법
- 원본 파일 백업하기
인증서와 키 파일을 권한이 제한된 위치에 복사하고 작업용 사본을 만듭니다.
- 헤더와 바이너리 여부 확인하기
텍스트 헤더가 있는지 보고 인증서·개인키·요청 파일을 구분합니다.
- X.509 내용 디코딩하기
주체, 발급자, 유효기간, SAN, 지문이 예상한 인증서와 맞는지 확인합니다.
- 필요한 형식으로 변환 후 재검증하기
대상 서버가 요구하는 PEM 또는 DER로 바꾸고 지문과 주요 필드를 다시 비교합니다.
판단 기준을 한눈에 비교하기
| 확인 항목 | 판단 기준 |
|---|---|
| PEM | Base64 텍스트와 BEGIN·END 헤더를 사용하며 여러 인증서를 이어 담을 수 있습니다. |
| DER | ASN.1 바이너리 인코딩으로 텍스트 편집기에서 읽기 어렵습니다. |
| CRT·CER | 확장자만으로 PEM·DER를 확정할 수 없어 실제 내용을 확인합니다. |
| KEY | 개인키일 가능성이 높으며 인증서보다 강한 비밀정보로 취급합니다. |
실행 전 체크리스트
- 작업 파일이 인증서인지 개인키인지 구분했나요?
- 확장자가 아니라 실제 인코딩을 확인했나요?
- 변환 전후 SHA-256 지문과 SAN이 같은가요?
- 개인키가 로그·채팅·저장소에 노출되지 않았나요?
주의할 점
개인키는 인증서 디코더에 넣을 필요가 없습니다. 실제 개인키를 온라인 화면, 이슈, 채팅에 붙여 넣지 말고 노출이 의심되면 즉시 폐기·재발급 절차를 진행하세요.
함께 보면 좋은 글
자주 묻는 질문
CRT 파일은 무조건 PEM인가요?
아닙니다. PEM 또는 DER일 수 있습니다. BEGIN CERTIFICATE 헤더와 실제 파싱 결과로 확인하세요.
파일 확장자만 pem으로 바꾸면 변환되나요?
이름만 바뀔 뿐 내부 인코딩은 그대로입니다. 대상 형식에 맞는 변환 도구로 처리해야 합니다.
인증서 체인은 어떤 순서로 넣나요?
일반적으로 서버 인증서 뒤에 중간 인증서를 이어 붙이며 루트 포함 여부는 서버 제품 지침을 따릅니다. 설치 대상의 공식 문서를 확인하세요.
CER 파일을 브라우저에서 열 수 없는 이유는 무엇인가요?
DER 바이너리이거나 운영체제가 연결 프로그램을 모를 수 있습니다. X.509 파서로 실제 형식을 먼저 확인하세요.
근거와 출처
- RFC 5280 X.509 프로필 — 1차 출처, 조회일 2026-08-30
- OpenSSL x509 문서 — 1차 출처, 조회일 2026-08-30
도구에서 직접 확인하기
설명한 기준을 실제 값에 적용하려면 SSL 인증서 디코더에서 작은 샘플부터 확인하세요. 원본과 결과를 나란히 비교한 뒤 실제 사용 환경에 적용하는 순서가 가장 안전합니다.
이 글은 알파카랩스 Utils의 개발 도구 도구와 함께 보는 정보성 가이드입니다. 규격과 외부 서비스 정책은 바뀔 수 있으므로 중요한 결정 전에는 연결된 공식 출처의 최신 내용을 다시 확인하세요.