The Genius of FOMO3D

새로운 형태의 블록체인 기반 도박게임의 기틀을 제시한 FOMO3D

Sigrid Jin
tokeonomy
21 min readOct 3, 2018

--

FOMO3D 홈페이지. EXIT SCAMMING이라 자신을 표현한다. 얼른 게임이 끝나서 스캠짓 좀 그만해라 이 소리다.

FOMO3D는 이더리움 dApp에 큰 바람을 불고 온 도박게임이다. 2018년 6월 출시 이후 여름 내내 DAU 2위 자리를 놓치지 않았으며, 한 때 매일 약 1400명 내외가 이용하여 한 달 평균 사용자 수가 13000명에 달하기도 하였다. 이와 함께 같은 개발팀에서 제작한 FoWH3D 역시 3–4위권을 함께 유지하는 기염을 토하였다.

이 글을 발행하는 2018년 10월 초에는 게임에 대한 기대감이 많이 낮아져 24위 권까지 순위가 떨어졌다. 하지만 FOMO3D의 출시를 계기로 다양한 형태의 도박게임이 새로운 모델을 들고 시장에 선보이고 있다. 따라서 FOMO3D를 한 때의 도박열풍으로 치부하기 보다는 해당 게임의 원리를 면밀하게 살펴보는 것이 도움이 될 것이라 생각한다.

뒤에 설명할 내용이지만, FOMO3D 게임과 PoWH3D가 서로 긴밀한 연관관계가 있다. 따라서 사실상 하나의 게임이 이더리움 네트워크의 최대 인기 dApp으로 자리잡은 것이다.

FOMO3D가 지난 7월 등장한 이후 순식간에 인기 dApp으로 올라오자 세간의 관심을 끌었다. 하지만 FOMO3D는 사람들의 인식 속에서 빠르게 잊혀졌다. 한 때 유명했던 슬롯머신 게임을 연상시키기 때문이다. 경매 플랫폼으로 일정 시간동안 아무도 돈을 더 올리지 않으면 마지막 투자자가 먹는 BM과 상당히 유사하다.

저 만한 돈을 벌써 다 옮겨놨다 어딘가로. 저걸로 집도 사고 여행도 가고 행복하게 살겠지…

지난 8월 22일 (미국 현지시간) FOMO3D의 1라운드 당첨자가 나타났다. 당첨자가 수령한 금액은 무려 10,469ETH다. 당시 시가를 기준으로 우리나라 돈으로 환산하면 33억 5천만원에 해당하는 상당한 거금이다. 0.7874ETH를 투자하여 저렇게 많은 돈을 가져가는 행운을 얻은 것이다. 9월 25일에는 소리소문 없이 2라운드가 종료되기도 했다.

그런데 사람들의 인식과는 달리, 최종 우승자가 모든 이더리움을 독식하는 것이 아니다. 라운드에 참여한 전력이 있는 사람들의 대부분에게 해당 이더리움이 돌아가게 된다. 따라서 라운드가 종료되면 숨어있는 승자가 여럿 등장하게 된다. 과연 어떠한 원리로 이것이 가능했을까?

FOMO3D Short Version

FOMO3D의 게임규칙에 대해서

FOMO3D는 PoWH3D를 출시한 바 있는 TEAM JUST가 만들었다. PoWH3D는 Proof-of-Weak Hands의 줄임말이다. PoWH3D는 이더리움 기반 컨트랙트로 이루어진 탈중앙화 거래소인데, 일반적인 거래소와는 조금 다르다.

PoWH3D에서는 ETH를 활용하여 ERC20 기반의 P3D 토큰만을 거래할 수 있다. 오로지 PoWH3D에서만 P3D 토큰을 거래할 수 있다. 특이한 점은 P3D 토큰을 판매하는 과정에서 10%의 수수료가 부과된다. 부과된 10%의 P3D 토큰은 다른 P3D 토큰 보유자에게 일정한 규칙에 따라 배분된다. 다시 말해서, 존버 (HODL) 를 하지 못하는 사람들에게 수수료를 부과하여 존버를 잘 하고 있는 사람에게 이자를 지급하는 것이다.

