728x90
암호(暗號, password/cipher)
1 개요 ¶
Password와 Cipher는 전혀 다른 의미이지만, 한국에서 '암호'는 양쪽 모두의 의미를 갖는다. Password는 특정한 자원에 대해 접근 권한이 있는지를 검사하기 위한 것이며, Cipher는 해당 정보를 변형하여 비밀을 알고 있지 않은 사람은 이용할 수 없게 만다는 것이다. 일상 생활에서 암호라는 말은 대부분 Password를 의미하지만 학문적, 상업적인 분야에서 암호는 대부분 Cipher를 의미하며, 이 경우 Password에 해당되는 것은 '키(key)'라는 이름으로 부르는 경우가 많다. Cipher는 암호문이라고 부르기도 한다.
암구호는 Password 의 일종이다.
제일 좋은 암호는 적도 암호로 인해서 힘들어하지만, 정작 사용하는 사람도 힘들어해야 좋은 암호라고 볼수 있다. 근데, 사용하는 사람이 귀차니즘에 빠지면 적이 행복해 하는게 단점이 되지만 말이다.
현재 세계 각국은 적국의 암호 체계를 뚫으려고 하고 있으며, 이에 엄청난 돈과 노력, 시간이 들어가고 있다. 그러나 다행히도(?) 이런 연구들이 물위로 나온적은 거의 없다. 당신 같으면 스타에서 맵핵 쓴걸 사람들에게 다 공개할래?
2.1.1 스키탈리 ¶
스파르타에서 쓰였다고 알려지는 최초의 군사 암호. 스키탈리는 그리스어로 '막대'라는 뜻이라고 한다. 특정한 길이와 두께의 막대에 종이띠를 나선형으로 감고 암호문을 작성한 뒤, 종이띠를 풀어 무의미한 글자나 적에게 혼선을 줄만한 내용을 적어 넣었다. 난이도를 높이기 위해 원래 문장 사이에 무의미한 글자를 넣거나, 글자를 거꾸로 썼다고 한다.
I Love You = uoY evoL I = uYaLb v oeocdefI -스키탈리 암호 |
이 암호의 문제점은 암호를 풀기 위해 미리 정해진 크기와 모양의 막대가 필요하고, 제대로 감지 않으면 암호 해독에 실패하기 십상이라는 것이다. 따라서 적에게 막대가 탈취당하기라도 하면 더 이상 암호가 안 풀리길 기대하는 것 자체가 넌센스다.
2.1.2 카이사르 암호 ¶
A...Z를 1~26에 대응하고 키를 어떤 정수로 잡으며, 암호문의 각 글자는 평문의 A+key(mod 26)이 된다. 쉽게 말해 키가 2라면 A->C, B->D...Y->A, Z->B가 되는 식. 카이사르 암호는 글자 하나 당 다른 문자 하나를 치환하므로 단일치환 암호의 일종이다.
I Love You = K Nqxg Aqw -카이사르 암호 |
카이사르 암호는 그 당시에도 풀기 쉬웠다. 당장 1~26만 검사하면 되니까... 그래서 골치가 아팠다. 카이사르 암호가 아니더라도 단일치환 암호는 일반적으로 빈도 분석을 통해 해독하는 것이 가능하다.
그리고 이때 암호가 신비주의의 한 형태라는 오명을 갖게 된다. 처음 생긴 그때부터 암호는 예언 등과 같은 마법사에게 부여되는 초자연적 힘과 같은 정신적 영역과 관련된 기록에서 핵심적인 역할을 수행했기 때문이다. 이런 점은 성경에서도 암호화된 구절이 나오는 것에서 충분히 알 수 있다. 당장 구약성서 3가지 판본 중에 예레미야서 25장 26절, 51장 41절에서 바빌론(babylon)이 나와야 되는 부분에 세삭(Sheshach)이 나온 점등. 이런 방식은 전통적인 대치방법이다.
2.2 고대~제 1차 세계대전 전까지의 암호 ¶
아주 당연하게도 암호는 정치쪽과 많이 연관되어 있었다. 예를 들어서, 스페인 무적함대가 영국을 침략하려는 것도 암호 해독을 통해서 영국이 낌새를 눈치챘으며, 메리 스튜어트 목 딴 것도 암호 해독의 공이 크다.
유럽권이 암흑시대로 고생하는동안 아랍권에서는 현대적인 의미의 암호학이 발달하기 시작했다. 단일 치환 암호를 깨는 빈도분석법이 알-킨디(Al-Kindi)에 의해 개발된 사실을 특히 주목할 만한데, 빈도분석법의 바탕이 되는 통계학과 언어학적인 지식이 그만큼 발달했다는 뜻이다.
자기 자신이 키가 되는 암호가 르네상스 시기에 개발되었으며, 교황청이 엄청나게 강했던 시기엔 교황청의 암호국(局)도 엄청난 권세를 누렸다. 물론 잘나가던 국가들은 암호국이 엄청나게 강했다. 당시 자기 암호의 키를 가지는 비제네르 암호 방식이 도입된다. 이 방식은 카이사르 방식과 거의 흡사한데, 암호표를 가지고 암호를 만드는 방식이다. 한 글자가 내려가면 다른 배열의 알파벳 표가 나오며, 또 내려가면 다른 배열의 알파벳 표가 나오는 형식이다. 또한 이런 암호국은 강대국이라면 다 갖고 있었으며, 오스트리아-헝가리 제국도 비밀회의실이란 이름의 거대 암호실을 갖고 있었다고 한다. 오스트리아-헝가리 제국에선 암호해독사들이 암호를 못 풀었을 때 받는 금액도 있었다고...
비제네르 방식과 유사한 방식으론 토머스 제퍼슨이 뚝딱뚝딱해서 만든 제퍼슨 디스크라는 물건이 있다. 이 제퍼슨 디스크의 암호는 끝내줘서(디스크 갯수와 배열을 알기전까진 매우 눈물나온다.) 2차 세계대전 당시에도 이것의 개량형인 M-138-A를 써먹었다고 한다. 특히 이 기계는 미 정부의 최고 보안을 담당했고 듣보잡 독일, 일본은 전쟁이 끝날때까지 이놈을 못 풀었다. 이걸 개량한 M-209는 한국전쟁까지 써먹었다. 비제네르 암호라든가, 나중에 개발된 플레이페어 암호 방식을 가리켜 다중치환 암호라고 불린다. 또한 이때 체커박스 암호의 강화판이 등장하지만, 묻혀버렸다.(...) 체커박스 암호는 아래 나오는 ADFGX암호 판인데, 이 개량판은 그것보다 더 빡센 판이었다.
2.3 1차 세계대전 때의 암호 ¶
그 뒤로 여러 가지 암호학의 발전이 있었고, 1차 대전때 제일 유명한 암호로는 치머만 전문이 있었다. 1차 세계대전이 일어나자, 영국에선 독일에 대한 최초의 적대적 행위로 텔코니아호가 독일에서 미국쪽으로 가는 케이블을 끊어 버리게 되는데, 이게 전쟁의 승패를 좌우한 사건으로 드러나게 된다.
세계 역사를 바꿀 암호 문서인 치머만 문서가 독일에서 만들어졌다. 독일 제국 측에선 물품을 자꾸 연합국 측으로 보내는 미국이 짜증났다. 그래서 멕시코에게 "야~ 같이 미국에 대항하는 팀먹자"고 멕시코 주재 독일 대사관으로 암호문건을 보낸다. 물론 초암호화라고 해서 암호를 두 번 세 번 더해서 알아보기 어렵게 만드는 것을 거친 후였다. 그러나, 암호를 보내기 위해서는 스웨덴 라인이라고 하는 방식을 선택해야 하는데, 이 방식은 스웨덴 대사관에서 독일의 전문 받아 자기네 라인에 실어 부에노스아이레스로 보내고, 그걸 다시 멕시코의 독일 대사관이 받는 형식이라 번거롭고 시간과 노력이 소요되는데다가 정작 스웨덴 라인은 영국 암호해독실인 40호실이 다 보고 있었다.
당연하게도 40호실은 바삐 이걸 해독하여, 미국 측에 넘겼다. 이 때 영쿡님하가 보고계셔를 들키지 않으려는 목적으로 연극을 해서...이미 다 풀어놓은 코드와 전문을 들고와서 미국대사관 안에서 다시 풀었다. 이런 쇼를 통해 미국 영토 내(대사관이니까)에서 해석했다고 출처를 말해 40호실의 협조를 숨길 수 있었다. 이런 노력을 가한 결과 미국 측에선 안그래도 무제한 잠수함 작전 때문에 짜증나있던 가운데 자기 뒷마당에서 이딴 짓을 한 독일에게 선전포고를 날리게 된다. 이를 보고 낚인 영국의 신문이 미국에선 이런 정보도 잘 찾아내는데, 왜 대영제국 정보부는 이런 정보를 못찾냐라는 기사를 올리기도 했다. 그걸 미국에 찌른 게 영국인데, 영국 정보부는 저 기사를 보고 웃었을지 아니면 배알이 꼴렀을지는 아무도 모른다.
물론, 이 코드를 해독하는 데에선 독일 순양함 마그데부르크 코드북의 코드북을 러시아 측이 입수해서 영국에 넘겨준 것도 큰 영향을 했다. 이 코드북과 더불어 여러 순양함에서 코드북을 입수할 수 있었다. 이런 독일의 코드북으로 인해서 40호실은 유명한 암호해독실이 되었다. 치머만 전보도 이 코드북들을 이용해서 번역한 것이다.
또한 독일군에서는 다음과 같은 ADFGVX란 암호를 군사령부간 통신에 이용하였는데, 빠르기도 빠르면서 쉽고 익히기도 편했다.
위 그림은 이의 초기버전인 ADFGX 버전. 이 암호가 안 뚫렸다면 독일군은 파리를 정복할 수도 있었지만, 프랑스인 암호해독가인 조르주 팽뱅이란 사람이 극적으로 뚫어버려서 독일군은 파리를 점령하지 못했다... 죽일놈
2.4.1 일본군 ¶
바보 일본군 전설이 여기서도 이어진다. 전쟁 전 일본 측에선 독일의 에니그마를 베낀 97식 구문인자기(九七式欧文印字機 : 유럽 알파벳을 쓰는 97형식의 타자기)란 걸 대사관의 최고위 암호를 사용하는 데 사용했다. 일본측의 다른 암호는 어느 정도 뚫을 수 있었지만, 퍼플이라고 이름붙여진 이 암호기계를 뚫는 데 시간이 엄청 걸렸다. 당장 에니그마에 있는 반사판 장치가 없어서 구조적으로는 진일보했다. 덕택에 독일에서도 못 깼다.
그러나, 예전에 조지 파비앙(George Fabyan) 밑에서 유전학자 일을 하던 프레데릭 프리드만이라는 천재와 그가 일한 SIG측에선 뚫는데 성공하고, 여기에 Magic이라는 코드명을 붙인다. 일본측에서도 이게 뚫린다는 걸 어느 정도 눈치채고 있었지만, 멍청한 일본측에선 「미쿡놈들이 우리꺼 읽고 있다는 의심이 드니까 조심해~」라고 전문을 보내고 암호기계에 이건 국가기밀임!이란 에나멜 딱지를 붙이는 것.(...) 말고는 아무런 조치를 하지 않았다. 기계에 기밀 딱지를 붙여봤자 전파가 숨겨지는 것도 아닌데 뭐 하는 짓이었는지. 앞서 말했듯이 자기도 못깨고 독일도 못깨니 안심한 것이다. 그리고 또 한가지로 저런 짓을 한 이유는, 자기네 일본어가 엄청나게 어려운 물건이기에, 코쟁이들은 절대로 못풀 것이다!!! 라고 생각했다는 점이다. 어쩌면 우등하신 백인님들이 설마 일본어 따위를 배우겠어라는 사상이었을지도 모른다 그러나, 그때 미국에 일본어 통역장교만 수십명이 넘었다고...
그리고 진주만 공습 때 일본제국 하와이 대사관이 전문을 모두 받았을 때는 이미 진주만 공습이 시작되고 있었다. 그리고 미국측도 일본측과 같이 보고 있었다. 암호문을 다 받고, 제출할 때는 벌써 진주만에 폭격을 맞은 뒤였다...그래서 일본은 선전포고를 다 내지 않았다는 이유로 전범재판때 가중처벌을 받게 된다. 전보 내용을 다 알고 있었던 미국측에선 전보 내용을 다 알고 있던 상태였고, 일본대사가 공습 이후에나 해당 문서를 제출하니, 비난을 퍼부어주었다고 한다.
또한 퍼플이 안전한 줄 알았던 베를린 주재 일본대사관 군관은 퍼플로 추축국의 형편에 대해 다 보고했으며, 이는 다 연합군 손에 들어가게 된다. 그리고 이 맵핵의 위력으로 일본군을 신나게 바르기 시작했다. Show Me the Money 신공보다, Black Sheep Wall이 더 위력이 강했던 예론 미드웨이 해전과 야마모토 이소로쿠 처치가 있다. 물론 맵핵을 켰어도 미국이 발컨이었다거나 엉뚱한 테크를 올렸다면 전쟁에서 이기지 못했을 것이지만 적의 상황이 빤히 보이는가 안보이는가는 대세를 결정하는데 중요한 요소로 작용했다. 따라서 전후 의회에서 벌인 조사에서 암호해독은 전쟁을 몇년 앞서 끝낸 주역으로 부상해, NSA가 만들어지는 계기가 되기도 한다. 아니 조사단에서 암호해독은 정말 킹왕짱이야! 라고 했는데, 국가암호전담 기관이 안만들어지면 그게 더 이상한일 아닌가?
또한 야전암호 배달도 허술해서, 암호북 박스가 없어져도 걍 없어졌다고 치고 살았다. 예를들어 뉴질랜드군의 순찰선이 자기보다 덩치가 더 큰 일본군 잠수함을 발견하고는 오클랜드에서 외박이나 따자는 생각으로 다소 무리를 해서 잠수함을 겨우겨우 격침시켰는데, 일본군 잠수함 안에는 코드북이 무려 20만 권이나 들어있었다. 게다가 보통 이런 책은 유사시 긴급폐기하기 위해 겉표지에 납이 있어서 바다에 던지면 돌덩이처럼 가라않는다던지, 물을 뿌리면 잉크가 확 번져서 알아보기 어렵다던지 잘탄다던지 하는 조치가 취해지지만, 해당 잠수함의 승무원이 미처 이런 조치도 취하지 않아서 멀쩡한 암호책이 연합군에게 넘어갈 수 있었다. 당연하게도 연합군 측에선 야~ 신난다!로 암호북을 다 쓸어간 후 일본군에서 폭격을 했지만, 너무 늦은 뒤였다. 외박 바라고 격침한 순찰선은? 전원 해군십자장을 수여받았다. 또한 적들을 도와주기 위해서 암호내용을 평문으로 재전송하지 않나, 높은 암호라고 준걸 낮거나 시간이 지난 암호로 전송하지 않나...이런 행위들을 보면 일본군의 암호는 적들을 도와주기 위한 것으로 봐도 무관하다.
일본의 허세도 암호 해독에 한몫했다. 본국에서 해외 대사관으로 외교전문을 전송하면서 내부적으로 돌려보는데는 하등의 필요도 없는 외교적 언사('본 대사는 XX국에 XX의 체결을 통보하는 영광을 누립니다.' 등등)까지 꼬박꼬박 첨부했고, 이는 일본의 암호를 해독하는데는 마치 바다의 등불이나 다름없었다.[1]
그러나, 일본측에서도 특수 코드북을 만들었다! 이렇게 만든 특수 코드북을 A-GO 작전에 써먹을려고 들고왔지만, 하필이면 기함에 직격타를 맞아 코드북은 증발하고 이 코드북으로 보낸 모든 전신은 다 무용지물이 되어버려서 결국 미군에게 발리게 된다.(...) 뭘 해도 운이 없어
야전에서 이런데, 본국의 암호 해독실도 개판이었다. 미국측에선 일본군 고급암호 전문도 훔쳐보는 판국에, 본국에선 중상정도의 메시지조차 해독하지 못했다. 제일 공들이던 물건은 미 해군에서 제일 낮은 암호 체계로 간주하던 물건...나중에, 이것도 못풀어서 암호쪽은 GG쳐버리고 통신 분석에 힘을 쏟기 시작했다. 심지어 오래되고 푸는 방법도 나와있던 플레이페어 암호도 못 풀어서 어느 한 사람이 살아남아 대통령이 되었다. 반면 야마모토 이소로쿠가 비행기 타고 솔로몬 제도 시찰 가다가 미국 전투기에 격추당한 것은 미국이 비행기의 목적지와 도착시각을 암호해독으로 알아냈기 때문이다. 그러나 이렇게나 암울했지만, 위치탐지로 어느정도 공을 세우기도 했다. 근데 이건 암호 해석이 아니잖아.(...)
2.4.2 독일군 ¶
독일군은 일본군 같은 바보가 아니었다. 연합군 상선코드를 알아내어 U 보트의 공격실적을 향상시켰을 뿐 아니라, 43년즈음엔 영국의 U 보트 상황보고를 읽을 수 있을정도로 영국 암호체계를 철저히 파악했다. 대서양 전투에서 독일이 기선을 제압할수 있었던 건 U 보트 역할도 컸지만, 암호 해독의 공도 컸다는 걸 볼수 있다. 덩달아 아프리카 전선에선 미국의 암호체계가 다 뚫려서 롬멜이 사막의 여우가 된 주요 원인중 하나였다. 또한 독일은 레지스탕스를 낚아 네덜란드 쪽에 가짜 레지스탕스인 풍크슈빌을 만들어서 레지스탕스도 잡고, 연합군에게 군수물자도 뜯어낸 일거양득을 취하기도 했다.
그러나, 역시 덜미가 잡혀서 그당시 제일 강력한 암호기계중 하나인 M-138-A와 더불어 새로운 무관으로 교체하면서 롬멜의 Black Sheep Wall이 깨지게 되었다. 덜미가 잡힌 원인중 하나는 독일의 에니그마 암호를 해독하면서 나온 정보중에 영국이나 미국이 암호로 송신한 내용이 포함되었기 때문이었다. 물론 기존 암호조치가 탄탄하다고 자랑하던 암호개발부서는 개박살났다. 덕분에 나중에 가면 연합군은 (당연한 일이지만) 암호를 매우 중요하게 생각하여 안전에 만전을 기하게 된다. 당장 유럽에서의 전쟁이 끝나는 마지막 날, 프랑스에서 에니그마급인 SIGABA를 잃어버린 적이 있다. 그래서 몸이 달아오른 드와이트 아이젠하워는 휘하의 6 야전군 사령관을 갈궜다. 사령관은 바로 내리갈굼을 실시하여 SIGABA를 찾기 위해서 혈안이 되었다. 미군이 그걸 찾았다면 바로 귀향조치란 포상을 받았다. 6주일 동안 찾던 SIGABA는 결국 강바닥에서 찾아냈다.
독일군에서 제일 유명한 것으론 에니그마가 있다. 에니그마는 원래 상업용으로 쓰이던 기계식 암호 타자기의 이름인데 독일군이 회전자라는 새로운 메커니즘을 도입하여 군용으로 개량한 것이다. 이 암호는 2차대전 발발 전에도 해독이 불가능한 것으로 악명이 높았는데, 프랑스 정보국에서 독일군의 일일 암호책 일부와 에니그마 매뉴얼을 훔치는 데 성공하여 연합군은 에니그마 암호의 일부를 해독할 수 있게 되었다.
이 암호책은 독일군이 에니그마를 새 버전으로 개량하면서 금방 무용지물이 되었지만, 그것을 바탕으로 폴란드 암호국의 천재 수학자 마리안 르쥐스키가 일일 비밀키의 경우의 수를 좁히는 통계적인 기법을 개발하게 된다.
한편 2차대전이 발발하고 폴란드가 개전 1달만에 독일에게 발리면서 폴란드 암호국의 암호해독가들은 영국으로 피난가게 되는데, 이때 영국 암호국[2]에서 일하고 있던 앨런 튜링과 협력하여 지금까지 손으로 계산하던 통계 계산을 전자적으로 해주는 계산기인 "봄베"를 개발하면서 연합군의 암호해독은 훨씬 빨라지게 된다. 덩달아 여기에선 봄베를 개량한 세계 최초의 프로그램 가능 디지털 연산 컴퓨터인 콜로서스를 개발하게 된다.
콜로서스는 독일군의 다른 암호 기계인 로렌츠 암호기(Lorenz Chipher)를 뚫기 위해 만들었는데, 이 로렌츠 암호장치는 베를린의 독일군 최고사령부인 OKW와 다른 지역에 떨어져 있는 독일군 사령부와 연락을 취할수 있는 최고 암호장비였다. 이 로렌스 암호기는 미국인 버넘의 1회용 패드암호 방식으로, 12개의 암호 바퀴를 지니고 있는 전신기였다. 1회용 암호는 현재도 잘 쓰이는 암호인데, 1회용 암호는 어찌 돌아가는지 메커니즘을 모르면 최강의 암호이지만, 메커니즘이 뚫리면 별거 아니게 된다. 현재도 인터넷뱅킹등에 쓰이는 OTP가 바로 이 놈. 그러나 영국에선 메커니즘을 꿰뚫고 있었으며 로렌츠 암호장비의 키셋팅이 모두 동일(...)한 HQIBPEXEZMUG로 암호화 되었다는걸 알게 되었으나, 바퀴판 셋팅도 서로 달랐으며, 반사바퀴도 없는 에니그마보다 훨씬 진보한 구조라 바퀴 셋팅을 찾는데 시간을 기울였다. 덕택에 엄청나게 빠르게 메시지를 읽을수 있게 되었다. 그리고 Tunny 에뮬레이터란 레플리카를 만들어 이놈에서 얻어낸 핀 세팅으로 암호를 읽을수 있는 기계도 만들었다. 콜로서스는 에니악보다 더 빨리 만들었지만(1944년), 국가기밀이란 딱지로 인해 늦게 발표된 게 함정이다.
어쨌든 에니그마의 바퀴 배열, 플러그보드 배열을 알기 위해 영국군의 낚시,[3] 독일군 장교들이 귀찮아서(…) 그날의 암호를 AAAAAA로 정해버린다든지 하는 등의 실수[4] 등이 더해져, 노르망디 상륙작전 직전에 이르면 독일 공군의 일일 암호를 별다른 일 없으면 그날 아침식사 시간에 영국 암호국에서 풀어버리는 안습한 사태가 벌어지게 된다.(해군과 육군 암호는 이보다는 좀더 어려웠다고 한다.)
한편 에니그마를 굉장히 신뢰하고 있었던 독일군에서는 연합군이 아군 무선통신을 대부분 도청하여 해독하고 있다는 것을 전혀 몰랐다고 한다. 심지어 독일 해군 참모부는 에니그마 암호가 해독되는 것을 "모든 정보유출 가능성 중에 가장 가능성 낮음"으로 분류하고 있었다. 물론 에니그마를 해독하는 게 이론적으로 가능하다는 것을 독일군도 알고 있었지만, 기계의 도움으로 몇시간만에 풀어버릴 것이라고는 예측하지 못한 것이다.
또한 독일측에서는 감청도 많이 하여, 아무리 연합국측에서 도청방지기를 만들어도 정상급 전화통화도 다 뚫려버렸다. 이는 나중에 미국이 PCM이란 신기술을 도입하면서 끝이났지만...PCM이 도입되기 전까지 인간의 귀는 도청 방지기를 뚫어버리는 데 최상의 조건을 가진 물건이었다. 또한 스테가노그래피를 잡아내기 위해서 모든 종류의 비밀잉크를 가려낼수 있는 장치를 전 우체국에 설치하기도 했다. 또한 마이크로도트라는 새로운 방법을 개발하기도 했는데, 이 방법은 문서를 마이크로필름에 인화한후 마이크로필름 크기를 엄청나게 줄인후 편지에 몰래 붙인후 보내는 방식이다. 이 방식은 마이크로필름이 있는지 없는지 파악하기가 힘든 단점이 있어서 대체로 특정한 점에 붙이는 경향이 있는데, 이게 적에게 들키면 한순간에 정보가 유출되므로 조심해야 했고, 정기적으로나 비정기적으로 마이크로필름이 놓이는 위치를 변경해야 했다.
암호쪽에서의 병크로는 유보트의 무선이 있는데, 연합군은 유보트를 잡기 위해 혈안이 되어 있었다. 근데, 되니츠 제독이 유보트에 시시한 거라도 열심히 무전을 날리라고 해서, 아주 사소한 동료의 치통이라든가, 지상근무 요원의 생일 축하 메시지까지 다 날려버렸다. 물론 이 자체가 나쁜건 아니다. 이렇게 의미없는 무선이 많아지면, 작전중에 폭증하는 무선을 감출 수 있다는 이점도 있긴 하다. 하지만 이니그마의 특징상 당일의 암호키로 날아가는 무선이 많아지면, 그 만큼 많은 표본을 블레츨리에 제공하는 꼴이 되서 봄베의 힘으로 그 날의 암호 세팅을 알아내는데 기여해버린다는 문제가 생기는게 문제일 뿐이다.
덕택에 많은 암호문으로 인해서 해독도 쉬워지고, U 보트가 보내는 전파를 탐지하여 유보트도 떼거리로 쓸려나간 적이 있다. 1944년 5월 31일, HF/DF라고 불린 U 보트를 탐지하는 전파탐지 네트워크에 U-505가 포착되었다. 연합군은 U-505를 때렸으며, U-505 승무원들은 GG쳤다. 승조원들이 다 나간후, 연합군은 에니그마등의 암호 기자재들을 다 훔치고, U 보트를 응급수리한 후 미국으로 끌고 갔다. 그래서 이 배는 1812년 전쟁이래 미 해군 승선팀이 탈취한 첫번째 적군 군함이 되었다. 현재 U-505는 시카고 과학기술박물관에 위치해있다. 물론 저 U-505선장은 자기 배가 폭싹 가라앉았다고 생각했고 말이다.
2.4.3 미군 ¶
미국의 경우엔 검열국에서 취한 예방적 검열과 더불어, 맨해튼 프로젝트에 사용된 복선을 담아서 말하기, 체커보드를 사용하는 방법등이 있었다. 복선을 말하는 방법으론 이런 것이 있다. "박사가 막 흥분과 확신을 갖고 돌아왔습니다. 꼬마는 그의 큰형만큼이나 튼튼합니다. 그의 눈에서 나오는 빛은 이곳에서도 식별할수 있으며, 그의 외치는 소리는 제 농장에서도 들릴 정도였습니다."[5] 또한 핵 투하할때도 특별 코드가 있었다. 일본 분석가들은 이 코드가 들려도 막을 공군력이 없어서 나가사키에 핵떨어질때 조용히 눈물만 흘렸다고...
또한 마지막으로 도청에 대한 수단으로 나바호족 인디언들을 집어넣었다. 영화 윈드토커가 이걸 가지고 영화화 한 것. 처음에 30명정도로 시작한 나바호족 통신원들은 나중엔 420명으로 늘어났다. 나바호족들의 언어 구조가 일본인들에게 괴기 그 자체였던데다 참전한 나바호족 통신병들의 입이 무거워 일본군이 GG를 쳤다고 한다. 게다가 사실 나바호족의 언어는 세계 웬만한 사람들한테 전부 다 괴기 그 자체다. 미국인들한테도 괴기했기 때문에 암호로 쓸 생각을 한 것이며, 당연히 나바호족이 아니면 익히는 것 자체가 불가능에 가까울 정도로 매우 어렵다. 당장 쟤네들 언어는 포합어라고 해서 인디언어나 아이누어가 아니고서는 비슷한 구조를 갖는 언어마저 없는 초마이너한 언어이다.[6] 설상가상으로 나바호족을 붙잡아서 해당 암호를 해독해도 뜬구름 잡는 소리로 해석되는데, 이는 일상용어를 군사용어로 치환해서 보내기 때문이다. 예를 들면 항공모함을 벌통이라고 바꾸는 식이다.
그 외에 평상시에도 의미 없는 데이터로 통신을 계속할 필요성 등도 인지하게 되었다. 이는 일본이 미드웨이 해전을 준비하던 상황에 대한 교훈에서 나온 것이었는데, 이 때 일본 해군의 통신이 수십배로 폭증했기 때문에 암호를 해독하지 않고서도 뭔가 대규모의 작전을 준비하고 있음을 알 수 있었기 때문이다. 당시 미국에서는 이미 일본군의 암호를 해독할 수 있었기 때문에 큰 상관은 없었지만, 이는 충분히 교훈으로 삼을 만한 사례였다.
2.4.4 소련 ¶
소련은 스파이들은 무지 많았다. 적 본진에서 관측선이 리젠되는 수준.그렇지만 독재자 나으리 땜시 정보를 다 씹어잡쉈다. 다만, 이건 이해할만한 게, 적백내전기에 공산당이 테러와 역정보의 대가였기 때문에 상대편 역시 역정보를 흘린다고 생각했던 것. 그렇지만, 이런 정보를 받아서 전쟁에서 승리하긴 했다. 일본에서 활동한 리하르토 조르게의 메시지로 인해서 일본이 소련을 침공하지 않을거란 확신이 든 소련은 극동에서 병력을 빼서 독일군을 격퇴하는데 써먹었다. 여기에 날씨까지 추워지자 크레믈린 앞까지 온 독일군은 모스크바를 못잡쉈다. 또한 독일군 내부에서 활동하던 레드 오케스트라[8]도 있다. 그중 스위스에서 활동한 레드 오케스트라는 독일이 소련을 침공할 거란 메시지를 보냈는데, 씹혀버린 과거가 있다.
그래도 1차 세계대전 때 독일군에게 암호로 쳐 발린 기억이 있는지라, 엄청나게 코드쪽에 신경을 썼다.
나치가 기습공격으로 침공을 시작한 후에 독일군은 소련군의 다음과 같은 통신을 감청했다고 한다. 공격받은 부대에서 무전으로 "우리는 공격받고 있다!"라고 급히 보고하자 이런 대답이 돌아왔다. "너희들 미친 것이냐. 왜 암호로 보고하지 않는 것이냐?" 물론 이는 보안이 철저했음을 보여주기보다는 소련군의 경직성을 보여주는 사례라는 점에서 씁쓸함이 느껴진다.
나치가 기습공격으로 침공을 시작한 후에 독일군은 소련군의 다음과 같은 통신을 감청했다고 한다. 공격받은 부대에서 무전으로 "우리는 공격받고 있다!"라고 급히 보고하자 이런 대답이 돌아왔다. "너희들 미친 것이냐. 왜 암호로 보고하지 않는 것이냐?" 물론 이는 보안이 철저했음을 보여주기보다는 소련군의 경직성을 보여주는 사례라는 점에서 씁쓸함이 느껴진다.
2.5 전쟁후 ¶
2차 세계대전이 끝난후, 연합국은 식민지에서 해방된 신흥국들에게 독일제 에니그마를 던져줬다. 신흥국은 좋다고 써먹었다. 최소한 그 국가들은 자신 옆 국가가 자기네 암호 못 보는 것에 만족했다. 그 후, 그 기계들이 다 고장날 무렵인 1960년도 즈음에 영국과 미국에서 에니그마 관련 자료를 풀기 시작했다.
전쟁후 컴퓨터의 급속한 발전으로 암호 해석이 쉬워지게 된다. 역사적으론 전자식 연산 컴퓨터인 콜로서스가 에니그마 암호해독을 했다는 걸 봐도 간단히 알 것이다.
또한 미국 의회 조사청문회에서 나온 말과 같이 암호 해독은 적의 실패에 지대한 공헌을 하였으며, 또한 전쟁을 단축시키는데 힘을 실었으며 덩달아 수천명의 인원을 구한 공로를 인정 받아 NSA를 발족시켰다.
냉전이 가속화 되는 등 여러가지 이유로 1977년 IBM에서 만든 루시퍼란 블록 암호를 1979년 DES[9]란 이름으로 표준화했다. 그런데 이 때 IBM은 NSA와의, 내용이 공개되지 않은 모종의 협의 후 키의 크기를 56비트(64비트에서 8개의 비트는 오류를 검출하기 위한 패리티 비트로 사용됨)로 줄였다. 이 때문에 NSA 측에서 DES를 쉽게 풀 뒷구멍을 만들어 달라고 IBM에게 요청해서 IBM이 그 뒷구멍을 만들기 위해 모종의 변형을 가한 것이라는 음모론이 지금까지도 무성하다. 그러나 현재까지 그 뒷구멍을 발견한 사람은 없다. 이런 음모론이 나오게 된 것은 DES에서 사용하는 테이블이 어떤 원리에 의해서 만들어 진 것인지 IBM에서 명확하게 밝힌 적이 없다는 점에도 기인한다. 비록 IBM에서 어떤 문제를 '피하려고' 했는지에 대해서 어느정도 밝히기는 했지만 그것만으로는 충분하지 않았다.
- IBM과 NSA의 협의 내용에 대해서는 90년대에 해명이 나왔다. 90년대에 블록 암호에 대한 새로운 공격방식인 차분 공격(differential attack)이 개발되어 그 전에 나온 여러 블록 암호들이 깨지는 사태가 벌어졌는데, 뜻밖에도 오래된 암호인 DES는 이러한 공격이 큰 효과가 없었다. 따라서 연구자들은 DES를 설계한 IBM의 연구자들이 차분 공격을 그 당시에 이미 알고 있었으며 이에 대비했음에 분명하다는 결론을 내렸다. 그러자 IBM에서도 이를 인정하는 발표를 했는데, NSA와의 협의에서 NSA가 요청한 것은 DES를 변형시키라는 것이 아니고 바로 차분 공격에 대해서는 공개하지 말라는 것이었다고 한다. 공개하지 말라는 요청에는 '다른 암호가 깨져서 혼란이 생기는 것을 방지하기 위해서'라는 설명이 붙었지만, 이는 NSA가 다른 암호를 깰 수 있는 공격법 하나를 비밀스럽게 가지고 있게 되는 결과가 된다.(IBM과 함께...)
물론 이것은 적당히 그럴듯한 스토리일 뿐이라며 DES에 뒷구멍이 있을 것이라고 생각하는 사람도 여전히 많다.
- 블록 암호는 특정 크기의 메시지 블록을 같은 길이의 다른 블록으로 변환하는 암호계이다. 메시지 블록이 어떤 블록으로 변환될 것인지는 키에 달려있으며, 동일한 키로 변환된 블록을 역변환하여 원래의 메시지 블록을 얻어낼 수 있다. 블록 암호는 그 자체로 안전한 암호계는 아니며, 어디까지나 안전한 암호계를 만들기 위한 구성 요소로 사용된다.
그리고 암호학에서 제일 큰 영향을 미친 PGP가 등장하게 된다. Pretty Good Privacy란 이름의 프로그램인데, 이 프로그램은 국가기간에만 치중되어 있던 암호기술을 개인까지 내리는 역할을 하였다. 그래서 NSA에선 테러리스트들이 이걸 쓰면 어쩌냐고 하지만, 아직까지 잘 쓰이고 있다. 이 프로그램의 제작사는 현재 시만텍이지만, GNUPG(GNU Prvacy Guard)라든가 OpenPGP등의 오픈소스로도 나오고 있다.
3 암호 용어 설명 ¶
- 평문 - Plaintext, 즉 암호화 되어야 할 메시지.
- 스테가노그래피 - Steganography, 메시지 존재 자체를 숨겨버림. 예론 투명잉크, 마이크로도트등이 있음. 컴퓨터 프로그램으로는 openstego 가 있다. 이미지파일에 파일을
첨부숨길수 있다.파일은 못 올리고 그림만 올릴 수 있는데 올리면 되겠다.
- 동음이자 - Homophone, 치환을 하는데 한 문자가 여러가지 치환대체물이 있는 경우. 예를들어 e를 암호화 할땐 16뿐만 아니라, 74, 42, 96 중에서 치환이 가능한 걸 가리킴.
- 단일문자 체계 - Monalphabetic, 하나의 암호 알파벳만 사용.
- 다중문자 체계 - Polyalphabetic, 두개 이상의 암호 알파벳이 미리 정해진 어떤 유형에 따라 사용되는 경우.
- 코드 - Code, 평문의 구성요소를 치환하는 수천개의 단어로 구성됨. 이들을 가리켜 코드그룹이라고 함. 은어도 일종의 코드라고 볼수 있음.
- 명칭일람 - Nomenclator, 반은 코드고 반은 암호. 코드와 비슷한 이름, 단어, 음절 목록과 동음이자를 가진 분리된 암호 알파벳으로 구성.
- 상업용 코드 - Commercial Code, 현재도 텔렉스 같은데서 사용됨. 통신비용을 줄이기 위한 코드.
- 키 - 암호 알파벳을 배열, 변환할때 뒤섞는 방법, 암호기계의 설정등을 지정. 대부분 체계안에 있으며, 체계의 다양한 요소들을 조정.
- 코드를 풀때, 재암호화 단계를 풀지 않은걸 초암호화(Superencipherment)단계라고 하며 초암호화를 거치면 아직 해독하지 않는 플라코드(Placode)가 나오며, 이걸 풀면 엔시코드(Encicode)가 된다.
- 암호화 - Encryption.
- 해독 - Decipher, Decode, Decryption. 암호학에서는 대부분 Decryption이라는 말을 쓴다. 변형과정을 되돌려 원본 메시지를 들어냄. 열쇠나 암호체계를 소유하지 않는 제 3자가 푸는 건 암호분석이라고 한다.
- 암호학
- Cryptography : Cryptosystem(암호체계)를 디자인 하는 일.
- Cryptanalysis : 암호를 해독하고 해당 Cryptosystem의 Security를 분석하는 일.
- Cryptology : 암호 연구. 위의 두 Cryptography 와 Cryptanalysis를 어우르는 학문.
- Cryptography : Cryptosystem(암호체계)를 디자인 하는 일.
'이런저런 이야기 > 잡상' 카테고리의 다른 글
토마스 빌의 비밀지도 (0) | 2012.12.30 |
---|---|
파에스토스 원반 (0) | 2012.12.30 |
[스크랩] 미스터리 사나이 李厚洛 이야기 (0) | 2012.12.28 |
17세기 스코틀랜드의 두 마녀재판 이야기 (0) | 2012.12.26 |
프레스터 존을 찾아낸 어느 포르투갈인 이야기 (0) | 2012.12.26 |