에니그마. 이미지 출처, <이미테이션 게임>


암호를 만드는 방식에는 크게 전치(轉置) 방식과 환자(換字) 방식이 있다. 전치 방식은 전하고자 하는 메시지인 평문의 철자 위치를 바꾸어 암호문을 만드는 방식이고, 환자 방식은 평문 철자를 일정한 규칙에 따라 다른 문자로 바꾸어 암호문을 만드는 방식이다. 더 복잡하게 하고자 할 때는 전치 방식과 환자 방식을 함께 적용한 혼합 방식을 사용할 수도 있다. 이렇게 평문을 암호문으로 만드는 암호화의 규칙을 ‘알고리즘(algorism)’이라 하고 역으로 암호문을 평문으로 푸는 해독의 규칙을 ‘키(key)’라 한다.


암호의 원리는 현대 문명의 발달과 함께 다양한 암호 장치들로 구현되었다. 특히 전신(電信)에 의한 송ㆍ수신이 가능하게 되면서 전기 암호 장치가 개발되었다.


[그림 1] 전기 암호 장치의 구조


[그림 1]에서 스위치 a, b, c, d와 연결된 램프 A, B, C, D로 구성된 이 장치는, 스위치 역할을 하는 키보드에서 평문 철자를 입력했을 때 불이 켜지는 램프가 암호 철자를 나타낸다. [그림 1]에서처럼 송신자가 평문 철자 c를 입력했을 때 c에 연결된 램프 D가 켜지고 이 암호 철자 D를 전신으로 받은 수신자는 암호 철자인 D를 눌러 D에 연결된 원래의 평문 철자 c를 얻게 되는 방식이다.


그러나 전기 암호 장치는 회로 구조가 파악되면 쉽게 암호가 노출될 수 있고, 그런 경우 다시 회로 구조를 바꿔야 하는 불편함이 있었기 때문에 전시(戰時)와 같이 분초를 다투는 위급한 상황에는 적합하지 않았다. 이런 문제를 극복하기 위해 회전하는 원통 속에 전기 회로를 넣은 ‘에니그마’가 개발되었다. 


[그림 2] 에니그마의 구조


에니그마는 원통이 회전함에 따라 스위치와 램프의 연결 상태가 계속 바뀌기 때문에 회로 구조를 조작하지 않고도 평문 철자와 암호 철자의 대응 규칙을 쉽게 바꿀 수 있다. 예를 들어 원통이 회전하지 않는 경우에는 평문 ‘b’를 입력하면 [그림2]의 회로 구조를 거쳐 암호문 ‘A’로 나타나지만(b-2-1-A), 원통이 시계 방향으로 1/4바퀴 돌아간 경우에는 같은 ‘b’를 입력하더라도 원통 속의 회로가 다른 단자와 연결되면서 암호문 ‘C’로 나타나게 된다(b-3-4-C). 따라서 암호를 파악하기 위해서는 원통 바퀴 내부의 회로 구조뿐만 아니라 한 글자를 입력할 때마다 원통이 언제, 얼마나 회전하는지 등 원통의 회전 규칙도 함께 알아야 한다.


― 루돌프 키펜한, ‘암호의 해석’