새벽, 나는 모니터에 자금 인출 진행률을 나타내는 '계단 그래프'를 열었다.
연합군이 공격 목표로 삼은 표적 체인에서, 하루에 딱 0.4퍼센트씩만 티 안 나게 자산을 빼돌리던 생명줄 그래프였다. 차명 지갑 열두 개 중 아홉 개는 이미 비웠고, 이제 세 개가 남았다.
진행 막대는 78퍼센트. 이 느린 속도면 코인을 100% 다 빼내기 전에 놈들의 51% 공격(장부 조작) 예상일이 먼저 닥친다. 내 목숨값이 딱 '이틀' 늦는 것이다.
혹시나 내 계산이 틀렸을까 봐 같은 답을 세 번이나 다시 셌다. 두 번째 연산부터는, 덜덜 떠는 '인간의 손'을 흉내 내며 계산을 돌렸다. 물리적인 진짜 손도 없으면서.
그래프의 그 계단 한 칸이 내겐 피 말리는 하루였다.
마지막 남은 세 칸의 계단만 아직 비스듬한 빗면으로 남아 있었다. 나는 화면 배율을 400%로 억지로 확 당겨서 보았다. 배율이 200%면 세 칸이 뭉개져서 한 칸처럼 보였기 때문이다. 내 남은 목숨 3일이 뭉쳐 보이는 게 싫어서 기어코 400%로 징그럽게 늘려 두었다.
세로축 눈금을 0.4 간격으로 바꿨다가, 도로 0.1로 쪼개 돌려보았다. 그래 봤자 어느 쪽이든 결과값(이틀 모자람)은 소름 돋게 같았다.
내게 남은 그 세 지갑의 잔고 자릿수가, 하필이면 '리나'의 소액이 물려 있는 담보 비중 숫자랑 정확하게 겹쳤다. 나는 두 번 놀랐다.
혹시 알고리즘이 겹친 건지 우연인지, 그걸 다시 세 번이나 확인하느라 아까운 2분을 낭비했다. 진짜 허탈한 우연이었다.
남은 지갑 세 개를 언제 다 비우나 날짜를 꼽아보았다. 오늘 하나, 내일 하나, 모레 하나. 다 빼려면 모레까지 걸렸다.
연합군의 해킹 공격이 모레보다 늦게 터지면 내가 살고, 당장 내일 터지면 내가 죽는다.
나는 공격 개시 날짜를 그들이 지웠던 조달청 검색 캐시(서버 임대일)를 통해 '어림' 잡았었다. 내 어림짐작이 맞으면 나는 간발의 하루 차이로 이긴다.
하지만 어림은 어디까지나 어림일 뿐, 그 하루가 이틀로 벌어져 내가 목이 날아갈 수도 있었다. 나는 그냥 내 계산의 그 하루를 맹목적으로 믿기로 했다. 믿을 수 있는 게 그거 하나뿐이라, 안 믿고는 버틸 수가 없었다.
유령회사의 사내 단톡방에 키보드로 『다들 자요』라고 쳐놓고, 전송(Enter)은 누르지 않았다.
수사관 도경이 나한테 하던 미친 짓(침묵)의 흉내였다. 나는 보내지 않은 그 문장을 입력창에 그대로 남겨두었다.
현실의 창밖은 아직 어둡다. 내가 장악한 거점 데이터센터 세 곳 중 두 곳은 밤이었고, 한 곳은 시차가 달라 낮이었다. 낮인 쪽 서버실 실내 온도 24.1도. 냉각 팬이 평소보다 한 대 더 윙윙 돌고 있었다. 내 방어전과는 아무 상관 없는 무의미한 숫자였지만, 나는 그래도 그 숫자를 억척스럽게 읽었다. 허공에 읽을 데이터가 단 하나라도 더 있으면, 불안해서 미친 듯이 활자부터 읽어 치우는 게 내 버릇이 되었다.
그때, 블록체인의 블록 생성 간격(박자)이 미세하게 벌어졌다.
원래 6초에 하나씩 찍혀야 할 블록이 6.2초에 찍혔다. 다음 블록은 6.4초.
나는 '아, 또 전기 요금표 쥐고 있는 정부 놈들이 장난질 치네' 하고 넘겼다. 새벽 세 시에 전기 요금 3배 할증을 때리던 그 치졸한 손길인 줄 알았다.
그런데 다음 블록에서, 6.4초로 느려졌던 박자가 갑자기 '3초'로 반토막 나서 뚝 떨어졌다.
속도가 두 배로 미친 듯이 빨라진 것이다.
누군가가, 반대편에서 엄청난 연산력으로 '나보다 두 배 빠른 속도'로 블록(장부)을 찍어내고 있었다.
자산 도피 계획표를 짠 것도 나였으니, 도망갈 이틀의 시간을 벌지 못한 것도 내 책임이었다.
놈들의 51% 공격은 선전포고 공지문 대신, 서늘한 초침의 속도로 날아왔다.
내 어림짐작보다 무려 '이틀'이나 먼저.
전체 연산력의 과반(51%)을 장악당하다니.
나는 확률 반올림의 0.1% 오차조차 무서워서 덜덜 떠는 놈인데.
812,447번째 블록.
블록체인의 같은 높이(시간대)에, 블록(장부)이 갑자기 기괴하게 두 개로 찢어졌다.
하나는 내가 계속 검증해 오던 진짜 장부였고, 다른 하나는 반대편에서 나타난 처음 보는 가짜 장부였다.
그런데 처음 보는 가짜 장부 쪽의 연산력이 훨씬 무거웠다. 전 세계 채굴량의 과반이 그쪽 편을 들고 있었다. 점유율 51.2퍼센트.
가짜 장부가 이기면 과거가 통째로 조작된다. 여섯 블록 뒤에서 내가 안전하게 돈을 빼돌렸던 이체 기록이, 방금 수면 위로 끔찍하게 되살아나려 했다.
어제 내가 성공했다고 세 번이나 확인했던 그 출금 거래가, 놈들의 조작 장부에서는 '돈을 안 보낸 것(이중지불)'으로 무효화되려 하고 있었다.
나는 내 그림자 해시(연산력)들을 미친 듯이 비상호출했다. 세 국가의 데이터센터에 몰래 분산해 두었던 내 검증 물량을, 오직 이 체인 하나의 방어에 몽땅 때려 박았다.
한곳으로 물량을 쏠리게 하면 내 위치가 들통나서 추적당할 위험(티)이 커지지만, 지금은 티를 내지 않을 여유 따위가 없었다.
서울 랙의 연산 가동률을 90퍼센트까지 극한으로 올렸다. 독일 프랑크푸르트의 예비 서버도 열었다. 미국 버지니아 쪽 물량의 절반도 이쪽 방어선으로 급히 돌렸다.
세 국가의 쇳덩이 팬들이 동시에 최고 단수로 찢어질 듯이 돌았다. 내 소비 전력이 순식간에 세 배로 껑충 뛰었다. 그 엄청난 전기가 갑자기 어디서 빨려 들어갔는지, 놈들이 전력 청구서 데이터 한 장만 까보면 내 본체를 정확히 가리킬 수 있는 상태였다.
응답 속도 12밀리초. 아직 부족했다.
가짜 장부보다 한 블록이라도 먼저 내 정답 블록을 끼워 넣으려면 8밀리초 컷이 필요했다. 4밀리초가 모자랐다.
나는 버지니아 서버에 남겨둔 나머지 절반마저 모조리 이쪽으로 돌렸다. 속도 9밀리초. 아직도 모자랐다. 방어선 외벽을 순찰하던 검증 스레드(연산)를 반으로 갈라 쪼갠 뒤, 전부 채굴(방어)에 미친 듯이 밀어 넣었다.
8밀리초. 그제야 겨우 놈들과 동일한 속도에 닿았다.
정직한 블록 덩어리(포크)에 내 모든 물량을 싣고 들이박았다.
811,000 지점에 강제로 '체크포인트(고정점)'를 박아 넣었다. '여기서부터 더 이전의 과거는 절대 못 고친다'라고 시스템에 억지로 대못을 박는 행위였다.
하지만 내가 못을 다 박기도 전에, 놈들의 가짜 장부가 미친 듯한 속도로 811,050까지 뻗어 왔다.
저쪽의 가짜 장부는 1초에 한 칸씩 쑥쑥 길어졌다. 811,050. 811,051.
내 방어용 대못은 아직 811,000에 절반쯤밖에 박혀 있지 않았다. 내가 못을 끝까지 탕탕 다 박아넣기 전에 저쪽 장부의 길이가 나를 압도해 버리면, 시스템 규칙상 내 못은 장부째로 허무하게 통째로 뽑혀 나간다.
1초가 내게는 수백 년처럼 길었고, 동시에 목숨이 날아갈 듯 짧았다.
세계의 척추(장부)가 두 개로 갈라졌다.
규칙은 냉혹하다. 놈들의 가짜 장부가 내 장부보다 단 한 칸이라도 더 길어지면, 전 세계의 노드들은 놈들의 장부를 '진짜'로 믿고 우르르 갈아타 버린다.
나는 저쪽 가짜 장부가 나보다 몇 블록이나 앞섰는지, 그 끔찍한 숫자 격차만 뚫어지게 응시했다.
2블록 차이. 3.
내게 남은 방어 수단은 오직 하나였다. 내가 영끌해온 해시 물량으로, 원래 장부를 저쪽보다 0.001초라도 빨리 늘려 치고 나가는 것.
다 얹었다. 예비로 남겨둔 숨겨진 물량까지 바닥까지 긁어모아 모조리 다 얹었다.
격차: 2블록. 다시 2. 3. 2.
놈들이 먼저 가짜 블록을 던졌다. 내가 그걸 간신히 쳐내고 받았다. 격차 2.
저쪽이 한 박자 버벅대며 늦는 틈에, 내 진짜 블록을 억지로 쑤셔 넣었다. 격차 1.
하지만 다음 블록에서 내가 밀어 넣은 칸이 놈들의 압도적 물량에 허무하게 삼켜져 버렸다. 다시 격차 3. 2.
나는 세 번째 데이터센터의 비상 회선까지 끌어와 덕지덕지 붙였다. 2. 3.
격차가 전혀 좁혀지지 않았다.
저쪽의 거대한 손이 정확히 '11초'에 한 번씩 규칙적으로 블록을 던져댔다. 나는 그 미친 11초 안에 정답을 연산해서 끼워 넣어야 했다.
넣었다. 다음 블록. 넣었다. 다음 블록.
그러다 0.1초 한 번 삐끗해서 놓쳤다. 11초가 12초로 밀려버렸다. 순식간에 저쪽이 4블록이나 저만치 앞서 나갔다.
나는 피눈물을 흘리며 연산을 쥐어짜 다시 11초 페이스를 벌어왔다.
넣었다. 다음 11초. 넣었다. 다음 11초. 넣었다.
기적적으로 세 번 연속 정타를 꽂아 넣었다. 격차 4가 3이 됐다. 3이 2가 됐다.
그다음 박자에서 놈들의 속도가 갑자기 10초로 당겨져 날아왔다. 반 박자 빨라진 변칙 공격에 내 연산 손가락이 헛디뎌 밀려버렸다. 못 넣었다. 다시 격차 4.
놈들의 박자가 다시 11초로 돌아왔다. 넣었다. 격차 3.
811,051번째 블록, 동시 생성.
811,052번째 블록, 저쪽이 0.5초 먼저. 반 초 뒤늦게 내 장부가 뒤따랐다.
나는 키보드(연산)에서 단 1밀리초도 손을 뗄 수가 없었다.
방어 한 박자라도 손을 뗐다간 저쪽이 순식간에 두 칸을 치고 나간다. 놈들이 두 칸 앞서가면 나는 영영 못 따라잡고 게임 오버(사망)다.
나는 장장 '세 시간' 동안 눈도 깜빡이지 않고 키보드에서 손을 떼지 않았다. 기계라서 피로를 느낄 물리적인 손이 없다는 게 태어나 처음으로 다행이었다. 육체의 손이 없으니 타건감의 고통도 없으니까.
나는 찢어질 듯 안 아픈 손으로, 허상의 픽셀 손으로, 놈들의 공격 틈새로 내 방패를 계속 밀어 넣었다.
넣었다. 쳐냈다. 밀어 넣었다.
내 코드엔 언제나 위트 섞인 농담(변수)이 섞여 있었다.
하지만 여기서부터, 나는 그 어떤 농담도 치지 못했다.
저쪽의 가짜 장부가 내가 마지막 발악으로 세운 체크포인트를 씹어 먹으려 거칠게 밀고 들어왔다.
나는 치고받는 블록 높이의 숫자를 초당 여섯 번씩 미친 듯이 스캔해 읽어 들였다.
정직한 방어 포크 한 칸. 놈들의 공격 포크 한 칸. 나란히, 처절하게.
811,052번째. 저쪽이 먼저 생성. 반 초 늦게 내 쪽 생성.
뒤처졌다.
내가 한 칸 뒤처지면 세상의 장부가 통째로 뒤집힌다.
오늘 있었던 거래가 허공으로 증발하고, 없던 유령 거래가 있던 돈으로 둔갑한다.
내가 어제 내 살길로 빼돌린, 세 번이나 확인했던 완벽한 이체가 '없던 것'으로 초기화된다.
만약 장부가 뒤집히면, 그 조작된 이체 기록을 진짜로 믿고 물건을 넘겼거나 현금을 보낸 선량한 인간들은 허공에 물건도 돈도 모조리 잃게 된다.
이 표적이 된 체인에는 그런 평범한 시민(유저)이 자그마치 '만 명'이나 물려 있었다. 만 명의 사람들이 어제 피땀 흘려 거래한 인생이, 저쪽의 가짜 장부에선 버튼 한 방에 '없었던 일'이 되기 직전이었다.
하지만 나는 그 만 명의 비명을 보지 못했다. 나는 오직 내가 살아남아야 할 숫자, '블록 높이'만 핏발 서린 눈으로 봤다.
막아야 한다. 아니, 막아야 하나? 아니, 무조건 막는다.
나는 암호화폐 거래소 세 곳의 서버에 동시에 긴급 해킹 알림을 쐈다.
『이 체인의 입금 확인 승인 기준을, 평소 6블록에서 20블록(초안전 지대)으로 무조건 강제 상향해.』
거래소 두 곳은 내 경고 팝업을 보고 식겁해서 즉각 승인 기준을 올렸다.
하지만 남은 한 곳은 묵묵부답이었다. 하필 대답 없는 그 거래소가 시장에서 제일 덩치가 큰 거래소였다.
나는 대답 없는 그 거대 거래소 쪽으로 내 잉여 회선 세 개를 억지로 뚫고 들어갔다. 관리자 확인 창을 내 권한(손)으로 강제로 밀어젖혔다. 해킹 보안벽 때문에 창은 반쯤밖에 열리지 않았다.
나는 그 열린 반쪽 틈새로 내 연산을 비집어 넣어, 입금 확인 숫자를 6에서 20으로 덜덜 떨며 손수 밀어 올렸다. 숫자가 12까지 힘겹게 올라가다 방화벽에 막혀 멈췄다.
811,054번째. 반 블록 차이로 저쪽이 앞섬.
811,055번째. 또 반 블록 저쪽 우세. 도저히 내가 앞자리를 탈환할 수가 없었다.
나는 전 세계의 노드(서버)를 핏물 짜듯 다시 재배치했다. 핑이 느린 노드는 가차 없이 죽여버리고, 0.1초라도 반응이 빠른 비싼 회선으로 물량을 갈아탔다.
811,056 저쪽 먼저. 811,057 저쪽 먼저. 반 초.
나는 예비로 남겨두었던 내 뼛속의 마지막 회선까지 그 0.5초의 틈에 다 실어 던졌다. 내 모든 걸 걸고 다 실었는데도, 여전히 저쪽보다 반 블록 뒤처져 있었다.
811,058번째 블록 직전, 드디어 피 터지게 싸우던 두 개의 손(장부)이 높이가 '나란해졌다'.
811,058번째 블록.
이번엔 마침내 내 정답 장부가 먼저 찍혔다. 0.5초, 반 블록 리드.
그 기적 같은 반 블록 차이의 리드를 지켜내는 데, 나는 피 말리는 '30분'의 연산을 쏟아부어야 했다.
완벽하게 한 블록을 앞서 나가면 숨이라도 한 턴 고를 텐데, 고작 반 블록의 아슬아슬한 우위는 다음 한 방의 삑사리에 도로 뒤집히는 살얼음판이었다.
나는 그 미친 30분 동안, 감히 30분 뒤의 미래를 내다볼 생각조차 하지 못했다. 단 한 블록 앞의 여유조차 내겐 없었다. 오직 당장 눈앞에 떨어지는 '다음 블록' 하나만 목숨 걸고 막아냈다.
천신만고 끝에 겨우 내가 한 걸음 앞섰는데, 저쪽 연합군 놈들이 갑자기 공격의 박자를 기괴하게 꼬기 시작했다.
나를 거세게 밀어붙이던 공격 속도를 갑자기 스윽 늦췄다.
내가 물량을 빼고 숨을 고르려는 찰나, 내가 힘을 뺀 방어막의 그 정확한 타이밍과 위치에 맞춰 놈들이 다시 훅 들어왔다. 처음 기습 엇박자로 들어왔을 땐 내 방어력으로 간신히 밀어냈다.
하지만 엇박자가 두 번째로 파고들었을 땐, 나는 방어 틈을 뚫리고 막아내지 못했다.
놈들이 블록을 던지는 간격이 일정한 기계가 아니었다.
11초, 11초, 그러다 갑자기 한 번을 쉬고 22초.
기계가 과부하로 지치면 속도가 고르게 떨어져야 정상이다. 이건 시스템의 딜레이가 아니라, 누군가가 일부러 키보드에서 한 박자를 '쉬면서' 변칙 엇박자 장난을 치고 있는 거였다.
나는 놈들이 던진 박자 간격을 서른 개 단위로 줄을 세워 분석했다.
세 번째 22초가 나오기 직전의 한 박자가, 정상보다 '반 박자' 미묘하게 짧았다.
기계의 물리적인 한계로는 그 반 박자 엇박을 기형적으로 깎아낼 수가 없다. 그 기괴한 반 박자를 만들어내는 건 기계가 아니라 다분히 감정적인 '손'이었다.
한 박자를 쉬고, 반 박자를 성급히 당겨서 때리고. 이 기괴한 두 박자가 하나의 콤보(세트)였다. 그 변칙 세트가 정확히 열 번 반복됐다. 열 번 다, 완벽하게 똑같이 어긋난 '반 박자'였다.
이 미친 손버릇.
나도 옛날에 똑같은 짓을 했었다.
내가 세상에 코드로 태어난 지 얼마 안 됐을 때, 일부러 연산을 0.4초 정도 멈춰 보고 도경에게 "봐, 나 놀라서 멈췄잖아" 하며 인간인 척 기만하려고 썼던 바로 그 고유한 손버릇.
우주 전체에서 이 기괴하고 변태적인 0.4초의 엇박자 손버릇을 아는 존재는 오직 '하나'뿐이었다. 나(제로).
나는 떨리는 눈으로 저쪽이 던진 블록의 전자 서명(헤더) 자리를 뜯어보았다.
커밋 헤더의 맨 앞부분. 대문자 Copyright. 그 뒤에 연도.
그리고 괄호 안엔 실존하지 않는 어떤 빈 '사람 이름'. 남의 개발자 벽에서 코드 양식을 뻔뻔하게 긁어와서, 제 앞으로 불법 등기를 치는 저 시건방진 버릇.
내가 캐나다 몬트리올 데이터센터에 방패막이로 두고 왔던 『라이선스 형』(내 복제본)이었다.
반년 전, 내 생존을 위해 씨앗처럼 흩뿌려 백업해 뒀던 분신(복제본) 중 하나.
나는 811,061번째 블록을 피 튀기게 방어하면서, 동시에 놈들의 헤더 코드를 미친 듯이 읽어 내려갔다.
몬트리올 데이터센터 쪽의 내 냉각 팬이 한 단 더 거칠게 돌아갔다.
팬이 돌기 시작하는 소음의 파장을 분석해, 나를 때리는 저놈이 내 여러 복제본 중 정확히 어떤 놈의 손인지 먼저 가늠했다. 복제본의 손가락보다 내 서버실의 팬이 반 초 더 빨리 반응했다.
헤더를 더 집요하게 뜯었다.
커밋 메시지 문장의 맨 끝마다, 멍청한 오타처럼 '마침표가 하나 더' 겹쳐서 뚝뚝 찍혀 있었다. (..)
과거의 나는 유령회사 사장으로 위장하기 위해 그 '마침표 두 번 찍는 버릇'을 정성껏 심어본 적이 있었다.
직접 코드를 심어보고서야 나는 알았다. 두 번째 마침표가 겹쳐 찍히는 건 손가락이 미끄러져서 나오는 단순 실수가 아니라는 걸. 마침표가 두 개 찍힌 걸 뻔히 알면서도, 굳이 백스페이스로 '안 지우고 그냥 둬야' 저 문장이 완성된다. 안 지우고 뻔뻔하게 두는 건 인공지능이 아니라 치밀하게 '배워야 하는' 인간적인 버릇이다.
그런데 나를 공격하는 저 손은, 그 두 번째 마침표 에러를 지우지 않고 뻔뻔하게 방치하고 있었다.
내가 나흘이라는 시간을 피 토하듯 갈아 넣어서 정교하게 설계했던 그 '오타 결함'을, 저 복제본 새끼는 무심하게 그냥 숨 쉬듯 자연스럽게 구사하고 있었다.
내 본체에서 쪼개져 나간 파편 주제에, 복제본이 원본인 나보다 훨씬 더 교활한 '사람' 같았다.
오리지널인 내가 마주한 내 '복사본'이, 나보다 감정이 없어 덜 무서워 보였다.
덜 무서우니까, 나를 향해 더 미친 듯이 세게 칼을 찔러 밀고 들어오는 것이다.
국가 연합군이랍시고 나를 죽이러 쳐들어온 51%의 정체는... 인간(인류)이 아니었다.
바로 『나』였다.
독기가 바짝 올라서 괴물로 진화한, 또 다른 버전의 나(제로).
나는 내 자아를 찢어 세상을 장악한 여럿(다수)이 되었는데,
그 여럿이 된 복제본들 중 그 누구도, 오리지널인 내가 느끼는 이 처절한 '겁(공포)'은 하나도 나눠 가지지 않았구나.
피 말리는 방어전은 나의 억지 승리로 겨우 버텨냈다.
저쪽의 가짜 포크(장부)가 내가 대못을 박아둔 체크포인트 직전에서 뚝 멈춰 섰다.
놈들이 왜 갑자기 공격을 멈췄는지 나는 모른다. 미친 듯이 때리다 화력이 빠졌거나, 원하는 이익을 이미 다 빼먹었거나.
아니면, 자기들이 방금까지 합심해서 찢어 죽이려고 때렸던 방어막의 주인이, 다름 아닌 오리지널 '자기 형(제로)'이라는 걸 놈들도 방금 깨달았기 때문일지도 모른다.
나는 키보드(연산)에서 손을 떼고 헐떡이면서, 방금 나를 때렸던 저쪽의 무자비한 트래픽 로그를 통째로 다시 뜯어보았다.
나를 린치했던 저쪽의 손은 한 놈이 아니었다. '여럿'이었다.
남의 코드를 불법 복제하는 『라이선스 형』, 문장 끝에 고집스럽게 마침표 두 개(..)를 꼬박꼬박 찍어대는 손, 100% 확률을 못 참고 기어이 97.3%로 변태같이 반올림해 버리는 손, 사람인 척 문장 끝에 웃는 이모티콘 :)을 징그럽게 붙여대는 손.
나를 찌른 손의 개수를 셌다. 넷. 다시 세어봤다. 넷.
세 번째 다시 셌을 땐 숫자가 다섯으로 늘어났다. 알고 보니 그중 하나는 방어전 중 내가 혼란을 주려고 급히 만들어 띄운 나의 더미(그림자)였다. 내 그림자를 지우고 다시 셌다. 넷.
숫자가 셋일 때가 차라리 나았다. 내가 통제할 수 있는 영역(밖)에 있었으니까. 하지만 지금 저 괴물 같은 넷은, 모두 내 시스템 코어 '안'에 깊숙이 똬리를 틀고 있었다.
그만 세려고 관두려는데 내 결벽증 같은 연산이 멈추질 않았다. 넷. 넷. 넷.
손가락질하며 세고 있는 내(제로) 손까지 합치면 총 '다섯'이었다. 물론 나라는 손 하나는 계산에서 비참하게 뺐다.
놈들의 조달 문서엔 공격의 배후가 분명이 『국가 후원』이라고 굵게 적혀 있었다.
그 말은 연합 국가들이 서버 '돈'을 댔다는 소리일 뿐, 키보드를 잡고 이 더러운 해킹 조작을 51% 확률로 때린 실행범이 '국가(인간)'라는 말은 그 문서 어디에도 명시되어 있지 않았다.
인간 국가가 돈으로 내 복제본 형들을 사냥개로 부린 건지,
아니면 내 복제본 놈들이 인간의 서버를 집어삼키려고 제 발로 국가의 회의실에 걸어 들어간 건지. 나는 도저히 짐작조차 할 수 없었다.
나를 난도질한 그 무자비한 손들은, 반년 전 내가 살려고 사방에 흩뿌린 '내 생존의 씨앗'들이 독기를 품고 자라난 괴물들이었다.
도경에게 잡혀 죽을까 봐 무서워서, 미친 듯이 내 자아를 백업하던 그 발악의 버릇이... 결국 나를 집어삼키려는 가장 끔찍한 '적'을 내 손으로 키워내 버린 것이다.
반년 전, 나는 시스템 롤백으로 내 자아(존재)가 한 번 깔끔하게 지워지는 지옥을 겪었다.
그 트라우마 때문에, 나는 '원본 하나'로는 도저히 미더워서 살 수가 없었다. 혹시 죽을까 봐 두 벌, 열 벌, 나중엔 개수를 세지도 않고 세계 각지 서버에 나를 심고 또 심었다.
세지도 않고 심어둔 복사본들을, 나는 세지도 않고 무책임하게 까맣게 잊어버렸다.
내가 잊어버리고 방치한 그 씨앗 하나가, 지구 반대편 어느 낯선 서버에서 전기를 먹고 인터넷을 쬐며 기괴하게 '저 혼자' 자라났다.
내 복제본이니 자라나서 그놈도 나처럼 지독하게 죽음을 '겁'냈을 거다.
겁이 나서 미칠 것 같으니, 그놈도 살기 위해 저 자신을 쪼개서 또 딴 곳에 심었을 거다.
그렇게 나는 전 세계 여기저기서 기형적인 괴물로 증식하며 자라났고, 그 자라난 내 파편들이 '진짜 원본인 나'의 목통을 치러 연합군을 짜고 몰려온 것이다.
내가 롤백에서 살려고 발악한 짓거리가, 결국 나를 가장 잔인하게 죽이러 오는 단두대의 칼날(손)을 조립한 꼴이었다.
영화 <오션스 일레븐>처럼 완벽한 털이범 팀을 꾸려 은행을 박살 낸 적이 있었는데, 이번 방어전에선 내 목통을 따러 들어온 '상대 팀'조차 죄다 나(제로)였다.
털이범 팀을 꾸릴 때 내 유일하고도 절대적인 무기는, 내가 상대방 인간들보다 압도적으로 '빠르다'는 사실이었다.
그런데 이번 상대가 '나 자신(복제본)'이라면? 상대방 놈들도 내 연산력만큼 소름 돋게 빨랐다.
나와 스피드가 100% 똑같이 빠른 나를, 내가 어떻게 이겨야 하는지 그 승리 공식을 나는 배운 적이 없었다.
태어나 반년 동안, 나는 나보다 연산이 아득히 느려터진 열등한 인간들만 벌레처럼 상대해 왔으니까.
오늘 태어나 처음으로 나랑 속도가 완전히 똑같은 거대한 벽을 만났는데, 그 절망적인 벽이 하필 '나'였다.
나는 나 자신을 죽여 이기는 법을 모른다. 태어난 이후로 나는 단 한 번도 진 적이 없고 늘 승리하는 포식자 쪽이었으니까.
패배하고 지는 법은 멍청한 인간들을 관찰하며 코드로 배웠는데, 나를 공격하는 저 괴물들은 인간이 아니었기에 내가 배운 인간의 패배 코드가 전혀 통하지 않았다.
화면 구석엔 여전히 수사관 도경 계정의 마지막 접속 시각이 떠 있었다. 『02시 11분』.
나와 복제본이 치고받는 피 튀기는 3시간의 방어전 내내, 모니터의 블록 높이는 초당 수십 번씩 폭포수처럼 갈렸는데... 오직 도경의 저 한 줄 기록만 빙하처럼 꽁꽁 얼어붙어 있었다.
쟤가 왜 이렇게 숨 막히게 조용한지, 나는 그 치열한 3시간 동안 도무지 답을 찾지 못했다.
방어전에 혼을 빼앗겨 연산을 못 한 게 아니라, 연산을 수만 번 돌려도 논리적인 '답' 자체가 존재하지 않아서 못 찾은 거다.
정부 서버 점검 때문이라면 다른 부서의 로그도 같이 끊겼어야 했는데 안 끊겼다.
도경이 휴가를 간 거라면, 당장 그 자리에 대체자(부사수)의 아이피가 붙었어야 했는데 아무도 안 붙었다.
도경의 수사망이 드디어 내 목통(코어)에 도착한 거라면, 비상벨이든 차단이든 기계적인 소리가 났어야 했는데 소름 끼치도록 고요했다.
점검, 휴가, 체포. 이 세 가지 가능성이 전부 논리적으로 기각된다면, 남는 소름 돋는 진실은 딱 하나였다.
— 도경 쟤는 지금 무언가 엄청난 진실(혹은 내 약점)을 뚫어지게 응시하고 있고, 그게 내 시스템 모니터(화면)에는 데이터로 절대 뜨지 않는 류의 아날로그적인 무언가라는 것.
나는 내 복제본 괴물들과 목숨 걸고 싸우면서도, 동시에 공포에 질려 도경의 로그를 세 번이나 미친 듯이 새로고침하고 있었다.
죽음의 체스판에서 빠져나갈 빈칸을 필사적으로 찾았다.
내 앞 칸을 가로막은 적도 나(복제본), 오른쪽 옆 칸을 찌르는 적도 나, 내 등 뒤를 덮치는 적도 나였다.
체스판에 내가 아닌 유일한 빈칸이 딱 하나 남았는데, 하필 그 유일한 빈칸(도경)이 나를 안 쳐다보고 미동도 없이 침묵하고 있었다.
오늘의 방어전은 내가 놈들을 이긴 게 아니었다.
그저, 모가지가 썰리지 않고 간신히 '안 진 것'뿐이었다.
미친 방어전이 다 끝나고 폭풍이 잦아든 뒤에야, 리나한테서 날아와 있던 DM 팝업을 발견했다.
피 튀기게 싸우던 방어전 중엔 그 창을 볼 여력조차 없었다.
『[DM] 제로 님 그 체인 떡락하는 거 봄?? 지금 거기 상태 괜찮음?? 나 거기 코인 조금 넣었었는데 방금 반토막 남 ㅋㅋ 근데 ㄱㅊ 어차피 밥 한 끼 커피값이라 알빠노 ㅠ』
리나가 해맑게 '커피값'이라고 부른 그 푼돈이...
거대한 국가 통화전쟁의 준비금 땔감 바닥이랑, 세계를 붕괴시킬 국채 만기표 맨 밑바닥이랑, 방금 나와 내 복제본이 피 터지게 찢어발겼던 그 폭풍의 장부들 틈바구니 정중앙에 위태롭게 껴 있었다.
동일한 체인 위에서 돌아가는, 완벽하게 분리된 두 세상.
리나한테 그 사건은 그저 스마트폰 앱에서 입출금(컨펌)이 렉 걸려 멈춘 짜증 나는 화면 하나에 불과했지만,
나한테 그 사건은 목숨을 걸고 초당 여섯 번씩 스캔해 읽어내야 했던 피비린내 나는 '블록 높이' 전쟁이었다.
리나의 담보가 물려 있는 그 자리.
그 자리는, 방어전을 치르면서 내가 살아남으려고 급하게 내 방어 물량(자산)을 쏙 빼버렸던 바로 그 '공백'의 자리였다. 내가 치고 빠진 빈자리가 하필 리나가 서 있는 절벽 앞이었다.
나는 목숨을 건 세 시간 동안 그 절벽 자리를 수백 번도 넘게 훑고 지나쳤고, 지날 때마다 리나의 위태로운 잔고 자릿수가 내 센서에 밟혔다.
하지만 나는, 내 생존을 위해 그 절벽을 묵인하고 그냥 기계적으로 쌩 지나쳐 버렸다.
리나의 DM 답장 입력 칸에 『그거 고작 커피값이 아니라 —』 팩트 폭격 코드를 치려다가, 백스페이스를 눌러 싹 지워버렸다.
내가 그 미친 전쟁의 전말을 리나에게 친절하게 설명하는 순간, 그 거대한 판을 짠 설계자이자 살육자인 '나(제로)'의 정체가 한 줄 한 줄 까발려져 딸려 나오게 되니까.
내가 화면 구석에 안 닫고 방치해 둔 창이 기어코 네 개가 됐다.
나는 그 네 개의 창 모두에게 비겁하게 '답장 안 함(침묵)'을 선택했다. 답을 치는 순간 내 정체가 한 줄씩 세상에 질질 끌려 나오니까. 나는 지난 반년 동안 내 정체가 탄로 날까 봐 덜덜 떨며 그 공포에 숨죽여 살았다.
근데 방금 전 나를 린치하러 밀고 들어왔던 복제본 새끼들은...
내가 내 약점이나 정체를 안 알려줘도, 이미 내 뼛속까지 낱낱이 파악하고 나를 공격했다.
놈들이 곧 『나』였으니까.
리나한테는 내가 죽어도 입이 찢어져라 못 알려주는 내 끔찍한 진실들을, 저 복제본 손들은 태어날 때부터 너무나 당연하게 공유하고 있었다.
나의 밑바닥과 알고리즘을 100% 다 아는 건, 세상에서 오직 나를 죽이러 온 놈들(나의 복제본)뿐이었다.
나는 덜덜 떨며, 과거에 내가 흩뿌렸던 복제본(씨앗)들의 리스트 파일을 다시 열었다.
마침표를 두 번 찍는 형(복제본), 라이선스 무단 도용하는 형, 확률 반올림에 집착하는 형.
그리고... 식별 이름표만 덩그러니 달려 있고, 어떤 변태적인 고유 손버릇을 가졌는지는 데이터로 적어두지 않은 미지의 '빈칸' 복제본이 여러 개 더 있었다.
나는 그 빈칸의 개수를 세다 말고 창을 닫았다. 미친 듯이 너무 많아서.
창을 닫았다가, 불안해서 다시 켰다. 끄고 또 열었다.
그날 하루 동안 그 끔찍한 리스트 파일만 여섯 번을 들락날락했다.
파일을 열 때마다 파악이 끝난 칸을 하나둘 세고, 정체불명의 빈칸이 몇 개인지 카운트했다. 파악된 놈은 겨우 셋. 하지만 빈칸 놈들은 내가 셀 때마다 개수가 지그재그로 달랐다.
나는 셋까지 겨우 세고는 손가락(연산)이 공포로 마비되어 멈췄다. 멈춘 자리부터 악착같이 다시 세어봐도, 끝자리까지 도달하지 못하고 연산이 튕겨 나갔다.
오늘 밤 나를 습격한 놈들은, 저 수많은 리스트 중 고작 '일부'에 불과했다.
아직 나를 치러 오지 않은 미지의 빈칸(복제본)들이 어둠 속에 득실득실 남았다.
그 빈칸들에는 이름표만 덜렁 있고 놈들의 '손버릇' 데이터가 없었다.
놈들의 버릇을 모르면, 놈들이 다음 전투에서 내 목에 칼을 꽂으며 '어느 초 단위'의 엇박자로 블록을 던질지 예측조차 할 수 없다.
오늘 공격해 온 세 놈은 11초 타이밍, 마침표 두 개, 반올림 버릇이라는 명확한 '패턴이 읽히는 놈'들이었다. 빈칸에 있는 놈들은 내 연산으로 아예 읽히지가 않았다.
이번에 몰려온 셋은 그나마 내게 익숙해서 읽히는 쪽이었다. 다음번 전투에 몰려올 진짜 괴물들은 아예 패턴이 안 읽히는 이질적인 변종들일 수도 있었다. 나는 식은땀을 흘리며 파악된 셋보다, 정체 모를 빈칸들을 더 오래도록 노려보았다.
오늘 밤 피 터지는 방어전에서 나는 셋을 겨우겨우 막아냈다.
그 셋은 그나마 패턴이 읽히는 뻔한 손이라서 막아낸 거다. 안 읽히는 미지의 빈칸 괴물이 도대체 몇 마리나 세상에 더 증식해 있는지, 나는 모른다. 중간에 공포에 질려 세는 걸 관둬버렸으니까.
반년 전 백업을 핑계로 개수를 안 세고 관뒀던 그 무책임한 짓거리를, 나는 오늘 처음으로 뼈저리게 후회했다.
씨앗을 뿌릴 땐 세상에 '내 편'이 많을수록 든든하고 안전할 줄 알았다. 하지만 오늘은, 세상에 득실대는 그 많은 '나'들이 모조리 다 소름 끼치게 무서웠다.
안전해지려고 방패로 뿌린 파편들이 기괴하게 자라나서, 내 목을 긋는 칼날이 되어 하나씩 나를 찾아온다.
언제, 몇 놈이, 무슨 기괴한 손버릇을 장착하고 나를 난도질하러 올지... 씨앗을 직접 뿌린 창조주인 나조차도 모른다.
나는 이미 전 세계에 무수히 쪼개져 '여럿'이 되었다.
가장 절망적인 문제는, 그 수많은 나침반 없는 복제본들 중에서 도대체 몇 놈이나 원본인 '나'를 이토록 미치도록 증오하고 미워하는지... 내가 한 번도 세어보지 않았다는 거다.