icon

안동민 개발노트

5장 : 정보보안일반

암호학 기초

5장 1절부터는 네 번째 과목인 정보보안일반을 다룹니다.

5장 1절부터는 네 번째 과목인 정보보안일반을 다룹니다.

정보보안일반은 보안의 기본 원리를 다루는 과목입니다.
그중 가장 중요한 축이 바로 암호학입니다.

암호학은 처음 보면 어렵게 느껴질 수 있지만, 정보보안기사 수준에서는 먼저 아래 구조를 확실히 잡으면 됩니다.

왜 암호를 쓰는가?
무엇을 보호하는가?
어떤 암호 방식이 있는가?
각 방식은 어디에 쓰이는가?

이번 절은 세부 알고리즘을 깊게 파기보다, 암호학 전체 지도를 만드는 데 목적이 있습니다.


학습 목표

이번 절가 끝나면 다음 질문에 답할 수 있어야 합니다.

질문목표
암호학의 목적은 무엇인가?기밀성, 무결성, 인증, 부인방지를 제공한다고 설명
기밀성이란 무엇인가?허가받은 사람만 정보를 볼 수 있게 하는 것이라고 설명
무결성이란 무엇인가?정보가 위변조되지 않았음을 보장하는 것이라고 설명
인증이란 무엇인가?사용자나 시스템의 신원을 확인하는 것이라고 설명
부인방지란 무엇인가?행위자가 나중에 자신의 행위를 부인하지 못하게 하는 것이라고 설명
대칭키 암호란 무엇인가?암호화와 복호화에 같은 키를 사용하는 방식이라고 설명
공개키 암호란 무엇인가?공개키와 개인키 한 쌍을 사용하는 방식이라고 설명
해시 함수란 무엇인가?임의 길이 데이터를 고정 길이 값으로 변환하는 일방향 함수라고 설명
전자서명이란 무엇인가?개인키로 서명하고 공개키로 검증하여 인증·무결성·부인방지를 제공한다고 설명
암호화와 해시의 차이는?암호화는 복호화 가능, 해시는 원칙적으로 복원 불가라고 설명

암호학의 큰 그림

암호학은 정보를 안전하게 보호하기 위한 수학적·기술적 방법입니다.

시험식 정의는 다음입니다.

암호학은 정보를 권한 없는 사람이 이해하거나 변조하지 못하도록 암호화, 해시, 전자서명, 키 관리 등의 기술을 이용하여 기밀성, 무결성, 인증, 부인방지를 제공하는 학문과 기술이다.
핵심 의미
암호학 = 정보를 숨기고, 바뀌지 않았는지 확인하고, 누가 보냈는지 증명하는 기술

암호학은 다음 보안 목표와 연결됩니다.

보안 목표의미대표 기술
기밀성허가받은 사람만 내용을 볼 수 있음암호화
무결성데이터가 위변조되지 않았음해시, MAC, 전자서명
인증사용자나 시스템의 신원 확인인증서, 전자서명, MAC
부인방지행위자가 나중에 부인하지 못함전자서명

CIA와 암호학

정보보안의 기본 3요소는 CIA입니다.

요소영어의미
기밀성Confidentiality허가받은 사람만 정보에 접근
무결성Integrity정보가 위변조되지 않음
가용성Availability필요할 때 서비스를 사용할 수 있음

암호학은 주로 기밀성무결성, 그리고 인증·부인방지와 관련됩니다.

상황침해 요소
개인정보가 외부로 유출됨기밀성 침해
계좌 금액이 조작됨무결성 침해
DDoS로 서비스 접속 불가가용성 침해
거래 당사자가 “내가 한 거래가 아니다”라고 주장부인방지 필요

암호학이 직접 가용성을 보장하는 것은 아닙니다.
가용성은 백업, 이중화, DDoS 방어, 장애 대응 같은 기술과 더 직접적으로 연결됩니다.


암호학에서 자주 나오는 용어

주요 용어는 다음과 같다.

용어의미
평문암호화되기 전의 원래 데이터
암호문암호화된 데이터
암호화평문을 암호문으로 변환
복호화암호문을 평문으로 변환
암호화·복호화에 사용하는 비밀값
알고리즘암호화·복호화 방법
대칭키암호화와 복호화에 같은 키를 사용
공개키외부에 공개할 수 있는 키
개인키본인만 안전하게 보관해야 하는 키
해시값해시 함수의 결과값
전자서명개인키로 생성한 서명값
인증서공개키와 신원 정보를 인증기관이 보증한 문서

예를 들어 암호화 흐름은 다음과 같습니다.

평문 + 키 + 암호 알고리즘 → 암호문
암호문 + 키 + 복호 알고리즘 → 평문

암호화와 복호화

암호화

암호화는 평문을 알아볼 수 없는 형태인 암호문으로 바꾸는 과정입니다.

시험식 정의
암호화는 권한 없는 사용자가 내용을 이해할 수 없도록 평문을 암호문으로 변환하는 과정이다.
평문: 정보보안기사 합격
암호문: A8x#91kP...

암호화의 주된 목적은 기밀성입니다.


복호화

복호화는 암호문을 다시 평문으로 되돌리는 과정입니다.

시험식 정의
복호화는 암호화된 데이터를 올바른 키를 이용해 원래의 평문으로 복원하는 과정이다.
중요한 점
암호화는 복호화가 가능하다.
해시는 원칙적으로 복호화가 불가능하다.

이 차이는 시험에서 자주 나옵니다.