후술하겠으나, P3D 토큰을 보유하고 있는 사람들은 FOMO3D의 라운드가 종료될 때 일정 부분의 이더리움을 배분받을 수 있다. 이는 아무래도 TEAM JUST가 P3D 토큰의 사용 가치를 만들기 위한 것이 아닐까라는 생각을 하게 되는 대목이다. FOMO3D와 PoWH3D가 이름과 그 기능이 유사하여 혼동될 수 있으니 주의하기 바란다. 참고로 FOMO3D를 플레이할 때 굳이 P3D 토큰을 구매할 필요는 없다.

FOMO3D의 게임 규칙에 대해서는 이전에 거의 모든 내용을 상세하게 분석한 글을 작성한 것이 있으니 참고하기 바란다. FOMO3D는 숏 버전과 롱 버전으로 나누어져 있는데, 숏 버전은 타이머에 5분의 제한이 있고 ICO 과정이 따로 존재한다. 이와 달리 롱 버전은 타이머 24시간이며 ICO 과정이 따로 존재하지는 않는다.

롱 버전을 기준으로 이야기하면, (보통 2달러 미만의 값을 지니는) 키를 하나 구매할 때마다 타이머에 30초가 추가된다. 사람들이 키를 구매할 때마다 키의 값이 조금씩 오르지만 미미한 수준에 불과하다. 타이머가 0초로 떨어지는 순간 키를 마지막으로 구매한 사람이 당첨자가 되어 게임 컨트랙트에 모인 이더리움의 절반 가량을 가져가게 된다. 당첨된 사람 뿐만이 아니다. 게임을 플레이하면서 키를 구매한 사람이나 P3D 홀더는 일정량의 이더리움을 지급받을 수 있다.

라운드가 종료되었을 때, 게임 컨트랙트에 모인 이더리움이 어떻게 분배되는 지는 최종 키 구매자가 어떠한 팀을 선택했느냐에 따라 달라진다. 또한, 플레이어는 팀의 선택을 통하여 자신이 지급한 이더리움이 게임에서 어떻게 분배될 것인지 결정할 수 있다.

Choosing a team (Snek, Whale, Bull and Bear)

키를 구매할 때, 플레이어는 현재 키의 값을 보고 원하는 양의 키를 구매할 수 있다. 키가 구매될 때마다, 이더리움 팟, P3D 토큰 보유자와 FOMO3D 키 보유자, 그리고 개발자와 커뮤니티에 각각 이더리움이 분배된다. 여기서 이더리움 팟이란 타이머가 0초가 되어 최종적으로 게임이 종료되었을 때 분배되는 이더리움의 총량이다. 게임 컨트랙트 상에 이더리움을 쌓아놓는 항아리이며, 라운드가 종료되면 열리는 것이라고 생각하면 된다.

이 외에도 라운드 종료 시 키를 보유하고 있는 사람에게 추가적인 이더리움 에어드랍 이벤트가 열린다. 자신이 보유하고 있는 키의 값의 총 금액이 높을 수록 당첨 확률이 급격하게 높아진다.

라운드가 끝나면 에어드랍을 할 이더리움 총량을 다 모은다. 그리고 나서, 키를 구매한 사람과 구매자가 가지고 있는 키의 개수에 따라 이더리움을 나누어준다. 만약 1ETH가 에어드랍에 모였고 키의 구매자가 갑과 을 뿐이라고 해보자. 갑이 Key를 9개 가지고 있고, 을이 Key를 1개 가지고 있으면 갑에게 0.9ETH가 돌아가고 을에게는 0.1ETH가 배당되는 구조이다. 게임 규칙에 대한 자세한 정보는 이것을 참고하면 좋을 것이다.

팀에는 뱀, 고래, 황소, 그리고 곰이라는 4가지 옵션이 있어 플레이어가 키를 구매할 때 어떤 팀을 선택할 지 고를 수 있다. 이에 대해 간단히 살펴보도록 하자.

