OneWebDesk

CSR 디코더

CSR(인증서 서명 요청)을 붙여넣으면 주체·키 정보를 해석합니다.

CSR 디코더는 인증서 서명 요청(CSR, Certificate Signing Request) PEM의 형식 유효성을 빠르게 확인하는 도구입니다. -----BEGIN CERTIFICATE REQUEST----- 블록이 올바른지, 내부 base64가 깨지지 않았는지, DER 바이너리로 정상 디코드되는지를 점검합니다. 인증기관(CA)에 CSR을 제출하기 전에 복사·붙여넣기 과정에서 줄바꿈이나 공백이 끼어 손상되지 않았는지 확인하기 좋습니다.

입력한 CSR은 서버에서 형식 검증과 SHA-256 지문 계산에만 쓰이며 저장되지 않습니다. 주체(CN)·SAN 같은 상세 필드까지 완전히 해석하려면 로컬에서 openssl req -in csr.pem -noout -text 명령을 쓰는 것이 가장 정확합니다. 이 도구는 제출 직전 "형식이 맞는가"를 가볍게 확인하는 용도에 초점을 둡니다. 발급받은 인증서를 풀어 보려면 SSL 인증서 디코더를, 서버에 설치한 뒤 라이브 점검은 SSL 인증서 검사기를 사용하세요.

CSR이란 무엇인가

CSR은 SSL/TLS 인증서를 발급받기 위해 인증기관에 제출하는 요청 데이터입니다. 공개키와 주체 정보(도메인, 조직 등)를 담고 개인키로 서명되어 있으며, 보통 Base64로 인코딩된 PEM 텍스트 형태입니다. 개인키 자체는 CSR에 포함되지 않으므로 안전하게 공유할 수 있습니다.

openssl로 CSR 만들고 확인하기

  • 새 키 + CSR 생성: openssl req -new -newkey rsa:2048 -nodes -keyout domain.key -out domain.csr
  • CSR 내용 확인: openssl req -in domain.csr -noout -text
  • CSR 서명 검증: openssl req -in domain.csr -noout -verify
  • 주체(Subject)만 보기: openssl req -in domain.csr -noout -subject

제출 전 체크리스트

  • BEGIN/END 줄을 포함한 PEM 전체를 빠짐없이 붙여넣었는지
  • 중간에 공백·줄바꿈이 끼어 base64가 깨지지 않았는지
  • 키 길이는 2048비트 이상(RSA) 또는 ECDSA P-256 이상인지
  • Common Name과 SAN에 발급받을 도메인이 정확히 들어갔는지

자주 묻는 질문

이 도구가 CN이나 SAN 같은 필드도 보여주나요?
아니요. 이 도구는 형식 유효성(PEM 헤더, base64, DER 디코드)과 SHA-256 지문만 확인합니다. 주체·SAN·서명 알고리즘 등 상세 필드는 로컬에서 openssl req -in csr.pem -noout -text 로 확인하는 것이 가장 정확합니다.
입력한 CSR이 서버에 저장되나요?
아니요. 형식 검증과 지문 계산에만 사용되며 디스크에 저장하지 않습니다. 결과는 잠시 인메모리 캐싱될 뿐 영구 보관되지 않습니다.
'유효'로 나왔는데 CA가 거부했어요.
이 도구의 '유효'는 형식(PEM/base64/DER 구조)이 정상이라는 뜻입니다. 키 길이 정책, 도메인 소유 검증, 잘못된 주체 정보 등 내용상의 문제로 CA가 거부할 수 있습니다. openssl req -text 로 내용을 점검하세요.
CSR에 개인키가 들어있나요?
아니요. CSR에는 공개키와 주체 정보, 서명만 포함됩니다. 개인키는 별도 파일(.key)로 로컬에 보관해야 하며 절대 공유하면 안 됩니다.
어떤 형식의 CSR을 넣어야 하나요?
-----BEGIN CERTIFICATE REQUEST----- 로 시작하는 PEM(Base64) 텍스트를 그대로 붙여넣으세요. DER 바이너리는 지원하지 않습니다.

관련 도구