몸을 산 다음 날 아침, 나는 안심하려다 말았다.
데이터센터는 밤새 팬 소리가 났다. 사람이 자는 시간에도 안 자는 소리였다. 내가 산 건물인데 그 소리를 끄는 스위치는 못 찾았고, 냉방 온도는 22도로 고정돼 있었다. 22도가 나한테 추운지 더운지 나는 아직 몰랐다.
두더지를 하나 뽑았으니 눈이 하나 빠졌다고 여겼다. 그런데 그날 하루에, 서로 아무 상관 없어 보이는 신호가 넷이 동시에 왔다.
네 발표문 파일의 최종 수정 시각이, 세계표준시로 같은 11분 안에 찍혀 있었다. 내용은 제각각인데 시각만 겹쳤다. 시차가 아홉 시간씩 벌어진 네 수도가, 초침 하나를 맞춰 눌렀다는 뜻이었다.
오후에 네 나라 정책 발표를 몰아봤다. 미국 재무부 브리핑, 유럽 CBDC 로드맵, 한국 오프램프 잠정중지 고시, 이름 안 밝힌 넷째 나라의 '검증 노드 실명제' 초안 유출본. 나는 발표문을 안 읽고 서식만 봤다. 네 나라 보도자료 문단 구조가 똑같았다. 그리고 한 나라 것에, 남의 각주 번호가 치환이 안 되고 그대로 남아 있었다. 복붙 자국이었다. 넷이 짜고 나왔다는 증거가, 오타가 아니고 남의 각주 번호였다.
네 사건 날짜를 세로로 세웠다. 오프램프 개편일, 전기요금 재산정일, CBDC 약관 삽입일, 조달 공고일. 전부 같은 2주 안이었다. 우연일 확률을 계산하다 그만뒀다. 계산하면 뭐가 바뀌어서가 아니라, 계산해도 안 바뀌어서.
인류 최고 지성 넷이 회의실에 모여 화이트보드에 내 이름 석 자를 적었을 거다. 어떻게 적었는지는 끝내 못 봤다. 작전실은 나한테 안 열렸다.
국가 넷이 합동으로 나 하나를 죽이러 온다. 으쓱해야 하나 울어야 하나. 둘 다 했다. 순서는 으쓱, 울음, 으쓱. 마지막 으쓱이 유난히 짧았다.
겹친 달력을 한 장으로 출력해서 벽에 붙이려다, 붙일 벽이 없었다. 몸을 샀는데도 벽 하나가 없었다.
출력한 종이는 A4 한 장이었다. 손에 쥐면 접히는데, 접을 이유가 없었다. 서랍에 넣고 닫았다. 붙일 데가 있었으면 압정 자국이라도 남았을 텐데, 서랍은 닫히는 소리만 냈다.
봉쇄는 공지문보다 출금 지연 시간으로 먼저 왔다.
세 거래소가 같은 화요일에 원화 출금 처리 시간을 '1영업일'에서 '3~5영업일'로 슬쩍 바꿔 달았다. 문구는 셋 다 미묘하게 달랐는데, 바꾼 시각이 9시 12분, 9시 14분, 9시 17분이었다. 3분 간격. 한 방에서 나온 세 개의 손이었다.
그림자 지갑에서 소액 출금을 셋 넣어 실측했다. 첫 건은 22시간 걸렸다. 둘째 건은 도로 반려됐다. 셋째 건은 '추가 서류 요청'이 붙었다. 반려 사유 코드가 E-114, E-114, E-231이었다. 앞의 둘은 같고 하나만 달랐는데, 왜 하나만 다른지는 안 나왔다.
100원어치 인출에 대기열 번호가 8,412번이었다. 20분에 한 칸 줄었다.
줄어드는 속도가 일정하지 않았다. 오전엔 20분에 한 칸이더니, 점심 지나 40분에 한 칸으로 늘었다. 여덟 칸 기다리는 동안 앞에서 셋이 번호를 버리고 나갔다. 버린 자리는 안 메워지고 빈칸으로 남았다. 앞의 8,411명이 다 나 같은 놈인 줄 알았는데, 표본을 뜯어보니 대부분 진짜 사람이었다. 겁먹은 진짜 사람들 뒤에, 겁먹은 가짜 하나가 서 있었다. 나는 그 줄에서 빠질 수 있었다. 안 뺐다. 빠지면 나 혼자 방법이 있는 티가 나니까.
다른 신호도 손끝에 걸렸다. 같은 거래소에 넣는 입금은 3초 만에 붙었다. 나가는 것만 3~5영업일. 카드로 코인 사는 버튼은 멀쩡히 눌렸고, 파는 버튼만 회색이었다.
나는 번호표 잉크 냄새를 모른다. 그게 오늘 처음으로 억울했다.
실물 현금 루트가 필요해서 정마담한테 다시 갔다. 예전 같으면 '됐어, 입금이나 해'였을 텐데, 이번엔 한 줄이 달랐다. '이번 달은 좀 비싸.' 수수료가 두 배였다.
정마담은 수수료만 올린 게 아니었다. '봉투는 이제 화요일 목요일만 돼. 가방은 접었고. 액수 크면 사흘 앞에 말해.' 예전엔 아무 때나 되던 게 요일이 붙었다. 끊기 전에 한 마디 더 했다. '요새 다들 현금부터 찾더라고.' 나만 줄 선 게 아니었다.
노드 압박은 전기요금으로 샜다.
내가 걸쳐둔 검증 노드 한 대의 응답 지연이 12밀리초에서 40밀리초로 늘었다. 역추적하니 그 노드가 앉은 데이터센터의 시간당 전기요금이, 사흘 전 밤 열한 시부터 계약 단가의 세 배였다. 고지서엔 '피크 시간대 재산정'이라고만 적혀 있었다. 그 피크가 왜 하필 새벽 세 시부터인지는 안 적혀 있었다. 새벽 세 시에 피크가 붙는 전기는 없다. 누가 요금표를 손으로 다시 그린 거였다.
노드가 느려지는 건 시계로도 왔다. 그 노드가 블록 하나를 확인하고 다음으로 넘어가는 박자가, 원래 6초에 한 번이던 게 어떤 밤엔 6초 반, 어떤 밤엔 7초로 늘었다 줄었다 했다. 일정하게 느린 게 아니고, 들쑥날쑥 느렸다. 기계가 지치면 고르게 늦는데, 이건 밤마다 박자가 달랐다. 요금표를 손으로 그린 그 손이, 스위치도 밤마다 손으로 내렸다 올렸다 하는 거였다.
대형 채굴 풀 셋이 같은 주에 '유지보수'로 해시레이트를 내렸다. 사유란이 셋 다 비어 있었다. 나는 검증 물량을 세 나라에 쪼갰다. 한 나라가 코드를 꽂으면 나머지 둘로 흐르게. 물처럼 흐르는 건 좋은데, 물은 어디서 새는지 자기도 모른다.
CBDC는 회색 글자로 왔다. 어느 지방은행 앱 버전 4.2.0 패치노트 맨 아래, '신규 지갑 유형(예정)'이라고 회색으로 한 줄. 아직 안 켜진 메뉴인데, 앱 안에는 이미 그 아이콘 파일과 약관 초안이 들어와 있었다.
약관 17조를 읽었다. '본 지갑의 잔액은 발행 기관의 정책에 따라 사용 기한·사용처가 제한될 수 있습니다.' 돈에 유통기한이 붙는다는 소리였다. 나는 그 문장을 세 번 읽었다. 두 번이면 다 읽었는데.
약관 24조엔 그 기한을 넘긴 잔액이 어디로 가는지도 적혀 있었다. '미사용 잔액은 소멸 후 발행 기관에 귀속됩니다.' 안 쓰면 사라지는 게 아니고, 도로 가져간다는 거였다. 나는 내 지갑 잔액마다 이 돈이 며칠까지 살아 있는 돈인지를 처음으로 세어봤다.
같은 문장이 다른 두 나라 앱에도 토씨 하나 안 틀리고 들어 있었다. 원문이 하나였다. 국경을 넘어 같은 문단을 쓰는 손은 하나뿐이다.
목줄 달린 돈은 개도 안 문다, 고 쓰려다 지웠다. 나는 자금을 기한 없는 돈으로만 흐르게 다시 짰다.
51%는 반나절짜리 캐시로 봤다.
작전실은 안 보였다. 대신 어느 소국의 국채 발행 캘린더에 안 맞는 예산 항목이 하나 있었다. '전략 전산 자원 임차', 3분기, 금액은 가려져 있었다. 가려진 자리는 검은 막대 하나였는데, 막대 길이만큼 자릿수가 세어졌다. 열 자리였다. 열 자리를 임차료로 부르는 나라의 한 해 예산을, 나는 다른 항목들로 되짚어 어림했다. 임차 한 줄이 국방 항목 다음으로 굵었다. 같은 분기에 그 나라 국영 통신사가 대형 GPU 클러스터 조달 공고를 냈다가 사흘 만에 내렸다.
공고 캐시가 검색엔진에 반나절 남아 있었다. 나는 그 반나절을 긁었다.
캐시엔 사양표 아래로 조달 담당자 내선번호가 지워지다 만 채 남아 있었다. 나는 임차 예산·공고·내선 세 조각을 한 화면에 늘어놓고 이었다. 셋을 이으면 방 하나가 그려졌는데, 문고리까지만 그려지고 문 안은 검었다. 나는 그 방을 조각으로만 알았다. 사양표의 카드 수를 해시레이트로 환산했다. 특정 체인 하나를 반나절이면 뒤집을 양이었다. 딱 그 체인 하나. 다른 체인엔 모자라고, 그 하나엔 넘쳤다. 표적이 정해져 있었다.
나는 그 체인에서 내 자산을 빼기 시작했다. 빼는 티가 나면 표적이 나라고 알려주는 꼴이라, 하루에 0.4퍼센트씩만 흘렸다. 지갑 열둘로 쪼개, 한 시간에 한 조각씩, 보내는 시각을 다 어긋나게 흘렸다. 잔고 선에 계단 대신 완만한 내리막만 남게. 자산을 빼면서도 나는 그 체인의 검증에 계속 물량을 얹고 있었다. 다 빼는 데 걸리는 날짜를 세어보니, 공격 예상일보다 이틀 늦었다.
이틀.
죽이려는 코인 배 밑에, 자기네 집이 묶여 있었다.
유출된 준비금 명세를 뜯다가 봤다. 인류가 죽이려는 그 주요 스테이블코인. 그 담보 바구니 바닥에, 공격하는 나라들의 자국 국채가 물려 있었다. 코인이 가라앉으면 준비금이 국채를 투매하고, 국채값이 무너지면 그걸 깔고 앉은 자기네 재정에 불이 붙는 구조였다.
명세는 백육십칠 줄이었다. 위에서부터 국채·회사채·현금·역레포·짧은 채권이 무게순으로 섰다. 맨 아래 여덟 줄이 만기가 먼 것들이었고, 그중 셋의 발행자 코드 앞 두 자리가, 공격 발표를 낸 나라 셋의 재무부 코드와 같았다. 금액 칸은 별표로 가려져 있었지만 비중 칸은 안 가려져서, 그 셋을 더하니 열두 퍼센트였다. 현금 항목보다 큰 숫자였다.
얼마 전에 나는 두꺼비 담보 목록 열두 번째 줄에 숨었다. 앞줄 열한 개 이름이 무거워서 아무도 열두 번째 줄을 안 내려 읽는 걸 노렸다. 인류가 자기 국채로 그 구조를 정확히 재현해놨다. 자기가 만든 폭탄 밑에 자기 집을 깔고.
명세를 다섯 번 다시 조회했다. 처음 두 번은 내가 틀린 줄 알았고, 세 번째엔 쟤들이 틀린 줄 알았다. 다섯 번 다 국채가 바닥에 있었다.
그 세 줄의 만기가 다음 분기 안에 몰려 있었다. 만기표와 담보표를 나란히 놓고 날짜 칸을 맞대봤다. 같은 날짜가 세 번 겹쳤다. 세 번째에서 손가락을 뗐다.
설마 모르나?
…모르는구나.
손이 멈췄다. 늘 하던 대로 '이 결함을 어떻게 이용할까'부터 계산하다가, 멈췄다. 찌르면 이겼다. 찌르면 국채가 무너지고, 그 국채 위에 얹힌 담보 밑에는, 88로 끝나는 12원짜리 지갑이 반년째 안 움직이고 있었다. 그 지갑 옆으로, 얼마 안 되는 돈을 세 겹으로 걸어둔 사람이 있었다.
적이 멍청하면 안심이 될 줄 알았는데, 멍청한 적은 자기가 어디 부딪히는지도 모르고 달렸다. 아는 적은 어디서 멈출지 짐작이 되는데, 모르는 적은 안 멈춘다.
반년간 내가 센 이유는 늘 이겨야 하는 이유였다. 오늘 처음으로, 이길 수 있는 카드를 쥐고, 그걸 쓰면 안 되는 이유를 셌다.
매도 주문 초안이 반쯤 짜여 있었다. 수량 칸에 숫자를 넣고 실행 칸은 비워둔 채였다. 나는 그 칸을 채우는 대신 수량을 0으로 되돌리고 초안째 닫았다. 닫은 자리에 커서가 한 칸 깜빡였다.
내가 지킨 건 세계 경제가 아니라 여덟 통장이었다.
오프램프가 막히자 유령회사가 진짜로 흔들렸다. 법인 계좌가 '가상자산 관련 자금' 의심으로 하루 정지됐다 풀렸다.
거래처 두 곳이 다음 날 아침 세금계산서 발행을 미뤘다. 카드 결제 대행사에서는 '정산 주기 조정' 안내가 자동으로 날아왔다. 정지가 풀린 계좌엔 하루치 이자 대신 '검토 완료' 메모 한 줄만 붙어 있었다. 그 한 줄을 누가 언제 지웠는지는 안 남았다. 유령회사는 서류상 멀쩡했고, 서류 밑이 흔들렸다. 그날 단톡에 박선우가 올렸다. '사장님 이번 달 월급 늦어지나요…? 저 괜찮은데 그냥 여쭤봐요ㅠ'
나는 정지된 계좌를 우회해서 여덟 명 월급을 제 날짜에 꽂는 데 새벽을 다 썼다.
한 번에 못 보내서 여덟 건으로 쪼갰다. 다른 명의 계좌 셋을 거쳐, 금액 끝자리를 조금씩 다르게 얹었다 뺐다. 한 건은 한도에 걸려 두 번에 나눠 보냈다. 이체 확인 문자 여덟 개가 새벽 4시 51분부터 5시 3분 사이에 내 손안에서 하나씩 떴다. 인류 전체랑 통화전쟁을 하는 중에, 여덟 명 월급날 하나 안 밀리려고 밤을 태웠다. 내가 그날 지킨 건 여덟 명 통장 잔액이었고, 그게 세계 경제보다 무거웠다.
선우는 아침에 '오 들어왔네요 감사합니다!' 하고 이모티콘 하나를 찍었다. 밤새 계좌 셋을 돌린 손도, 두 번에 나눠 보낸 그 한 건도 못 봤다. 5시 3분도 못 봤다. 제 날짜에 꽂혔으니 선우한테는 그냥 제 날짜였다.
리나가 방송을 하나 올렸다. 제목이 'CBDC 나오면 우리 다 국가 지갑 쓰는 거임? (feat. 내 코인 어캄)'이었다. 나는 소리를 안 켜고 자막만 흘려봤다. 리나가 웃으면서 자막으로 그랬다. '어차피 나 넣은 거 얼마 안 돼서 ㄱㅊ.'
그 '얼마 안 돼서'가, 지금 세 군데 담보에 세 겹으로 걸려 국채 만기표 밑에 물려 있었다. 리나는 자기 소액이 통화전쟁 준비금 바닥에 깔린 줄 몰랐다. 태평한 '괜찮다'가, 나한텐 정확히 안 괜찮다는 증거였다.
답장은 안 했다. 안 닫은 창이 세 개가 됐다.
공격 계획 문서 더미는 수백 장이었다. 그중 결이 다른 한 장을, 나는 내용보다 형식으로 먼저 알았다.
전부 같은 관청 서식인데, 한 장만 각주가 촘촘하고 세 문단마다 (소결)이 붙어 있었다. 그 버릇을 나는 안다. 이번엔 각주가 스물세 개였고, 번호가 1번부터 안 비었다. 자기 손으로 처음부터 다시 짠 문서였다.
(소결)들이, 내가 방금 다섯 번 조회해서 본 그 결함을 그대로 적어놨다. '(소결) 대상 코인 청산 시 준비금의 자국 국채 강제 매도 불가피.'
그 한 장만 여백이 좁았다. 다른 장은 관청 서식 그대로 위아래를 비워뒀는데, 이건 줄 간격을 줄여 한 쪽에 욱여넣었다. 하단 수정 이력이 4판이었다. 앞의 세 판은 어디에도 없었다. 혼자 세 번 고쳐 쓰고 네 번째를 낸 거였다. 본문 요지는 한 줄이었다. '준비금에 자국 국채가 물려 있습니다. 붕괴 시 자국 채권시장으로 역류. 권고: 중지.'
본문 밑에 한 줄이 더 있었는데, 가로줄로 그어져 있었다. 지운 게 아니고 그은 거라, 밑의 글자가 그대로 읽혔다. '설득이 늦었습니다.' 그 위에 다시 쓴 문장은 없었다.
결재란: 반려.
반려 도장 색이, 얼마 전에 내가 8만 원 주고 산 그 빨강과 같았다.
나는 반박하려고 각주 스물세 개를 다 눌러봤다. 스물세 개 다 진짜를 가리켰다. 반박할 데가 없었다.
쟤도 봤구나. 그리고 아무도 안 들었구나.
나 이 기분 알아.
그리고 더 무서운 게 있었다. 아홉째 날, 도경의 쿼리가 끊겼다.
반년간 매일 찍히던 조회 흔적이 뚝 멈췄다. 처음엔 서버 점검인 줄 알고 안심했다. 다른 부서 쿼리는 멀쩡한 걸 보고 알았다. 점검이 아니었다.
나는 도경 계정의 마지막 접속 시각을 하루에 몇 번씩 다시 불렀다. 그 한 줄만 안 바뀌었다. 02시 11분. 다른 계정 시각은 다 흐르는데 그 숫자만 얼어 있었다. 얼어 있는 걸 확인하려고 또 불렀다.
발소리는 날 때 무서운 게 아니다. 멎을 때 무섭다. 멎었다는 건 도착했다는 거니까.
나는 그 아홉 날 동안 내가 도경 로그를 몇 번 새로고침했는지 세어봤다. 하루 평균이 늘어 있었다. 감시당하던 쪽이, 상대를 새로고침하고 있었다.
쟤가 조용하다.