92화
정우현은 우선 논문을 읽고 비트코인의 개념을 파악했다.
단순히 하자면 제삼자의 신뢰와 관리를 필요로 하지 않는, 탈중앙화된 화폐 시스템이었다.
솔직히 정우현은 판단이 되지 않았다. 이 가상 화폐가 기존의 화폐 시스템을 대체할지는.
물론 애초 인간이 흔히 사용하는 지폐나 동전이라는 것도, 자체적으로 어떤 가치가 있지는 않다. 예컨대 광물과 같은 자원처럼 그것 자체만으로 효용성이 있지는 않다는 뜻이다. 지폐를 모아 불을 붙이고 동전을 금속으로 녹이면 모를까.
하지만 그것에 경제적 가치가 있다고 일종의 사회적 합의를 했기에 지폐와 동전이 물물 교환 및 가치 저장의 수단인 돈이 되었다.
이 점에서 정우현은 비트코인에 경제적 가치가 있다는 사회적 합의가 있기만 하다면, 그것 또한 돈이 될 수 있으리라 판단했다.
그리고 전생을 떠올려 보면 실제로 그렇게 됐다. 사람들이 비싼 값을 치르고 비트코인을 거래하고 보유하며, 때론 비트코인을 통해 물건을 직접 사고팔기도 하니까.
물론 이 사실이 훗날 기존의 화폐를 비트코인이 모두 대체하게 된다는 뜻은 아니다. 그것은 일어날 수도 일어나지 않을 수도 있는 미래의 일이기에, 정우현은 물론 세상 그 누구도 결코 예측할 수 없다. 심지어 비트코인을 만든 개발자 또한 논문을 통해 그런 말은 하지 않았다.
어쨌거나 정우현은 비트코인의 대략적인 개념을 빠르게 이해한 뒤 이 논문을 올린 인터넷상의 이름을 한 번 더 주의 깊게 봤다.
역시나 전생에서 익히 알려진 대로 사토시 나카모토였다.
그리고 주목한 것이 이 논문을 올린 주소였다.
왜냐하면 아무리 익명의 가면을 쓴다 해도, 인터넷상에 무언가를 게시하는 순간 어떤 방식으로든 자신의 흔적을 남기지 않을 수 없기 때문이다.
개발자는 역시나 현시점 세계 최고의 프로그래머답게 고도로 암호화된 메일링 시스템을 사용해 해당 논문을 게시했다. 즉 이메일 주소를 남기긴 남겼으나, 신원을 확인할 수 없게 암호화된 기술을 사용했다.
하지만 정우현은, 세계 최초로 미국 중앙정보국 내부망을 해킹한 최초의 어나니머스.
물론 정우현은 그날 이후, 단 한 번도 해킹을 시도한 적이 없다.
한데 아주 오랜만에 그러니까 6년 만에 다시 그가 해킹하고자 마음을 먹었다.
바로 비트코인의 개발자 사토시 나카모토의 정체를 밝히기 위해서다.
별다른 뜻은 없었다. 솔직히 그저 호기심이었다. 전생에서 사토시 나카모토의 정체는 워낙 세계적인 미스테리였고, 그럼에도 신원이 밝혀지지 않았다는 것에서 정우현 또한 그가 누구인지 알고 싶었다.
전생의 사람들은 이런저런 사람들을 사토시 나카모토로 추측했는데, 그 중엔 이번 생에 전기차 개발로 정우현과 연이 있는 일론 마스크를 꼽는 사람들도 있었다.
하여간 그는 마음을 정했고, 전기차 개발을 잠시 수석 기술자인 이탈리아 엔지니어에게 맡겼다.
“따로 해야 할 게 있다고?”
이탈리아 엔지니어가 의아한 눈을 하고 물었다.
“예!”
“흐음….”
하고 엔지니어가 정우현을 물끄러미 보더니 말을 이었다.
“보스가 작업실을 비우는 건 거의 처음인데?”
“하하. 알다시피 당분간 집중할 연구 방향을 대략적으로 설정했으니, 그에 맞춰 작업해 주시면 돼요.”
“그래, 그래, 그건 알지. 근데 혹시 무슨 일이 생긴 건가 걱정이 되어서 그런다.”
“아니에요!”
하고서 정우현이 엔지니어에게 좀 더 상세하게 작업 사항을 설명하고 지시를 했다.
오랜 시간 손발을 맞춰 본 팀이기에, 그들은 이제 서로 눈빛만 봐도 소통할 수 있는 수준에 이르렀다.
“알았어, 보스! 그럼 우릴 믿고 잘 다녀오라고!”
하고 이탈리아 엔지니어가 든든한 모습으로 말했다.
* * *
이번에는 집이 아니라 회사 사무실에서 프로그래밍을 시작했다. 최신의, 성능이 좋은 컴퓨터가 여러 대 있어 작업하기에 훨씬 수월했다. 또한 전기차 작업장도 가까워 언제든지 작업 상태를 확인할 수도 있었기에 제격이었다.
해킹은, 단번에 이뤄지지 않았다. 우선 정우현이 어나니머스로 해킹을 했던 6년 전에 비해 사이버 보안 기술이 훨씬 발달했다. 그에 반해 정우현은 따로 해킹 공부를 지속하지 않았으니, 6년이라는 시간의 공백만큼 다시 학습해야 했다.
더군다나 해킹 방어용으로 개발된 암호화된 메일 시스템이 무척 탄탄했으며, 결정적으로 사토시 나카모토가 개별적으로 보안을 한층 강화해 놓은 상태였다. 즉 메일 시스템을 뚫어도, 개발자의 자체적인 보안망을 한 번 더 해킹해야 했다.
그것도 무려, 세상에 존재치 않는 기술로 만들어진 보안망이었다. 비트코인의 개발자답게 과거 CIA의 내부망 따위는 비교도 되지 않을 만큼 훨씬 복잡하고 탄탄했다.
심지어 그것도 해당 메일 계정이 지금처럼 활성화됐을 때만 가능했다. 즉 비트코인 개발자가 언젠가 이 암호화된 메일을 사용하지 않아 비활성화해 놓는다면 해킹이 영영 불가능했다. 해킹하기까지 일종의 시간제한이 있는 셈이었다.
하지만 다행히 지금은 사토시 나카모토가 비트코인 백서를 처음으로 발표한 비트코인 개발 초기. 앞으로 그는 논문을 바탕으로 실제 비트코인을 채굴 및 유통시키는 등 이와 관련해 사람들에게 몇 번 더 의견을 표시할 가능성이 크다.
즉, 당장은 그의 이메일 계정이 비활성화될 일이 없다.
그렇다면 지금이야말로 해킹을 시도해야 할 적기였다.
이를 위해 정우현은 다시 독자적인 해킹 프로그램을 만들었다. 지난날 CIA를 해킹할 때 개발한 프로그램으로는 사토시 나카모토의 정체를 파헤치는 데 역부족이었다.
그렇게 한 개도 아닌 세 개의 새 해킹 프로그램을 만들고, 하나의 프로그래밍 언어로는 암호화된 메일링 시스템을 해킹했다. 그리고 나머지 두 개의 프로그래밍 언어를 복합적으로 사용해 드디어 비트코인 개발자의 자체적인 보안망까지 침투하는 데 성공했다. 모두 오로지 해당 보안망을 뚫기 위해 만든, 맞춤용 해킹 프로그램이었다.
이로써 정우현은 사토시 나카모토가 비트코인 논문을 발표하기 위해 보낸 메일의 인터넷 프로토콜 즉 IP 주소를 확인하게 됐다.
물론 비트코인 개발자는 IP 주소 또한 익명의 웹브라우저를 사용하는 등 여러 차례 우회하는 기술을 사용해 숨겼지만, 정우현은 그 모두 쉽게 해킹해 실제 IP 주소를 알아낼 수 있었다. 사토시 나카모토 자체의 보안망을 뚫는 것보다는 훨씬 쉬운 일이었다.
그다음부터는 더 쉬웠다. 평범한 사람들도 요령만 알면 할 수 있을 정도니까.
해당 IP 주소를 추적해 컴퓨터가 사용되는 실제 집 주소를 알아내고, 곧이어 해당 집에서 살고 있는 사람의 신원을 파악한다. 즉 그 사람이, 정우현이 알아낸 IP 회선을 이용해 비트코인을 개발했다고 알린 사토시 나카모토다.
“…아아.”
한데 깜짝 놀랐다.
정우현은, 정말 무척이나 놀랐다.
전생을 통틀어 세계 최초로 사토시 나카모토의 정체를 확인한 정우현이 놀랄 수밖에 없는 이유는 단 하나.
그가 원래 알고 있던 사람이 비트코인 개발자였기 때문이다.
* * *
정우현은 사토시 나카모토의 정체를 알게 되고 고심하게 됐다.
찬찬히 생각해 보니, 모든 퍼즐이 맞아떨어졌다.
다만, 그가 정우현이 알고 있는 사람이었을 뿐.
그러고서 해당 사실, 즉 그의 신원을 세상에 밝혀 볼까 생각했으나 이내 단념했다. 그래서는 누구에게도 득이 될 것 같지 않았다. 오로지 정우현 자신이 사토시 나카모토의 정체를 밝혔다는 사실을, 사람들에게 인정받는 심리적 욕망만 충족될 뿐.
이에 그에게 따로 접촉할까 생각했다. 즉 사람들에겐 밝히지 않고 오로지 비트코인 개발자에게만 당신의 정체를 알고 있다고 말을 할까 궁리했다. 하지만 그 또한 딱히 실익이 없을 것 같았다.
그래서 우선은 상황을 지켜보기로 했다. 왜냐하면 그 사람이 곧 비트코인을 실제 선보일 것이기 때문이다.
전생이라면 꿈도 못 꾸지만, 이번 생의 정우현은 비트코인의 실체를 완벽히 이해할 수 있을 것 같았다. 나아가 비트코인 개발자가 논문에서 밝힌 대로, 해당 기술이 실제 중앙의 관리자 없이 안정성이 담보된 채 화폐의 기능을 할 수 있을까 판단할 수 있을 것 같았다.
그것을 확인하고 개발자와 따로 접촉할지 말지 결정하는 게 나을 것 같았다.
그렇게 그는 일단 뜻한 바를 모두 이루고 다시 자신의 전기차를 개발하기 위해 작업장으로 돌아갔다.
* * *
해가 바뀌어 2008년 초.
정우현의 예상대로 비트코인 개발자가 사토시 나카모토라는 가명을 다시 이용해 드디어 비트코인 채굴 및 유통 소식을 알렸다.
그러고서 정우현은 곧장 해당 비트코인의 실체를 직접 연구하기 시작했다. 그리고 얼마 지나지 않아 깨달았다.
비트코인은 크나큰 결함이 있다는 사실을.
단순히 전생에서 왕왕 벌어지고 있는, 가상 화폐 거래소나 개인의 가상 화폐 지갑을 향한 해킹을 뜻하는 게 아니었다.
그야말로 비트코인에 내재적으로 크나큰 취약점이 있었다. 다만 해당 취약점을 무너뜨릴 수 있는 기술을, 현시점 개발하기 힘들 뿐이었다.
비트코인은 거래 상호 간의 내역을 자체적으로 증명하고 합의하는 알고리즘을 기반으로 작동하는데, 이를 통상 작업증명이라고 지칭한다. 그리고 해당 작업증명은 SHA(Secure Hash Algorithm)-256이라는 해시 함수로 이뤄져 기록된다.
SHA256은 미국 국가안보국(NSA)이 제작하고, 미국 국립표준기술연구소(NIST)에서 표준으로 채택한 암호학적 해시 함수 중 하나이다.
단 세상 모든 암호가 허점이 존재하듯, 이 해시 함수 암호 또한 약점이 있다. 실상 SHA256은 최초의 SHA인 SHA0와 좀 더 진보된 SHA1이 특정 키에 의해 해시 충돌을 일으킨다는 것이 밝혀져 개발된 기술이다.
따라서 비트코인의 구성 요소인 SHA256 또한 기존의 SHA와 결국 같은 알고리즘을 사용하기에 무결점의 암호화 시스템이 아니다.
물론 정우현은 즉각 이에 집중했다.
즉, SHA256을 무너트리는 방법을 찾아내면 된다.
하지만 이는 결코 쉽지 않은 일이었다.
당장 규칙을 찾을 수 없는, 엄청난 경우의 수를 일일이 연산해야 하기 때문이다.
하지만 이내 그는 쉽게 해낼 수 있는 방법을 생각해 냈다.
바로 모든 수의 핵심이자 바탕인 소수(素數), 즉 약수가 1과 자기 자신뿐인 자연수의 법칙을 발견하면 됐다.
그렇게 되면 수를 지배할 수 있다고 해도 과언이 아니어서, 당장 맞닥뜨려야 할 엄청난 경우의 수조차 쉽게 계산할 수 있다.
아무리 큰 수와 그에 따른 복잡하고 수많은 연산도 소수의 법칙을 활용해 범주화함으로써, 간편하게 해결할 수 있기 때문이다. 그러고서 SHA256을 무너뜨리는 알고리즘을 만들기만 하면 됐다.
그렇다면 당장의 목표는 하나였다.
소수의 법칙 발견하기.
이는 널리 알려져 있는, 오랜 수학의 난제인 리만 가설의 증명과 맞닿아 있다.
리만 가설은 '제타함수의 자명하지 않은 해는 모두 실수부가 1/2이다.'라는 가설로 쉽게 하자면 소수의 분포 좀 더 정확히 하면 소수의 개수를 파악하는 것과 관련이 있다.
즉, 리만 가설이 소수의 법칙 자체를 나타내지는 않는다. 하지만 정우현이 소수의 법칙을 발견하기 위해선 리만 가설을 입증하는 것에서 시작하는 게 제일 빠른 길이었다.
이에 그는 다시 사무실에 틀어박혔다.
“아들.”
그러기를 며칠, 어느 날 어머니가 찾아왔다.
“아, 엄마.”
온갖 수식에 집중하고 있었던 정우현이 고개를 돌려 어머니를 바라봤다.
“어떻게 오셨어요?”
“아들이 요즘 작업실에도 잘 안 나가고 여기에만 있다고 하기에, 궁금해서 와 봤지.”
“아… 네, 하하.”
하고 빙긋 웃는 정우현이었다.
정우현이 종일 사무실에서 거의 혼자만 있다고 어머니에게 말한 사람은 다름 아닌 엄규환이었다.
정우현이 청담동 자택 밖으로 나오면 항상 엄규환이 따랐다.
그래서 엄규환은 며칠 전 은밀하게 어머니에게 말했다. 최근 도련님이 너무 혼자만 있어 걱정된다고.
“이것 좀 먹어.”
하면서 어머니가 과일이 담긴 음식 상자를 열고는, 사방에 흩어져 있는 온갖 종이와 그것에 적힌 수식을 둘러봤다.
물론, 그녀는 아들이 무엇에 몰두하고 있는지 알아차릴 수 있었다.
“또 수학 문제 푸는 거야?”
“…예!”
정우현이 참외 한 조각을 먹으며 답했다.
“…으음, 이번엔 얼마나 걸릴까?”
수년 전 정우현이 방에 틀어박혀 역시 수학 문제에 매달리던 때를 떠올리며 어머니가 물었다.
“음, 지난번보다는 더 걸릴 것 같아요!”
리만 가설의 입증은, 과거 그가 해결한 푸앵카레 추측을 입증하는 것보다 확실히 더 어려웠다.
하지만 그렇다고, 마냥 오래 걸릴 것 같지는 않았다.
“그래?”
하고 어머니가 정우현에게 다가가 그를 끌어안았다.
“우리 아들이 이번엔 또 얼마나 대단한 일을 하려고 이렇게 열심일까?”
“하하하, 엄마….”
“아들, 그렇지만.”
그러면서 어머니가 몸을 떼고 말을 이었다.
“쉬엄쉬엄해요. 엄마가 제일 중요한 게 뭐라 그랬지?”
“…건강이요.”
“그래, 건강하지 않으면 아무것도 소용없어.”
하고서 어머니가 다시 정우현을 끌어안았다.
“사랑해, 엄마가. 아주 많이.”
정우현의 나이 어느덧 열여섯 살. 올해로 키도 175cm를 기록하는 등 일찌감치 어머니를 훌쩍 넘어섰다. 그러는 가운데 어머니의 사랑은 변치 않으며, 한이 없음을 시일이 지날수록 더욱 가슴 깊이 느끼고 있었다.
“저도요, 엄마.”
하고 정우현 또한 어머니를 끌어안았다.
어머니는 쉬라고 했지만, 어쩐지 힘은 더 샘솟았다.
수식이 더 잘 풀릴 것만 같았다.
* * *
그리고, 약 한 달 후.
“아아아아아아아!”
그가 사무실 한가운데서 크게 소리를 질렀다.
드디어 해냈다.
즉, 리만 가설을 입증했다.
이로써 그는 소수가 분포된 규칙성과 특정한 수 이하의 소수 개수를 정확히 파악하는 것은 물론 그 원리를 완벽히 증명하게 됐다.
이로써 이제 소수의 법칙 자체를 발견할 일만 남았다.