플레이어가 구매한 키의 값이 어떻게 분배되는 지에 대한 도표

먼저, 고래는 이더리움 팟에 집어넣는 ETH의 양을 극대화하고 FOMO3D 플레이어와 PoWH3D 토큰 보유자에게 돌아가는 양을 최소화하는 옵션이다. 게임 라운드가 종료되었을 때도 당첨자의 수익을 극대화한다. 즉, 한 방을 노리는 사람이라면 선택할 만한 옵션이다. 그래서 다른 사람의 탐욕에 먹이를 주세요라는 슬로건을 걸고 있는 모양이다.

라운드가 종료되고 최종 우승자 팀의 선택에 따라 어떻게 분배되는 지에 대한 도표

다음으로, 황소가 있다. 고래에 반해 상대적으로 안전한 선택이라고 할 수 있다. 왜냐하면 게임 라운드가 종료되었을 때 F3D 플레이어, 즉 키를 보유한 사람들이 상대적으로 더 많은 이더리움을 가져가는 옵션이기 때문이다.

황소와 비슷한 옵션으로 뱀이 있다. 전반적으로 F3D 플레이어에게 이더리움이 적게 배분되고 P3D 토큰 보유자에게는 많은 양의 이더리움이 지급되는 방식이다. P3D 토큰 보유자들이 어부지리로 돈을 얻을 것이므로 상당히 선호할 만한 방식이나 P3D 토큰을 가지고 있지 않은 일반 플레이어가 선택하기에 적합하지 않은 옵션이다.

FOMO3D 플레이어의 비합리적 행동

고래에 넣는 것이 좋은 판단일텐데, 왜 사람들은 뱀에 제일 많이 넣을까?

뱀을 선택하는 이용자가 다른 팀을 선택하는 경우보다 많다. 아무래도 플레이어가 게임에 대한 깊은 이해가 없이 기본 옵션이므로 그냥 선택해서 키를 구매하는 경우가 잦아 보인다. 이는 P3D 토큰의 보유 여부를 FOMO3D를 통하여 간접적으로 창출해내려는 TEAM JUST의 상술인 것으로 풀이된다.

Simulated and Calculated by Hotae Lim

FOMO3D에서 어떤 옵션을 선택해야 가장 많은 수익을 낼 수 있을까. Tokeonomy의 임호태님께서 직접 FOMO3D 분배 비율에 따른 간단한 시뮬레이션을 구현한 도표가 있다. 다른 사람들이 전혀 없고, 혼자 게임을 처음 시작한다고 가정한 표이다. 이 도표는 타인의 행동은 고려하지 않고, 모든 개인은 자신의 이익을 극대화하기 위한 행동을 할 것이라 보며, 전체 팀에는 아예 토큰이 분배되어 있지 않다고 가정한다.

위의 결과치에 따르면 고래를 선택했을 때 최종 승자에게 돌아가는 이더리움의 값이 제일 많고 (24%) 그 다음이 곰이며 (20.64%) 그리고 황소 (16.8%)와 뱀 (9.6%)의 순으로 이루어져 있다. 따라서 우승자가 될 수 있다는 자신만 있다면 고래를 선택하는 것이 제일 합리적이다.

안정적인 선택을 원하는 플레이어라면, 꼭 우승자가 되지 않더라도 라운드가 종료되었을 때 자신에게 돌아가는 보상의 양을 높이고 싶어할 것이다. 이를 위해서는 F3D 토큰 보유자의 이자를 높여야 한다. 우승자가 어떠한 팀에 속해있더라도, 일반 플레이어가 대체로 곰이나 황소를 선택했다면 비교적 많은 양의 이자를 챙겨가게 된다.

KST 2018년 9월 9일 오전 7시 30분 현재 팀 당 모인 이더리움의 양을 보여주는 사이트의 화면

하지만 결과는 우리의 예상과는 조금 다르다. 한 방을 노리지 않고 비교적 안정적인 선택을 하되, P3D 토큰을 가지고 있지 않은 일반적인 FOMO3D 플레이어가 선택할 법한 옵션이 곰이다. 하지만 대부분의 플레이어는 뱀 옵션을 제일 많이 선택하였다. 곰은 두 번째로 많은 선택을 받는 데 그쳤다.

