승률 100% AI를 가진 스포츠 분석가

4화: 검증되지 않은 모델
강도윤은 민서의 메시지를 읽은 뒤 노트북 화면을 닫지 못했다.
그거 목적지가 단순 프록시가 아니라 해외 사설 베팅 컨소시엄 내부 서버 대역이랑 겹쳐.
“겹친다는 게 얼마나 겹친다는 건데?”
“대역의 일부가 같아. 패킷 하나만으로 확정할 수는 없어. 하지만 M-17이 보낸 시각과 네가 오라클을 실행한 시각이 거의 같아.”
민서는 통화로 파일을 하나 전송했다. 패킷 크기와 전송 시각을 정리한 표였다. 도윤은 표의 마지막 줄을 확대했다.
22:14:08 / 프로세스 재개
23:50:03 / 자동 포맷 직전 외부 패킷
23:50:04 / 목적지 응답 없음
“응답이 없었다고?”
“받았는지 확인할 수 없다는 뜻이야. 암호화된 단방향 전송처럼 보여.”
도윤은 오라클의 화면을 돌아봤다. 검은 창에는 아직도 입력 대기 문구가 남아 있었다.
관측 대상을 입력하십시오.
“이게 경기 결과만 보내는 게 아닐 수도 있어.”
“나도 그렇게 생각해.”
민서의 목소리가 낮아졌다.
“도윤아. 네가 뭘 봤는지 말해 줘. 지금은 숨기는 쪽이 더 위험해.”
도윤은 손가락으로 책상 모서리를 눌렀다. 말하는 순간 민서가 사건에 끌려 들어온다. 하지만 그녀는 이미 M-17의 로그를 확인했고 해외 대역까지 추적했다.
그는 화면을 캡처해 보냈다. 리버튼 헤이즈의 승리 예측과 라일 브렌의 출전 제한 시점 그리고 해솔-로엔 경기의 예상 결과를 차례로 전송했다.
민서는 한동안 아무 말이 없었다.
“이걸 언제 봤어?”
“첫날 밤. M-17에서.”
“왜 바로 말 안 했어?”
“네가 열지 말라고 했으니까.”
“그 말을 지키려고 숨긴 거야?”
“적어도 너까지 회사에서 잘리는 일은 막으려고 했어.”
민서는 짧게 웃었지만 웃음은 금방 끊겼다.
“이미 늦었어. 내 옛 프로젝트 계정이 오늘 새벽에 로그인됐어. 내가 한 게 아니야.”
도윤의 등줄기가 서늘해졌다.
“회사 계정으로?”
“그래. 비밀번호를 바꿨는데도 접속 토큰이 살아 있어. 누군가가 내 계정을 보관하고 있다는 뜻이야.”
그날 아침 도윤은 평소보다 일찍 회사에 도착했다. 사무실 출입문을 통과하자 보안 게이트가 두 번 연속 붉게 깜빡였다. 출입증을 다시 대자 문이 열렸지만 기록 화면에는 ‘권한 재확인’이라는 문구가 남았다.
임상무는 도윤이 자리에 앉기도 전에 그를 불렀다.
“오늘부터 서버실 출입은 보안팀 동행으로 바뀌었어.”
“제가 뭘 잘못했습니까?”
“잘못했다는 말은 안 했네. 폐기 서버에서 비정상 프로세스가 발견됐고 접근자 확인이 필요하다는 거야.”
“접근자를 확인하면 되겠네요. 제 출입 기록은 남아 있을 테니까요.”
임상무의 눈썹이 아주 조금 움직였다.
“기록은 남아. 대신 회사 자료를 개인 장비로 옮긴 흔적도 같이 확인될 거야.”
도윤은 노트북 가방을 내려놓지 않았다. 임상무가 노리는 것은 M-17 자체가 아니라 그 안에서 무언가를 봤다는 사실일 수 있었다.
“인수인계 문서부터 마무리하겠습니다.”
“그게 안전해.”
임상무는 등을 돌렸다. 안전하다는 말이 유난히 위협적으로 들렸다.
민서는 오전 회의가 끝난 뒤 도윤의 자리로 왔다. 그녀는 종이 문서 한 장을 그의 키보드 아래로 밀어 넣었다. 오래된 프로젝트 목록이었다.
MPD-SCAN / 이상 배당 및 경기 흐름 탐지 / 폐기 사유: 운영진 판단
도윤은 마지막 항목을 가리켰다.
“운영진 판단이라는 게 뭐야?”
“내가 만들 때는 경기 중 이상 움직임을 탐지하는 모델이었어. 선수 교체나 배당 변화를 같이 보고 조작 가능성을 표시했지. 결과를 맞히는 모델이 아니었어.”
“그럼 오라클은?”
“누군가 MPD-SCAN이 모은 데이터를 다른 방식으로 돌린 것 같아.”
민서는 회의실 유리벽 너머를 살폈다.
“당시 원본 데이터가 통째로 사라졌어. 백업 목록에는 남아 있는데 실제 저장소에는 없었지. 그 뒤에 프로젝트가 접혔고.”
“그때 외부 패킷도 있었고?”
“응. 그래서 나는 회사가 데이터를 팔았다고 생각했어. 그런데 확실한 증거가 없었어.”
민서는 태블릿을 켜고 낡은 로그 파일을 열었다. 접속 계정 대부분은 삭제되어 있었지만 한 줄이 남아 있었다.
MPD-EXPORT / partner: N-17 / operator: LMX-admin
도윤은 M-17의 자산 번호를 떠올렸다.
“M-17이랑 N-17. 우연일까?”
“번호만으로는 아무것도 못 해.”
“LMX-admin은?”
“라인업메트릭스 내부 관리자 계정이야. 지금은 폐기됐다고 되어 있어.”
민서는 말을 멈췄다.
“그런데 어젯밤 내 계정으로 접속한 토큰이 그 관리자 계정의 하위 권한을 갖고 있었어.”
점심이 지나자 도윤은 공개 데이터로 해솔 타이탄스와 로엔 유나이티드의 상태를 다시 정리했다. 로엔의 미드필더는 여전히 선발 명단에 없었다. 해솔의 골키퍼는 최근 세 경기에서 코너킥 처리 때 앞으로 나오는 비율이 높았다.
오라클의 예상은 후반 68분 코너킥 상황에서 골키퍼 판단 미스와 자책성 실점이었다.
도윤은 그 문장을 검증표의 가장 위에 적었다. 예상과 사실을 섞지 않기 위해 표를 두 칸으로 나눴다.
공개 사실: 로엔 주전 미드필더 출전 여부 불명
오라클 출력: 로엔 승 / 후반 68분 코너킥 변수
민서가 표를 내려다봤다.
“베팅할 거야?”
“안 해.”
“왜 갑자기?”
“돈을 걸면 검증이 아니라 변명이 돼. 결과가 틀려도 내가 돈을 잃어서 화가 난 거라고 말할 수 있잖아.”
민서는 처음으로 안도한 표정을 보였다.
“그럼 기록만 남기자. 경기 시작 전 배당과 출전 명단 그리고 시간대별 변화를 저장해.”
“누구한테 보여 주려고?”
“서지태 기자.”
도윤은 그 이름을 떠올렸다. 민서는 스포츠 데이터 조작 의혹을 오래 취재한 기자였다. 기사로 만들 수 있는 자료와 수사기관에 넘길 자료를 구분할 줄 아는 사람이기도 했다.
민서는 짧은 메시지를 보냈다.
확인되지 않은 모델과 과거 프로젝트 로그가 연결됩니다. 원본을 보여 드릴 수 있습니다.
답장은 십 분 뒤 도착했다.
파일 전체는 받지 않겠습니다. 해시와 시간 기록만 먼저 보내세요. 직접 만나면 기기부터 확인하겠습니다.
“믿을 수 있어?” 도윤이 물었다.
“완전히 믿을 사람은 없어. 그래서 원본을 한 곳에 모으지 않을 거야.”
민서는 해시값을 계산해 자신의 개인 보안 저장소에 올렸다. 도윤은 같은 자료를 다른 이름으로 암호화해 노트북에 보관했다. 두 파일의 내용은 같았지만 열쇠는 서로 달랐다.
오후 6시가 가까워졌을 때 플레이라인의 배당판이 크게 흔들렸다. 해솔 쪽으로 몰리던 돈이 갑자기 빠지고 로엔의 배당이 내려갔다. 공개된 새로운 뉴스는 없었다.
도윤은 그래프를 캡처했다. 그 순간 오라클 화면이 혼자 깜빡였다.
관측 대상의 외부 조건이 변경되었습니다.
예상 신뢰도: 93%
누적 관측 비용: 3%
도윤은 키보드에 손을 대지 않았다. 출력은 스스로 갱신되고 있었다.
민서가 화면을 보며 숨을 삼켰다.
“방금 네가 입력하지 않았지?”
“안 했어.”
새 줄이 이어졌다.
접속 환경 검증 중.
인증 토큰 2개 감지.
“이건 경기 정보가 아니야.”
민서가 노트북을 닫으려 했지만 도윤이 손목을 붙잡았다.
“기록부터.”
그는 화면을 촬영하지 않고 터미널 출력을 텍스트로 복사했다. 사진에는 반사광과 기기 정보가 남을 수 있었다. 복사를 끝낸 순간 회사 메신저가 울렸다.
[보안팀] M-17 접근 세션이 재개되었습니다.
도윤의 손끝이 굳었다.
“내가 다시 접속한 게 아닌데.”
“너 혼자 아니야. 내 토큰도 잡혔다고 했지.”
민서는 서지태에게 해시값과 보안팀 알림 시각을 보냈다. 전송 완료 표시가 뜨자 오라클 화면의 마지막 문장이 바뀌었다.
관측 기록을 삭제하시겠습니까?
아래에는 두 개의 선택지가 나타났다.
[Y] 예 [N] 아니오
도윤은 N 키에 손을 올렸다. 그때 사무실 복도에서 보안팀 무전 소리가 들렸다.
“6층 분석팀부터 확인하겠습니다.”
민서가 그를 바라봤다. 두 사람 사이에 짧은 침묵이 흘렀다.
도윤은 N 키를 눌렀다.
화면이 검게 꺼졌다. 동시에 M-17의 세션 로그가 한 줄씩 지워지기 시작했다. 자신이 거부했는데도 삭제는 진행되고 있었다.
마지막으로 남은 문장이 붉은 글자로 떠올랐다.
다음 관측 비용: 5%
복도 쪽 손잡이가 돌아갔다.
도윤은 검은 화면과 민서의 얼굴을 번갈아 봤다. 경기 시작까지 한 시간도 남지 않았다. 이제 확인해야 할 것은 로엔이 이기는지 여부만이 아니었다.
누가 먼저 오라클의 답을 알고 움직였는지 밝혀야 했다.