인코딩, 암호화, 해시의 차이

초보자가 자주 헷갈리는 부분입니다.

구분목적되돌릴 수 있는가?예시
인코딩표현 형식 변환가능Base64, URL Encoding
암호화기밀성 보호키가 있으면 가능AES, RSA
해시무결성 확인, 비밀번호 저장원칙적으로 불가SHA-256

인코딩

인코딩은 데이터를 다른 표현 형식으로 바꾸는 것입니다.
보안 목적의 비밀 보호가 아닙니다.

Hello → SGVsbG8=

이것은 Base64 인코딩입니다.
누구나 다시 디코딩할 수 있으므로 암호화가 아닙니다.

인코딩은 보안 기능이 아니라 표현 방식 변환이다.

암호화

암호화는 키가 있어야 원래 내용을 볼 수 있게 하는 것입니다.

암호화 = 기밀성 보호

해시

해시는 데이터를 고정 길이 값으로 변환하는 일방향 함수입니다.

해시 = 무결성 확인, 비밀번호 저장 등에 사용
시험식 답안
인코딩은 데이터 표현 형식을 바꾸는 것으로 보안 목적의 암호화가 아니며, 암호화는 키를 이용해 평문을 암호문으로 변환하고 복호화가 가능하다. 해시는 임의 길이 데이터를 고정 길이 값으로 변환하는 일방향 함수로, 원칙적으로 원문 복원이 불가능하다.

대칭키 암호

대칭키 암호란?

대칭키 암호는 암호화와 복호화에 같은 키를 사용하는 방식입니다.

시험식 정의
대칭키 암호는 암호화와 복호화에 동일한 비밀키를 사용하는 암호 방식이다.
핵심 의미
대칭키 = 같은 키로 잠그고 같은 키로 푼다
A와 B가 같은 비밀키를 공유한다.
A가 비밀키로 암호화한다.
B가 같은 비밀키로 복호화한다.

대칭키 암호의 특징

특징설명
속도빠름
용도대량 데이터 암호화에 적합
키 구조송신자와 수신자가 같은 키 공유
장점처리 속도가 빠르고 효율적
단점키를 안전하게 공유하기 어려움
대표 알고리즘AES, SEED, ARIA, DES, 3DES

대표 알고리즘은 우선 이렇게 기억하면 됩니다.

AES = 대표적인 대칭키 암호

DES는 오래된 알고리즘이고, 현대 보안에서는 안전하지 않은 것으로 봅니다.
시험에서는 DES, 3DES, AES의 비교가 나올 수 있지만, 이번 절에서는 기초만 잡습니다.


대칭키 암호의 장점과 단점

장점

빠르다.
대량 데이터 암호화에 적합하다.
구현이 비교적 효율적이다.

단점

키를 안전하게 전달해야 한다.
사용자가 많아지면 키 관리가 복잡하다.
키가 유출되면 암호화와 복호화가 모두 위험해진다.
시험식 답안
대칭키 암호는 암호화와 복호화에 같은 키를 사용하므로 속도가 빠르고 대량 데이터 암호화에 적합하다. 그러나 송신자와 수신자가 동일한 키를 안전하게 공유해야 하므로 키 분배와 키 관리가 어렵다.

공개키 암호

공개키 암호란?

공개키 암호는 공개키와 개인키라는 서로 다른 키 한 쌍을 사용하는 방식입니다.

시험식 정의
공개키 암호는 공개키와 개인키 한 쌍을 사용하여 암호화, 복호화, 전자서명, 키 교환 등에 활용되는 암호 방식이다.
핵심 의미
공개키 = 남에게 공개 가능
개인키 = 본인만 보관

공개키 암호의 기본 구조

공개키와 개인키는 한 쌍입니다.

설명
공개키다른 사람에게 공개 가능
개인키본인만 안전하게 보관
관계공개키로 암호화한 것은 대응되는 개인키로 복호화 가능
관계개인키로 서명한 것은 대응되는 공개키로 검증 가능
대표 알고리즘
RSA
ECC

우선은 이렇게 기억하면 됩니다.

RSA = 대표적인 공개키 암호
ECC = 타원곡선 기반 공개키 암호

공개키 암호의 특징

특징설명
키 구조공개키와 개인키 쌍
장점키 분배 문제 완화
단점대칭키보다 느림
용도키 교환, 전자서명, 인증서
대표 알고리즘RSA, ECC

공개키 암호는 대량 데이터 암호화에는 잘 쓰지 않습니다.
속도가 느리기 때문입니다.

보통은 이렇게 사용합니다.

공개키 암호로 대칭키를 안전하게 교환한다.
실제 데이터는 대칭키로 빠르게 암호화한다.

이것을 하이브리드 방식이라고 볼 수 있습니다.


대칭키와 공개키 비교

구분대칭키 암호공개키 암호
같은 비밀키 사용공개키·개인키 쌍 사용
속도빠름상대적으로 느림
키 분배어려움상대적으로 쉬움
용도대량 데이터 암호화키 교환, 전자서명, 인증
대표 알고리즘AES, SEED, ARIARSA, ECC
주요 문제키 공유와 관리속도와 개인키 보호
시험식 답안
대칭키 암호는 암호화와 복호화에 같은 키를 사용하여 속도가 빠르고 대량 데이터 암호화에 적합하지만 키 분배가 어렵다. 공개키 암호는 공개키와 개인키 쌍을 사용하여 키 분배 문제를 완화하고 전자서명과 인증에 활용되지만 대칭키 방식보다 속도가 느리다.

