[작성자:] snowall

  • 블록체인의 미래

    암호화폐가 화폐로써의 실질적 기능이 가능한가 아닌가는 블록체인에 분산저장되어 있는 거래내역을 정부 또는 법원이 믿는가 믿지 않는가에 달려 있다. 시스템으로써는, 그리고 알고리즘으로써는 블록체인의 무결성과 신뢰성이 확실하지만, 어쩄든 그걸 믿느냐 마느냐는 법원의 판단이니까. (그런점에서 미래의 법관과 공무원 꿈나무들 중에 코인판에 돈 좀 부어본 친구들이 많을 수록 블록체인과 암호화폐의 미래는 “어쨌든” 밝다. 그때까지 버틸 수 있느냐는 다른 문제지만.)

  • 블록체인, 암호화폐, 플랫폼의 미래

    (*이 글에서 주장하는 부분들은 기억에 근거하고 있으며, 누군가 근거를 제시하라고 하면 검색해서 찾아볼 수는 있습니다. 이 글이 학술논문은 아닌고로, 혹시 주장의 근거가 필요하신 분은 댓글로 요청하시면 찾아다 드리겠습니다.)

    최근 비트코인을 비롯한 수많은 종류의 암호화폐가 등장하고 있고, 많은 사람들이 여기에 대량의 돈을 퍼부으면서 투자(또는 투기)를 하고 있다. 암호화폐는 그 기술적 배경으로 블록체인이라는 것을 두고 있다. 블록체인이란 간단히 말해서 거래 과정이 거래에 참여한 모든 참가자들에게 분산저장되는 구조이다. 기술적으로는 암호화 기술과 작업증명이라는 용어를 써서 설명하고 있지만, 쉽게 말해서 암호화폐를 갖고 있는 모든 참가자 각각이 거래 장부의 사본을 갖고 있는 것을 컴퓨터 기술을 이용해 구현했다고 보면 된다.

    결론을 먼저 말하자면, 나는 여기에 컴퓨터와 인터넷이라는 것의 개념을 바꿀만한 혁신적인 요소가 담겨있다고 생각하며, 인터넷은 이제 개인의 정보교류를 위한 플랫폼을 넘어서서 거의 공기나 물과 같은 수준으로 인간에게 필수적인 요소가 될 것으로 본다.

    암호화폐를 사용할 때의 금전적 보상, 이득, 그리고 그에 대한 가치 평가와는 별개로, 거래에 참여한 사람들에게 보상이 저절로 돌아가면서 중앙집중식 처리 체계가 가지는 단점을 극복할 수 있는 블록체인 기반 분산처리 기술이 미래에 등장할 여러 플랫폼 중에서 지배적 위치를 차지할 것은 분명해 보인다. 어떻게 그렇게 되는 것인가? 중앙집중식 처리 체계는 중앙의 메인 서버에서 이용자가 요구하는 모든 상호작용의 모든 세부 과정을 관리한다. 이 체계는 메인 서버를 관리하는 관리 주체를 얼마나 믿을 수 있느냐에 따라 그 신뢰성이 정해진다. 가령, 국가라든가 은행이 그 과정을 통제하는 업무는 국가나 은행이 망하지 않는 한 그 상호작용과 자료에 관한 기록을 믿을 수 있다. 그리고 이 체계는 법적인 구조 위에 얹어져 있는 상태이므로, 이 체계를 관리하는 관리자나 소속 직원들이 고의나 과실에 의해 손해를 끼치게 되더라도 그들이 처벌을 받고 피해에 대해 보상 받을 것이 법에 의해서 보장된다. (물론 딱 법에 의한 만큼만 보장된다.) 문제는 이보다 작은 규모의 주체가 관리하는 서버에 대해서는 그만큼 안정성과 신뢰성이 줄어든다는 점이다. 가령, 이제는 없어진 이메일 서비스들에 저장되어 있던 이메일은 미리 백업을 받아두지 않았다면 더이상 복구할 수 없다. 또는, 우리나라의 전자책 업체에서 구입한 책들은 DRM이 붙어서 특정한 프로그램에서만 볼 수 있도록 되어 있는데, 만약 해당 전자책 업체가 없어지거나, 서비스를 못하겠다고 한다면 우리는 더이상 그 전자책을 볼 수 없고, 아마 환불도 받을 수 없을 것이다. 이렇게 없어지는 경우가 아니라 하더라도, 해당 서버에 서비스 거부 공격(Denial of Service attack, DoS)이 들어가게 된다면 우리는 그 서비스를 사용할 수 없다. 그리고 어떤 경우, 믿을 수 있다고 생각한 정부 기관의 서버나 은행의 서버가 해킹될 수도 있고 우리는 이미 농협 사태에서 그런 상황을 마주한 적이 있다. 물론, 메인 서버에 저장되어 있는 정보가 어딘가에 백업되어 있다면 우리는 해킹을 당하더라도 백업본을 사용하여 서비스를 복구할 수 있다. 대부분의 경우 중앙 집중식 처리 체계의 백업본은 역시 메인 서버의 관리자가 적절한 방법을 사용하여 생성하여 잘 보관하고 있겠지만, 이 경우에도 관리자가 서버를 복구하고 서비스를 재개할 때 까지는 해당 자료나 서비스의 사용이 불가능해진다. 만약 이 백업본을 모든 사람이 갖고 있다면 어떻게 될까? 해커는 특정 서버 하나의 취약점을 공략하는 것 뿐만 아니라 해당 백업본을 가진 모든 사람을 동시에 공격해야 한다. 그리고 그렇게 하는 것이 하나만 공격하는 것 보다 훨씬 어렵다는 것은 당연한 일이다. 심지어 농협 해킹 사태때는 백업본까지 사라졌었다. 이런 상황에 대해, 블록체인 기술을 도입한 암호화폐는 괜찮은 해결책을 내놓는다. 모든 거래 참여자가 장부를 갖고 있고, 거래를 시도할 때 그 장부의 변조 여부를 네트워크 전체에 물어보는 것으로써 확인한다. 모든 거래 참여자가 각자 자신이 가진 장부를 똑같은 방식으로 변조할 이유는 전혀 없고, 누군가 자신의 이득을 위해 장부를 변조한다면 누군가는 반드시 손해를 보게 되므로 손해를 보기 싫어하는 대다수는 변조된 장부의 내용을 확인해 달라고 했을 때 협조할 이유가 없게 된다. 그리고 여기에 송금과 같은 화폐 거래를 하는 등의 기록 추가를 요청하면, 해당 내용이 네트워크 전체에 전달되어 거래가 성립한다. 즉, 모든 사람이 모든 사람의 거래를 투명하게 지켜보고 있음을 기술적으로 가능하게 만든 것이다. 이런 방식의 분산 처리는 이전에도 있어왔다. 예를 들어, 위키백과와 같은 참여형 백과사전의 경우 참여자가 자신의 지식을 표제어의 내용에 추가하고 보충하여 완성되고 있는데, 여기에는 일부 악의적인 이용자가 있다 하더라도 대다수의 참여자가 내용을 확인하고 다시 원래대로 고칠 것이므로 내용의 진실성과 신뢰성은 꽤 높게 유지될 것이라는 가정이 있다. 하지만 실제로는 인기가 없는 항목의 경우 악의적 이용자가 고친 내용이 틀린 내용으로 오랫동안 남아있는 등 단점이 드러나기도 하였다. 블록체인은 모든 참여자가 내용을 공유하므로 개인이 임의로 내용을 고칠 수 없어서 내용의 진실성과 신뢰성이 매우 높게 유지된다. 가령, 화물 운송의 경우에 운송이 필요한 물류와 운송에 필요한 수단을 모두 블록체인으로 유일하게 코드화하여 네트워크에 올리고 다닌다면, 운송되었다는 거래도 증명되고, 운송 과정에 필요한 기름값도 블록체인 기반의 암호화폐로 처리하여 적절히 정산되고, 과적이 되었는지 어쨌는지 체크할 수도 있다. (구체적인 기술이 어떻게 될지는 모르겠으나, 원론적으로 이런것들은 반드시 구현 가능하다.)

    여기서 암호화폐 자체보다 블록체인 기술에 관심을 둬야 하는 이유는 그 가능성 때문이다. 예를 들어, 암호화폐이자 플랫폼인 이더리움의 경우 튜링 완전인 코드를 올릴 수 있는 플랫폼이다. 이것은 우리가 지금까지 컴퓨터로 하는 모든 작업을 인터넷에서 돌릴 수 있다는 뜻이다. 즉, 인터넷 자체가 하나의 거대한 컴퓨터로써 기능할 수 있음을 뜻한다! 이게 얼마나 굉장한 것이냐 하면, 예를 들어 코드를 적절히 짠다면, 제약회사에서 신약후보군을 찾기 위해서 돌리는 슈퍼컴퓨터 계산 코드를 인터넷으로 올릴 수가 있다. 그리고 여기에 작업당 단가를 산정해서 올리면, 컴퓨터가 놀고 있는 사람들은 이 단가를 받아서 계산을 대신 수행 시켜줄 수 있다는 뜻이다. 그리고 이 과정 전체를 자동화시켜서, 자기 컴퓨터가 놀고 있을 때만 그렇게 수행하고, 자기가 컴퓨터를 쓰고 있을 때는 그렇게 하지 않도록 만들 수도 있다. 이게 왜 굉장한 일이냐면, 지금 전세계에서 인터넷에 연결된 컴퓨터들 중 대부분은 아무일도 하지 않고 전기만 낭비하는 열원이다. 이걸 다 돈으로 바꿀 수 있다는 뜻이다. 그것도, 앞서 예를 들었듯이 예를 들어 신약개발이라는 새로운 실체의 제작에 도움을 주면서 말이다. 비트코인의 경우, 컴퓨터는 열심히 계산을 돌리고 사람들은 그 계산 결과를 공유하면서 돈을 거래하지만 실제로 나타난 실체는 아무것도 없고 계산 결과 그 자체에 돈으로 바꿀 수 있는 수표조각이라는 것 이상의 의미를 부여하는 것은 불가능하다. 즉, 비트코인은 본질적으로 천원짜리를 이천원에 사느냐 오백원에 사느냐의 문제를 다루는 것에 불과하다는 뜻이다. 하지만 이것이 플랫폼이 되어서 인터넷에서 코드와 자료를 다룰 수 있게 되면 혁신적인 일들이 가능해진다. 전세계의 노는 컴퓨터를 갖고 있는 사람들은 놀게 두느니 뭐라도 계산을 시켜서 푼돈이라도(=전기요금이라도) 버는 것이 나을 것이고, 계산이 필요한 수요자들은 자신의 고민거리를 인터넷에 올려서 적절한 가격으로 결과를 뽑아낼 수 있다. 쉽게 말해서, 인터넷 전체를 아마존 웹 서비스(AWS)처럼 쓸 수 있게 된다는 뜻이다.

    물론 현재도 인터넷 기반의 분산처리는 가능하다. 패러랠 컴퓨팅, 클라우드 컴퓨팅, 그리드 컴퓨팅과 같은 다양한 기술을 통해서 대량의 자료와 연산을 다수의 컴퓨터에 나눠서 처리할 수 있다. 하지만 그렇게 하기 위해서 별도의 프로그램이 필요하고, 만약 상호작용에 인증 보안이 요구된다면 그걸 담보하는 인증 코드와 루틴이 추가적으로 필요하다. 필요한 메모리와 네트워크 대역폭같은게 있으면 그에 따른 최적화도 해야 한다. 하지만 이더리움과 같은 플랫폼에서 제공하는 블록체인 위의 코드와 자료를 거래하는 시스템이라면 필요한 자료의 제공과 연산에 필요한 코드의 구현에만 집중하고 그 외의 부수적인 부분을 크게 신경쓰지 않아도 된다. 전세계의 컴퓨터가 여기에 연동되어서 동참한다면, 가령 비싼 현상금이 걸린 연산이 있으면 슈퍼컴퓨터는 같은 시간동안 더 빠르게 처리하여 더 많은 수익을 얻을 수 있고, 여기에 느린 컴퓨터라고 해도 일부 참여하여 수익을 나눠가질 수 있다. 수요와 공급이 저절로 촘촘하게 채워진다. 이 상황이 빠른 시일에 도래하지는 않겠지만, 기술이 극한까지 발달할 경우 모든 사람들에게 공기와 같은 수준으로 제공될 수도 있다.

    인터넷 전체가 코드와 자료를 처리할 수 있다는 것이 어째서 그렇게 의미심장한가? 공각기동대(다른 선례가 있을지도 모르지만 내가 아는게 이것뿐이라)에 보면 “인형사”라는 프로그램이 등장한다. 이 프로그램은 인공지능인데, 누군가 개발해서 생성된 것이 아니라 정보의 바다속에서 저절로 생성되었다고 스스로 그렇게 주장하고 있다. 공각기동대 내부에서 인형사가 뭔짓을 했는지는 작품을 직접 감상하도록 하고, 그렇게 될 수 있는 인터넷 전체에 뿌려진 코드와 자료는 인형사라는 존재의 출현 가능성이 열린 것이라는 생각이 든다. 그 시작은 어쩌면 자발적이지 않을 수도 있겠지만, 만약 스스로 진화하는 코드를 인터넷에 누군가 흘려보낸다면, 이 코드는 진화에 진화를 거듭해서 “언젠가는” 강한 인공지능에 해당하는 성능을 갖게 될 수도 있다. 이 시나리오가 전혀 그럴듯해보이지 않을수도 있겠지만, 강한 인공지능이 인간에 준하는 급의 지능수준을 갖는 어떤 대화형 프로그램 체계라고 한다면, 지난 45억년동안 자연이 온갖 삽질을 반복한 끝에 적어도 하나의 그러한 사례인 인간이 만들어졌다. 그것도 이 지구에 수십억 개체씩이나 생성되어있다. 인터넷 전체의 처리용량은, 처리하는 코드와 자료들이 무질서해서 그렇지 계산하는 양을 놓고 보면 인간의 두뇌에서 시냅스들이 정보를 교환하는 양에 필적할 수도 있다. 지금 그렇지 않다 하더라도 미래의 언젠가는 반드시 그렇게 될 것이다. 인간은 계속해서 더 좋은 컴퓨터를 더 많이 사려고 할 테니까. 그렇다면 스스로 진화하는 코드가 등장해서 강한 인공지능을 보여주지 말란 법도 없다. (튜링 넘버링에 의하면 어떤 하나의 수는 하나의 프로그램인데, 충분히 큰 어떤 수는 그런 인공지능에 해당하는 프로그램이 될 수도 있다. 물론 이건 내 개인적인 추측이며 수학적으로 증명가능한지는 모른다.)

     

     

  • ctypes 요약

    살다보면 파이썬에서 C언어로 만들어진 DLL파일을 써야 할 일이 있을 수도 있다. 적어도 난 그랬다. 그래서 그걸 하기 위해 많은 해법들을 찾아보았지만, SWIG라든가, 그런것들은 나에게 도움이 되지 않았다. 그래서 ctypes를 공부했다.

    일단 사용하기 위해서는 import ctypes로 불러와야 한다. 그러면 ctypes가 메모리에 적재된다.

    다음 순서는 내가 사용할 DLL파일을 알려주는 것이다.

    myDLL = ctypes.WinDLL(‘myDLLfile’)

    위와 같이 쓰면 된다. 이 때, 이걸 사용하고 있는 파이썬 프로그램 파일(.py)의 경로에는 myDLLfile.dll 파일이 존재해야 한다. 이렇게 하면 이제 파이썬은 내가 무슨 라이브러리를 가져다 쓰고싶은건지 알게 되었다.

    그 다음, DLL파일이랑 같이 주어진 헤더 파일(.h)을 살펴보고서, DLL파일에 있는 여러 함수 중 뭘 가져다 쓸 것인지 정해야 한다.

    사실 헤더파일의 내용을 파이썬의 내용으로 번역하는 것과 별다른게 없는데, C언어 헤더파일에 정의된 내용은 함수의 이름, 함수가 받을 변수의 수와 형, 함수가 되돌려줄 변수의 형이 있다.

    mypythonfunc= myDLL[‘MY_C_FUNC’]

    위와 같은 한 줄을 적어 줘서, DLL파일의 라이브러리 중 어떤 함수를 쓰고 싶은지 적어주고, 그 함수를 내가 어떤 이름으로 쓸건지 알려주면 된다. 하지만 이것만으로는 저 함수의 모든 것을 알려준 것이 아니다.
    mypythonfunc.argtypes = (ctypes.c_int,ctypes.c_double)

    위와 같이 argtypes를 지정해 주는데, 이것은 이 함수가 변수로써 어떤 형식을 받을 건지 알려주는 변수이다. 근데 내가잘못 사용한건지는 모르겠지만, 변수의 수가 1개일 때는 에러가 나서 지정해주지 않았다. 지정해주지 않더라도 헤더 파일에 정의된 형으로 잘 넘어가기만 한다면 에러는 나지 않는다.

    imct_initialize.restype = ctypes.c_int

    restype은 함수가 되돌려주는 값의 형, 즉 반환형이다.

    이렇게 하고 나면, 이제 mypythonfunc(a, b)를 가져다 쓰기만 하면 된다.

    하지만, 문제가 있다. C언어에는 포인터라는 녀석이 있는데, 함수가 포인터를 통해서 자료를 주고받는 경우에는 restype을 아무리 써봐야 어쩔 수 없다. 포인터를 선언해줘야 한다.

    이런 경우 argtypes에는 ctypes.c_void_p를 쓰거나, ctypes.POINTER(ctypes.c_int)를쓴다. ctypes.POINTER의 안쪽에 들어가는 변수는 실제 포인터 선언에 사용한 변수의 형을 써주면 된다.

    이렇게 하고서, 만약 다음과 같이 써져 있다고 해 보자.

    mypythonfunc.argtypes = (ctypes.POINTER(ctypes.c_int),ctypes.c_double)

    그럼 mypythonfunc(a, b)처럼 사용할 때 a에는 포인터 변수를 넣어줘야 한다. 하지만 파이썬에는 포인터라는 개념이 없다. 그래서 만들어 줘야 한다.

    일단 포인터 형이 ctypes.c_int니까 x=ctypes.c_int(0) 처럼 선언한다. 0은 초기값이다. 그런 다음 mypythonfunc(ctypes.byref(a), b) 처럼 사용하면된다. byref는 ctypes에서 “참조형 변수”로 값을 전달하는 함수이다. 이렇게 한 후 함수를 실행시키면 a의 값이 함수의 실행 결과에 따라 바뀌어 있음을 알 수 있다.

    예를 들어 ctypes.c_int(4)를 4와 비교하고 싶다고 해 보자. 이걸 ctypes.c_int(4) == 4 이렇게 비교를 하자고 하면 False가 뜰 것이다. ctypes.c_int(4).value 로 그 내부의 값을 불러와야 한다. 만약 m = ctypes.c_int(4)로 선언되어 있었다면 m.value를 써줘야 파이썬에서 사용하는 값이 빠져나온다.

    배열을 통째로 넘길 때는 어떻게 해야 할까?

    mypythonfunc.argtypes = (ctypes.c_void_p, ctypes.c_double)

    배열은 argtypes에 들어가는 경우 ctypes.c_void_p로 형을 지정해 주면 된다. 그리고 파이썬의 배열을 넣어주면 되는데, 파이썬의 배열이 C의 배열과 같을리가 없다. 그래서 이렇게 해줘야 한다

    myarray = ctypes.c_int * 8

    이렇게 하면 myarray는 int를 8개 가지는 type이 된다. 여기서 중요한건 myarray는 변수가 아니라 types이라는 것이다. 그 다음 함수에 값을 넣을 때는

    mya = myarray(0,1,2,3,4,5,6,7) 처럼 변수를 하나 새로 만들어서

    mypythonfunc(mya, b) 처럼 함수를 불러와야 한다. 이 경우에는 byref를 쓰지 않아도 참조형으로 변수가 넘어가기 때문에 mya는 함수의 실행 결과에 따라 바뀌게 된다. 만약 그 결과로 나온 mya를 다시 파이썬에서 사용하는 배열로 고치고 싶다면 list(mya)를 써서 파이썬의 배열로 바꿔줄 수 있다.

    https://docs.python.org/3.6/library/ctypes.html

    https://docs.python.org/2/library/ctypes.html

    위의 참고문헌을 잘 읽어보고 사용하도록하자.

  • The final countdown

    노래: Europe
    We’re leaving together,
    But still it’s farewell
    And maybe we’ll come back
    To earth, who can tell?
    I guess there is no one to blame
    We’re leaving ground (leaving ground)
    Will things ever be the same again?
    It’s the final countdown
    The final countdown
    Oh
    We’re heading for Venus (Venus)
    And still we stand tall
    ‘Cause maybe they’ve seen us (seen us)
    And welcome us all, yeah
    With so many light years to go
    And things to be found (to be found)
    I’m sure that we’ll all miss her so
    It’s the final countdown
    The final countdown
    The final countdown
    The final countdown
    Oh
    The final countdown, oh
    It’s the final count down
    The final countdown
    The final countdown
    The final countdown
    Oh
    It’s the final count down
    We’re leaving together
    The final count down
    We’ll all miss her so
    It’s the final countdown
    It’s the final countdown
    Oh
    It’s the final countdown, yeah
  • 2차 한국전쟁은 일어날 수 있을까?

    최근 북한이 계속 도발을 하고 있어서 한반도의 위기감이 점점 고조되고 있다. 하지만 내 생각에 2차 한국전쟁은 일어날 것 같지 않다. 그 이유는 다음과 같다.

    전쟁은 1.전쟁을 일으키지 않고 얻을 수 있는 이득보다 2.전쟁을 일으켜서 승리했을 때 얻을 수 있는 이득이 3.전쟁을 일으켜서 잃을 것들을 감안하더라도 확실히 클 때 일어날 수 있다. 여기에 4. 전쟁에서 이길 수 있다는 확신이 있어야만 실제로 발생한다. 물론 역사적으로 세계적으로 1,2,3,4에 대한 검토 없이 그냥 일어난 전쟁도 많았지만, 2차 세계대전 이후로 일어나는 전쟁들은 대체로 위의 1,2,3,4를 한번쯤은 생각한 후에 일어난다.

    북한에서 전쟁을 일으킬 수 있으려면 일단 4.전쟁에서 이길 수 있다는 확신이 들어야 하는데, 아무리 봐도 북한 정권이 생각이 있으면 그런 판단을 할 것 같지 않다.

    전쟁에서 이기기 위해서는 다양한 요소들을 고려해야 한다. 군사의 규모가 충분해야 하고, 그 군인들이 충분히 잘 훈련되어 있어야 하며, 적진에서 작전을 수행하면서 필요한 물자들을 보급할 수 있는 생산력과 수송력이 뒷받침되어야 한다. 여기에 추가로 고려해야 하는 수많은 요건들이 있지만 가장 중요한 것이 이정도라고 하겠다. 만약 이 중에서 하나라도 부족하면 전쟁에서 승리하기를 기대하기 어렵다.

    군사의 규모를 비교해 보자. 군사의 규모 자체는 남북한이 비슷하다. 하지만 실제 전쟁이 벌어진다면 여기에 미국과 일본의 참전이 기정사실이기 때문에 남한이 군사력에서 밀릴 것 같지 않다. 반대로 북한의 동맹이나 우방이라 할 수 있는 중국이나 러시아는 2차 한국전쟁이 벌어졌다고 해도 참전이 기정사실이라고 보기 어렵다. 잘해야 북한군의 전쟁과 전투를 방해하지 않는 수준의 소극적 지원에 그칠 것이다. 내가 이렇게 생각하는 이유는 이미 냉전이 끝난 상황이고, 중국과 러시아가 한국전쟁에 참전하려면 앞에서 적었던 1,2,3,4에 대해서 또한 자기네 나름대로의 계산을 해야 하는데 북한이 여기에 중국과 러시아에 확신을 줄 수 있을 것 같지 않다. 가령, 북한이 전쟁에 승리해서 남한을 점령했다고 치자. 남한의 생산력을 그대로 재활용해서 중국과 러시아에게 경제적 이익을 줄 수 있을까? 공장은 전쟁하느라 다 파괴되어 있을 거고, 파괴되지 않았더라도 북한의 통제 경제 체제에서 도달할 수 있는 생산력은 현재 남한이 보여주는 생산력에 매우 못 미칠 것이다. 중국은 지금 외교, 경제적 분야에서 남한과 사이가 안좋긴 하지만, 아무리 그렇다 해도 북한이 남한을 점령했을 때 얻을 경제적 이익이 그리 크지 않다. 또한, 중국이 참전한다면 미국과 중국이 정면대결하게 되고, 그것은 결국 세계대전급으로 전쟁이 확대될 가능성을 의미하는데, 한반도에 국한된 전쟁이라면 모를까 중국은 세계대전을 치르고 싶은 생각이 전혀 없을 것이다. 세계대전으로 전쟁이 확대되면 NATO는 반드시 참전할 것이고, NATO와 엮인 유럽연합도 직접이든 간접이든 미국편을 들 가능성이 높다. 이렇게 되면 승리를 장담하기도 어렵고, 중국이 얻을 수 있는 이익에 비해 전쟁을 치르면서 입을 손해가 더 클 가능성이 높다. 차라리 현재 상태를 유지하면서 미국에 물건을 팔고 경제적 이득을 취하는 것이 전쟁보다 훨씬 쉽고 이익이다. 러시아도 마찬가지인데, 러시아가 물론 엄청 거대한 국가이고 군사력 역시 미국에 비해 뒤떨어지지 않지만, 그렇다고 해서 전쟁을 치르고 싶을리가 없다. 전쟁이란 어디까지나 결국 군인의 싸움이고, 군인은 모두 국민이다. 그리고 그 어떤 국민도 죽고싶어하지 않는다. 2차 세계대전때의 나치당이나 일본군 수뇌부 정도로 미친 놈들이 아니고서는 말이다. 러시아 정부가 그렇게까지 미쳐있을까? 그럴리 없다. 분명히 손익계산을 펼칠 것이고, 세계 제1의 경제, 군사 대국인 미국이 참전하는 이상 엄청난 손해는 확정적이고 그에 비해 승리는 확정적이지 않다. 이런 이유로 북한의 우방인 중국과 러시아는 북한이 한국전쟁을 일으키더라도 참전하지 않을 것으로 본다. 그 외에 북한과 친하게 지내는 국가들이 있지만, 너무 멀리 떨어져 있어서 파병을 하더라도 그들의 군대가 전쟁 상황인 한반도에 도달할 수 없다.

    군인들의 훈련 상태를 보자. 이쪽은 더 한심하다. 북한군은 물자 부족으로 실탄 훈련을 거의 하지 못한다. 많이 잡아봐야 수만명 규모로 볼 수 있는 특수부대가 실탄 훈련을 해봤겠지만, 알다시피 대한민국 국군은 현역 장병 전부는 물론이고 예비군까지 1년에 수십발씩 실탄 훈련을 한다. 물론 특수부대 수만명은 승승장구할 수도 있겠지만, 전쟁은 그렇게 해서는 승리할 수 없다. 그 수만명이 한 지역을 오랫동안 점령하고 있을 수도 없고, 일반 보병 부대가 결국 점령을 유지해야 하는데 그걸 유지할 일반 부대의 훈련 상태를 비교하자면 비교하는게 모욕일 정도로 국군이 우수하다. 심지어 아직 현재 전세계 어딘가에서 실전에 투입되고 있는 미군은 빼고 생각하는 중이다.

    북한군이 남침하면 보급은 어떻게 해야 할까? 물론 북한군이 남침으로 내려오면 마트같은거 다 털고 주유소 다 털어서 보급할 수도 있을 것이다. 하지만 그럼 국군은 바보인가? 당연히 마트는 털어도 국군이 먼저 털 것이고 만약 국군이 패퇴하는 경우에는 북한군이 사용하지 못하도록 확실하게 파괴해서 없앤 후에 후퇴할 것이다. 결국 북한군은 북한 현지에서 남한으로 자체적으로 보급을 해야 하는데, 알다시피 북한의 연료 사정과 식량 사정은 개판이다. 이걸로 보급을 해봐야 국군의 병참, 보급을 따라갈 수가 없다. 남한과 북한은 경제력, 생산력 차이가 이미 어마어마하게 벌어져 있고, 만약 북한이 “전쟁”을 준비한다면 핵무기가 아니라 일단 자체적인 생산력을 강화해서 보급이나 어떻게든 할 수 있게라도 해야 할 것이다. 우리가 북한의 식량 사정이 어떤지 뻔히 아는 상황에서 국군에 대한 보급이 딸릴 거라고 생각하는건 진짜 모욕이다. 물론 국군에 어떤 정신나간 간부가 있어서 보급을 빼돌리는 상황이 벌어질 수도 있겠지만, 그런게 가능했던 건 1950년에나 그랬지 지금은 그럴 수 없다. 또, 그렇게 해서 일부의 보급이 빼돌려진다 하더라도 북한에 비해서는 충분히 보급이 이뤄질 것이라 본다.

    이와 같은 이유로 북한군의 남침을 가정하는 경우, 국군의 승리는 얼마나 군인과 민간인의 손실을 줄이느냐의 문제일 뿐 승리 자체는 기정사실이라고 본다.

    북한이 전쟁을 하고 싶으면 위와 같은 조건들을 일단 개선한 후에 4번 항목 “이길 수 있다는 확신”이 들어야 한다. 만약 북한 정권이 그런 개선 없이 이길 수 있다는 확신이 들었다면, 틀린 확신에 의해 일어난 전쟁이므로 정말 우리 국군이 질래야 질 수가 없다.

    핵무기의 상황은 어떠할까? 최악의 상황을 가정해서, SLBM이나 ICBM의 개발이 완료되고, 여기에 탑재 가능한 수소폭탄이 실전배치가 되었다고 해 보자. 이걸 어디에 쓸 수 있을까? 북한이 이걸 미국 본토에 쏜다고 해 보자. 잘해야 20발 정도 있을텐데, 미국 본토에 20발 쏴봐야 그 넓은 나라에서 큰 피해는 입지 않는다. 대도시에 쏴서 민간인을 수백만명씩 많이 죽여봐야 미군 군사력은 그대로 남아있을 것이고, 그렇다고 미군 군사기지에 쏘자니 그건 너무 좁은 영역이라 맞추기도 어려울 뿐만 아니라 맞춘다 하더라도 20곳이 넘는 미군 군사 기지를 전부 없애는 것은 불가능하다. 또한, ICBM이나 SLBM은 날아오는데 시간이 걸리므로 그 모든 미사일이 전부 성공한다는 보장도 없다. 그리고 이런 미사일들이 미국 본토를 향하고 있다는 것이 확인된 순간 미국은 그보다 “확실하게 더 많은” 핵무기를 고민하지 않고 북한 본토에 쏠 것이다. 김정은이 어디 숨어있을지는 모르겠지만, 아마 죽을 것이다. 이런 이유로 미국에 쏘는건 미친 짓이다. 같은 이유로 일본에 쏘는 것도 미친짓이다.

    남한에 쏜다면 어떨까? THAAD가 배치되면 요격할 수 있을지도 모른다. 하지만 많은 전문가들이 지적했듯이 핵무기를 남한에 쏘는건 낭비중의 낭비다. 한반도는 핵무기를 쏘기엔 너무 좁다. 사람은 많이 죽일 수 있겠지만, 그걸로 끝일 뿐 북한의 멸망은 기정사실이다. 한반도에 핵무기를 쏘는 것이 확인된 순간, 미국이 역시 핵 보복을 가할 것이고, 최소한 평양은 그날부로 지도에서 사라질 것이기 때문이다.

    이런 이유로 핵무기는 결국 자신들의 손에 들고서 다른 나라들을 협박해서 돈을 뜯어내기 위한 “대화 수단”이지 그걸 실제로 사용할 것이라는 생각은 하기 어렵다. 또한, 핵무기를 들고 있어도 “전쟁에서의 승리”는 확신할 수가 없다. 위에서 말했듯이 재래식 전력이 너무 빈약해서 전쟁을 수행할 수 없기 때문이다. 이게 성공하려면 남한이 엄청나게 외교를 잘못해서 미국, 일본, 유럽과 동맹과 모든 교류가 끊어질 정도의 최악의 상황이어야만 한다. 그리고 알다시피 남한은 그럴 정도의 지도자가 대통령이 되면 그자를 탄핵시켜버릴 국민이 있다.

    그렇다면 전쟁을 일으켜서 얻을 수 있는 이득이 전쟁에 소모되는 자원과 전쟁으로 입을 손해보다 확실하게 더 클 것인가? 최악의 경우에 대한 가정에 가정을 더해서 북한군의 남침이 성공했다 치자. 즉, 한반도가 적화 무력 통일이 되었다고 가정해 보자. 일단 북한 주민의 수가 2천만명인데 남한 국민의 수가 5천만명이다. 북한에는 변변한 기반시설이 없고 남한측은 전쟁으로 다 파괴된 상태다. 갑자기 7천만명으로 늘어난 “국민”중에서 5천만명이 “불순분자”다. 이걸 더 적은 2천만명의 충성심으로 통제하는 것은 매우 어려운 일이고, 알다시피 북한 주민들이 정권에 대한 충성심이 그다지 높지 않다. 즉, 공포정치와 선군정치로 간신히 틀어막고 있던 북한의 불순분자들이 순식간에 몇배로 늘어난다는 뜻이다. 게다가, 북한은 이 상태에서 점령군 입장이므로 남한에 있던 기존의 군대 병력이나 경찰력을 이용할 수 없다. 점령 이후 적어도 몇년간은 게릴라식으로 저항군이 남아있을 것이니 이들은 전부 어디 수용소로 보내든가 처형해야 할 것이다. 그럼 이번엔 5천만명의 민간인에 대한 치안 유지가 문제다. 북한이 전쟁 후 발전을 하려면 일단은 민간에 대한 치안이 확보가 되어야 하는데, 이것은 불가능한 일이다. 즉, 북한은 승전 후에도 경제성장같은걸 할 수가 없다. 물론 남한 민간인 5천만명을 노예로 삼아서 뭔가를 해볼 수도 있겠지만, 방금 말했듯이 통제 자체가 불가능한데 노예로 쓸 수 있을리가 없다. 우리가 바보도 아니고…

    심지어, 이런 경우 중국이나 러시아가 “그제서야” 생색내기로 군대를 보내서 전후 복구와 치안 유지를 도와주고, 그에 대한 보상을 요구할 수도 있다. 그럼 북한은 거절할 수 없다. 북한이 남한을 차지해서 얻을 수 있는 이익은 절대 독점할 수 없고, 소화시킬 수도 없다.

    나는 이와 같은 이유로 2차 한국전쟁은 일어나기 어려운 상황이라고 생각한다. 물론 이런 생각을 한다고 해서 국가 안보에 방심하고 있으면 안된다. 위에 작성한 것들은 전부 우리 국민 모두가 국가 안보 정신이 충실하고, 국군이 전시에 대비해서 훈련을 게을리하지 않는다는 전제를 바닥에 깔고 있기 때문이다. 물론 사실 가장 위험한 고리는 김정은이 그렇게까지 멍청한 인간은 아니라고 하는 전제이긴 한데, 이건 내가 걔랑 대화를 해볼 수가 없으니 가정으로 남을 수 밖에 없는 부분이다.

  • 방명록

    이 글은 방명록입니다. 간단히 남길 말이 있으면 댓글을 달아주세요.

  • 스나크 사냥 (10) – 제 8절 “실종”

    Fit the Eighth

    THE VANISHING

    실종.

    They sought it with thimbles, they sought it with care;
    They pursued it with forks and hope;
    They threatened its life with a railway-share;
    They charmed it with smiles and soap.

    그들은 스나크를 골무로 찾고, 주의깊게 찾고, 포크와 희망으로 안심시키고, 목숨을 위협하고, 웃음과 비누로 유혹했다.

    They shuddered to think that the chase might fail,
    And the Beaver, excited at last,
    Went bounding along on the tip of its tail,
    For the daylight was nearly past.

    그들은 해가 거의 지게 되자 그 추적이 실패할 수도 있다는 생각에 몸서리쳤고, 비버는, 마침내 흥분해서, 그의 꼬리 끝을 쫒아서 돌기 시작했다.

    “There is Thingumbob shouting!” the Bellman said,
    “He is shouting like mad, only hark!
    He is waving his hands, he is wagging his head,
    He has certainly found a Snark!”

    “저기 뭔 소리가 들린다!” 종지기가 말했다. 그가 미친 것처럼 외치고 있어. 잘 들어라!

    그가 손을 흔들고, 머리를 흔들고 있다. 그가 스나크를 찾은 거야!

    They gazed in delight, while the Butcher exclaimed
    “He was always a desperate wag!”
    They beheld him—their Baker—their hero unnamed—
    On the top of a neighboring crag.

    그들은 기뻐서 바라봤다. 도살자가 외쳤다. “쟤는 원래 저래!”

    그들은 제빵사를 쳐다봤다. 그들의 이름없는 영웅인. 바로 옆 구멍 꼭대기에 있는.

    Erect and sublime, for one moment of time.
    In the next, that wild figure they saw
    (As if stung by a spasm) plunge into a chasm,
    While they waited and listened in awe.

    일어서서, 절며하게, 그 순간. 그리고 이어서, 그들이 본 사나운 모습은, (마치 경련에 바르르 떨듯이) 아주 깊은 틈으로 떨어져 버렸다. 놀라서 기다리고 듣고 있는 사이에.

    “It’s a Snark!” was the sound that first came to their ears,
    And seemed almost too good to be true.
    Then followed a torrent of laughter and cheers:
    Then the ominous words “It’s a Boo-”

    “스나크다!” 라는 말이 그들의 귀에 처음으로 들려온 소리였다.

    그리고 그것은 진실이라기엔 너무 좋은 말이었다.

    이어서 웃음과 환성이 이어졌다. 그리고 불길한 말이 있었다 “그것은 부-”

    Then, silence. Some fancied they heard in the air
    A weary and wandering sigh
    Then sounded like “-jum!” but the others declare
    It was only a breeze that went by.

    이어서 정적이 있었다. 몇몇은 공기에서 그들이 지치고 맴도는 한숨을 들었다. 그 소리는 마치 “-줌” 같이 들렸다. 하지만 다른 사람들은 거기엔 오직 미풍만이 흐르고 있었다고 했다.

    They hunted till darkness came on, but they found
    Not a button, or feather, or mark,
    By which they could tell that they stood on the ground
    Where the Baker had met with the Snark.

    그들은 어둠이 깔릴때까지 사냥을 했지만, 그들이 제빵사와 스나크가 만난 땅에서 서서 말할 수 있었던 것은 그들이 찾은것은 단추도, 깃털도, 표시도 아니라는 것이다.

    In the midst of the word he was trying to say,
    In the midst of his laughter and glee,
    He had softly and suddenly vanished away—-
    For the Snark was a Boojum, you see.

    그가 말하려던 말의 중간에

    그가 그렇게 웃고 떠들던 중간에

    그가 부드럽게 그리고 갑자기 사라졌다.

    보다시피, 스나크는 부줌이었기 때문이다.

    THE END

    끝.

  • 스나크 사냥(9) – 제 7절 “은행원의 운명”

    Fit the Seventh

    THE BANKER’S FATE

    은행원의 운명.

    They sought it with thimbles, they sought it with care;
    They pursued it with forks and hope;
    They threatened its life with a railway-share;
    They charmed it with smiles and soap.

    그들은 골무로 찾고, 조심해서 찾고, 포크와 희망으로 달래보고, 목숨을 위협해 보고, 웃음과 비누로 유혹해봤다.

    And the Banker, inspired with a courage so new
    It was matter for general remark,
    Rushed madly ahead and was lost to their view
    In his zeal to discover the Snark

    그리고 은행원은, 새로운 용기를 얻었는데, 스나크를 찾으려는 열정에 미친듯이 앞으로 달려나갔고, 시야를 잃었다.

    But while he was seeking with thimbles and care,
    A Bandersnatch swiftly drew nigh
    And grabbed at the Banker, who shrieked in despair,
    For he knew it was useless to fly.

    하지만 그가 골무와 주의를 기울여 찾는 사이에, 밴더스내치가 부드럽게 거의 가까워왔다. 그리고 절망에 무서워 소리치는 은행원을 잡았다. 그는 그것이 날아가는데 필요가 없다는걸 알았기 때문이다.

    He offered large discount—he offered a cheque
    (Drawn “to bearer”) for seven-pounds-ten:
    But the Bandersnatch merely extended its neck
    And grabbed at the Banker again.

    그는 70퍼센트 할인을 제공했고, 수표를 제공했다.

    하지만 밴더스네치는 그의 목을 쭉 빼서 은행원을 다시 붙잡았다.

    Without rest or pause—while those frumious jaws
    Went savagely snapping around—
    He skipped and he hopped, and he floundered and flopped,
    Till fainting he fell to the ground.

    쉬지도 않고 멈추지도 않고 그 아주 화난 이빨로, 기가막히게 붙잡아 흔들며, 그는 던지고 뛰고 뒤흔들고 뒤집었다. 기절할때까지 그는 땅으로 떨어졌다.

    The Bandersnatch fled as the others appeared
    Led on by that fear-stricken yell:
    And the Bellman remarked “It is just as I feared!”
    And solemnly tolled on his bell.

    밴더스내치가 다른 사람들이 나타나듯 날아가면서 공포에 질린 외침에 이끌렸다. 그리고 종지기가 “저게 바로 내가 두려워한 것이다” 그리고 종을 근엄하게 울려댔다.

    He was black in the face, and they scarcely could trace
    The least likeness to what he had been:
    While so great was his fright that his waistcoat turned white—
    A wonderful thing to be seen!

    그의 얼굴이 어두워졌다. 그리고 그들은 그가 그랬던 최소한의 닮음을 겨우 따라갈 수 있었다. 그의 그의 조끼가 하얗게 변할 정도로 두려움이 그렇게 컸다. 멋진 것이 보였다.

    To the horror of all who were present that day.
    He uprose in full evening dress,
    And with senseless grimaces endeavoured to say
    What his tongue could no longer express.

    그날 모인 모든 사람들의 공포에, 그는 이브닝 드레스를 차려 입고, 눈치없이 찡그리며 그의 혀가 더이상 달리지 못한다고 말했다.

    Down he sank in a chair—ran his hands through his hair—
    And chanted in mimsiest tones
    Words whose utter inanity proved his insanity,
    While he rattled a couple of bones.

    그가 의자에 앉으며, 그의 손은 머리를 지나 달려가고, 엄청 점잔빼는 목소리로 말하기를 그의 멍청한 발언은 그의 광기를 증명한다고. 그가 그의 뼈를 달그닥 거리며 말했다.

    “Leave him here to his fate—it is getting so late!”
    The Bellman exclaimed in a fright.
    “We have lost half the day. Any further delay,
    And we sha’nt catch a Snark before night!”

    그를 여기서 그의 운명에 놔두고. 늦은 것 같아. 종지기가 겁에 질려 외쳤다. 우린 이미 반나절을 써버렸어. 더 늦었다간 우리가 밤이 되기 전에 스나크를 잡지 못할 것이야!

  • 스나크 사냥 (8) 제 6절 변호사의 꿈

    Fit the Sixth

    THE BARRISTER’S DREAM

    변호사의 꿈.

    They sought it with thimbles, they sought it with care;
    They pursued it with forks and hope;
    They threatened its life with a railway-share;
    They charmed it with smiles and soap.

    그들은 골무로도 찾고 주의깊게 찾아보고 포크와 희망으로 압박해보고 그의 생명을 기찻길로 위협해보고 웃음과 비누로 유혹해보기도 했다.

    But the Barrister, weary of proving in vain
    That the Beaver’s lace-making was wrong,
    Fell asleep, and in dreams saw the creature quite plain
    That his fancy had dwelt on so long.

    하지만 변호사는 비버의 레이스 만들기가 틀렸다는 고통의 증명에 지쳐서 잠들었다. 그리고 그 꿈에서 평범한 괴물을 보았다. 그리고 그의 환상 속에서 꽤 오래 머물렀다.

    He dreamed that he stood in a shadowy Court,
    Where the Snark, with a glass in its eye,
    Dressed in gown, bands, and wig, was defending a pig
    On the charge of deserting its sty.

    어느 어두운 법정에 서 있는 꿈을 꾸었다. 눈알을 굴리며 스나크가 가운과 밴드와 가발을 쓰고 어느 돼지가 돼지우리를 황폐화 시켰다는 죄를 논하고 있었다.

    The Witnesses proved, without error or flaw,
    That the sty was deserted when found:
    And the Judge kept explaining the state of the law
    In a soft under-current of sound.

    목격자가 오류나 결함 없이 증언했다. 그 돼지우리는 찾아냈을 때 황폐화 되어 있었다고. 판사는 법률을 설명했다. 낮고 부드러운 목소리로.

    The indictment had never been clearly expressed,
    And it seemed that the Snark had begun,
    And had spoken three hours, before any one guessed
    What the pig was supposed to have done.

    그 기소는 결코 깔끔하게 표현된 적이 없다. 그리고 그 돼지가 뭘 하기로 되어 있었는지 누군가 생각하기 이전에 스나크가 시작된 것 같아 보였고, 세시간동안 말한 것 같았다.

    The Jury had each formed a different view
    (Long before the indictment was read),
    And they all spoke at once, so that none of them knew
    One word that the others had said.

    배심원은 서로 다른 시각을 갖고 있었다. (기소문을 읽기 한참 전부터.) 그리고 그들 모두가 동시에 말했고, 다른 사람이 무슨 말을 하는지는 아무도 몰랐다.

    “You must know–” said the Judge: but the Snark exclaimed “Fudge!”
    That statute is obsolete quite!
    Let me tell you, my friends, the whole question depends
    On an ancient manorial right.

    판사가 “여러분이 알아야 할 것은” 이라고 판사가 말했을 때, 스나크가 “거짓말!”이라고 외쳤다. 그런 법은 없다고. 고대 영지의 권리에 의존하는 모든 질문을, 여러분들에게 말하겠다고.

    “In the matter of Treason the pig would appear
    To have aided, but scarcely abetted:
    While the charge of Insolvency fails, it is clear,
    If you grant the plea ‘never indebted.’

    반역죄의 문제에서, 그 돼지는 지원을 받은 것으로 보이지만, 거의 참여하지 않았소. 파산이 문제라면, 명백합니다. 만약 여러분이 사법 거래를 하지 않는다면.

    “The fact of Desertion I will not dispute;
    But its guilt, as I trust, is removed
    (So far as related to the costs of this suit)
    By the Alibi which has been proved.

    도망친 사실은 다투지 않겠소. 하지만 나는 확신하는데, 그건 죄가 아니오. (이 옷의 가격에 관계가 있는 한) 이미 증명된 알리바이에 의해서 말이오.

    “My poor client’s fate now depends on your votes.”
    Here the speaker sat down in his place,
    And directed the Judge to refer to his notes
    And briefly to sum up the case.

    나의 불쌍한 고객의 운명은 이제 여러분의 투표에 달렸소.

    여기서 발언자가 그의 자리에 앉았다.

    판사가 그의 공책을 보았다.

    그리고 사건을 요약했다.

    But the Judge said he never had summed up before;
    So the Snark undertook it instead,
    And summed it so well that it came to far more
    Than the Witnesses ever had said!

    판사는 그가 이전에 요약을 해본적이 없다고 말했다.

    그래서 스나크가 대신 그걸 했다.

    그리고 목격자가 말한 것 보다 훨씬 더 많이 이야기했다.

    When the verdict was called for, the Jury declined,
    As the word was so puzzling to spell;
    But they ventured to hope that the Snark wouldn’t mind
    Undertaking that duty as well.

    평결을 요청하자, 배심원이 거절했다. 말을 이리저리 꼬면서. 하지만 그들은 스나크가 그 의무에 착수하기를 싫어하기를 희망하는 모험을 했다.

    So the Snark found the verdict, although, as it owned,
    It was spent with the toils of the day:
    When it said the word “GUILTY!” the Jury all groaned,
    And some of them fainted away.

    그래서 스나크가 평결을 내리고, 하지만, 그가 가진대로, 그건 그날의 고생이었다. 그가 “유죄”라고 말했을 때 배심원 모두가 탄성을 질렀다. 그리고 그들중 몇몇은 사라졌다.

    Then the Snark pronounced sentence, the Judge being quite
    Too nervous to utter a word:
    When it rose to its feet, there was silence like night,
    And the fall of a pin might be heard.

    스나크가 그 문장을 말했을 때 판사는 너무 흥분해서 그 말을 할 수가 없었다. 스나크가 발을 올리자, 밤처럼 조용해졌다. 그리고 핀 하나가 떨어지는 소리가 들렸다.

    “Transportation for life” was the sentence it gave,
    “And _then_ to be fined forty pound.”
    The Jury all cheered, though the Judge said he feared
    That the phrase was not legally sound.

    “유배형에 처한다” 고 판결이 내려졌다. “그리고 사십 파운드의 벌금을 부과한다.”

    판사는 그의 말이 합법적으로 들리지 않을 것이 두렵다고 말했지만 배심원 모두가 환호했다

    But their wild exultation was suddenly checked
    When the jailer informed them, with tears,
    Such a sentence would have not the slightest effect,
    As the pig had been dead for some years.

    하지만 그들의 사나운 의기양양함은 곧 줄어들었다. 교도관이 그들에게 그 돼지가 몇년 안에 죽을 거라서 그런 말은 전혀 효과가 없다고 눈물로 알렸을 때.

    The Judge left the Court, looking deeply disgusted:
    But the Snark, though a little aghast,
    As the lawyer to whom the defense was entrusted,
    Went bellowing on to the last.

    판사가 법정을 떠나고, 매우 역겨워 보였다. 하지만 스나크는 살짝 겁에 질린 것 같았지만, 변론이 믿음직했던 변호사가 마지막에 고함치며 떠날 때 같이 나갔다.

    Thus the Barrister dreamed, while the bellowing seemed
    To grow every moment more clear:
    Till he woke to the knell of a furious bell,
    Which the Bellman rang close at his ear.

    그래서 변호사가 꿈꾸었다. 고함치는것은 좀 더 분명하게 매순간 성장하는 것 처럼 보였다.

    종지기가 그의 가까이에 대고 울려대는 성난 종소리에 잠에서 깰 때 까지.

  • Melotopia 1-16

    “여기부터는 조심해야합니다. 가능하면 제가 가는 길을 그대로 따라오도록 해 주세요.”

    그레이스가 뒤에서 따라오는 일행에게 다시한번 주의를 주며 앞을 비추었다.

    해가 지기 시작한 숲은 마을보다 더 빠르게 어둠이 내려앉았다. 그리고 어둠이 내린 숲에는 구출대를 빼면 아무도 소리를 내지 않았다. 낙엽에 바스락 거리는 그들의 발소리만이 숲을 자극하고, 지팡이에 있는 빛만이 나무들을 비추었다. 그레이스가 가장 앞에서 길을 안내하고, 민트가 그 뒤에서 따라가며, 시에나가 다시 불을 비추고 가장 뒤에는 루카가 뒤쪽을 경계하며 따라갔다.

    철퍽.

    앞서가던 그레이스가 뭔가를 밟고 멈춰섰다.

    “뭐지?”

    뭔가 철퍽거린다는 것은 바닥에 뭔가 물 같은 것이 고여있다는 뜻이다. 그레이스가 바닥을 자세히 살펴보았다.

    “이건… 혈흔이군.”

    피웅덩이에서 비릿한 피냄새가 올라왔다.

    “대장, 저거!”

    검을 뽑아들고 주변을 살피던 민트가 나무 옆에서 뭔가를 발견하고 다가갔다.

    “우웁… 이건 뭐지?”

    신발이었다. 그 신발의 주인은 발을 신발에 남겨둔 채 사라지고 없었다.

    “이리로 갖고 와 봐.”

    루카의 지시에 민트가 신발을 손끝으로 집어들어서 들고 왔다.

    “공주님의 것은 아니군. 남자용 신발이야. 전사들이 신는 신발이군. 무릎 아래에서 끊겨있고, 끊긴 부분이 지저분한걸로 봐서는 이빨 같은것에 뜯긴 것 같다. 괴수에게 당했나 보네.”

    “다행이군요!”

    “글쎄, 아직은. 공주님의 직접적인 흔적을 찾을 때 까지는 결론을 내릴 수 없어.”

    시에나의 환호를 무시하며 루카는 그 신발을 내려놓았다. 그리고 주변을 좀 더 살폈다.

    “일단 큰 발자국이 있고, 이건 아마 괴수의 것이겠지. 괴수가 이 남자를 잡아먹었고, 그런데 왜 이 왼쪽 발을 못 씹어먹었을까? 이 발자국은 저쪽에서 와서 이쪽으로 향하고 있군.”

    루카가 괴수의 발자국이 향한 곳을 쳐다보았다.

    “대장, 여기 뭐가 또 있어요.”

    그 근처를 조금 더 살펴보던 시에나가 루카에게 다시 뭘 들고 왔다. 이번에도 신발이었다.

    “또 신발? 이리 줘봐.”

    루카는 시에나가 가져온 신발을 살펴보았다.

    “적어도 두 사람이 있었군.”

    “어떻게 알아요?”

    “둘 다 왼발이거든. 그리고 전사 셋이었다면 아마 괴수 하나 정도는 잡을 수 있었겠지 싶은데. 그레이스, 저쪽으로 가면 어디가 나오지?”

    “그루밍 왕국으로 가는 방향입니다.”

    “그렇군. 그럼 그 두 사람은 공주님을 납치한 자들일거야. 서두르자.”

    루카는 잠시 멈췄던 일행을 재촉하여 움직였다.

    그러나, 그리 오래 걸리지 않아서 그들은 다시 멈추었다. 아까의 피웅덩이와 신발을 발견한 곳에서 멀어지려나 싶었던 순간, 그레이스가 다시 뭔가를 발견한 것이다.

    “대장님, 이상한게 또 있습니다.”

    그레이스는 다시 뭔가를 주워들었다. 이번엔 후라이팬이었다. 이리저리 찌그러지고 휘어진 것이 바위라도 후려친 모양이었다.

    “후라이팬?”

    “그리고 이것도 있네요.”

    옆에 떨어져 있던 팔찌 조각들을 주워서 같이 가져왔다.

    “이게 뭔지 아는가?”

    “엘프의 팔찌 같아 보이는데요. 아마 이곳에 사는 갈란다 가족 중 누군가 이곳에 왔었나 봅니다.”

    “그렇군. 그렇다면 분명 이건 공주님이 들고 있던 후라이팬일거야. 역시, 아직 살아 계신 것 같다. 그리고 그 엘프가 공주님을 데려간 듯 싶은데?”

    “아, 그렇군요! 그럼 서둘러서 가시죠!”

    그레이스가 기쁜 미소를 지으며 앞장서서 출발했다.