1장. 시저의 암호

Download Report

Transcript 1장. 시저의 암호

1장. 시저의 암호
1.1 고전 암호
 약 2,500년 전 그리스 지역의 스파르타에서
는 전쟁터에 나가 있는 군대에 비밀메시지를
전할 때 사용한 암호 소개
S Y B L C R E S E E R A C H T A YPU O
H I P H R U E M T Y I L S O O !T D O F G
<스키테일>
스키테일 암호방법
1)
2)
3)
4)
전쟁터에 나갈 군대와 본국에 있는 정부는, 각자 스
키테일(Scytale)이라고 하는, 같은 굵기의 원통형
막대기를 나누어 갖는다.
비밀리에 보내야 할 메시지가 생기면, 암호담당자
는 스키테일에 가느다란 양피지 리본을 위에서 아
래로 감은 다음 옆으로 메시지를 적는다.
리본을 풀어내어 펼치면 메시지의 내용은 아무나
읽을 수 없게 된다.
같은 굵기의 원통막대기를 가진 사람만이 메시지를
읽을 수 있다
스키테일 암호 공격 방법
 메시지가 앞장과 같은 문자열이 나타났다고 하자.
 스키테일에 리본을 위에서 아래로 감았을 때 한 바
퀴에 쓸 수 있는 문자의 개수를 C라 하고, 그 C가
얼마인지 알아보자.
 우선, 그 값을 알지 못하므로, C=5라 해보자. 암호
문에 나타나 있는 문자열을 5개씩 건너뛰어 다시
써보면 다음과 같은 이상한 문자열을 얻는다
스키테일 암호 공격 방법
S
Y
B
L
C
R R A
E A Y
S C P
E H U
E T O
계속
H U I ! G
I E L T
P M S D
H T O O
R Y O F
C=6 으로 하여 다시 배열하여 보면 메시지의 내용을 알 수 있다.
S
E
C
Y
S
H
B
E
T
L
E
A
C
R
Y
R
A
P
security should
U
R
I T
O
U
L D
H
E
S O
I
M O F
P
T
O G
H
Y
!
be the sole aim of cryptography
전치암호
 전치암호란 메시지에서 사용한 문자들의 위치를 일
정한 규칙에 의해 뒤섞어서 만드는 암호를 말한다.
(예: 스키테일 암호)
 (예제)
I LOVE ROSE 에서 이 메시지에 사용한 문자들 I,
L, O, V, E, R, S 의 위치를 뒤바꾸어
L VRSI OEOE 와 같은 암호문을 만든 것
치환암호
 치환암호는 메시지의 각 문자들을 다른 문자로 바
꾸는 암호를 말한다.
 (예제)
I LOVE ROSE 를
$#ÅXY≒↑AK 로 바꾸는 방식으로 만든다.
 치환암호에서 암호문에 사용한 문자들은 이 메시지
에서 사용한 것일 수도 있고 전혀 다른 기호일 수도
있다.
치환암호
계속
 더하기 암호라고 알려져 있는 시저의 암호가 대표적인 치환
암호이다.
시저가 사용한 암호법의 대응규칙:
평 문
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
암호문
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
B
C
A
 You can write a letter 는 표를 이용해 암호문을 만들면
BRX FDQ ZUMWH D OHWWHU
로 바뀐다.
 시저는 3칸을 뒤로 밀었지만 몇 칸을 움직이는가는 미리 상
대방과 정해 놓기만 하면 된다. 영어알파벳은 모두 26개 이므
로 이번 방식의 암호는 26가지가 있을 수 있다.
1.2 아핀암호

컴퓨터를 사용하여 암호화하는 경우 보통 a는 1,
b는2, …,y는 25, z는 0으로 바꾸어서 생각한다.
문자를 숫자로 바꾸어 놓으면 더하기 암호화 같
은 경우 +s(/mod 26)이라는 수식으로 간단히 표
현할 수 있다.

<더하기 암호의 암호화 과정>

2.
우선 평문의 문자를 숫자로 바꾼다
각 숫자에 s를 더한다.
3.
더한 수가 25를 넘으면 26으로 나눈 나머지를 택한다.
4.
 수학적으로는 modulo 26 또는 mod 26을 구
한다고 한다
1.
더하기 암호
 (예제)
문자 x를 오른쪽으로 3칸 옮기는 더하기 암호를 수식화
해 보자.
· x는 24로 바뀐다.
· 24 + 3 = 27
· 27을 26으로 나눈 나머지는 1이다.
· 1은 암호문자 A에 해당한다.
곱하기암호
 문자(해당하는 숫자)에 t를 곱한 다음 26으로 나눈 나머지를 구
하면 대응하는 암호문자가 된다. 예를 들어 각 문자에 2를 곱
하여 암호화하면 대응하는 문자표는 다음과 같다.
평 문
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
암호문
B
D
F
H
J
L
N
P
R
T
V
X
Z
B
D
F
H
J
L
N
P
R
T
X
Z
V
 이때 2개의 문자가 한 문자로 대응할 수도 있음을 알아야 한다.
예를 들어 h와 u는 P로 대응된다. 이런 경우 암호화에 사용하
기 곤란하다. 어떤 암호라도 복호화할 때(암호문자를 평문자
로 바꿀 때) 반드시 한 문자에 한 문자씩 대응되어야 한다.
아핀암호
 (예제)
3을 곱한 문자표를 생각해 보자.
평 문
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
암호문
B
D
F
H
J
L
N
P
R
T
V
X
Z
B
D
F
H
J
L
N
P
R
T
X
Z
V
 이 경우는 한 문자에 한 문자씩 중복되지 않은 채 대응되고
있으므로 실제로 사용할 수 있는 단일문자암호이다. 약간 더
생각해 보면 1, 3, 5, 7, 9, 11, 15, 17, 19, 21,23, 25를 곱할 경
우에만 의미 있는 암호표가 얻어짐을 알 수 있다.
 더하기와 곱하기를 적절히 결합하여 사용할 수도 있다. 우선
문자에 적절한 수 s 를 더한 다음 다시 그 결과에 t 를 곱하여
암호문자를 얻는다.
 이런 암호화 방법을 아핀암호라고 하며, 모두 26×12 = 312
가지 방법이 가능하다.
1.3 통계분석에 의한 암호공격
 암호 분석가: 메시지를 허락없이 들여다 보려는 사람
 앨리스(Alice, 여자): 메시지를 암호화해서 보내는 사람
 밥(Bob, 남자): 암호문을 받아서 미리 정한 열쇠로 메시
지를 읽을 사람
 오스카(Oscar) 또는 Mr. X: 정당한 자격이 없는 상태에
서 남의 메시지를 열어보려는 암호공격자
암호공격
 Mr. X는 우선 이 암호문이 어떤 암호를 사용했을까
를 판단해야 할 것이다.
 사용한 암호방법(시저암호, 스키테일 암호, 아핀암
호 등등)은 그리 어렵지 않게 알아낼 수 있다.
 암호문의 형태나 특성, 사용용도, 사용기관 등을 잘
고려해 보면 사용한 암호방법이 무엇인지는 쉽게
알 수 있다.