반응형
Today
Total
Recent Posts
Recent Comments
Archives
11-27 13:01
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
관리 메뉴

UD_park's IT story

[Security] PKI에 대한 정의와 개념 본문

IT - For Data/Information Security

[Security] PKI에 대한 정의와 개념

kingllzn 2018. 10. 12. 14:24
반응형
SMALL

2018/10/10 - [IT - For Data/Information Security] - [Security] WAS의 정의와 개념에 대한 설명

 

이번 포스팅에서는 PKI에 대해서

정의와 개념을 알아보고 정확하게 PKI의

역할과 기능에 대해서 알아보도록 하겠습니다.

 

일단 PKI에 대해서 사전적인 정의와 의미에 대해서

알아보면서 시작해보겠습니다.

 

공개키 기반구조. 인터넷상의 거래 비밀을 보장하면서도

거래 당사자들의 신분을 확인시켜 주는 보안기술이다.

공개한 의미는 수신자만 열쇠를 갖고 있는 자물쇠를 여러

사람에게 나눠줬다는 것을 의미한다. 즉 자신에게 귀중품을

보낼때 금고에 먼저 그것을 담고, 금고열쇠는 다시 자신만이

열수 있는 자물쇠로 봉합해 보내라는 것이다. 데이터를 암호화하는

방법에는 공개키와 비밀키 방식이 있다. 비밀키 암호시스템이 송수신자

양측에서 똑같은 비밀키를 공유하는 데 반해 공개키는 암호화와

복호화키가 다르기 때문에 데이터를 암호화하고 이를 다시 풀 수 있는

열쇠가 달라 거의 완벽한 데이터 보완이 가능하고 정보유출의 가능성이

적은 시스템이다. 공개키 암호방식은 대칭키 암호기술이 제공하는 기밀성,

무결성 기능뿐 아니라 인증, 부인방지, 전자서명과 같은 다양한 정보보호

기능을 제공하고 키 분배 문제를 해결할 수 있는 가장

효과적인 대안으로 인식되고 있다.

엄청나게 길게 그리고 어렵게 설명하고있습니다..

좀 더 쉽게 저의 방식으로 설명을

이어가보도록 하겠습니다.

 

일단 PKI는 공개키 기반의 알고리즘을 활용해

암호화를 하고, 그 암호화 방식으로 공인인증서와

전자서명이라는 기능의 System을 제공하기 위해

사용되는 환경과 그 전체를 나타내는 말입니다.

 

이 말도 어려우실 수 있겠지만 하나 하나씩 풀어서

설명해드리겠습니다. 일단 공개키(Public Key)라는 것은

예를 들면 제가 가지고 있는 Key가 여러분들이 저에게

접근하여 보고, 듣고, 가져갈 수 있도록 공개되어있는 상태에

놓여진 Key를 공개키(Public Key)라고 합니다.

 

그 반대는 비밀키(Private Key)라고 합니다.

의미도 역할도 정반대라고 생각하셔도 무방할 것 같습니다.

 

그리고 알고리즘은 당연히 보안을 공부하시는 분들이라면

아시다시피 어떠한 업무나 문제를 해결하기 위해서 작성하는

절차나 방법이나 명령어들을 논리적으로 설명하는 그림과 같은

집합체입니다.

 

그리고 암호화(Encryption)란 이것도 다들 아시겠지만 간단히만 설명하자면

"Hello World"라는 문장을 다른 사람에게 보낼 때

비밀스럽게 보내기 위해서 이 문장을 다른 사람이 알아보지 못하도록

변형하는 것을 말합니다. 예를 들어 "Hello World"를 암호화하면

"RAIFJ45GE#$"등과 같은 알 수없는 문장으로 바꿔 버립니다.

 

공인인증서와 전자서명이란 현재 포스팅에서 다루기엔

내용이 너무 길어질 것같으므로, 차후에 자세하게

설명과 개념을 다뤄보도록 하겠습니다.

 

 

 

그럼 여태까지 설명한 것들을 쉽게 종합하면

아래와 같은 정의가 내려집니다.

 

 

아무나 접근해서 보고, 듣고, 가져갈 수있는 공개키(Public key)