상기했듯이, 이는 게임에 대한 깊은 이해를 하지 않은 일반 게임 유저가 기본 옵션이라서 그냥 이것을 선택했을 가능성이 제일 높다고 판단된다. P3D 토큰 보유자의 가치를 높이기 위한 TEAM JUST의 판단이 적중한 셈이다.

Simulated and Calculated by Hotae Lim

라운드 3가 진행되고 있던 9월 말 경에 Tokeonomy의 임호태님께서 당시 팟에 들어가 있는 이더리움의 총량을 반영하여 새롭게 제작한 시뮬레이션이다. 상기에서 소개한 시뮬레이션은 게임의 진행상황을 전혀 고려하지 않고 제작한 표라는 점에서 차이가 있다.

게임에 참여하고 싶은 개인이 라운드 중간에 10 ETH를 넣었다고 가정해보자. 우승자 팟에는 이미 많은 양의 이더리움이 들어가 있기 때문에, 10 ETH를 넣는다고 해서 우승자 팟에는 별다른 영향이 생기지는 않는다. 따라서 어느 팀을 선택하더라도 우승자에게 돌아갈 이더리움의 양은 큰 차이가 없다.

하지만 문제는 우승자가 되지 못하는 플레이어의 선택이다. 우승확률을 고려하지 않는다면, 황소를 선택하는 것이 가장 많은 보상을 가져오므로 합리적인 선택이 될 것이다. 하지만 기본 옵션이 뱀이라는 점 때문에 뱀 옵션을 선택한 게임 플레이어가 제일 많은 것으로 추측된다.

따라서 뱀을 선택할 때 우승할 확률이 높아지므로, 우승자가 되지 못하는 플레이어가 라운드 종료 시 이득을 얻고 싶다면 뱀을 선택하는 것이 낫다. 실제로 많은 양의 이더리움이 뱀에 몰리고 있다는 점에서, 역설적으로 그냥 뱀을 고르는 것이 현실적인 선택이 된다.

PoWH3D 거래소의 P3D 토큰의 이더리움 가격

실제로 PoWH3D 거래소에서 P3D 토큰 가격을 보면 FOMO3D의 출시를 전후해서 가격이 크게 상승했음을 알 수 있다. 기존에 0.01~0.015ETH 사이를 횡보하던 P3D의 가격이 FOMO3D의 출시 이후 4배 가량 상승하여 0.04ETH까지 올랐으며, 현재는 0.03ETH 사이를 횡보하고 있다.

PoWH3D 거래소의 P3D 토큰 공급량에 대한 추이

다른 지표를 보자. PoWH3D 거래소에서 P3D 토큰 공급량을 보면 역시나 FOMO3D 출시를 전후해서 급격하게 상승했음을 알 수 있다. 기존에 1백만 토큰 이하의 공급량을 보여주던 PoWH3D 토큰이 FOMO3D 출시를 전후해서 급격하게 상승했음을 알 수 있다. 최대 370만 토큰까지 공급되었으며 현재는 280만 토큰이 시장에서 유통되고 있다.

언제 키를 구매하는 것이 제일 합리적일까?

‘행동경제학: 경제를 움직이는 인간 심리의 모든 것’ 의 저자 도미오 모리노는 본인의 저서에서 재미있는 예시를 하나 들었다. 미인 투표 게임이라는 것인데, 이를 설명하면 다음과 같다.

어떤 사람이 100명에게 문제를 하나 냈다. 1이상이며 100이하인 숫자 중에서 좋아하는 수를 하나 선택했을 때, 그 수가 모든 사람들이 선택한 수의 평균치의 2/3배에 가장 가까운 예상을 한 사람이 승리한다는 간단한 문제이다.