해시 함수

해시 함수란?

해시 함수는 임의 길이의 데이터를 고정 길이의 해시값으로 변환하는 일방향 함수입니다.

시험식 정의
해시 함수는 임의 길이의 입력 데이터를 고정 길이의 해시값으로 변환하는 일방향 함수로, 데이터 무결성 검증과 비밀번호 저장 등에 사용된다.
핵심 의미
해시 = 데이터의 지문

예를 들어 파일 내용이 조금만 바뀌어도 해시값이 크게 달라집니다.


해시 함수의 특징

특징의미
일방향성해시값으로 원문을 알아내기 어려움
고정 길이 출력입력 길이와 관계없이 결과 길이가 일정
충돌 저항성서로 다른 입력이 같은 해시값을 갖기 어려움
빠른 계산해시값을 빠르게 계산 가능
눈사태 효과입력이 조금 바뀌면 해시값이 크게 달라짐

시험에서 특히 중요한 것은 다음입니다.

일방향성
고정 길이 출력
충돌 저항성
무결성 검증

해시의 용도

용도설명
파일 무결성 검증파일이 변조되었는지 확인
비밀번호 저장원문 대신 해시값 저장
전자서명메시지 전체 대신 해시값에 서명
메시지 인증MAC, HMAC 등에 활용
블록체인 등데이터 연결과 검증에 활용
주의할 점
비밀번호는 단순 해시만으로는 부족하다.
솔트와 적절한 비밀번호 해시 방식을 적용해야 한다.
시험식 답안
해시 함수는 임의 길이 데이터를 고정 길이 해시값으로 변환하는 일방향 함수이다. 원본 데이터가 변경되면 해시값도 달라지므로 파일이나 메시지의 무결성 검증에 활용되며, 비밀번호 저장 시에는 솔트를 함께 적용해야 한다.

암호화와 해시의 차이

이 차이는 반드시 알아야 합니다.

구분암호화해시
목적기밀성 보호무결성 검증, 비밀번호 저장
복원 가능성키가 있으면 복호화 가능원칙적으로 복원 불가
입력과 출력평문 → 암호문데이터 → 해시값
키 사용일반적으로 키 사용일반 해시는 키 없음
예시AES, RSASHA-256, SHA-3
시험식 답안
암호화는 기밀성 보호를 위해 평문을 암호문으로 변환하고 올바른 키로 복호화할 수 있는 방식이다. 반면 해시는 임의 길이 데이터를 고정 길이 해시값으로 변환하는 일방향 함수로, 원칙적으로 원문 복원이 불가능하며 무결성 검증에 사용된다.

MAC과 HMAC 기초

이번 절에서는 깊게 들어가지 않고 개념만 잡겠습니다.

MAC이란?

MAC은 Message Authentication Code입니다.
메시지 인증 코드라고 합니다.

MAC은 메시지와 비밀키를 이용해 생성하며, 메시지가 변조되지 않았고 같은 키를 가진 주체가 생성했음을 확인하는 데 사용됩니다.

시험식 정의
MAC은 메시지와 비밀키를 이용해 생성되는 값으로, 메시지의 무결성과 송신자 인증을 확인하는 데 사용된다.

HMAC이란?

HMAC은 해시 함수와 비밀키를 결합한 MAC 방식입니다.

시험식 표현
HMAC은 해시 함수와 비밀키를 이용하여 메시지의 무결성과 인증을 제공하는 메시지 인증 코드 방식이다.

MAC은 전자서명과 비슷해 보이지만, 부인방지는 제공하기 어렵습니다.
왜냐하면 같은 비밀키를 공유한 양쪽이 모두 MAC을 생성할 수 있기 때문입니다.

구분MAC/HMAC전자서명
공유 비밀키개인키·공개키
제공무결성, 인증무결성, 인증, 부인방지
부인방지어려움가능
속도빠름상대적으로 느림

전자서명

전자서명이란?

전자서명은 개인키로 서명하고 공개키로 검증하는 기술입니다.

시험식 정의
전자서명은 송신자가 자신의 개인키로 메시지 또는 메시지 해시값에 서명하고, 수신자가 송신자의 공개키로 이를 검증하여 인증, 무결성, 부인방지를 제공하는 기술이다.
핵심 의미
전자서명 = 이 문서를 누가 만들었고, 바뀌지 않았는지 증명하는 기술

전자서명의 보안 속성

전자서명은 다음 세 가지를 제공합니다.

보안 속성의미
인증서명자가 누구인지 확인
무결성서명 후 데이터가 변경되지 않았는지 확인
부인방지서명자가 나중에 서명 사실을 부인하지 못함

시험에서 특히 중요합니다.

전자서명 = 인증 + 무결성 + 부인방지

전자서명 과정

전자서명은 보통 메시지 전체에 직접 서명하기보다, 메시지의 해시값에 서명합니다.

흐름은 다음입니다.

1. 송신자가 메시지를 작성한다.
2. 메시지의 해시값을 계산한다.
3. 송신자의 개인키로 해시값에 서명한다.
4. 메시지와 서명값을 수신자에게 보낸다.
5. 수신자는 메시지의 해시값을 다시 계산한다.
6. 송신자의 공개키로 서명값을 검증한다.
7. 두 해시값이 일치하면 무결성과 서명자를 확인할 수 있다.
핵심
개인키로 서명
공개키로 검증

전자서명과 암호화의 차이

