보안/인증서 / / 2025. 2. 17. 17:51

X.509 인증서의 기본 필드 정리 : 버전, 일련번호, 유효기간까지

1. X.509 인증서 기본 구조

이전 글에서 언급한 X.509 인증서 구조를 참고한다면 인증서 구조에 대한 전체 맥락을 확인할 수 있다.

X.509 Certificate
   │
   ├─ TBSCertificate
   │        │
   │        ├─ Version               ┐
   │        ├─ SerialNumber          │
   │        ├─ SignatureAlgorithm    │
   │        ├─ Issuer                │ 기본필드
   │        ├─ Validity              │
   │        ├─ Subject               │
   │        ├─ SubjectPublicKeyInfo  ┘
   │        │
   │        └─ Extensions           ─  확장 필드
   │
   ├─ SignatureAlgorithm
   │
   └─ SignatureValue

 

요약하자면 X.509 인증서는 TBSCertificate, SignatureAlgorithm, SignatureValue로 구성된 구조체이다. 그중 TBSCertificate에는 다양한 정보가 담겨 있으며, 해당 데이터는 기본 필드(Mandatory Fields)와 확장 필드(Extensions Fields)로 구분할 수 있다.

 

2. X.509 인증서 - 기본 필드 상세 설명

기본 필드는 X.509 인증서에 반드시 포함되어야 하는 핵심 정보이다. 이 필드들은 총 7개로 구성되며, 인증서의 신뢰성을 보장하고 상호 운용성을 확보하기 위해 공통 구조로 설계되었다.

 

  • Version
인증서의 X.509 버전 정보. 현재 사용 중인 버전은 '3'이다.

 

  • Serial Number
인증서의 고유 식별자. 각 인증서는 인증 기관(CA, Certificate Authority)이 발급하는 고유한 일련번호를 가져야 한다. 주로 정수 값으로 표현된다.

 

  • Signature Algorithm
CA가 인증서를 서명할 때 사용해야 할 서명 알고리즘을 명시하는 값. 해당 값은 OID(Object Identifier) 값으로 기재된다.

 

  • Issuer
인증서를 발급한 기관 정보. 일반적으로 발급자라고 불리며 DN(Distinguished Name) 형식으로 표현된다.

 

  • Validity
인증서의 유효 기간. 시작일(notBefore)과 만료일(notAfter)로 구성된다. 해당 일자가 지나면 인증서는 더 이상 신뢰할 수 없다.

 

  • Subject
인증서를 소유한 Entity(사용자, 서버 등) 정보. 일반적으로 주체라고 불리며 발급자와 마찬가지로 DN(Distinguished Name) 형식으로 표현된다.

 

  • Subject Public Key Info
주체의 공개 키 정보. 해당 필드는 공개 키 알고리즘(Subject Public Key Algorithm)과 실제 공개 키 값(Subject Public Key)으로 구성된다.

 

 

3. X.509 인증서 기본 필드 출력 예시

OpenSSL 명령어를 사용하여 X.509 인증서의 내부 구조와 세부 내용을 확인할 수 있다. 아래의 예시를 통해 기본 필드가 어떻게 출력되는지 확인해 보자. 

 

% openssl x509 -in cert.pem -text -noout

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            3a:ab:79:89:cc:cc:3a...
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: C=XX, O=XXX, CN=XXX
        Validity
            Not Before: Jan  1 01:00:08 2025 GMT
            Not After : Mar 31 01:00:07 2025 GMT
        Subject: CN=XXXXXXXXX
        Subject Public Key Info:
            Public Key Algorithm: id-ecPublicKey
                Public-Key: (256 bit)
                pub:
                    04:49:10:d3:90:32:e8:27....
                ASN1 OID: prime256v1
                NIST CURVE: P-256

 

위의 예제에서는 인증서의 버전, 일련번호, 서명 알고리즘, 발급자, 유효 기간, 주체, 공개 키 정보를 확인할 수 있다.

 

4. 마무리

이번 글을 정리하면 다음과 같다.

 

  • X.509 인증서의 기본 필드는 인증서가 신뢰될 수 있도록 중요한 정보를 포함하며, 상호 운용성을 확보하는 데 필수적이다.
  • 기본 필드는 버전, 일련번호, 서명 알고리즘, 발급자, 유효 기간, 주체, 주체의 공개키 정보가 있다.
  • X.509 인증서 확장 필드는 다음 글을 확인하자.

 

 

  • 네이버 블로그 공유
  • 네이버 밴드 공유
  • 페이스북 공유
  • 카카오스토리 공유