이 문제에서 참가자 전원이 무작위로 선택했을 때의 평균치는 50, 50의 2/3은 33이다. 모든 사람이 이를 예상한다면, 승리하기 위해서는 33의 2/3, 22가 첫 후보가 된다. 참가자 전원이 동일한 추론을 한다면, 22의 2/3인 15, 15의 2/3인 10, 이런 과정을 거듭하면 7,5,3으로 이어지고, 마지막에는 1이 아니면 승자가 될 수 없다는 사실을 알게 된다. 결국 16을 선택한 사람이 승자가 되었다. (행동경제학 — 도모노 모리오 제 2장 중)

이 문제가 주는 교훈은 인간은 생각보다 합리적이지 않다는 것이다. 이 말은 인간이 합리적인 주체가 아니라고 단정짓는 것은 아니다. 허나, 모든 인간은 본인이 처한 환경에 따라 제한된 조건 하에서 합리성을 발휘한다는 것을 의미한다. 인간이 행동할 때 지닐 수 있는 각종 anomaly (예외) 조건을 취합하고 이에 따라 귀납적으로 논리를 창출해야 한다는 교훈을 주는 예시이다.

FOMO3D로 돌아가보자. 이상적으로는 게임에 아예 참여하지 않거나, 혹은 게임이 끝나기 바로 직전에 키를 구매하는 것이 승률을 높일 수 있는 방법이므로 합리적인 선택이다. 하지만 게임이 출시되자마자 사람들은 키를 무차별적으로 구매하기 시작했다. 심지어 23시간에 키를 구매하는 경우도 존재했다. 비이성적인 행동을 한 것이다. 승률이 급격하게 낮을 수밖에도 없음에도, 게임의 초기 출시에 따른 신기함과 막연한 환상으로 인해 무턱대고 키를 구매한 사람들이 많았던 것으로 풀이된다.

실제로 7월 21일을 전후해서 FOMO3D 컨트랙트가 이더리움 네트워크에서 차지하는 트래픽이 상당하였던 것을 알 수 있다. 이러한 점 때문에 일부에서는 스마트 컨트랙트 기반의 게임이 이더리움 네트워크를 마비시키거나 이더리움 자체의 유동성 저하가 일어날 것이라고 우려하는 목소리가 높았다.

https://www.longhash.com/news/the-fading-glory-of-fomo3d

하지만 이러한 우려는 기우에 불과했다. 그래프에 따르면 보라색 선은 FOMO3D의 실 사용자를 나타내며, 파란색은 FOMO3D의 컨트랙트 주소에 보내지는 이더리움의 수다. FOMO3D가 출시된 7월 21일에 급격한 네트워크 사용 수를 보였지만 이후 사용자들이 게임에 적응하게 되면서 눈치싸움을 시작했다. 결국 FOMO3D에 사용되는 네트워크 부하가 상대적으로 줄어들었으며 이를 통해 사람들이 이성을 찾아간 것으로 볼 수 있다.

FOMO3D에서는 키를 구매하는 과정이 반복될 수록 FOMO3D의 플레이어들은 이자를 두둑하게 챙겨갈 수 있다. 또한 PoWH3D의 이용자 역시 이자를 많이 가져가게 된다. 이용자들은 컨트랙트에서 이더리움을 인출하는 경우가 잦았다. 따라서 FOMO3D의 플레이어는 게임을 플레이할 수록 합리적인 선택을 할 수 없으며, 오히려 PoWH3D 토큰을 보유한 이들의 배를 불려줄 뿐이라는 사실을 깨달았을 것이다. 이는 FOMO3D 게임의 인기를 급격하게 떨어뜨리는 주요한 원인이 되었을 것이라 생각해 본다.

FOMO3D는 키를 구매할 수록 키의 가격이 천천히 올라가는 구조로 이루어져 있다. 이는 사람들이 더 많은 키를 계속 구매하도록 유도하는 장치이다. 만약 키 가격이 키의 구매 횟수에 따라 지수함수처럼 상승한다고 해보자. 사람들이 게임에 참여하지 않는 것이 훨씬 낫다는 합리적인 판단을 더욱 빨리 하게 되지 않았을까?

FOMO means the fear of missing out. https://coincentral.com/dont-miss-out-on-the-fomo3d/

