공개키 기반 구조: Difference between revisions

From CS Wiki
No edit summary
No edit summary
 
(7 intermediate revisions by 7 users not shown)
Line 1: Line 1:
[[분류:보안]][[분류:암호학]][[분류:정보처리기사]]
;PKI, Public Key Infrastructure
==개요==
==개요==
* 공개키 기반의 암호화 구조로, 신뢰되는 제3의 공인인증기관을 요구하는 인증체계를 가리키는 말
* [[공개키 암호화]] 기술과 신뢰된 인증기관을 통해 인증서를 발행하고 전자서명, 부인방지 등의 기능을 제공하는 보안 체계
* 대표적으로 공인인증서와 SSL이 있다.  
* 대표적인 사용 예로 공인인증서와 SSL이 있다.  
*;-둘다 Server-Client, 또는 Peer-To-Peer끼리 자체적으로 암호화 키를 교환하지 않는다.<br> 공인인증기관을 두고, 인증서를 기반으로 소통한다.
:둘다 Server-Client, 또는 Peer-To-Peer끼리 자체적으로 암호화 키를 교환하지 않는다.<br> 공인인증기관을 두고, 인증서를 기반으로 소통한다.


RFC 2822에선 다음과 같이 정의한다.
RFC 2822에선 다음과 같이 정의한다.
Line 9: Line 11:
</pre>
</pre>


==구성요소==
== 구성 ==
인증기관(CA, Certification Authority)
* 인증기관(CA, Certification Authority)
;*인증서 발행기관. 아래 3계층으로 구분할 수 있다.
**인증서 발행기관. 아래 3계층으로 구분할 수 있다.
;#정책 승인기관(PAA, Policy Approving Authority)
*#정책 승인기관(PAA, Policy Approving Authority)
;#정책 인증기관(PCA, Policy Certification Authority)
*#정책 인증기관(PCA, Policy Certification Authority)
;#인증기관(CA, Certification Authority)
*#인증기관(CA, Certification Authority)
* 검증기관(VA)
** 권장되지만 선택적이다. 인증기관에서 이 일을 할 수도 있다.
* 등록기관(RA)
** 선택적이다. 인증기관에서 이 일을 할 수도 있다.
* 저장소(Repository)
** 대표적으로 X.500, LDAP 등을 이용한다.
* 사용자
** 사람이 아닌 시스템도 포함이다.
** 인증서를 요청하고, 생성하고, 검증하는 능동적인 역할을 하는 주체


검증기관(VA)
== 시스템 요소 ==
;* 권장되지만 선택적이다. 인증기관에서 이 일을 할 수도 있다.
* KGS(Key Generation System): 공개키, 비밀키 쌍 생성
 
* [[OCSP]], [[CRL]]
등록기관(RA)
** 인증서의 유효성 검증을 위해 실시간성의 OCSP 또는 배치성의 CRL 이용
;* 선택적이다. 인증기관에서 이 일을 할 수도 있다.
** OCSP(Online Certificate Status Protocol): 발급된 인증서의 효력 실시간 조회
 
** CRL(Certificate Revocation List): 인증서의 유효성을 확인하기 위한 취소된 인증서 목록
저장소(Repository)
* TSA(Time Stamp Authority): 정보 교환 시 시간정보를 포함시켜 위변조 및 부인방지 제공
;* 대표적으로 X.500, LDAP 등을 이용한다.
* KMI(Key Management Infrastructure): 전자서명 비밀키의 이동성 보장을 위한 키 로밍 서비스
 
사용자
;* 사람이 아닌 시스템도 포함이다.
;* 인증서를 요청하고, 생성하고, 검증하는 능동적인 역할을 하는 주체




==구조==
==구조==
[[파일:공인인증구조.png|700px]]
===계층 구조===
===계층 구조===
* 위에서 설명한 대로 인증기관이 계층적으로 존재하는 트리형태의 구조
* 위에서 설명한 대로 인증기관이 계층적으로 존재하는 트리형태의 구조
Line 36: Line 44:
* 최상위 인증기관 간의 인증은 허용(국제 상호동작 지향)하나, 하위 인증기관끼리는 인증 할 수 없다.
* 최상위 인증기관 간의 인증은 허용(국제 상호동작 지향)하나, 하위 인증기관끼리는 인증 할 수 없다.
* 최상위 인증기관의 비밀키 노출시 전 인증기관에 위협이 된다.
* 최상위 인증기관의 비밀키 노출시 전 인증기관에 위협이 된다.


===네트워크 구조===
===네트워크 구조===
Line 43: Line 50:
* 인증경로 탐색이 복잡하다.
* 인증경로 탐색이 복잡하다.
* 한 인증기관의 비밀키가 노출될 경우 국소적인 피해가 발생한다.
* 한 인증기관의 비밀키가 노출될 경우 국소적인 피해가 발생한다.