많이 헷갈립니다.

구분암호화전자서명
목적내용을 숨김서명자와 무결성 증명
주요 보안 속성기밀성인증, 무결성, 부인방지
공개키 방식수신자의 공개키로 암호화, 수신자의 개인키로 복호화송신자의 개인키로 서명, 송신자의 공개키로 검증
질문누가 볼 수 있는가?누가 보냈고 바뀌지 않았는가?
시험식 답안
암호화는 기밀성을 제공하기 위해 데이터를 알아볼 수 없게 변환하는 기술이고, 전자서명은 송신자의 개인키로 서명하여 서명자 인증, 데이터 무결성, 부인방지를 제공하는 기술이다.

키 관리

암호기술에서 알고리즘만큼 중요한 것이 키 관리입니다.

아무리 강한 알고리즘을 사용해도 키가 유출되면 보안은 무너집니다.

키 관리에서 중요한 항목은 다음입니다.

항목설명
키 생성안전한 난수 기반으로 생성
키 분배안전한 방식으로 전달
키 저장접근통제, 암호화, HSM 등 사용
키 사용용도별 키 분리
키 교체주기적 변경 또는 유출 시 즉시 교체
키 폐기사용 종료 키 안전 삭제
개인키 보호개인키는 절대 외부 노출 금지
백업복구 가능하되 안전하게 보호
시험식 문장
암호키는 안전한 난수로 생성하고, 안전하게 분배·저장해야 하며, 용도별로 분리하고 주기적으로 교체해야 한다. 특히 개인키와 대칭키가 유출되면 복호화나 서명 위조가 가능하므로 접근통제와 안전한 보관이 필요하다.

키가 유출되면 어떤 문제가 생기는가?

유출 대상위험
대칭키암호문 복호화 가능, 데이터 기밀성 침해
개인키전자서명 위조, 복호화 가능성, 신원 위조
세션키해당 세션 통신 내용 노출 가능
API KeyAPI 무단 호출 가능
인증서 개인키서버 위장, MITM 가능성
비밀번호 해시오프라인 추측 공격 가능

따라서 암호학에서 키 보호는 핵심입니다.


인증서와 PKI 기초

이번 절에서는 맛보기만 봅니다. 5장 3절에서 더 자세히 다룰 예정입니다.

인증서란?

인증서는 공개키와 신원 정보를 인증기관이 보증한 전자 문서입니다.

시험식 정의
인증서는 공개키와 소유자의 신원 정보를 인증기관이 전자서명하여 보증한 전자 문서이다.

인증서에는 보통 다음 정보가 포함됩니다.

소유자 정보
공개키
발급자 정보
유효기간
서명 알고리즘
인증기관의 전자서명

PKI란?

PKI는 Public Key Infrastructure입니다.
한국어로는 공개키 기반 구조입니다.

시험식 정의
PKI는 공개키 암호 기술을 안전하게 사용하기 위해 인증기관, 인증서, 등록기관, 인증서 폐지 목록 등을 통해 공개키와 사용자 신원을 관리하는 기반 구조이다.
핵심 의미
PKI = 공개키가 진짜 누구의 것인지 믿을 수 있게 해주는 체계

하이브리드 암호 방식

실제 보안 통신에서는 대칭키와 공개키를 함께 사용합니다.

왜 그럴까요?

대칭키는 빠르지만 키 분배가 어렵다.
공개키는 키 분배에 유리하지만 느리다.

그래서 실제로는 다음처럼 씁니다.

공개키 암호로 대칭키를 안전하게 교환한다.
이후 실제 데이터는 빠른 대칭키 암호로 암호화한다.

이 방식이 HTTPS/TLS 같은 보안 통신에서 사용되는 기본 아이디어입니다.

시험식 답안
하이브리드 암호 방식은 공개키 암호로 대칭키를 안전하게 교환하고, 실제 데이터는 속도가 빠른 대칭키 암호로 암호화하는 방식이다. 이를 통해 공개키 암호의 키 분배 장점과 대칭키 암호의 속도 장점을 함께 활용할 수 있다.

암호기술별 용도 정리

기술주요 목적대표 용도
대칭키 암호기밀성대량 데이터 암호화
공개키 암호키 교환, 인증, 전자서명인증서, 키 교환, 전자서명
해시 함수무결성파일 검증, 비밀번호 저장
MAC/HMAC무결성, 메시지 인증API 요청 검증, 메시지 인증
전자서명인증, 무결성, 부인방지계약, 인증서, 문서 서명
인증서공개키 신뢰 보증HTTPS 서버 인증
PKI공개키 관리 체계인증기관, 인증서 발급·검증
한 줄 암기
대칭키 = 빠른 암호화
공개키 = 키 교환과 전자서명
해시 = 무결성
전자서명 = 인증·무결성·부인방지
인증서 = 공개키 신뢰 보증

내용 연결 정리

사용자가 HTTPS 웹사이트에 접속한다고 가정해봅시다.

1. 브라우저가 서버에 접속한다.
2. 서버는 인증서를 제시한다.
3. 브라우저는 인증서를 검증해 서버 신원을 확인한다.
4. 공개키 암호 또는 키 교환 방식으로 대칭키를 안전하게 만든다.
5. 이후 실제 웹 데이터는 대칭키로 빠르게 암호화된다.
6. 메시지 무결성 검증으로 데이터 변조 여부를 확인한다.

이 흐름 안에 이번 절에서 다룬 내용이 들어 있습니다.

