IT 그리고 정보보안/Knowledge base

PKI (Public-Key Infrastructure)

plummmm 2021. 4. 16. 06:31
반응형

자.. 이번에는 PKI(Public-Key Infrastructure).. 공개키 인증 구조에 대해 알아보자.

유저가 올바르게 공개키를 획득할 수 있도록 구현된 구조이다.

 

PKI는 여러가지 요소로 구성이 되어있다.

* 공개키 인증서 

* 인증기관 (CA)

* 저장소

* 사용자

* 등록기관

 

이중에 가장 중요한게 공개키 인증서 겠죠.. 이놈도 여러가지 요소로 구성돼있다

- 공개키 인증서 해당 공개키의 주인, 그에 맞는 개인키를 가지고 있는 놈이 누군지.

- 인증서 정책 : 인증서가 어떤 방식으로 사용되나

- 인증서 경로 : 인증서 연결 경로

- 인증서 철회 리스트 (CRL, Certificate Revocation List) : 인증서 취소목록이다. 키가 유효한지..(X.509에 정의된 목록 이용)

 

일단 PKI가 뭔지 감을 잡아보자.

 

이렇게 CA 들이 계층 구조화 되어있는 것이다.

맨 위에 CA는 root CA로, CA1, CA2, CA3를 관리하는 녀석이다.

국가 단위로 인증서를 관리하려면 기관 하나에서 다 관리하기 힘들다. 그래서 저렇게 가지를 쳐서 관리를 함.

 

예를 하나 들어보자.

 

CA1에서 발급한 A사용자의 인증서를 표기하는 방법은 

CA1<<사용자A>> 요렇게 생겼다.

 

자신의 인증서 + CA1의 인증서 모두 들고 있어야 한다.

+ Root CA 값은 안전하게 갖고 있어야 한다.

 

User1과 User5가 인증을 하려고 할 때,

user1은 일단 root CA의 공개키를 갖고 있어야 하고,

 user5는 CA<<CA2>>, CA2<<USER5>> 를 user1에게 보낸다.

 

1. user1은 CA의 공개키를 이용하여 CA<<CA2>>를 검증한다.

2. CA2의 공개키를 추출한다. ( CA<<CA2>> 로 부터)

3. CA2의 공개키를 이용하여 CA2<<User5>>를 검증한다.

4. User5의 공개키를 추출한다 ( CA2<<User5>>로 부터)

 

그리고 .. root CA가 여러개인 경우가 있다. 국가와 국가간 인증할 때 그러하겠지.

그럴 땐 아래와 같이 교차 인증을 해야 한다.

 

위와 같이 계층 구조가 아니라 서로 인증을 해야 하는 구조이다.

 

반응형