스킬캠퍼스
3강 · 빈도분석
강의

오늘 끝나면

빈도분석

  • 빈도분석의 핵심 문제를 한 문장으로 설명한다
  • 오른쪽 실습에서 빈도분석이 어떻게 움직이는지 관찰한다
  • 다음 강의와 이어지는 한계를 말할 수 있다

실습 미션

단순 치환은 왜 깨지나 — e가 제일 많이 나옴 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.

성공 조건

  • 실습의 기본값을 먼저 관찰
  • 입력값이나 모드를 한 번 이상 바꿔 결과 비교
  • 왜 결과가 바뀌었는지 한 문장으로 설명

암호 & 보안 · 03

빈도분석
단순 암호의 약점

글자만 바꾼 암호는 빈도로 깨짐. 자주 나오는 글자는 티가 남. 영어는 e가 제일 많음. 글자를 바꿔도 그 버릇은 안 사라짐.

P.01암호 & 보안 · 03

치환 암호 = 글자 1:1 교체

치환 암호는 글자를 다른 글자로 바꾸는 것임. A는 D로, B는 E로 — 1:1로 짝지어 통째로 갈아끼움.

시저 암호가 대표적임. 모든 글자를 같은 칸 수만큼 뒤로 미는 것. 세 칸 밀면 HELLO → KHOOR가 됨. 푸는 쪽은 같은 칸만큼 되밀면 끝.

열쇠는 “몇 칸 밀었나” 하나뿐임. 겉보기엔 외계어인데, 글자끼리의 관계는 그대로 남음. 이게 약점이 됨.

A→D · B→E … 표 한 장이 곧 열쇠
시저 +3 — 글자를 세 칸 뒤로
평문암호문
A+3D
B+3E
C+3F
H+3K
+3
Z+3C
열쇠는 “몇 칸 밀었나” 하나뿐
P.02암호 & 보안 · 03

언어의 글자 빈도는 지문처럼 남는다

어떤 언어든 글자가 나오는 비율이 정해져 있음. 영어 글을 길게 모으면 언제나 e가 1등임.

e, t, a, o 순으로 흔함.z, q, x는 거의 안 나옴. 글쓴이가 누구든 비슷함. 한국어도 받침·조사 빈도가 일정함.

치환 암호는 글자 모양만 바꿈. 그래서 제일 흔한 글자가 뭘로 바뀌든, 그게 여전히 제일 흔함. 빈도 순서라는 “지문”이 암호문에 그대로 찍힘.

영어에서 e가 압도적으로 많음
영어 글자 빈도 — e가 1등
e
12.7%
t
9.1%
a
8.2%
o
7.5%
i
7%
n
6.7%
s
6.3%
h
6.1%
r
6%
z
0.1%

글쓴이가 누구든 이 순서는 거의 그대로임

P.03암호 & 보안 · 03

막대 최댓값을 e로 맞추면 키가 드러난다

깨는 법은 단순함. 암호문에서 제일 많이 나온 글자를 찾아, 그걸 e라고 찍으면 됨.

오른쪽에서 직접 해봄. 제일 높은 막대가 단서. [자동 해독]을 누르면 그 막대를 e에 맞춰몇 칸 밀렸는지를 역산해 평문을 복원함.

슬라이더로 돌려봐도 됨. 시프트가 맞는 순간 영어 문장이 떠오름. 키 하나만 알아내면 전체가 줄줄이 풀림. 이게 빈도분석의 위력임.

제일 흔한 글자 → e 로 찍기 → 자동 해독
빈도분석 · 시저 암호 깨기
암호문 (시저로 잠김)

AOL XBPJR IYVDU MVE QBTWZ VCLY AOL SHGF KVN ULHY AOL YPCLYZPKL

되돌린 글 — 시프트 0

AOL XBPJR IYVDU MVE QBTWZ VCLY AOL SHGF KVN ULHY AOL YPCLYZPKL

글자 빈도 — 제일 높은 막대가 곧 단서
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z

제일 높은 막대는 L임. 영어에서 제일 흔한 글자는 e라서, 이 막대를 e로 보면 키가 드러남.

되돌릴 시프트 — 직접 돌려도 됨
0

버튼을 누르면 막대 최댓값을 e에 맞춰 시프트를 추정함. 직접 슬라이더를 돌려 맞춰봐도 됨.

P.04암호 & 보안 · 03

그래서 단순 치환은 안전하지 않다

단순 치환 암호의 약점은 빈도가 그대로 새어 나간다는 것.

글자를 아무리 뒤섞어도 빈도 순위표는 안 변함. 그 순위표를 언어의 표준 빈도와 나란히 놓으면 짝이 맞춰짐.

그래서 현대 암호는 글자를 1:1로 안 바꿈. 같은 글자도 매번 다르게 보이게 섞음. 다음 강의의 에니그마가 그 “매번 바뀌는 치환”으로 빈도 단서를 지운 기계임.

Q. 빈도분석이 통하는 이유는?언어마다 글자 비율이 일정해서임. 암호로 글자를 바꿔도 빈도 순서는 그대로 남음. 그래서 제일 흔한 글자를 그 언어의 제일 흔한 글자(영어는 e)로 찍으면 키가 드러남. 모양만 바뀌었지 빈도라는 지문은 안 지워진 것.
모양은 바뀌어도 빈도 순서는 그대로
모양은 바뀌어도 순위표는 그대로
평문 빈도 순위
1e
2t
3a
4o
암호문 빈도 순위
1h
2w
3d
4r

1등은 1등끼리 짝 — 빈도가 새어 나감

3줄 요약

  1. 1단순 치환은 왜 깨지나 — e가 제일 많이 나옴
  2. 2빈도분석은 고전 암호 → 키와 신뢰 → 웹 보안 → 블록체인 → 다음 시대 흐름 안의 한 칸이다.
  3. 3개념을 외우는 것보다 입력을 바꾸면 무엇이 달라지는지 보는 것이 우선이다.

완료 전 점검

복습 카드

빈도분석

단순 치환은 왜 깨지나 — e가 제일 많이 나옴

암호를 잠그고 풀 때 쓰는 비밀 또는 공개 숫자

해시

데이터를 고정 길이 지문으로 바꾸는 함수