나치의 암호기계 이니그마(Enigma)의 비밀

이니그마(Enigma)는, 제2차 세계대전 때 나치 독일이 사용했던 것으로 유명한 로터식 암호화 기계이다. 1918년 독일의 발명가 아르투어 세르비우스(Arthur Scherbius)에 의해 발명되어, 1925년에는 약 3만대가 군용으로 사용되었다.


우수한 암호 시스템은 예외없이, 이니그마는 사용하는 것은 간단하지만, 그 암호문을 깨뜨리는 것은 매우 어렵다.



기계식과 전자식의 중간쯤으로되는 이니그마의 외형은, 큰 타자기 같이 생겼다. 키보드로 메시지의 첫 번째 문자를 입력하면, 램프 보드에 대체 문자가 점등한다. 암호문을 받은 측면에서도 같은 절차를 밟는다. "암호문"을 입력하면, 해독 된 메시지가 램프 보드에 점등.




내부에는 3개의 로터가 내장되어 있다. 각 로터는 문자를 입력하면 다른 문자를 출력한다. 이 문자가 3개의 로터를 거친 후 "반전 로터"에 의해 반대 방향으로 전송되고, 3개의 로터를 다시 경유.



결국 램프 보드에 문자가 점등하고, 암호화 된 출력을 나타낸다. 동시에 최초의 로터가 1 눈금 만큼 회전한다. 따라서 두 번째 문자 첫 글자와 같은 것을 입력되어도 다른 문자가 출력된다.



최초의 로터가 26눈금 회전하면, 두 번째 로터도 1눈금 만큼 회전한다. 두 번째 로터가 1회전하면, 세 번째 로터도 회전한다. 따라서 동일한 암호화 프로세스가 다시 사용되기 까지는 17,000 개의 조합이 존재하게 된다.




또한 로터와 입출력 중간에는 1쌍의 문자를 교체하는 플러그 보드가 내장되어 있다. 초기 모델은 최대 6조까지 바꿀 수 있지만, 후기 모델은 10조로 확대되었고, 제 4로터도 추가되었다.




이러한 복잡한 구조에도 불구하고, 운영자에게 필요한 것은 3개의 로터의 배치와 순서 및 플러그의 배치 뿐이다. 초기 설정만 알고 있으면 해독은 암호문을 다시 입력 하는것 뿐이다. 반전 로터 덕분에 해독은 암호화 절차와 동일하게 되는 것.


그러나 반전 로터에는 암호화 갱신 단서를 주어 버린다는 단점도 있었다. 즉, 같은 문자에는 변환되지 않는 것이다. 이 팁으로, 몇 가지 메시지("Keine besonderen Ereignisse"나 "An die Gruppe" 등)의 암호화 결과를 추측하여 수천 종류의 로터 위치를 제외 할 수 있었다. 



결국 수학자 앨런 튜링이 암호 해독 기계 "탱크"를 개발하고, 논리적 해석을 실시하여 이니그마를 깰 수 있게 되었다. 그러나 첫 번째 단계는 반드시 수동으로 수행해야만 했다. 붐베는 검증해야 할 조합의 종류를 줄이는 역할 밖에 하지 못했던 것이다.




연합국은 암호 해독 팀을 조직하여, 이니그마의 해독에 노력을 기울였지만, 나치도 로터의 수를 늘리거나 모양을 변경하는 등 이니그마의 개선에 노력하고 있었다. 그리고 이니그마를 뛰어넘는 "로렌스"가 등장..



영국은 그 해독을 통해 많은 암호 해독자와 자동화가 필요하게 되었다. 이것이 세계 최초의 디지털 프로그래머블 컴퓨터 "콜로서스(Colossus)"의 탄생으로 이어진다.


현재 인터넷 상에서 실제로 이니그마 암호를 생성 할 수 있는 시뮬레이터가 공개되어 있기 때문에, 관심있는 사람은 체크해보길 바란다.