FOMO3D’s Spin-off: 새로운 형태의 도박 게임

현재까지 Why Blockchain?의 질문에 가장 적합한 서비스 유형이 무엇이냐고 하면 바로 도박을 꼽을 수 있을 것이다. 현재 시점에서 블록체인을 적용하고 스마트 컨트렉트를 활용해야 하는 소비자와 제작자의 부담 비용은 상당히 크다.

이러한 부담 비용을 이길 수 있는 산업 분야는 그리 많지 않다. 도박이 바로 그 산업 분야 중 하나이다. 도박은 중앙화된 관리자가 있는 경우에는 이용자들이 신뢰할 수 없다. 도박을 운영하는 사업자가 중도에 사업을 갑작스럽게 그만두고 야반도주 해버리면 자신의 돈을 어떻게 찾겠는가? 도박을 운영하는 데 있어 중앙 관리자가 특정인에게 유리하게 규칙을 작성하거나 혹은 조작, 수정하는 과정을 거치면 어떻게 되겠는가? 그리고 도박의 운영 규칙에 대해서 중앙화된 관리자를 신뢰할 수 없다는 것이 도박 산업의 큰 문제였다.

탈중앙화된 블록체인 서비스에서는 모두가 코드를 열람하고 게임의 규칙을 공평하게 확인할 수 있기 때문에 신뢰할 수 있는 도박이 가능해졌다. 중앙화된 관리자를 두는 비용이 블록체인을 적용하는 비용보다 훨씬 크기에 가능한 일이다. 그 이유때문에 현재까지 이더리움 네트워크에서 가장 인기 있는 디앱 종류가 게임 및 도박일 수밖에 없을 것이다.

FOMO3D가 스마트 컨트렉트 기반의 게임에 관하여 큰 진보를 이룩한 것은 분명하다. 상당히 다양한 스킬과 비법을 FOMO3D가 차용하였다. 하지만 FOMO3D를 베끼고 나오는 많은 카피캣들은 FOMO3D가 지니고 있는 약점을 충분히 보완하지 않은 채 등장하고 있다. 이러한 점에서 일부 크래커들의 지속적인 타겟이 될 것이 분명하다.

비탈릭 부테린도 2라운드에 소규모의 이더리움을 넣어서 FOMO 게임에 참여했다고 한다. https://medium.com/@skawarsxe/vitalik-buys-into-fomo3d-round-2-ddad5a659116

Bonus. FOMO3D의 1라운드 승자는 어떻게 탄생하였나?

이 미친 듯한 게임이 어떻게 종료될 지에 대한 사람들의 추측이 무성하였다. 혹자는 이 게임이 결국 이더리움 네트워크가 망하기 전까지 계속될 수밖에 없을 것이라고 추측하였다. 키 값이 기하급수적인 수준으로 상승하여 구매하는 행위가 ROI를 계산하였을 때 비이성적이라는 사실을 모두가 깨닫기 전까지는 게임 참여자는 계속해서 키를 구매하여 게임에 참여할 수밖에 없다는 것이다. (하지만 키 값은 항상 이더리움 팟에 담겨져 있는 가치에 비해서 상당히 낮은 수치를 지속적으로 유지할 수 밖에 없다.)

게임이 지속될 수록 키를 구매한 사람들은 일정한 이자를 받는다. 키를 많이 구매해 높은 금액의 이더리움을 집어넣은 사람은 더 많은 이자를 받는다. 남은 이자로 많은 양의 키를 한꺼번에 구매한다. 그렇게 타이머는 0초로 다다르지 않게 된다. 이더리움의 가치가 무의미한 수준으로 떨어지기 전까지 이러한 순환이 반복될 수밖에 없다고 판단한 것이다.

어떤 이는 마이너가 서로 담합하여 FOMO3D의 트랜잭션을 조작할 것이라고 주장하였다. 그 요지는 다음과 같다. 우선 채굴자가 FOMO3D의 컨트랙트를 유심히 관찰하면서 봇이 지속적으로 키를 구매하도록 한다. 그러고 나서 충분히 타이머의 시간이 줄어들었을 때 3–4개 정도의 채굴자들이 서로 담합한다.