사용해서 데이터를 주고 받고 할 때 다른 사람이 끼어들어

함부로 알아볼 수 없도록 데이터를 변형하는 방식이 있는데,

이 방식을 사용해서 공인인증서전자서명이란 아이들을

제공해 줄 수 있는 것이 바로 PKI(Public Key Infrastructure)라고 한다.

쉽게 풀어 쓰려다 보니 길어지긴 했습니다만,

이해하시는데는 훨씬 쉬워졌을거라 생각됩니다.

 

참고로 복호화(Decryption)란, 암호화된 데이터를 다시 원상태로

되돌리는 작업을 말합니다. 암호화의 반대 과정에

해당합니다.

 

 

그리고 PKI는 데이터를 암호화하는 방식에서

크게 2가지로 분류 되어집니다.

1. 비공개키(대칭키) 방식

2.  공개키(비대칭키)방식

1. 비공개키(대칭키) 방식

 

그림으로 먼저 쉽게 설명을 해보도록 하겠습니다.

 

 

위의 방식을 대칭키라고 하는 이유는 그림에서

보시다시피 점선을 기준으로 위와 아래의 키가

똑같은 하나의 비밀키를 2번 사용하기 때문에

점선을 기준으로 대칭이라 하여 대칭키 방식이라고 합니다.

 

정의를 정리하여 설명하자면, 암호화/복호화 할 때

사용하는 키가 동일할 때를 말하며, 사용되는 키의 개수는

1개 입니다. 대칭키 방식 또한 2가지의 알고리즘 방식이

존재하는데, 하나는 스트림 암호 알고리즘이고, 다른 하나는

블록 암호 알고리즘이라고 합니다.

 

두 가지에 대해서는 별도의 포스팅으로 좀 더 자세하게

다뤄보도록 하겠습니다.

 

일단 대칭키 방식의 단점은 위의 그림과 같은 과정이

시작되기 전에, 비밀키를 수신자 측과 송신자 측간에 서로

교환이 있어야하는데, 이때 중간자 공격(Man in the Middle Attack)이

발생할 가능성이 존재한다는 단점이 있습니다.

 

장점으로는 암호화 할 때 연산 속도가 빠르다는

장점을 가지고 있습니다.

 

 

위의 방식을 사용하는 대표적인 알고리즘은

DES, AES, SEED 등의 방식이 존재합니다.

 

 

 

 

2.  공개키(비대칭키)방식

 

비대칭키 방식은 대칭키의 키 관리가 매우 취약하다는

문제점을 해결하고자 등장한 방식입니다.

 

간단한 정의를 먼저 설명하자면 사용하는 키와

복호화할 때 사용하는 키가 서로 다른 경우이며, 타인에게

절대 노출되어서는 안되는 비밀키(개인키), 비밀키를 토대로 만든

공개키가 한 쌍을 이룬 형태입니다. 총 2개의 키로 암호화와 복호화가

진행됩니다. 공개키와 비밀키를 간단하게 설명하겠습니다.

 

공개키 : 사람들에게 공개된 키이며 정보를 암호화 할 수 있음

비밀키 : 사용자만 알 수 있는 암호를 풀 수 있는 키(=개인키)

 

그럼 그림으로 동작 방법에 대해서 알아보도록

하겠습니다.

 

전에 그림으로 설명했었던 대칭키 암호화 방식과

차이점은 딱 키가 2개라는 것 뿐입니다.

그 외에 구동되는 동작 원리는 동일합니다.

 

비대칭키 암호화 방식의 장점은 키 교환 알고리즘이

안전하다는 장점을 가지고 있습니다.

 

단점으로는 알고리즘이 복잡한 수학적 연산으로

구성되어 있기 때문에 속도가 대칭키 방식보다 느립니다.

 

여기까지 PKI에 대해서 대략적으로 알아보는

포스팅을 이만 마치도록 하겠습니다

 

 

 

혹시 다른것에 대해 궁금하신게

있으시다면

댓글에 달아주세요

 

아는것이면 친절하게 쉽게

모르는것이면 또 제가 알아내서

친절하게 쉽게 포스팅해서

설명해드리겠습니다

 

 

반응형
LIST
Comments