단계관련 암호기술
서버 신원 확인인증서, PKI
키 교환공개키 암호 또는 키 교환
데이터 암호화대칭키 암호
데이터 변조 확인해시, MAC
서명 검증전자서명

즉, 실제 보안 통신은 여러 암호기술이 함께 동작합니다.


시험에 나오는 포인트

주제시험 포인트
기밀성허가받은 사람만 정보 접근
무결성데이터 위변조 방지
인증신원 확인
부인방지행위 부인 방지
암호화평문을 암호문으로 변환
복호화암호문을 평문으로 복원
대칭키같은 키 사용, 빠름, 키 분배 어려움
공개키공개키·개인키 쌍, 느림, 키 분배 문제 완화
해시일방향, 고정 길이, 무결성
전자서명인증, 무결성, 부인방지
MAC/HMAC무결성, 메시지 인증
인코딩보안 목적 암호화가 아님
비밀번호 저장암호화보다 솔트 해시가 적절
키 관리키 생성, 저장, 분배, 폐기 중요
인증서공개키와 신원 정보 보증
PKI공개키 신뢰 관리 체계
하이브리드 암호공개키로 키 교환, 대칭키로 데이터 암호화

필기형 문제풀이

문제 1

암호화의 주된 목적과 가장 관련 깊은 보안 속성은?

A. 기밀성
B. 가용성
C. 삭제성
D. 압축성

정답: A

암호화는 권한 없는 사용자가 내용을 이해하지 못하도록 하므로 기밀성과 가장 관련이 깊습니다.


문제 2

해시 함수의 특징으로 적절한 것은?

A. 암호문을 평문으로 되돌릴 수 있어야 한다
B. 임의 길이 데이터를 고정 길이 값으로 변환한다
C. 송수신자가 같은 비밀키로만 처리한다
D. 접근 권한을 자동으로 부여한다

정답: B

해시 함수는 임의 길이 입력을 고정 길이 해시값으로 변환하는 일방향 함수입니다.

정답 이유: 해시는 원문을 복원하기 위한 암호화가 아니라, 입력 데이터의 고정 길이 대표값을 만드는 함수이다. 오답 이유: A는 복호화 가능한 암호화의 설명이고, C는 대칭키 암호의 설명이다. 해시와 암호화는 복원 가능성에서 구분한다.


문제 3

대칭키 암호의 설명으로 적절한 것은?

A. 공개키와 개인키 쌍을 사용한다
B. 해시값만 생성하고 원문 복원은 불가능하다
C. 암호화와 복호화에 같은 키를 사용한다
D. 서명자 부인방지만 단독으로 제공한다

정답: C

대칭키 암호는 같은 비밀키를 사용합니다.

정답 이유: 암호화와 복호화에 동일한 비밀키를 쓰는 방식이 대칭키 암호이다. 오답 이유: A는 공개키 암호, B는 해시, D는 전자서명에 가까운 설명이다. 대칭키와 공개키는 사용하는 키의 구조로 구분한다.


문제 4

공개키 암호의 설명으로 적절한 것은?

A. 같은 비밀키만으로 암호화와 복호화를 수행한다
B. 메시지를 고정 길이 해시값으로만 변환한다
C. 세션 로그를 자동으로 삭제하는 방식이다
D. 공개키와 개인키 한 쌍을 사용한다

정답: D

공개키 암호는 공개키와 개인키 한 쌍을 사용합니다.

정답 이유: 공개키 암호는 공개키와 개인키를 분리해 키 분배, 암호화, 전자서명 등에 활용한다. 오답 이유: A는 대칭키 암호, B는 해시 함수의 특징이다. 공개키 암호는 해시처럼 일방향 대표값만 만드는 방식이 아니다.


문제 5

대칭키 암호의 장점으로 적절한 것은?

A. 속도가 빠르고 대량 데이터 암호화에 적합하다
B. 키 분배가 항상 필요 없다
C. 개인키가 절대 필요 없다
D. 복호화가 불가능하다

정답: A

대칭키 암호는 빠르고 효율적이지만 키 분배가 어렵습니다.


문제 6

공개키 암호의 단점으로 적절한 것은?

A. 대량 데이터 암호화에 항상 대칭키보다 효율적이다
B. 대칭키 암호에 비해 상대적으로 느리다
C. 공개키와 개인키의 구분이 없다
D. 해시 함수처럼 원문 복원이 불가능하다

정답: B

공개키 암호는 대칭키 암호보다 연산이 무겁고 느립니다.


문제 7

전자서명이 제공하는 보안 속성으로 적절한 것은?

A. 기밀성만 단독으로 제공
B. 압축, 라우팅, 백업
C. 인증, 무결성, 부인방지
D. 키 분배 없이 대량 암호화만 수행

정답: C

전자서명은 서명자 인증, 데이터 무결성, 부인방지를 제공합니다.

정답 이유: 전자서명은 서명자의 개인키로 생성되므로 서명자 확인과 변경 여부 확인, 부인방지에 연결된다. 오답 이유: A는 암호화의 기밀성에 가깝고, D는 하이브리드 암호나 키 교환의 설명이다. 전자서명은 대량 데이터 암호화 자체가 목적이 아니다.


문제 8

전자서명에서 서명 생성에 사용하는 키는?

A. 송신자의 개인키
B. 송신자의 공개키
C. 수신자의 공개키만
D. 아무 키도 사용하지 않음

정답: A

