PKI : 인증서 발급 과정의 이해 - CSR 생성부터 활용 예시까지

1. 인증서 발급 과정

다음은 인증서 발급을 위한 공개 키 기반 구조(PKI, Public Key Infastructure)의 구성 요소들의 상호 작용을 그림으로 표현한 내용이다.

 

< 인증서 발급 과정 >

 

  1. 사용자는 신분증을 제시하는 방법 등 정책에 기재된 방식으로 등록 기관(RA, Registration Authority)에게 신원 확인을 요청한다.
  2. RA는 사용자의 신원을 확인하여 이상 없음을 확인한다.
  3. RA는 인증 기관(CA, Certificate Authority)에게 사용자 등록을 요청한다.
  4. CA는 사용자 정보를 등록한다.
  5. 사용자는 키쌍 생성 후 인증서 서명 요청문(CSR, Certificate Signing Request)을 생성한다.
  6. 사용자는 RA에게 CSR을 첨부하며 인증서 발급을 요청한다.
  7. RA는 CA에게 CSR을 첨부하며 인증서 발급을 요청한다.
  8. CA는 사용자 등록 여부를 확인 후 인증서를 발급한다.
  9. CA는 발급한 인증서를 LDAP 서버에 전송한다. LDAP 서버는 전달받은 인증서를 저장한다.
  10. CA는 발급한 인증서를 RA를 거쳐서 사용자에게 전달한다.

 

※ 참고 : 인증서 서명 요청문 (CSR, Certificate Signing Request)

인증서를 발급하기 위한 요청 문서이다. 해당 요청문에는 다음과 같은 정보가 포함되어 인증 기관이 인증서를 발급하는데 활용된다.

1.  사용자의 공개 키 : 인증서에 사용자의 공개 키를 포함하기 위함.
2. 사용자의 신원 정보 : 인증 기관에 등록된 사용자 정보와 일치여부 확인 후 인증서에 해당 정보가 포함.
3. 사용자의 서명값 : 사용자의 개인 키를 사용하여 CSR에 서명한 값. 해당 값으로 무결성을 확인.

 

2. PKI 인증서 발급 성공의 의미

CA가 사용자의 인증서를 발급했다는 것은 단순한 행위를 넘어 다음과 같은 의미를 내포한다.

 

  • 인증 기관을 통한 사용자의 신원 검증 완료.
  • 인증 기관의 신뢰가 무너지지 않는 한 사용자의 키쌍을 신뢰할 수 있음. (참고 : CA의 신뢰성 메커니즘)
  • 사용자의 인증서는 인증 기관의 신뢰 체계의 일부로 편입됨. (참고 : 인증 경로와 인증서 체인)
  • 사용자는 자신의 인증서를 적절히 관리하고 개인 키를 안전하게 보호할 책임이 부여됨.

 

3. 발급된 인증서 활용 예시

다음은 발급된 인증서가 네트워크 상에서 어떻게 활용될 수 있는지에 대한 예시이다. 

 

  • 지젤이는 인증서 발급 과정을 거쳐 이미 자신의 인증서와 개인 키를 소유 중이다.

< 인증서 로그인 활용 예시 : SignedData >

 

  1. 지젤이는 은행 업무를 온라인으로 보기 위해 은행 서버에 접속한다.
  2. 지젤이의 브라우저는 '인증서를 활용한 로그인'을 하기 위해 자신의 개인 키로 전자 서명을 수행하여 SignedData를 생성한다.
  3. 지젤이의 브라우저는 SignedData를 은행 서버에 전송하며 로그인 요청을 한다.
  4. 은행 서버는 인증서 유효성 검사를 수행한다.
  5. 은행 서버는 전달받은 서명값의 이상 유무를 확인한다.
  6. 은행 서버는 비즈니스 로직을 수행 후 로그인 요청에 대해 성공 응답을 보낸다.
  7. 이후 지젤이는 은행 업무를 본다.

 

※ 참고

SignedData : 데이터의 무결성과 송신자의 신원 인증을 보장하기 위해 사용되는 구조로 주로 디지털 서명에 활용된다.

 

4. 마무리

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

 

  • CA는 신원이 확인된 사용자를 등록하고 해당 사용자에게 인증서를 발급한다. 발급된 인증서는 사용자와 LDAP 서버에 안전하게 전달된다.
  • '인증서를 발급했다'는 것은 사용자의 신원, 키쌍 정보를 PKI 체계 내에서 신뢰할 수 있음을 공식적으로 인정했다는 것을 의미한다.
  • 발급된 인증서는 네트워크 상에서 데이터 암호화, 디지털 서명 등 다양한 보안 기능에 활용된다.

 

 

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