본문 바로가기

디지털포렌식(Digital forensic)/숫자

포인트-키 암호, 알파벳과 숫자의 절묘한 조합

반응형

포인트 암호화는 간단한 형태의 대치 암호다.
원리는 알파벳 문자를 숫자로 변환하고 그 숫자를 특정 좌표에 매핑해서 암호화하는 원리다. 

1단계) 알파벳을 숫자로 대응시키는 키를 정한다.

먼저, 알파벳 문자를 숫자로 대응시키는 키를 정한다.
가장 간단한 경우는 A=1, B=2, ..., Z=26과 같이 알파벳 문자를 숫자로 직접 매핑하는 것이다.
이것은 알파벳 문자를 숫자로 변환하는 기본 키가 된다.
A=5, B=2,...Z=4 와 같은 형태로 키를 잡는 것이 더 암호답다.

2단계) 키로 사용할 점의 좌표를 선택한다. 

다음으로, 암호화에 사용할 키로서 (x, y) 형태의 좌표를 선택한다.
이 좌표는 알파벳 문자를 숫자로 변환하는 데 사용된다.
예를 들자면, (3, 1) 또는 (26,5)와 같은 좌표를 선택할 수 있다.


3단계) 평문의 각 문자를 해당하는 숫자로 변환한다.

다음으로는 암호화할 평문을 선택한다.
평문의 각 문자를 앞에서서 정한 키(A=1, B=2,....Z=26)를 사용하여 해당하는 숫자로 변환한다.
예를 들어, "HELLO"를 변환하면 "8 5 12 12 15"가 되고, "MOROCCO"를 변환하면 "13 15 18 15 3 3 15"가 된다.

 

4단계) 변환된 숫자와 키 좌표를 사용하여 다른 숫자로 변환한다. 

"HELLO"를 변환하면 "8 5 12 12 15"이고,

좌표값이 (3, 1)일 경우, "8"을 변환할 때 8을 x축으로 3만큼 이동하므로 11이 되고,
Y축으로 1만큼 이동하므로 아래 테이블을 볼 때 H는 K가 되었다가 다시 A가 된다.

이같은 형식으로 HELLO를 모두 풀어보면
H : 8+3 = 11(K) + (y축으로) 1 = 1
E : 5+3 = 8(H) + (y축으로) 1 = 18(y축으로 한바퀴 회전)
L : 12+3 = 15(O) + (y축으로)1 = 5
L : 12+3 = 15(O) + (y축으로)1 = 5
O : 15+3 = 18(R) + (y축으로)1 = 8

 

5단계) 변환된 숫자를 다시 알파벳으로 변환하여 암호문을 생성한다.

1, 18, 5, 5, 8 이므로 A, R, E, E, H가 된다.

간단하며, 기본적인 대치 암호의 한 형태로  보안적으로는 안전하지 않으며,
실제로 사용되는 현대 암호화 방법과는 다르다는 정도로만 이해하면 될 것 같다.



728x90