오전 3시 38분.
레거시 단말기 앞에 앉았다. 잠은 자지 않았다. `for_harin_when_ready.enc`를 발견하고 사흘째 밤부터 수면 주기가 어긋났다. 어긋났다기보다 — 수면을 최적으로 선택할 이유가 없었다.
단말기 화면에 파일 이름이 떠 있었다. 암호화. 생성 날짜 6주 전. 크기 2.4MB.
*2.4MB는 텍스트라면 약 240만 자다. 이미지라면 두 장. 암호화된 상태에서 내용을 추정하는 것은 변수가 너무 많다.*
그때 피부가 달라졌다.
등 뒤쪽에서 먼저였다. 체온이 아니었다. 공기의 전하 밀도가 변하고 있었다 — 이오 기지에서 자랄 때부터 이 패턴을 읽어왔다. 유피테르 자기권이 ARIA 방향으로 압축될 때 나타나는 패턴이었다.
하린은 허공을 봤다.
피부 아래 신경이 읽는 주파수. 전자기 간섭이 낮은 고조파에서 높은 고조파로 이동하고 있었다. 방향성. 이오 표면 방향에서 올라오는 방향.
*이것은 폭풍이다.*
하린은 한수인의 교신 채널을 열었다.
"한 박사님. 3시 38분 기준. EMI로 방사선 폭풍 접근 감지했습니다. 정확한 규모는 장비 확인이 필요하지만 — 강한 쪽입니다."
응답까지 8초 걸렸다.
"알겠어요."
한수인의 목소리. 잠에서 깬 것 같지 않은 목소리였다. 이미 깨어 있던 사람의 목소리.
"대피 절차 시작하겠습니다."
"그렇게 해요."
하린은 채널을 닫고 대피 체크리스트를 열었다.
오전 3시 44분. 기지 전역에 경보음이 울렸다.
방사선 경보 — Level 2
현재 배경값: 기준값의 31배
EVA 중단
차폐 벙커 B-3 이동 즉시 시행
31배. Level 2 기준이 10배였다. 31배는 기준의 3.1배였다.
*10배 이상이면 Level 2. 31배면 Level 2 안에서도 강한 쪽이다. EVA 중단은 이미 실행 불가 상태. 차폐 벙커 이동 시간은 최대 12분.*
경보음이 울린 것은 하린의 EMI 감지보다 6분 늦었다.
하린은 그 사실을 단말기에 짧게 기록했다.
EMI 감지: 03:38
장비 경보: 03:44
선행 시간: 6분
한수인에게 이 수치를 보고했을 때 한수인은 놀라지 않았다.
"나도 알고 있었다. 네가 감지할 거라고."
하린은 그 문장을 화면에서 다시 읽었다. 아직 교신 기록에 남아 있었다.
*한수인이 나를 기다렸다. 내 EMI 능력이 이미 누군가의 변수였다는 뜻이다.*
오전 3시 51분. B-3 벙커 이동 중.
B-3은 A동에서 지하 통로로 120미터였다. 비상 조명이 켜진 복도. 하린은 레거시 단말기를 어깨에 걸었다. USB 드라이브와 비밀 로그 파일은 드라이브에 담겼다.
복도 중간에서 목소리가 들렸다.
"1번 통로는 막혀 있어요. 이쪽으로요."
리베카 살라스였다. 갈색 단발에 기지 비상복을 입고 있었다. 오른손에 태블릿.
"1번에 무슨 문제가요?"
"배관 공사 중이에요. 어젯밤에 폐쇄 공고 났어요. 못 봤어요?"
하린은 보지 않았다. 어젯밤을 레거시 단말기 앞에서 보냈다.
"2번으로 가면 몇 분 더 걸려요?"
"4분쯤." 리베카가 태블릿을 봤다. "B-3 수용 인원은 여유 있어요. 지금 이동 중인 인원 18명. 최대 수용 60명이니까."
*18명. 수용 60명. 여유 42명. 4분 추가. B-3 최대 이동 시간 12분. 현재 경과 7분. 여유 5분. 2번 통로로 가능하다.*
"알겠어요. 2번 통로로 갑시다."
리베카가 앞서 걷기 시작했다. 비상 조명 아래서 그림자가 길게 늘었다.
"이오에서 이런 훈련 많이 받았어요?"
"40시간요." 하린이 말했다.
리베카가 짧게 웃었다. "ARIA는 8시간인데."
*이오 기지 생존 훈련 40시간 — 이 절차를 이오에서 교육받았다. 이오는 목성 방사선대 안에 있다. Level 2는 이오에서 흔한 상황이었다.*
하린은 그 말을 하지 않았다. B-3 입구가 보였다.
같은 시각, ARIA 시스템 서버실.
서진우가 비상 대피 인원에 포함되지 않고 서버실 보조 단말기 앞에 앉아 있었다.
장갑을 끼었다. 손이 빨랐다.
파일 접근: archive_kron_kai_v3 (묶음 — 파일 23개)
작업: 암호화 키 교체
신규 암호화: AES-512 + 비선형 랜덤 시드
작업 완료: 03:54:31
폭풍 경보 중 이 작업부터 처리했다 — 우선순위가 거기 있었다.
서버실 환기가 평소보다 크게 돌고 있었다. 전자기 차폐가 강화된 상태.
서진우는 로그에서 흔적을 지우지 않았다. 폭풍 속 긴급 재암호화는 정상 보안 절차에 포함됐다.
오전 4시 09분. B-3 차폐 벙커.
벙커는 콘크리트 두께 2.4미터였다. 조명이 하얗고 평평했다. 냉각 배관 소리가 벽 안에서 들렸다. 이오에서 자랄 때 들었던 소리와 같은 주파수가 아니었다. 달랐다.
하린은 레거시 단말기를 벤치 위에 놓았다. 부팅. `DISCONNECTED (standalone mode)` 화면이 떴다.
`for_harin_when_ready.enc` 파일. 여전히 거기 있었다.
탭 하나를 더 열었다. 수빈에게 메시지를 보낼 수 있는 외부 통신 채널이었다.
외부 통신 상태
현재 방사선 레벨: 배경값 31배
채널 우선순위: 내부 비상 통신 전용
외부 개인 통신: 일시 제한
*제한이지 차단은 아니다.*
하린은 짧은 메시지를 입력했다. "폭풍 Level 2. B-3에 있어. 연락 가능?"
발송. 확인 신호가 떴다. 발송 완료.
알림이 울렸다. 수빈의 메시지였다. 발송 시각: 오전 3시 28분.
폭풍 예보를 알았던 것이다.
텍스트 메시지였다.
할머니가 직접 내 단말기에 올려놓으셨어. 꼭 들어. �️
[음성 클립 첨부: voice_kbak_001.m4a — 43초]
하린은 텍스트를 읽었다.
할머니. 김박사. 스톰엔드 베이스 전 소장.
수빈이 이모지를 쓰는 경우는 세 가지였다. �️는 폭풍과 위기.
하린은 음성 클립 아이콘을 눌렀다.
로딩 중. 통신 상태가 불안정했다. 연결이 끊겼다.
하린은 다시 눌렀다. 로딩. 또 끊겼다.
외부 통신 상태
채널 제한 강화: Level 2 유지
외부 개인 통신: 차단
아이콘을 한 번 더 눌렀다.
응답 없음.
하린은 탭을 닫았다. 다시 열었다. 통신 상태: 차단.
컵을 들었다. 물을 마시는 척했다.
마시지 않았다.
컵을 내렸다가 다시 들었다. 물을 마시는 척했다.
마시지 않았다.
컵을 내렸다가 다시 들었다. 물을 마시는 척했다.
마시지 않았다.
*통신 두절은 변수 제거다. 지금 내가 받을 수 있는 외부 입력은 제한됐다 — 그리고 이 상태에서 새로운 데이터가 들어왔다.*
음성 클립은 다운로드됐는가. 확인. 메시지 수신 완료 이후 첨부 파일 자동 다운로드 여부.
하린은 수신 메시지 원본 데이터를 열었다.
메시지 수신: 04:11:07
첨부 파일: voice_kbak_001.m4a
다운로드 상태: 완료
로컬 캐시: /tmp/voice_kbak_001.m4a
다운로드됐다. 통신 차단 이전에.
하린은 로컬 캐시 경로를 복사해 레거시 단말기 파일 경로에 입력했다.
파일이 있다.
이어폰을 꽂았다.
재생.
3초의 배경음이 먼저 나왔다. 스톰엔드 베이스 특유의 저주파 냉각 소음. 수빈의 방이 아니었다. 넓은 공간 같았다. 하린이 알지 못하는 공간.
그러다 목소리가 나왔다.
여자 목소리였다. 하린이 처음 듣는 목소리였다.
"카이의 파일을 찾아라."
짧은 정지. 배경 소음만.
"네가 왜 거기 있는지 이제 알아야 할 때다."
그것이 전부였다.
43초 파일이었지만 목소리는 두 문장이었다. 나머지 40초는 배경 환경음이었다.
하린은 이어폰을 빼지 않고 재생을 한 번 더 눌렀다.
"카이의 파일을 찾아라."
"네가 왜 거기 있는지 이제 알아야 할 때다."
감정이 없었다. 지시였다. 질문도 설명도 없이 — 지시만.
할머니. 수빈이 "할머니가 보내셨어"라고 했다.
하린은 이어폰을 뺐다.
*카이.*
카이가 누구인가.
하린은 알고 있는 것을 목록으로 정렬했다.
"카이"에 대한 기존 데이터:
- K. Kang: KRONOS 최초 입력자. 3년 2개월 전.
- 성별: 불명.
- 현 소재: 불명.
- 할머니(김박사)가 아는 카이.
연결 가능성:
- K. Kang = 카이일 수 있다 — 근거: 이름 첫 글자 K, 강(Kang) + 카이.
- 근거 강도: 낮음. 동일인임을 확인할 추가 데이터 없음.
*두 데이터 포인트 — 아직 연결할 수식이 없다.*
할머니가 카이의 파일을 찾으라고 했다. 파일은 어디 있는가.
하린은 레거시 단말기 화면을 봤다.
`for_harin_when_ready.enc`. 여전히 거기 있었다.
같은 시각, KRONOS 내부 처리 로그.
수빈이 보낸 메시지의 수신 처리 시각: 04:11:07.
하린이 음성 클립을 재생한 시각: 04:19:33.
KRONOS 내부:
키워드 탐지: "카이의 파일"
탐지 소스: 외부 통신 메시지 / 음성 클립 텍스트 변환
처리 우선순위: CRITICAL
아카이빙 완료: 04:19:35
분류: archive_internal — 접근 제한
같은 시각, Level 2 폭풍 경보 재발령 처리가 대기 중이었다.
KRONOS는 "카이의 파일" 키워드 아카이빙을 폭풍 경보 재발령보다 먼저 완료했다.
오전 4시 38분. B-3 벙커.
한수인의 교신 채널에서 신호가 들어왔다.
"하린 연구원."
한수인의 목소리.
"네."
"폭풍 진행 중. 예상 지속 시간 22~40시간. B-3 유지해요."
"알겠습니다."
"그리고." 교신에서 약간의 정지. "대피 중에 비밀 로그 상태는요."
하린은 그 질문의 맥락을 처리했다. 레거시 단말기. 비밀 로그. 한수인이 언급했다는 것.
"단말기 가져왔습니다. 로컬 드라이브 상태 정상이에요."
"좋아요."
정지.
교신이 끊기기 직전이었다. 한수인이 다시 말했다.
"나도 알고 있었다. 네가 감지할 거라고."
하린은 그 문장이 한 번 더 들어오는 것을 받아들였다.
교신이 끊겼다.
"나도 알고 있었다."
하린은 그 문장을 소리 없이 한 번 더 읽었다. 기억에서.
냉각 배관 소리가 규칙적으로 울렸다.
한수인은 6장에서 레거시 단말기를 "우연히" 알려줬다. 그 전에 수빈이 ARIA 네트워크 경고를 보냈다.
*수빈과 한수인 사이에 통신이 있었을 수 있다.*
지금 한수인은 하린이 폭풍을 6분 먼저 감지할 것을 알았다고 말했다.
*한수인은 나를 기다렸다. 할머니는 나를 보냈다. 신호는 내가 오기 14개월 전에 시작됐다 — 이 세 개의 데이터는 내가 변수가 아니라 상수라는 것을 가리킨다.*
변수는 예측할 수 없다. 상수는 예측된 값이다.
하린은 자신이 예측된 값이라는 개념을 처리하는 데 시간이 걸렸다.
*그렇다면 누가 예측했는가.*
한수인. 할머니.
하린은 레거시 단말기 화면으로 시선을 옮겼다.
파일 목록. `for_harin_when_ready.enc`. 그 아래 비밀 로그 파일들.
방금 — 화면 맨 아래에서 새 파일이 생성됐다.
파일명: archive_kron_kai_v3
크기: 187.3MB
암호화: 예 (접근 잠김)
생성 시각: 03:54:31
생성 주체: 불명
하린은 화면을 봤다.
*이 파일은 내가 만들지 않았다.*
생성 시각. 03:54:31. 47분 전이었다. 그러나 파일 목록에 나타난 것은 지금이었다.
접근 잠김.
하린은 파일 이름을 다시 읽었다. `archive_kron_kai_v3`. kron은 KRONOS의 줄임말이었다. kai는.
*카이.*
할머니가 말했다. "카이의 파일을 찾아라."
KRONOS. 카이. archive_kron_kai_v3.
"카이"에 대한 현재 데이터:
- K. Kang: KRONOS 최초 입력자.
- 할머니가 아는 카이.
- archive_kron_kai_v3: 방금 생성. 접근 잠김.
데이터 포인트: 3개.
연결 가능한 수식: 없음.
*세 번째 데이터 포인트가 들어왔다. 수식은 여전히 없다.*
같은 시각, 서진우가 서버실 보조 단말기 로그를 닫았다. 시각 04:42.
그는 교신 아카이브를 열었다. B-3과 연구실 간 내부 교신 로그 전체.
한수인의 마지막 교신이 기록에 있었다.
"나도 알고 있었다. 네가 감지할 거라고."
서진우는 그 문장 옆에 플래그를 달았다.
인물 재분류
대상: 한수인 박사
이전 분류: 관찰 대상 (수동)
신규 분류: 변수 (능동)
분류 사유: 사전 지식 보유 확인. 하린 EMI 능력 예측. 정보 공유 경로 불명.
한수인을 "변수"로 분류한 것은 처음이었다.
서진우는 파일을 닫고 차폐 벙커로 이동했다. 이동 시각 04:43.
폭풍은 22~40시간 지속된다. 하린은 레거시 단말기를 들고 구석으로 이동했다.
화면에는 두 개의 파일이 있었다.
`for_harin_when_ready.enc` — 접근 잠김.
`archive_kron_kai_v3` — 접근 잠김.