본문 바로가기
cryptology

암호학에 대해 알아보자

by jinhyuk._.c 2022. 8. 12.

암호학이란?

 

정보를 보호하기 위한 언어학적 및 수학적 방법론을 다루는 학문입니다.

암호학은 수학을 중심으로 컴퓨터, 통신, 실생활 등 여러 분야에서 공동으로 연구 및 개발되고 있습니다.

초기의 암호는 메시지 보안에 초점이 맞추어져 군사 또는 외교적 목적으로 사용되었지만, 현재는 메시지 보안 이외에도 인증, 서명 등을 암호의 범주에 포함해 우리의 일상에서 떼 놓을 수 없는 중요한 분야가 되었습니다.

 

암호학을 이용하여 보호해야 할 메시지를 '평문'이라고 하며, 평문을 암호학적 방법으로 변환한 것을 '암호문'이라고 합니다. 이때 평문을 암호문으로 변환하는 과정을 '암호화'라고 하며, 암호문을 다시 평문으로 변환하는 과정을 '복호화'라고 합니다.

 

암호는 여러 방면에서 사용이되고 다양하게 있습니다. 그리고 중요하게 여겨지는 보안의 3대 요소가 다음과 같이 있습니다.

 

1. 기밀성: 부적절한 노출을 방지하고  허가받은 사용자가 아니면 내용에 접근할 수 없어야 합니다. 즉 암호화된 암호문을 전송하면 기밀성을 제공할 수 있어야 합니다.

 

2. 무결성: 부적절한 변경 방지하고 허가받은 사용자가 아니면 내용을 변경할 수 없어야 합니다. 즉 네트워크를 통해 전송되는 정보가 인가되지 않은 제 3자에 의하여 변형되지는 않았는지 확인하는 기능이 무결성입니다.

 

3. 가용성: 부적절한 서비스 거부 방지입니다. 즉 인가된 사용자가 정보를 사용할 수 있도록 하는 것입니다.

 

위 내용을 토대로 한 암호는 여러 시스템이 있는데요. 대표적인 시스템으로 '대칭키 암호 시스템', '공개키 암호 시스템' 이 있습니다. 첫번째로 대칭키 암호 시스템에 대해 알아보겠습니다.

 

대칭키 암호 시스템이란? 

암호문을 생성할 때 사용하는 키(Key)와 암호문으로부터 평문을 복원할 때 사용하는 키(Key)가 동일한 암호 시스템입니다. 암호 시스템의 안전성은 키(Key)의 길이, 키(Key)의 안전한 관리에 상대적으로 의존성이 높습니다. 암호문의 작성자와 이의 수신자가 동일한 키(Key)를 비밀리에 관리해야 하므로 폐쇄적인 특성을 갖는 사용자 그룹에 적합한 암호 시스템입니다.  

 

그림 예시를 한번 보도록 하겠습니다.

대칭키 암호방식

위 그림은 엘리스(Alice)가 밥(Bob)에게 암호문을 보내고 복호화하는 가장 기본적인 과정을 보여줍니다.

1. 대칭키 교환: 엘리스와 밥은 같은 키를 공유하고 있어야 합니다.

2. 암호화: 엘리스는 공유한 키로 암호화를 하며,

3. 복호화: 밥은 같은 키로 이를 복호화합니다.

보통 복호화 과정은 암호화 과정의 역과정입니다. 

(각 시스템마다 암호의 종류는 다음 페이지에서 자세하게 다루겠습니다.)

 

위의 방식은 암호화가 간단하지만 문제점이 있습니다. 바로 암호화를 할때 사용하는 키(Key)에 대한 관리가 어렵다는 점입니다. 시스템에 가입한 사용자들 사이에 매번 두 사용자 마다 하나의 서로 다른 키를 공유해야 하기 때문에 n명이 가입한 시스템에는 nC2 = n(n-1)/2개 의 키가 필요하고 또 각 사용자는 n-1 개의 키를 관리해야 하는 부담이 있습니다. 이런 문제를 해결하기 위해 나온 암호 시스템이 바로 공개기 암호 시스템입니다. 그러면 바로 공개키 암호 시스템에 대새서 알아보겠습니다.

 

공개키 암호 시스템이란?

대칭키 암호 시스템의 약점을 보완하기 위해 나타난 암호 시스템이 공개키 암호 시스템입니다. 공개키 암호 시스템에서 각 사용자는 두 개의 키를 부여받는데 그 하나는 공개되고(공개키, public key), 다른 하나는 사용자에 의해 비밀리에 관리(비밀키, private key) 되어야 합니다. 공개키 암호 시스템에서 각 사용자는 자신의 비밀키만 관리하면 되므로 키 관리의 어려움을 줄일 수 있습니다. 공개키 암호 시스템에서는 각 사용자의 공개키를 관리하는 공개키 관리 시스템이 필요하며 각 사용자는 이 시스템에 자유롭게 접근하여 다른 사용자의 공개키를 열람할 수 있어야 합니다.

그림 예시를 한번 보도록 하겠습니다.

공개키 암호방식

엘리스(Alice)가 밥(Bob)에게 암호문을 보내고 복호화하는 가장 기본적인 과정을 기술합니다.

1. 두 사용자에게는 각각 공개키와 비밀키가 부여되었고, 이들의 공개키는 공개키 디렉터리에 저장되어 있습니다.

2. 엘리스는 공개키 디렉터리에서 밥의 공개키를 찾아 이를 이용하여 문서를 암호화하여 밥에게 보냅니다.

3. 밥은 수신한 비밀문서를 자신만이 알고 있는 자신의 비밀키로 복호화하여 엘리스가 보낸 문서의 내용을 알 수 있습니다.

(각 시스템마다 암호의 종류는 다음 페이지에서 자세하게 다루겠습니다.)

 

위의 시스템은 공개키만으로는 복호화가 불가능하기 때문에, 엘리스 역시 암호화하고 나서 복원할 수 없다는 특징이 있습니다. 공개키 암호 시스템에서 암호화-복호화 시스템은 두 키가 짝으로 동작하기 때문에, 비밀키로 암호화하고 공개키로 복호화할 수도 있습니다. 이 방법을 이용하면 해당 공개키에 맞는 비밀키 보유자를 확인할 수 있으며, 전자서명에서는 이런 성질을 이용합니다.

 

추가적인 설명으로 공개키와 비밀키의 관계에 대해서 알아보겠습니다.

공개키 암호 시스템에서 각 사용자에게 부여되는 공개키와 비밀키에는 수학적 연관이 있기 때문에 암호화와 복호화가 가능합니다. 이 둘은 마치 두 조각으로 나뉜 유리 조각과 같습니다. 한쪽은 공개되어 있고 그에 맞는 다른 한쪽은 감추어져 있는 것입니다. 그러나 이들은 본래의 모습을 감추고 있습니다. 한쪽이 그대로 공개된다면 숨겨진 다른 한쪽의 모습도 알려질 수 있기 때문입니다. 원래의 모습을 감추고 또 원래의 모습으로 되돌리는 과정에서 수학이 중요한 역할을 합니다.

 

다음 챕터에서는 암호시스템의 종류에 대해 자세하게 알아보겠습니다.

 

반응형

'cryptology' 카테고리의 다른 글

SEED 암호화란?  (0) 2022.08.31
Twofish 암호화란?  (0) 2022.08.17
ARIA 암호란?? ARIA 에 대해 알아보자  (0) 2022.08.16
AES 란? AES 암호란?  (0) 2022.08.12
대칭키 암호 시스템과 DES 에 대해 알아보자  (0) 2022.08.12

댓글