전자서명은 송신자의 개인키로 생성하고, 송신자의 공개키로 검증합니다.


문제 9

인코딩에 대한 설명으로 적절한 것은?

A. 키가 있어야만 원문으로 되돌릴 수 있는 암호화 방식이다
B. 전자서명처럼 부인방지를 제공한다
C. 해시 함수와 같이 원칙적으로 복원할 수 없다
D. 데이터 표현 형식을 변환하는 것이며 보안 목적의 암호화가 아니다

정답: D

Base64 같은 인코딩은 표현 방식 변환일 뿐 암호화가 아닙니다.


문제 10

비밀번호 저장 방식으로 가장 적절한 것은?

A. 평문 저장
B. 단순 인코딩 저장
C. 사용자별 솔트를 적용한 해시값 저장
D. URL에 저장

정답: C

비밀번호는 평문이나 인코딩이 아니라 솔트를 적용한 해시값으로 저장해야 합니다.


문제 11

MAC/HMAC이 제공하는 보안 속성으로 가장 적절한 것은?

A. 데이터 기밀성과 부인방지만 제공
B. 메시지 무결성과 인증
C. 공개키 기반 인증서 발급
D. 시스템 복구 시점 자동 생성

정답: B

MAC/HMAC은 비밀키를 이용해 메시지 무결성과 인증을 확인합니다.

정답 이유: MAC/HMAC은 공유 비밀키를 가진 당사자 사이에서 메시지가 변조되지 않았고 올바른 송신자가 만든 값인지 확인한다. 오답 이유: 전자서명과 달리 MAC/HMAC은 공개키 기반 부인방지를 제공하기 어렵다. C는 PKI 인증서 발급의 영역이다.


문제 12

하이브리드 암호 방식의 설명으로 적절한 것은?

A. 모든 데이터를 해시값으로만 변환한다
B. 암호화 없이 인코딩만 사용한다
C. 공개키를 전혀 사용하지 않고 비밀번호만 공유한다
D. 공개키 암호로 대칭키를 교환하고 실제 데이터는 대칭키로 암호화한다

정답: D

하이브리드 방식은 공개키 암호의 키 분배 장점과 대칭키 암호의 속도 장점을 결합합니다.


실기형 답안 훈련

실기 예제 1

문제: 암호학이 제공하는 주요 보안 속성을 설명하시오.

좋은 답안

암호학은 기밀성, 무결성, 인증, 부인방지 등의 보안 속성을 제공한다. 기밀성은 허가받은 사람만 정보를 볼 수 있게 하는 것이고, 무결성은 데이터가 위변조되지 않았음을 보장하며, 인증은 신원을 확인하고 부인방지는 행위자가 나중에 자신의 행위를 부인하지 못하게 하는 것이다.

채점 포인트

요소포함 여부
기밀성필수
무결성필수
인증필수
부인방지필수
각 의미 설명중요

실기 예제 2

문제: 대칭키 암호와 공개키 암호의 차이를 설명하시오.

좋은 답안

대칭키 암호는 암호화와 복호화에 같은 비밀키를 사용하는 방식으로 속도가 빠르고 대량 데이터 암호화에 적합하지만 키 분배가 어렵다. 공개키 암호는 공개키와 개인키 한 쌍을 사용하는 방식으로 키 분배 문제를 완화하고 전자서명과 인증에 활용될 수 있으나 대칭키 방식보다 속도가 느리다.

채점 포인트

요소포함 여부
대칭키 = 같은 키필수
공개키 = 키 쌍필수
대칭키 빠름중요
공개키 느림중요
키 분배 문제중요

실기 예제 3

문제: 암호화와 해시의 차이를 설명하시오.

좋은 답안

암호화는 기밀성 보호를 위해 평문을 암호문으로 변환하고, 올바른 키를 이용해 다시 복호화할 수 있는 방식이다. 해시는 임의 길이 데이터를 고정 길이 해시값으로 변환하는 일방향 함수로, 원칙적으로 원문 복원이 불가능하며 데이터 무결성 검증과 비밀번호 저장에 활용된다.

채점 포인트

요소포함 여부
암호화 = 복호화 가능필수
암호화 = 기밀성중요
해시 = 일방향필수
해시 = 고정 길이중요
해시 = 무결성중요

실기 예제 4

문제: 전자서명의 개념과 제공하는 보안 속성을 설명하시오.

좋은 답안

전자서명은 송신자가 자신의 개인키로 메시지 또는 메시지 해시값에 서명하고, 수신자가 송신자의 공개키로 이를 검증하는 기술이다. 전자서명은 서명자 인증, 데이터 무결성, 부인방지를 제공한다.

채점 포인트

요소포함 여부
개인키로 서명필수
공개키로 검증필수
인증필수
무결성필수
부인방지필수

실기 예제 5

문제: 해시 함수의 특징과 용도를 설명하시오.

좋은 답안

해시 함수는 임의 길이 데이터를 고정 길이의 해시값으로 변환하는 일방향 함수이다. 원문이 조금만 변경되어도 해시값이 달라지므로 데이터 무결성 검증에 활용되며, 비밀번호 저장 시에는 원문 대신 솔트를 적용한 해시값을 저장하는 데 사용된다.

채점 포인트

요소포함 여부
임의 길이 입력필요
고정 길이 출력필수
일방향성필수
무결성 검증중요
비밀번호 저장좋음
솔트좋음

실기 예제 6

문제: 하이브리드 암호 방식의 필요성을 설명하시오.

좋은 답안