자신들의 트랜잭션이 들어가고 나서, 공백만 있는 블록을 생성한다거나 자신들에게 유리한 트랜잭션만 승인한다거나 특정 트랜잭션 채굴 풀만 승인한다거나 하여 채굴자들이 이더리움 풀을 가져갈 수 있다는 것이다. 물론 이러한 감시와 검열이 지속된다면 이더리움에 대한 신뢰가 하락하여 가격이 폭락할 것이라는 의견도 적지 않았다.

실제 1라운드에서 이더리움을 가져간 당첨자는 평범한 플레이어가 아니었다. 고도로 계산된 전략에 따라서 무의미한 트랜잭션을 반복적으로 발송함으로써 경쟁자를 제거하는 방식을 취했던 것이다. SECBIT Labs가 CoinMonks에 기고한 글을 참고해보자.

A series of blocks (Source: https://medium.com/coinmonks/how-the-winner-got-fomo3d-prize-a-detailed-explanation-b30a69b7813f)

블록 6191896까지는 92개의 트랜잭션을 담은 정상적인 블록이었다. 그런데 6191898부터 6191908까지는 블록에 참조된 트랜잭션 갯수가 급작스럽게 감소하였다. 심지어 블록 6191906을 보면 트랜잭션이 3개 뿐인 사실을 발견할 수 있다. 해당 트랜잭션은 같은 컨트랙트로 보내졌으며 심지어 가스비로 총합 4이더나 사용한 것을 알 수 있다.

충격적인 것은 3개의 트랜잭션이 모두 보내졌던 컨트렉트 (0x18e1) 의 생성자의 주소는 0xa169..와 같은데 이 주소는 1라운드 승자의 주소와 정확하게 일치한다는 것이다. 4이더를 가스비로 지불함으로써 자신의 트랜잭션이 우선적으로 처리되도록 한 것이다. 심지어 해당 컨트렉트로 보내진 트랜잭션의 최종 결과값은 fail이다. 가스값 제한을 의도적으로 심각하게 낮은 값으로 설정하고 이를 모두 하나의 트랜잭션에 써버렸다.

요약하자면, 높은 가스비를 지불함으로써 마이닝 풀이 자신의 트랜잭션을 우선적으로 처리하도록 하고, 의미가 없는 트랜잭션을 보냄으로써 다른 키 구매가 제 시간에 이루어지지 못하도록 하여 게임의 타이머를 의도적으로 조작하였고 결국 공격자의 게임 승리 확률을 급격하게 높였다고 추측할 수 있다.

앞으로 FOMO3D와 유사한 게임에서도 비슷한 공격이 이어질 것으로 보인다. 일시적인 이더리움 네트워크의 장애가 생길 가능성도 배제할 수 없으며, 스마트 컨트랙트 기반의 도박이 신뢰할 수 없다는 의견이 거세지면서 FOMO3D와 유사한 디앱이 인기가 시들해질 수도 있다. 피로스의 승리처럼 많은 희생을 치르고 이더리움 팟의 최종 승자가 되더라도 그 시점에서는 이미 네트워크가 무너져서 ETH의 가치가 떨어졌을 수도 있다.

물론, FOMO3D 이후로 스마트 컨트랙트 기반의 게임이 더욱 정교해질 것이다. 이미 FOMO3D 출시 후 다양한 응용모델을 갖춘 dApp이 출시되고 있기도 하다. 이러한 흐름에 따라 크래커들은 항상 취약점을 찾아 일확천금을 노릴 것이라는 사실도 분명하다. 최소한 이더리움 도박이 비이성적인 행위가 되어버리기 전까지는 말이다.

Written by Jin Hyung Park, Advised & Simulated by Hotae Lim [Tokeonomy]

Reference

--

--

Sigrid Jin
tokeonomy

Software Engineer at Sionic AI / Machine Learning Engineer, Kubernetes. twitter.com/@sigridjin_eth