===혼합형 구조===
===혼합형 구조===
Line 55: Line 61:
* 인증기관이 ''"저 이름, 소속 등을 가진 사람은 이 공개키를 가진다."'' 라고 인증하는 파일
* 인증기관이 ''"저 이름, 소속 등을 가진 사람은 이 공개키를 가진다."'' 라고 인증하는 파일


 
===인증서 표준===
===X.509===
;[[X.509]]
* 인증서 표준 규격
* 인증서 표준 규격
* 버전, 일련번호, 서명 알고리즘ID, 발행자 이름, 유효기간, 주체 이름, 주체의 공개키, 발행자 유일 식별자, 주체 유일 식별자, 확장, 서명으로 구성
* 버전, 일련번호, 서명 알고리즘ID, 발행자 이름, 유효기간, 주체 이름, 주체의 공개키, 발행자 유일 식별자, 주체 유일 식별자, 확장, 서명으로 구성


 
[[분류:보안]]
===폐지 목록(CRL)와 검증 프로톨콜(OCSP)===
[[분류:정보보안기사]]
* 폐지된 인증서들은 CRL(Certificate Revocation List)에 등재되며 사용자가 언제든지 확인 가능
* OCSP(Online Certificate Status Protocol)은 ORL을 읽어, 인증서의 상태의 정상여부를 판별

Latest revision as of 09:42, 1 May 2020

PKI, Public Key Infrastructure

개요[edit | edit source]

  • 공개키 암호화 기술과 신뢰된 인증기관을 통해 인증서를 발행하고 전자서명, 부인방지 등의 기능을 제공하는 보안 체계
  • 대표적인 사용 예로 공인인증서와 SSL이 있다.
둘다 Server-Client, 또는 Peer-To-Peer끼리 자체적으로 암호화 키를 교환하지 않는다.
공인인증기관을 두고, 인증서를 기반으로 소통한다.

RFC 2822에선 다음과 같이 정의한다.

PKI는 공개키 암호화를 기초로, 인증서를 생성·관리·저장·분배·취소 하는데 필요한 하드웨어, 소프트웨어, 사람, 정책, 절차이다.

구성[edit | edit source]

  • 인증기관(CA, Certification Authority)
    • 인증서 발행기관. 아래 3계층으로 구분할 수 있다.
    1. 정책 승인기관(PAA, Policy Approving Authority)
    2. 정책 인증기관(PCA, Policy Certification Authority)
    3. 인증기관(CA, Certification Authority)
  • 검증기관(VA)
    • 권장되지만 선택적이다. 인증기관에서 이 일을 할 수도 있다.
  • 등록기관(RA)
    • 선택적이다. 인증기관에서 이 일을 할 수도 있다.
  • 저장소(Repository)
    • 대표적으로 X.500, LDAP 등을 이용한다.
  • 사용자
    • 사람이 아닌 시스템도 포함이다.
    • 인증서를 요청하고, 생성하고, 검증하는 능동적인 역할을 하는 주체

시스템 요소[edit | edit source]

  • KGS(Key Generation System): 공개키, 비밀키 쌍 생성
  • OCSP, CRL
    • 인증서의 유효성 검증을 위해 실시간성의 OCSP 또는 배치성의 CRL 이용
    • OCSP(Online Certificate Status Protocol): 발급된 인증서의 효력 실시간 조회
    • CRL(Certificate Revocation List): 인증서의 유효성을 확인하기 위한 취소된 인증서 목록
  • TSA(Time Stamp Authority): 정보 교환 시 시간정보를 포함시켜 위변조 및 부인방지 제공
  • KMI(Key Management Infrastructure): 전자서명 비밀키의 이동성 보장을 위한 키 로밍 서비스


구조[edit | edit source]

공인인증구조.png

계층 구조[edit | edit source]

  • 위에서 설명한 대로 인증기관이 계층적으로 존재하는 트리형태의 구조
  • 인증경로 탐색이 용이하다.
  • 최상위 인증기관 간의 인증은 허용(국제 상호동작 지향)하나, 하위 인증기관끼리는 인증 할 수 없다.
  • 최상위 인증기관의 비밀키 노출시 전 인증기관에 위협이 된다.

네트워크 구조[edit | edit source]

  • 상하위 관계 없이 인증의 표준만 가지고 인증기관 각각이 자신의 정책에 따라 독립적으로 존재
  • 모든 인증기관이 상호 인증을 할 수 있다.
  • 인증경로 탐색이 복잡하다.
  • 한 인증기관의 비밀키가 노출될 경우 국소적인 피해가 발생한다.

혼합형 구조[edit | edit source]

  • 계층 구조와 네트워크 구조를 필요에 따라 적절히 혼합한 구조
  • 계층 구조를 기반으로 하되, 네트워크 구조의 융통성을 가미하는 경우


인증서(PKC, Public Key Certificate)[edit | edit source]

인증서의 구성[edit | edit source]

  • 이름 소속 등 개인식별 정보, 공개키, 인증기관의 서명
  • 인증기관이 "저 이름, 소속 등을 가진 사람은 이 공개키를 가진다." 라고 인증하는 파일

인증서 표준[edit | edit source]

X.509
  • 인증서 표준 규격
  • 버전, 일련번호, 서명 알고리즘ID, 발행자 이름, 유효기간, 주체 이름, 주체의 공개키, 발행자 유일 식별자, 주체 유일 식별자, 확장, 서명으로 구성