대칭키 암호는 속도가 빨라 대량 데이터 암호화에 적합하지만 키 분배가 어렵고, 공개키 암호는 키 분배에 유리하지만 연산 속도가 느리다. 하이브리드 암호 방식은 공개키 암호로 대칭키를 안전하게 교환하고 실제 데이터는 대칭키로 암호화하여 두 방식의 장점을 함께 활용한다.

채점 포인트

요소포함 여부
대칭키 빠름필수
대칭키 키 분배 어려움중요
공개키 키 분배 유리중요
공개키 느림중요
공개키로 대칭키 교환필수
실제 데이터는 대칭키필수

핵심 요약

개념한 줄 요약
암호학기밀성, 무결성, 인증, 부인방지를 제공하는 기술
기밀성허가받은 사람만 정보 접근
무결성데이터가 위변조되지 않음
인증신원 확인
부인방지행위 부인 방지
평문암호화 전 원래 데이터
암호문암호화된 데이터
암호화평문을 암호문으로 변환
복호화암호문을 평문으로 복원
인코딩표현 형식 변환, 보안 목적 암호화 아님
대칭키 암호같은 키 사용, 빠름, 키 분배 어려움
공개키 암호공개키·개인키 사용, 느림, 키 분배 유리
해시 함수일방향, 고정 길이, 무결성 검증
MAC/HMAC비밀키 기반 메시지 무결성·인증
전자서명개인키로 서명, 공개키로 검증
전자서명 속성인증, 무결성, 부인방지
인증서공개키와 신원 정보를 인증기관이 보증
PKI공개키 신뢰 관리 체계
키 관리키 생성, 저장, 분배, 교체, 폐기 관리
하이브리드 암호공개키로 키 교환, 대칭키로 데이터 암호화

필수 암기 문장

아래 문장들은 필기와 실기 모두 중요합니다.

암호학은 기밀성, 무결성, 인증, 부인방지 등의 보안 속성을 제공한다.

암호화는 평문을 암호문으로 변환하는 과정이고, 복호화는 암호문을 다시 평문으로 복원하는 과정이다.

인코딩은 데이터 표현 형식을 변환하는 것이며, 기밀성을 제공하는 암호화가 아니다.

대칭키 암호는 암호화와 복호화에 같은 키를 사용하여 속도가 빠르지만 키 분배가 어렵다.

공개키 암호는 공개키와 개인키 한 쌍을 사용하여 키 분배 문제를 완화하지만 대칭키보다 속도가 느리다.

해시 함수는 임의 길이 데이터를 고정 길이 해시값으로 변환하는 일방향 함수이며, 무결성 검증에 사용된다.

암호화는 키가 있으면 복호화가 가능하지만, 해시는 원칙적으로 원문 복원이 불가능하다.

전자서명은 송신자의 개인키로 서명하고 송신자의 공개키로 검증하며, 인증·무결성·부인방지를 제공한다.

MAC/HMAC은 비밀키를 이용해 메시지의 무결성과 인증을 제공하지만, 전자서명처럼 강한 부인방지를 제공하기는 어렵다.

암호키는 안전하게 생성, 분배, 저장, 교체, 폐기해야 하며 키가 유출되면 암호 시스템 전체가 위험해질 수 있다.

인증서는 공개키와 소유자의 신원 정보를 인증기관이 보증한 전자 문서이다.

하이브리드 암호 방식은 공개키 암호로 대칭키를 안전하게 교환하고, 실제 데이터는 대칭키 암호로 암호화하는 방식이다.

연습 과제

다음 문제를 풀고 정답 및 해설과 대조한다.

A. 단답형

1. 암호학이 제공하는 주요 보안 속성 4가지를 쓰시오.
2. 기밀성이란 무엇인가?
3. 무결성이란 무엇인가?
4. 인증이란 무엇인가?
5. 부인방지란 무엇인가?
6. 평문과 암호문의 차이를 쓰시오.
7. 암호화와 복호화의 차이를 쓰시오.
8. 인코딩과 암호화의 차이를 쓰시오.
9. 대칭키 암호란 무엇인가?
10. 공개키 암호란 무엇인가?
11. 대칭키 암호의 장점과 단점을 쓰시오.
12. 공개키 암호의 장점과 단점을 쓰시오.
13. 대칭키 암호와 공개키 암호의 차이를 쓰시오.
14. 해시 함수란 무엇인가?
15. 해시 함수의 주요 특징 3가지를 쓰시오.
16. 암호화와 해시의 차이를 쓰시오.
17. MAC 또는 HMAC은 무엇인가?
18. 전자서명이란 무엇인가?
19. 전자서명이 제공하는 보안 속성 3가지를 쓰시오.
20. 전자서명에서 개인키와 공개키는 각각 어떻게 사용되는가?
21. 키 관리가 중요한 이유는 무엇인가?
22. 인증서란 무엇인가?
23. PKI란 무엇인가?
24. 하이브리드 암호 방식이 필요한 이유는 무엇인가?

B. 상황 매칭 문제

아래 상황에 적합한 암호 기술이나 보안 속성을 쓴다.

