내 정보는 소중하니까: 정보보호와 대칭키 암호
목차 26
5과목(정보시스템 구축 관리) 정보보호 영역의 첫 강. 정보보호의 정의(자산·위협·위험)에서 출발해, 골격인 CIA 3대 요소 ★기무가★와 확장 5대 요소 ★기무가인부★를 짚는다. 이어 암호학 기초 용어·케르크호프스 원칙, 대칭키 vs 비대칭키 구분과 키 폭증 ★대=속빠·키위★·★비=속느·키안★, 안전한 설계 원리 ★확혼★(확산·혼돈)·★치전★(치환·전치)과 Feistel·SPN 구조, 대칭키 양대 산맥 ★DAES★(DES=F·64·56·16 / AES=R·SPN·128), 국산 4총사 ★세아리히★, 블록 vs 스트림 ★블스★, 운영 모드 5종 ★ECB=쉬우나 위험·CBC=체인★까지 여덟 묶음으로 정리한다. CIA·DES·AES·국산 4총사가 매 회차 1~3문제 나오는 빈출 단원이다.
대단원 1 — 정보보호 개요
정보보호 — 자산을 위협·위험으로부터 지키는 활동의 체계 ·정보보호 정의·시험 단골·
[정의] 정보보호(Information Security) = 정보 자산(Asset)을 위협(Threat)과 위험(Risk)으로부터 보호하기 위한 정책·기술·관리·물리적 활동의 체계. 궁극 목표는 CIA 3대 요소(기밀성·무결성·가용성)의 확보다.
[흐름] 위협 + 취약점 → 위험
[표] 정보보호 4대 용어
| 용어 | 정의 |
|---|---|
| 자산 Asset | 보호 대상 — 개인정보·결제 정보·의료 기록 |
| 위협 Threat | 손실을 가할 잠재적 원인 — 해킹·멀웨어·내부자 유출 |
| 취약점 Vulnerability | 자산의 약점 — 낡은 패치·약한 비밀번호·열린 포트 |
| 위험 Risk | 위협이 취약점을 타고 실제 손실로 이어질 가능성 (확률 × 영향도) |
🔑 암기 자산 = 지킬 것, 위협 = 가능성 있는 공격 원인, 취약점 = 약점, 위험 = 위협 × 취약점으로 실제 손실. 목표 = CIA. ⚠️ 함정 위협과 위험을 같은 것으로 보는 보기 ❌ → 위협은 '잠재 원인', 위험은 '취약점을 타고 실제 손실로 이어질 가능성'. 둘은 다른 단계. 🎯 빈출 정의 자체보다 위협·위험·취약점 용어 구분이 간헐 출제. 정보보호의 목표가 CIA임을 묻는 진술이 깔린다. 💡 자산 = 금고 속 귀중품, 위협 = 도둑, 취약점 = 헐거운 자물쇠, 위험 = 그 자물쇠로 실제 털릴 확률.
대단원 2 — 정보보호 3대·5대 요소
★기무가★ — CIA 3대 요소 ·보안 요소·시험 1순위·
[정의] 정보보호의 3대 요소 = 기밀성·무결성·가용성. 영문 약자 C-I-A(CIA Triad). 정보보호 영역에서 매 회차 1순위 빈출이며, 세 글자 ★기무가★만 입에 붙이면 즉답이 끝난다.
[흐름] ★기무가★ = CIA 3대 요소
[표] 3대 요소 — 위협과 대응
| 요소 | 정의 (한 줄) | 대표 위협 | 대표 대응 |
|---|---|---|---|
| 기 기밀성 | 노출 금지 | 도청·스누핑·유출 | 암호화·접근통제 |
| 무 무결성 | 변조 금지 | 위·변조·삽입·삭제 | 해시(SHA-256)·MAC·전자서명 |
| 가 가용성 | 접근 보장 | DoS·DDoS·랜섬웨어 | 이중화·백업·DR |
🔑 암기 ★기무가★ = 기밀성·무결성·가용성. 매핑 한 줄 — 암호화 = 기, 해시 = 무, 이중화 = 가. ⚠️ 함정 '해시 = 기밀성', '암호화 = 무결성', 'DDoS = 기밀성' ❌ → 해시는 무, 암호화는 기, DDoS는 가용성 침해(가). 🎯 빈출 'CIA 3대 요소에 해당하지 않는 것?'이 1순위. 보기에 CIA 셋 + 함정 1개(효율성·신뢰성 등) 구조가 매 회차. 📝 기출 기출 1 (CIA 3대 요소) 💡 기밀성 = 남이 못 보게, 무결성 = 남이 못 바꾸게, 가용성 = 내가 언제든 쓰게.
★기무가인부★ — 확장 5대 요소 (인증 ≠ 인가) ·보안 요소·시험 1순위·
[정의] CIA 3요소 위에 인증(Authentication)과 부인방지(Non-repudiation)를 더하면 확장 5대 요소 ★기무가인부★다. 교재에 따라 6요소(책임추적성)·7요소(인가)까지 표기한다.
[표] 확장 보안 요소
| 요소 | 한 줄 정의 | 분류 |
|---|---|---|
| 기밀성 / 무결성 / 가용성 | 노출·변조 금지 / 접근 보장 | CIA 3요소 |
| 인증 Authentication | 신원 확인 ("당신이 맞나요?") | 확장 5요소 |
| 부인방지 Non-repudiation | 행위 부인 차단 (등기우편 영수증) | 확장 5요소 |
| 책임추적성 Accountability | 행위 추적·기록·감사 | 확장 6요소 |
| 인가 Authorization | 권한 부여 ("무엇을 할 수 있나?") | 확장 7요소 |
🔑 암기 ★기무가인부★ = 기밀성·무결성·가용성 + 인증·부인방지. 시험은 보통 5요소까지. ⚠️ 함정 인증(Authentication, Who are you?) ≠ 인가(Authorization, What can you do?) — 신원 확인과 권한 부여를 뒤바꾸는 게 단골 함정. 부인방지를 '기밀성'으로 적는 보기도 있다. 🎯 빈출 '정보보호 요소에 해당하지 않는 것?'에서 확장 요소(인증·부인방지)를 묻거나, 인증과 인가를 구분시키는 유형이 매 회차. 💡 인증 = "너 누구야?"(신분증 확인), 인가 = "너 여기 들어와도 돼?"(출입 권한) — 순서도 의미도 다르다.
대단원 3 — 암호학 기초와 분류
암호학 5대 용어 — 평문·암호문·키·암호화·복호화 ·암호 기초·시험 단골·
[정의] 암호학(Cryptography)의 기초 용어 다섯 가지. 모든 암호 기술은 "키가 있어야 열린다"는 한 문장으로 압축된다.
[표] 암호학 5대 용어
| 용어 | 정의 | 표기 |
|---|---|---|
| 평문 Plaintext | 암호화 전 원본 | P |
| 암호문 Ciphertext | 암호화된 결과 | C |
| 키 Key | 암·복호화에 쓰이는 비밀 정보 | K |
| 암호화 Encryption | 평문 → 암호문 | E_K(P) = C |
| 복호화 Decryption | 암호문 → 평문 | D_K(C) = P |
🔑 암기 평문(P)·암호문(C)·키(K). 암호화 E_K(P)=C, 복호화 D_K(C)=P. 키가 있어야 열린다. ⚠️ 함정 암호화와 복호화 방향을 뒤바꾸는 보기 ❌ → 암호화는 평문→암호문, 복호화는 암호문→평문. 🎯 빈출 용어 정의 매칭이 간헐. 암호화 결과물이 암호문(C)이라는 기본만 잡으면 충분. 💡 평문 = 손편지, 암호화 = 상자에 넣고 잠그기, 키 = 열쇠, 암호문 = 잠긴 상자, 복호화 = 열어서 꺼내기.
케르크호프스 원칙 + 암호 기술 분류 지도 ·암호 기초·시험 단골·
[정의] 케르크호프스(Kerckhoffs)의 원칙(1883) = 암호 시스템의 안전성은 알고리즘의 비밀성이 아니라 키의 비밀성에만 의존해야 한다. DES·AES·SEED·ARIA 모두 알고리즘이 공개돼 있어도 키만 비밀이면 안전하다. 반대로 '알고리즘 자체를 숨겨 안전하다'는 주장은 보안 by obscurity(노출되면 즉시 무력화되는 안티 패턴)다.
[분류] 암호 알고리즘 전체 분류 지도
- [1] 대칭키 (Symmetric) — 오늘의 주제
- 블록: DES·3DES·AES·SEED·ARIA·LEA·HIGHT·IDEA·RC5·RC6
- 스트림: RC4·LFSR·OTP
- [2] 비대칭키 (Asymmetric) — RSA·ECC·ElGamal·Diffie-Hellman (48강)
- [3] 해시 (Hash) — MD5(취약)·SHA-1(취약)·SHA-2(표준)·SHA-3 (48강)
- [4] 운영 모드 — ECB·CBC·CFB·OFB·CTR (블록 암호 운용 방식)
🔑 암기 케르크호프스 = "알고리즘 공개·키 비밀". 암호 4분류 = 대칭키·비대칭키·해시·운영 모드. 47강은 [1] 대칭키 + [4] 운영 모드. ⚠️ 함정 "알고리즘과 키 둘 다 비밀이어야 안전" ❌ → 케르크호프스 원칙 위배. 키만 비밀이면 충분하다. 🎯 빈출 케르크호프스 원칙의 한 줄("키만 비밀")이 간헐. 비대칭키·해시는 48강에서 본격, 여기선 지도상 위치만. 💡 좋은 자물쇠는 설계도가 공개돼도 열쇠만 있으면 안전 — 설계도를 숨겨야 안전한 자물쇠는 이미 나쁜 자물쇠다.
대단원 4 — 대칭키 vs 비대칭키
대칭키 vs 비대칭키 + 키 폭증 N(N-1)/2 ·대칭/비대칭·시험 1순위·
[정의] 키가 같으냐 다르냐가 모든 차이의 출발점이다. 대칭키는 암·복호화 키가 같고, 비대칭키는 공개키·개인키 한 쌍으로 다르다. 한 줄 압축 — ★대=속빠·키위★(대칭 = 속도 빠름·키 분배 위험), ★비=속느·키안★(비대칭 = 속도 느림·키 분배 안전).
[표] 대칭키 vs 비대칭키 핵심 비교
| 항목 | 대칭키 (Symmetric) | 비대칭키 (Asymmetric) |
|---|---|---|
| 키 관계 | 암호화 키 = 복호화 키 | 암호화 키 ≠ 복호화 키 |
| 키 개수 | 1개 (비밀키 공유) | 2개 (공개키 + 개인키) |
| 속도 | 빠름 | 느림 |
| 키 분배 | 위험 (안전 채널 필요) | 안전 (공개키 공개 OK) |
| 키 관리량 | N(N-1)/2 폭증 | 2N 절감 |
| 인증·부인방지 | × (어려움) | ◯ (전자서명) |
| 대표 | DES·AES·SEED·ARIA | RSA·ECC·ElGamal |
| 주 용도 | 대용량 데이터 암호화 | 키 교환·전자서명 |
[표] 키 폭증 사례 — 대칭 N(N-1)/2 vs 비대칭 2N
| 인원 | 대칭키 (N(N-1)/2) | 비대칭키 (2N) |
|---|---|---|
| 10명 | 45개 | 20개 |
| 100명 | 4,950개 | 200개 |
| 1,000명 | 499,500개 | 2,000개 |
🔑 암기 ★대=속빠·키위★ / ★비=속느·키안★. 키 관리량 — 대칭 N(N-1)/2, 비대칭 2N. ⚠️ 함정 '대칭키는 키 분배가 안전하다' ❌ → 그건 비대칭키. '대칭키가 느리다' ❌ → 대칭키가 빠르다. 속도·키 분배 두 항목을 뒤바꾸는 게 단골. 🎯 빈출 속도·키 분배 비교와 키 관리량 공식이 매 회차 단골. 속도(빠름)·키 분배(위험) 두 항목만 잡아도 한 문제. 📝 기출 기출 2 (대칭키 특징) 💡 대칭키는 모두가 같은 열쇠 한 벌을 나눠 갖는 방식이라 사람이 늘수록 열쇠 관리가 폭증, 비대칭키는 각자 한 쌍이라 2N으로 절감.
하이브리드 암호 — 비대칭으로 키 교환, 대칭으로 데이터 ·대칭/비대칭·간헐·
[정의] 실무 표준은 둘의 장점만 합친 하이브리드 방식이다. 비대칭키로 대칭키를 안전하게 교환하고, 이후 본 데이터는 빠른 대칭키로 암호화한다. HTTPS의 TLS/SSL 핸드셰이크가 대표 사례다.
[흐름] 하이브리드 암호 흐름
- A가 무작위 대칭키 K_sym 생성
- A가 B의 공개키로 K_sym 암호화 → 전송 — 비대칭 (느리지만 안전한 키 전달)
- B가 자기 개인키로 K_sym 복호화
- 이후 모든 데이터는 K_sym 으로 대칭 암호화 — 대칭 (빠른 대용량 처리)
[적용] TLS/SSL 핸드셰이크(HTTPS) · SSH · PGP
🔑 암기 하이브리드 = 비대칭(키 교환·안전) + 대칭(데이터·속도). HTTPS·SSH·PGP가 모두 이 방식. ⚠️ 함정 '하이브리드는 비대칭키로 본 데이터를 암호화한다' ❌ → 본 데이터는 빠른 대칭키. 비대칭은 키 교환용. 🎯 빈출 하이브리드의 역할 분담(비대칭 = 키 교환, 대칭 = 데이터)이 간헐. TLS가 하이브리드라는 진술이 단골. 💡 비싸고 느린 무장 차량으로 금고 열쇠만 안전하게 배달하고, 본 짐은 빠른 일반 트럭으로 옮기는 셈.
대단원 5 — 안전한 대칭키 설계
★블스★ — 블록 vs 스트림 암호 ·암호 분류·시험 1순위·
[정의] 대칭키는 작동 방식에 따라 블록 암호와 스트림 암호로 나뉜다. '덩어리냐, 흐름이냐'가 분별의 핵심. 블록은 고정 크기로 잘라 처리하고, 스트림은 비트·바이트 단위로 연속 처리한다.
[표] ★블스★ — 블록 vs 스트림
| 항목 | 블록 암호 | 스트림 암호 |
|---|---|---|
| 단위 | 고정 크기 덩어리 (64·128비트) | 비트·바이트 |
| 대표 | DES·AES·SEED·ARIA | RC4·LFSR·OTP |
| 운영 모드 | 필수 (ECB·CBC 등) | 불필요 |
| 처리 방식 | 블록 단위 암호화 | 키스트림 생성 → 평문 XOR |
| 주 용도 | 파일·디스크·DB | 음성·영상 실시간 |
🔑 암기 ★블스★ — 블록(덩어리·64·128비트·DES·AES·SEED·ARIA) / 스트림(한 비트씩·RC4·LFSR·OTP). 운영 모드는 블록만 필요. ⚠️ 함정 'AES는 스트림 암호' ❌ → AES = 블록. 'RC4는 블록 암호' ❌ → RC4 = 스트림. 매 회차 뒤바꿈 함정. 🎯 빈출 특정 알고리즘이 블록이냐 스트림이냐를 묻는 분별이 매 회차. AES = 블록, RC4 = 스트림만 잡으면 즉답. 💡 블록 = 한 페이지씩 통째로 자물쇠 상자에, 스트림 = 한 글자씩 흐르듯 변환.
★확혼★ ↔ ★치전★ — 확산·혼돈과 치환·전치 ·설계 원리·시험 1순위·
[정의] Claude Shannon이 1949년 정립한 안전한 대칭키 설계 2대 원칙이 ★확혼★(확산·혼돈)이고, 이를 실제 라운드에서 구현하는 2대 연산이 ★치전★(치환·전치)다. 두 쌍은 1:1로 매핑된다 — 확산 ↔ 전치 / 혼돈 ↔ 치환.
[표] Shannon 2원칙 ↔ 구현 2연산 (1:1 매핑)
| 원칙 (Shannon) | 구현 연산 | 도구 | 효과 |
|---|---|---|---|
| 확산 Diffusion | 전치 Permutation | P-box (자리 바꾸기) | 평문 1비트 변화가 암호문 전체로 퍼짐 |
| 혼돈 Confusion | 치환 Substitution | S-box (값 바꾸기) | 평문·암호문·키 사이 관계를 복잡하게 |
🔑 암기 ★확혼★ = 확산·혼돈(설계 원칙). ★치전★ = 치환·전치(구현 연산). 매핑 — 확산 = 전치(P-box) / 혼돈 = 치환(S-box). ⚠️ 함정 '치환 = 확산', '전치 = 혼돈'으로 거꾸로 매핑 ❌ → 정답은 치환 = 혼돈 / 전치 = 확산. S-box가 치환(값 바꿈), P-box가 전치(자리 바꿈). 🎯 빈출 확산·혼돈과 치환·전치의 매핑을 묻거나 S-box·P-box 역할을 묻는 유형이 단골. DES·AES 모든 라운드가 이 두 연산의 반복이다. 📝 기출 기출 3 (확산·혼돈 ↔ 치환·전치) 💡 확산(전치) = 잉크 한 방울이 컵 전체로 퍼지듯, 혼돈(치환) = 재료가 뒤섞여 무엇이 들어갔는지 모를 비빔밥.
페이스텔(Feistel) vs SPN — 두 가지 라운드 구조 ·설계 원리·시험 1순위·
[정의] 치환·전치를 적용하는 라운드 구조가 두 갈래다. 페이스텔(Feistel)은 블록을 둘로 쪼개 한쪽씩 번갈아 처리하고, SPN(Substitution-Permutation Network)은 전체 블록에 매 라운드 S-box·P-box를 모두 적용한다.
[표] Feistel vs SPN
| 항목 | 페이스텔 (Feistel) | SPN |
|---|---|---|
| 처리 | 블록을 L·R로 쪼개 한쪽만 F함수 적용 → XOR → 자리 교환 → 반복 | 전체 블록에 매 라운드 S-box(치환)+P-box(전치) 모두 적용 |
| 강점 | 암·복호화에 같은 구조 사용 | 적은 라운드로 같은 안전성 |
| 약점 | SPN보다 라운드 많이 필요 | 암·복호화 알고리즘 약간 다름 (역연산 필요) |
| 대표 | DES·SEED·HIGHT(GFN 변형) | AES·ARIA |
🔑 암기 구조 매핑 3줄 — Feistel = DES·SEED·HIGHT / SPN = AES·ARIA / ARX = LEA. ⚠️ 함정 'AES는 Feistel 구조' ❌ → AES = SPN. 'DES는 SPN' ❌ → DES = Feistel. 국산 중 ARIA만 SPN, SEED·HIGHT는 Feistel 계열. 🎯 빈출 'SPN 구조를 쓰는 알고리즘?' → AES·ARIA, 'Feistel 구조?' → DES·SEED가 매 회차. 구조 ↔ 알고리즘 매칭이 핵심. 📝 기출 기출 4 (SPN 구조) 💡 Feistel = 반쪽씩 번갈아 처리(같은 기계로 잠그고 풀기), SPN = 전체를 한 번에 처리(잠그는 기계와 푸는 기계가 약간 다름).
대단원 6 — DES · 3DES · AES
★DES = F·64·56·16★ — 최초 공개 표준 대칭키 ·DES·시험 1순위·
[정의] DES(Data Encryption Standard) = 1977년 NIST가 채택한 최초 공개 표준 대칭키 블록 암호. IBM의 Lucifer 기반. 핵심 4스펙을 ★DES = F·64·56·16★로 통째 외운다 — Feistel 구조·블록 64비트·유효키 56비트·16라운드.
[표] DES 핵심 4스펙
| 항목 | 값 |
|---|---|
| 구조 | Feistel |
| 블록 크기 | 64비트 |
| 유효 키 길이 | 56비트 (전체 64비트 중 8비트 = 패리티) |
| 라운드 수 | 16라운드 |
| 채택 / 폐기 | 1977 NIST(FIPS PUB 46) / 1999 EFF가 약 22시간 만에 해독 |
🔑 암기 ★DES = F·64·56·16★ — Feistel·블록 64·유효키 56·16라운드. 라운드 내부는 S-box(치환) + P-box(전치)의 반복. ⚠️ 함정 'DES 키 길이 = 64비트' ❌ → 전체 키는 64비트지만 유효 키는 56비트(8비트는 패리티). 라운드 수를 12·10·14로 바꿔치기하는 보기도 단골. 🎯 빈출 블록 크기(64)·유효 키(56)·라운드(16)를 묻거나 한 값만 틀리게 끼운 '옳지 않은 것' 유형이 매 회차 1순위. 📝 기출 기출 5 (DES 스펙) 💡 56비트가 짧아 1999년에 깨졌다 — 그래서 임시방편 3DES를 거쳐 AES로 넘어간다.
3DES — DES를 3번 적용한 보강판 (EDE) ·DES·간헐·
[정의] 3DES(Triple DES) = DES가 깨진 뒤 AES 등장 전까지 임시로 쓰던 보강판. DES를 세 번 적용하되 순서가 암호화 → 복호화 → 암호화(EDE)다. 키를 K1=K2=K3으로 두면 결과가 DES와 같아져 하위 호환된다.
[표] 3DES 핵심
| 항목 | 내용 |
|---|---|
| 작동 (EDE) | E_K1 → D_K2 → E_K3 (암호화 → 복호화 → 암호화) |
| 키 K1≠K2≠K3 | 유효 168비트 |
| 키 K1=K3 | 유효 112비트 |
| 키 K1=K2=K3 | 유효 56비트 (= DES, 하위 호환) |
| 성능 | DES의 약 1/3 속도 (3번 돌리므로) |
| 현재 | 2017 NIST 폐기 권고 — 레거시 호환만 |
🔑 암기 3DES = EDE(암복호암). 유효 키 = 112 또는 168비트. 속도는 DES의 1/3. ⚠️ 함정 '3DES는 DES보다 3배 빠르다' ❌ → 정반대로 3배 느리다(보안 강화 대신 속도 양보). 'EDE = 암호화 3번' ❌ → 가운데는 복호화. 🎯 빈출 EDE 순서와 유효 키 길이(112/168)가 간헐. 속도 함정(3배 느림)이 단골. 💡 같은 자물쇠를 세 번 채우니 더 튼튼하지만 그만큼 잠그고 푸는 데 세 배 시간이 든다.
★AES = R·SPN·128★ — 현재 글로벌 표준 ·AES·시험 1순위·
[정의] AES(Advanced Encryption Standard) = 2001년 NIST가 DES 후속으로 채택한 현재 글로벌 표준 대칭키 블록 암호. 핵심 스펙 ★AES = R·SPN·128★ — Rijndael(벨기에 Daemen+Rijmen 설계) 기반·SPN 구조(Feistel 아님!)·블록 128비트 고정. 키 길이는 128/192/256이고 라운드는 ★128→10·192→12·256→14★로 늘어난다.
[표] AES 변종 — 키 길이별 라운드
| 변종 | 키 길이 | 블록 | 라운드 | 주 용도 |
|---|---|---|---|---|
| AES-128 | 128비트 | 128비트 | 10 | 대부분 실무 표준 |
| AES-192 | 192비트 | 128비트 | 12 | 정부·금융 |
| AES-256 | 256비트 | 128비트 | 14 | 군사·최고 기밀 |
[표] 한 라운드 4단계 + DES vs AES
| AES 한 라운드 4단계 | DES vs AES |
|---|---|
| ① SubBytes — S-box 치환 (혼돈) | 구조: Feistel ↔ SPN |
| ② ShiftRows — 행 자리 이동 (전치) | 블록: 64 ↔ 128 |
| ③ MixColumns — 열 행렬 곱 (확산) | 유효 키: 56 ↔ 128/192/256 |
| ④ AddRoundKey — 라운드 키 XOR | 라운드: 16 ↔ 10/12/14 |
| (마지막 라운드만 MixColumns 생략) | 안전성: 1999 깨짐 ↔ 현재 표준 |
🔑 암기 ★AES = R·SPN·128★ — Rijndael·SPN·블록 128 고정. 라운드 ★128→10·192→12·256→14★(키 32비트↑마다 +2). ⚠️ 함정 'AES = Feistel' ❌ → SPN(Feistel은 DES·SEED). 'AES-256 라운드 = 10' ❌ → 14(10은 AES-128). 'AES 한 라운드 3단계' ❌ → 4단계(마지막 라운드만 Mix 생략). 🎯 빈출 AES 구조(SPN)·라운드 수 매핑·블록 128 고정이 매 회차 1~2문제. 키-라운드 매핑 한 줄이 정답 키. 📝 기출 기출 6 (AES-256 라운드) 💡 더 강력한 키일수록 자물쇠를 더 여러 번 돌린다 — 128은 10번, 192는 12번, 256은 14번.
대단원 7 — 국산 대칭키와 기타
★세아리히★ — 국산 대칭키 4총사 ·국산 알고리즘·시험 1순위·
[정의] 한국이 자체 개발한 국산 대칭키 4총사 = ★세아리히★(SEED·ARIA·LEA·HIGHT). 한국 자격증 특화 점수밭으로 매 회차 1문제는 나온다. 개발 기관과 구조가 단골 함정이다.
[표] ★세아리히★ — 국산 4총사
| 약자 | 이름 | 기관 | 연도 | 블록 | 키 | 구조 | 주 용도 |
|---|---|---|---|---|---|---|---|
| 세 | SEED | KISA | 1999 | 128 | 128 | Feistel | 인증서·금융 |
| 아 | ARIA | 국정원+학계 | 2004 | 128 | 128/192/256 | SPN | 정부·국방 |
| 리 | LEA | KISA | 2013 | 128 | 128/192/256 | ARX | 모바일·IoT |
| 히 | HIGHT | KISA | 2006 | 64 | 128 | GFN | 초경량 센서·IoT |
🔑 암기 ★세아리히★ = SEED·ARIA·LEA·HIGHT. 기관 — ARIA = 국정원+학계, 나머지 셋(SEED·LEA·HIGHT) = KISA. 구조 — SEED·HIGHT 계열은 Feistel, ARIA는 SPN, LEA는 ARX. ⚠️ 함정 'ARIA = KISA' ❌ → 국정원+학계 공동. 보기에 IDEA·RC4 같은 외산을 끼워 '국산이 아닌 것'을 묻는 게 단골. HIGHT만 블록 64비트(나머지 128). 🎯 빈출 '국산 대칭키가 아닌 것?'(외산 골라내기)과 'ARIA 개발 기관?'이 매 회차. ★세아리히★ 네 글자면 외산을 즉시 골라낸다. 📝 기출 기출 7 (국산 대칭키) 💡 ARIA는 Academic·Research·Institute·Agency 약자로 외워두면 '국정원+학계'라는 기관을 안 놓친다.
기타 대칭키 — IDEA·RC4 ·기타 알고리즘·간헐·🌟
[정의] ★세아리히★ 외에 시험에 가끔 등장하는 기타 대칭키. 60점 합격 기준으로는 RC4 = 스트림 + 취약, IDEA = PGP 두 가지만 잡으면 함정 차단에 충분하다. 🌟 여기는 이 두 줄만 보면 된다.
[표] 기타 대칭키
| 알고리즘 | 핵심 한 줄 |
|---|---|
| IDEA (1991 스위스) | 블록 64·키 128 · PGP 이메일 암호에 채택 |
| RC4 (1987 Rivest) | 스트림 암호 · WEP·초기 TLS · 현재 취약·사용 금지 |
| RC5 / RC6 (Rivest) | RC6는 AES 후보였으나 Rijndael에 밀림 |
| Blowfish / Twofish (Schneier) | Twofish도 AES 후보 탈락 · 특허 없이 자유 사용 |
🔑 암기 IDEA = 스위스·PGP. RC4 = 스트림·취약·사용 금지. AES 후보 탈락 = RC6·Twofish. ⚠️ 함정 'RC4 = 블록 암호' ❌ → 스트림. 'IDEA = 국산' ❌ → 스위스(외산). 국산 4총사 문제의 외산 distractor로 IDEA·RC4가 단골. 🎯 빈출 RC4가 스트림이며 취약하다는 점, IDEA가 PGP에 쓰인다는 점이 간헐. 더 깊은 디테일은 양보해도 된다. 💡 RC4는 한때 무선랜(WEP)·초기 HTTPS에 널리 쓰였지만 약점이 드러나 지금은 쓰지 않는다.
대단원 8 — 운영 모드
★ECB=쉬우나 위험·CBC=체인★ — 블록 암호 운영 모드 5종 ·운영 모드·시험 1순위·
[정의] 블록 암호는 한 블록을 다음 블록과 어떻게 연결하느냐에 따라 운영 모드 5종(ECB·CBC·CFB·OFB·CTR)으로 나뉜다. 핵심 대비는 ★ECB=쉬우나 위험·CBC=체인★ — ECB는 블록을 독립 처리해 패턴이 노출되고, CBC는 이전 암호문과 XOR로 체인을 걸어 패턴을 차단한다.
[표] 운영 모드 5종
| 모드 | 풀이 | 핵심 | 패턴 노출 | 병렬 | IV |
|---|---|---|---|---|---|
| ECB | Electronic CodeBook | 블록 독립 | 노출! | ◯ | × |
| CBC | Cipher Block Chaining | 이전 C ⊕ P 후 암호화 | 차단 | × | ◯ |
| CFB | Cipher FeedBack | 피드백 입력 | 차단 | × | ◯ |
| OFB | Output FeedBack | 출력 피드백 | 차단 | × | ◯ |
| CTR | CounTeR | 카운터 ⊕ | 차단 | ◯ | Nonce |
🔑 암기 ★ECB=쉬우나 위험·CBC=체인★. CBC 수식 — C_i = E_K(P_i ⊕ C_(i-1)), 첫 블록은 IV와 XOR. 비중 — ECB·CBC 80%, CTR 15%. ⚠️ 함정 'ECB = 안전', 'CBC = 패턴 노출' ❌ → 정반대. ECB = 위험(패턴 노출), CBC = 안전(체인). ECB는 IV 불필요, CBC는 IV 필요. 🎯 빈출 ECB vs CBC 특성을 서로 바꿔치기하는 유형이 운영 모드 출제의 절대 다수. ECB가 같은 평문 → 같은 암호문이라는 점이 핵심. 📝 기출 기출 8 (ECB 모드) 💡 ECB = 같은 도장 여러 개(같은 입력 = 같은 무늬), CBC = 이전 자국이 다음에 영향(같은 입력도 매번 다른 무늬). ECB로 이미지를 암호화하면 윤곽선이 그대로 드러난다(펭귄 사건).
기출 다지기
[기출 1 출제] 정보보호의 3대 요소(CIA)에 해당하지 않는 것은? (해당하지 않는 것 고르기)
- ① 기밀성
- ② 무결성
- ③ 가용성
- ④ 효율성
정답 및 해설 보기
정답: ④ 효율성
| 보기 | ★기무가★ 대입 | 판정 |
|---|---|---|
| ① 기밀성 | 기 | 옳음 |
| ② 무결성 | 무 | 옳음 |
| ③ 가용성 | 가 | 옳음 |
| ④ 효율성 | 3요소에 없음 | ✅ 정답 |
🔑 암기 CIA = ★기무가★(기밀성·무결성·가용성). 효율성은 시스템 품질 속성일 뿐 정보보호 3대 요소가 아니다. 보기에 신뢰성·정확성 등이 끼는 변형도 같은 원리.
[기출 2 출제] 대칭키 암호의 특징으로 옳지 않은 것은? (옳지 않은 것 고르기)
- ① 암·복호화 키가 동일하다
- ② 속도가 빠르다
- ③ 키 분배가 안전하다
- ④ DES·AES가 대표 알고리즘이다
정답 및 해설 보기
정답: ③ 키 분배가 안전하다
| 보기 | 판정 | 해설 |
|---|---|---|
| ① 키 동일 | 옳음 | 대칭키 = 암호화 키 = 복호화 키 |
| ② 속도 빠름 | 옳음 | ★대=속빠★ |
| ③ 키 분배 안전 | ✅ 정답(틀림) | 키 분배는 위험(★키위★) — '안전'은 비대칭키 특징 |
| ④ DES·AES | 옳음 | 대표 대칭키 |
🔑 암기 ★대=속빠·키위★ / ★비=속느·키안★. '키 분배 안전'은 비대칭키의 특징을 대칭키에 뒤집어 끼운 함정.
[기출 3 출제] Shannon이 제시한 확산(Diffusion)을 구현하는 연산으로 옳은 것은? (옳은 것 고르기)
- ① 치환 (Substitution, S-box)
- ② 전치 (Permutation, P-box)
- ③ 압축 (Compression)
- ④ 패딩 (Padding)
정답 및 해설 보기
정답: ② 전치 (Permutation, P-box)
| 보기 | 판정 | 해설 |
|---|---|---|
| ① 치환(S-box) | ❌ | 치환은 혼돈(Confusion)을 구현 |
| ② 전치(P-box) | ✅ 정답 | 전치는 확산(Diffusion)을 구현 |
| ③ 압축 | ❌ | 암호 연산 아님 |
| ④ 패딩 | ❌ | 블록 길이 맞춤용, 확산과 무관 |
🔑 암기 ★확혼★ ↔ ★치전★ 매핑 — 확산 = 전치(P-box) / 혼돈 = 치환(S-box). 치환과 전치를 확산·혼돈에 거꾸로 매핑하는 게 단골 함정.
[기출 4 출제] SPN 구조를 사용하는 대칭키 알고리즘은? (해당하는 것 고르기)
- ① DES
- ② SEED
- ③ AES
- ④ Blowfish
정답 및 해설 보기
정답: ③ AES
| 보기 | 구조 | 판정 |
|---|---|---|
| ① DES | Feistel | ❌ |
| ② SEED | Feistel | ❌ |
| ③ AES | SPN | ✅ 정답 |
| ④ Blowfish | Feistel | ❌ |
🔑 암기 SPN = AES·ARIA / Feistel = DES·SEED·HIGHT / ARX = LEA. 국산 중에서는 ARIA만 SPN이라는 점까지 묶어두면 완벽하다.
[기출 5 출제] DES에 대한 설명으로 옳지 않은 것은? (옳지 않은 것 고르기)
- ① 블록 크기는 64비트이다
- ② 유효 키 길이는 56비트이다
- ③ Feistel 구조를 사용한다
- ④ 라운드 수는 12이다
정답 및 해설 보기
정답: ④ 라운드 수는 12이다
| 보기 | ★DES = F·64·56·16★ 대입 | 판정 |
|---|---|---|
| ① 블록 64 | 64 | 옳음 |
| ② 유효 키 56 | 56 (전체 64 중 8 = 패리티) | 옳음 |
| ③ Feistel | F | 옳음 |
| ④ 12라운드 | DES는 16라운드 | ✅ 정답(틀림) |
🔑 암기 ★DES = F·64·56·16★. 라운드는 16. 12는 AES-192의 라운드 수를 끼워 넣은 함정이다.
[기출 6 출제] AES-256의 라운드 수는? (값 고르기)
- ① 10
- ② 12
- ③ 14
- ④ 16
정답 및 해설 보기
정답: ③ 14
| 보기 | 판정 | 해설 |
|---|---|---|
| ① 10 | ❌ | AES-128 |
| ② 12 | ❌ | AES-192 |
| ③ 14 | ✅ 정답 | AES-256 |
| ④ 16 | ❌ | DES 라운드 수 |
🔑 암기 ★128→10·192→12·256→14★(키 32비트↑마다 +2). ①②④ 모두 다른 알고리즘·변종의 라운드 수를 끼운 의도된 함정.
[기출 7 출제] 한국에서 개발한 국산 대칭키 알고리즘이 아닌 것은? (해당하지 않는 것 고르기)
- ① SEED
- ② ARIA
- ③ IDEA
- ④ LEA
정답 및 해설 보기
정답: ③ IDEA
| 보기 | ★세아리히★ 대입 | 판정 |
|---|---|---|
| ① SEED | 세 (KISA) | 국산 |
| ② ARIA | 아 (국정원+학계) | 국산 |
| ③ IDEA | 스위스(1991) | ✅ 정답(외산) |
| ④ LEA | 리 (KISA) | 국산 |
🔑 암기 국산 4총사 = ★세아리히★(SEED·ARIA·LEA·HIGHT). IDEA·RC4·RC6는 외산 — 국산 문제의 단골 distractor다.
[기출 8 출제] ECB 모드의 특성으로 옳은 것은? (옳은 것 고르기)
- ① 같은 평문이 매번 다른 암호문으로 변환된다
- ② 같은 평문 블록이 같은 암호문으로 변환되어 패턴이 노출된다
- ③ 이전 암호문과 XOR하여 체인을 형성한다
- ④ 초기화 벡터(IV)가 반드시 필요하다
정답 및 해설 보기
정답: ② 같은 평문 블록이 같은 암호문으로 변환되어 패턴이 노출된다
| 보기 | 판정 | 해설 |
|---|---|---|
| ① 매번 다른 암호문 | ❌ | CBC의 특성 |
| ② 같은 P → 같은 C, 패턴 노출 | ✅ 정답 | ECB는 블록 독립 처리 (펭귄 사건) |
| ③ 이전 C와 XOR 체인 | ❌ | CBC의 특성 |
| ④ IV 필요 | ❌ | ECB는 IV 불필요 (CBC가 IV 필요) |
🔑 암기 ★ECB=쉬우나 위험·CBC=체인★. ①③④는 모두 CBC의 특성을 ECB로 둔갑시킨 함정. ECB = 패턴 노출 → 위험.
한 장 요약
시험장 1분 받아쓰기 — 핵심 두음
| 두음 | 풀이 |
|---|---|
| ★기무가★ | 기밀성·무결성·가용성 (CIA 3대 요소) |
| ★기무가인부★ | 기무가 + 인증·부인방지 (확장 5대 요소) |
| ★확혼★ ↔ ★치전★ | 확산↔전치(P-box) / 혼돈↔치환(S-box) |
| ★블스★ | 블록(덩어리·DES·AES) / 스트림(한 비트·RC4) |
| ★DAES★ | DES = F·64·56·16 / AES = R·SPN·128 |
| ★세아리히★ | SEED·ARIA·LEA·HIGHT (국산 4총사) |
| ★ECB=위험·CBC=체인★ | ECB 패턴 노출 / CBC 이전 C와 XOR 체인 |
대칭키 핵심 수치
| 질문 | 즉답 |
|---|---|
| DES 스펙 | Feistel · 블록 64 · 유효키 56 · 16라운드 |
| AES 스펙 | Rijndael · SPN · 블록 128 고정 · 키 128/192/256 |
| AES 라운드 | 128→10 · 192→12 · 256→14 |
| 3DES | EDE(암복호암) · 유효키 112/168 · DES의 1/3 속도 |
| 대칭 키 관리량 | N(N-1)/2 (비대칭 = 2N) |
| 구조 매핑 | Feistel = DES·SEED·HIGHT / SPN = AES·ARIA / ARX = LEA |
| 운영 모드 5종 | ECB·CBC·CFB·OFB·CTR |
핵심 함정 (매년 1회 이상)
| 오답 ❌ | 정답 ✅ |
|---|---|
| 해시 = 기밀성 / 암호화 = 무결성 | 해시 = 무 / 암호화 = 기 |
| 인증 = 인가 | 인증(누구냐) ≠ 인가(무엇을 할 수 있냐) |
| 대칭키 = 키 분배 안전 | 키 분배 위험 (안전은 비대칭) |
| 치환 = 확산 / 전치 = 혼돈 | 치환 = 혼돈 / 전치 = 확산 |
| DES 키 = 64비트 | 유효 키 56비트 (8 = 패리티) |
| AES = Feistel / AES-256 = 10라운드 | AES = SPN / 256 = 14라운드 |
| 3DES = DES보다 3배 빠름 | 3배 느림 |
| ARIA = KISA | 국정원 + 학계 공동 |
| RC4 = 블록 암호 | 스트림 + 취약·사용 금지 |
| ECB = 안전 / CBC = 패턴 노출 | ECB = 위험 / CBC = 안전 |
핵심 수치: CIA = 기무가 · 확장 5요소 = 기무가인부 · 대칭 키 관리량 N(N-1)/2 · DES = F·64·56·16 · AES = R·SPN·128 · 라운드 128→10·192→12·256→14 · 국산 4총사 세아리히 · 운영 모드 ECB(위험)·CBC(안전) · 케르크호프스 = 알고리즘 공개·키 비밀.