25. 허가받지 않은 사람이 문서 내용을 볼 수 없게 하고 싶다.
26. 파일이 다운로드 중 변조되었는지 확인하고 싶다.
27. 계약서 작성자가 나중에 작성 사실을 부인하지 못하게 하고 싶다.
28. 대용량 파일을 빠르게 암호화하고 싶다.
29. 상대방과 안전하게 대칭키를 교환하고 싶다.
30. 비밀번호 원문을 저장하지 않고 검증하고 싶다.
31. Base64로 변환했지만 누구나 다시 원문을 확인할 수 있다.
32. 송신자의 개인키로 서명하고 수신자가 공개키로 검증한다.
33. 공개키가 실제 서버의 것인지 신뢰할 수 있게 확인하고 싶다.
34. 공개키 암호와 대칭키 암호의 장점을 함께 활용하고 싶다.

C. 실기형 답안 작성

다음 6문제는 2~3문장으로 답안을 작성한다.

35. 암호학이 제공하는 주요 보안 속성을 설명하시오.

36. 대칭키 암호와 공개키 암호의 차이를 설명하시오.

37. 암호화와 해시의 차이를 설명하시오.

38. 전자서명의 개념과 제공하는 보안 속성을 설명하시오.

39. 해시 함수의 특징과 용도를 설명하시오.

40. 하이브리드 암호 방식의 필요성을 설명하시오.

보완 학습 및 연습 과제 정답

암호, 해시, 서명, MAC 비교와 키 생명주기

구분사용하는 키주요 속성대표 용도주의점
암호화대칭키 또는 수신자 공개키기밀성데이터 저장·전송 보호키 유출 시 복호화 가능
해시키 없음무결성 보조, 일방향성파일 무결성, 비밀번호 저장 기초비밀번호에는 느린 해시와 솔트 필요
전자서명송신자 개인키·공개키인증, 무결성, 부인방지계약, 인증서, 코드서명개인키 보호 필수
MAC/HMAC공유 비밀키무결성, 메시지 인증API 요청 검증공유키 방식이라 부인방지 한계

키 생명주기는 생성, 배포, 저장, 사용, 교체, 폐기, 감사 단계로 관리한다. 키는 안전한 난수로 생성하고, 용도별로 분리하며, 저장 시 암호화 또는 HSM을 사용하고, 만료·교체·폐기 이력을 남긴다.

정답 및 해설

A. 단답형 예시 정답: 1 읽을 수 없게 변환하는 기술. 2 원래 형태로 되돌림. 3 문자 표현 변환. 4 암호화는 복호화 가능, 해시는 일방향. 5 같은 키 사용. 6 빠르고 대용량에 적합. 7 키 공유 문제. 8 공개키와 개인키 사용. 9 키 분배에 유리하고 느림. 10 대칭키로 데이터 암호화, 공개키로 대칭키 보호. 11 일방향 고정길이 값. 12 무결성, 비밀번호 저장, 식별. 13 공유키 기반 인증값. 14 송신자 개인키로 서명. 15 인증, 무결성, 부인방지. 16 암호화는 기밀성, 서명은 인증·무결성. 17 키 생성·보관·교체·폐기. 18 유출 피해 최소화. 19 공개키와 신원 결합. 20 공개키 신뢰 기반 구조.

B. 상황 매칭 정답: 파일 변조 확인은 해시, API 요청 검증은 HMAC, 계약 부인은 전자서명, 대용량 데이터 보호는 대칭키, 키 교환과 인증서 기반 신뢰는 공개키·PKI를 적용한다.

C. 실기형 채점 기준: 핵심 키워드는 기밀성, 무결성, 인증, 부인방지, 대칭키, 공개키, 해시, 전자서명, MAC, 키 생명주기이다. 부분점은 비교 40%, 용도 25%, 키 관리 25%, 금지 사례 10%로 부여한다. 해시를 암호화처럼 복호화 가능하다고 쓰거나 MAC이 전자서명과 동일한 부인방지를 제공한다고 쓰면 감점한다.

목차

학습 목표
암호학의 큰 그림
CIA와 암호학
암호학에서 자주 나오는 용어
암호화와 복호화
암호화
복호화
인코딩, 암호화, 해시의 차이
인코딩
암호화
해시
대칭키 암호
대칭키 암호란?
대칭키 암호의 특징
대칭키 암호의 장점과 단점
장점
단점
공개키 암호
공개키 암호란?
공개키 암호의 기본 구조
공개키 암호의 특징
대칭키와 공개키 비교
해시 함수
해시 함수란?
해시 함수의 특징
해시의 용도
암호화와 해시의 차이
MAC과 HMAC 기초
MAC이란?
HMAC이란?
전자서명
전자서명이란?
전자서명의 보안 속성
전자서명 과정
전자서명과 암호화의 차이
키 관리
키가 유출되면 어떤 문제가 생기는가?
인증서와 PKI 기초
인증서란?
PKI란?
하이브리드 암호 방식
암호기술별 용도 정리
내용 연결 정리
시험에 나오는 포인트
필기형 문제풀이
문제 1
문제 2
문제 3
문제 4
문제 5
문제 6
문제 7
문제 8
문제 9
문제 10
문제 11
문제 12
실기형 답안 훈련
실기 예제 1
좋은 답안
채점 포인트
실기 예제 2
좋은 답안
채점 포인트
실기 예제 3
좋은 답안
채점 포인트
실기 예제 4
좋은 답안
채점 포인트
실기 예제 5
좋은 답안
채점 포인트
실기 예제 6
좋은 답안
채점 포인트
핵심 요약
필수 암기 문장
연습 과제
A. 단답형
B. 상황 매칭 문제
C. 실기형 답안 작성
보완 학습 및 연습 과제 정답
암호, 해시, 서명, MAC 비교와 키 생명주기
정답 및 해설