이 아티클은 dYdX Foundation으로부터 리서치 그랜트를 받고 작성된 글입니다. dYdX Foundation에 감사의 인사를 전합니다.
dYdX하면 가장 성공한 DEX라고 생각하는 분들이 많을 것이고, 그것이 사실이긴 하지만, 리서처의 관점에서 dYdX가 흥미로운 프로젝트인 이유는 크게 두 가지가 있다: 1) 블록체인 업계에서 지금 가장 유행하고 있는 ‘자체적인 롤업을 구축하는’ 것에 대한 실질적인 반례라는 점 그리고 2) 요즘 또 업계에서 가장 치열하게 논의되고 있는 인프라 vs 애플리케이션 논쟁에 유의미한 실사례를 던져줄 수 있는 프로젝트라는 점들이 바로 그 이유들이다. 하나의 이유씩 자세히 살펴봐보자.
1.1.1 롤업 만능주의에 대한 직접적인 반례
2023년의 블록체인 업계는 ‘롤업의 시대’였다고 봐도 무방할 정도로 수많은 롤업체인들이 나왔다. 이더리움의 강력한 경쟁자로 여겨졌던 테라(Terra)가 무너지고 그 이후 솔라나(Solana)도 FTX 사태로 큰 피해를 입자, ‘이더리움이 승리했다.’라는 내러티브는 블록체인 업계를 지배하게 되었다. 해서 수많은 프로젝트는 자체적인 레이어1 블록체인을 구축하는 것을 포기하고 이더리움의 보안을 물려 받으면서도 어느정도의 자유도를 가질 수 있는 이더리움의 롤업이 되기를 선택했다.
물론 그럼에도 레이어1 체인들이 탄생하지 않은 것은 아니다. 페이스북의 블록체인 프로젝트였던 Diem에서 많은 프로젝트들이 파생되었고, 컨센서스등 다양한 분야에서 새로운 개념을 가지고 나왔다. 하지만 이들의 경우엔 애초에 시작부터 레이어1으로 한 케이스다. 정말로 흥미로운 것은 롤업이었다가 자체적인 레이어1으로 전환하는 경우일 것이다. 심지어 레이어2로써 굉장히 성공적인 입지를 다지던 프로젝트가 그 모든 것들을 버리고 자체적인 체인을 런칭했다면, 그 이유가 매우 궁금해지지 않을 수 없다. 바로 dYdX가 그렇다는 점에서 어찌보면 ‘롤업 만능주의’에 대한 직접적인 반례라고 생각이 들었다. dYdX는 1) 시작부터 레이어1 체인도 아니었고 2)레이어2였을 때 유저들에게 인기가 없었던 프로젝트도 아니다. 어쩌면 레이어2 프로젝트들 중에서 가장 성공적이었다고 할 수 있을 정도로 많은 유저와 거래량을 만들었던 프로젝트가 어떠한 이유로 자체적인 체인을 런칭하게 된 것일까? 이러한 이유를 살펴보다보면, 롤업 그리고 레이어2가 모든 문제의 해결책이 아니라는 것을 알 수 있을 것이라고 생각했다.
1.1.2 인프라와 애플리케이션 논쟁에서 중요한 사례가 될 수 있다
두 번째로는 요즘 업계에서 가장 많이 논의되는 ‘인프라가 먼저냐 애플리케이션의 먼저냐’하는 논쟁에 대한 실질적인 사례를 제시할 수 있다는 점이었다. 후술하겠지만, dYdX는 dYdX라는 프로덕트가 구현된 인프라가 발전될 때마다 프로덕트의 퀄리티도 같이 향상되었다. 즉, ‘확장 가능한 인프라가 있어야만, 프로덕트도 더 발전할 수 있다.’는 주장의 실질적인 뒷받침 근거가 될 수 있는 프로젝트라는 이야기다. dYdX는 V4인 dYdX 체인이 나오기까지 인프라 환경을 두 번이나 바꾸면서 프로덕트를 발전시켜 나갔다. 물론, 더 나은 확장성을 가진 인프라에서 자신들의 프로덕트를 구현할수록 해당 프로덕트는 더 유저 친화적이었고 더 다양한 기능들을 지원할 수 있었다. 해서, 어찌보면 아직까지는 ‘인프라가 중요하다’라는 주장에 대한 직접적인 사례가 될 수 있다는 점에서 dYdX는 주목할만한 프로젝트다.
1.1.3 Let’s Delve into dYdX
위에서 언급한 이유들 말고도, dYdX는 여러 방면에서 굉장히 흥미로운 프로젝트다. 이번에 독자적인 dYdX 체인을 런칭하기 전에도 이더리움 메인체인에서 레이어2로 마이그레이션 했던 경험이 있었고, 디파이가 꽃 피던 시기에 역설적으로 dYdX 라는 서비스 자체는 존폐의 위기에 놓였던 적도 있었다. dYdX가 처했던 위기들과, 해당 위기들을 어떻게 극복했는지만 보더라도 굉장히 흥미로운 프로젝트이고 온체인 프로덕트를 만드는 입장에서도 배울점이 많은 프로젝트라는 생각이 든다.
해서, 필자는 이번 아티클을 통해 dYdX의 전반적인 역사와 개요 뿐만 아니라 dYdX가 자체 체인을 런칭한 배경과, dYdX체인에 대한 상세 설명, 또한 기존 dYdX와 새로운 dYdX의 비교를 할 것이고 마지막으로 dYdX의 여태까지의 행보가 업계에 던지는 화두가 무엇인지를 조사하여, 이를 통해 새롭게 프로덕트를 런칭할 고민을 하고있는 사람들 뿐만 아니라 프로덕트에 대한 피봇을 고민하는 사람들에게 도움이 되어보고자 한다.
우선 dYdX는 탈중앙 거래소이고, 현재는 파생상품(특히 무기한 선물 계약)을 다룬다(물론 dYdX도 처음부터 무기한 선물 계약을 다룬 것은 아니고 처음엔 마진거래와 커버드 옵션만을 다뤘다). 해서, dYdX를 이해하려면 암호자산을 다루는 탈중앙 무기한 선물 거래소(Crypto Perpetual DEX)에 대한 개념을 먼저 숙지해야한다. 우선 탈중앙 거래소라는 것은 자산을 거래할 때 기존 중앙 거래소처럼 하나의 중앙화된 존재가 거래들을 처리하는 것이 아니라, 블록체인과 스마트 컨트랙트를 활용하여 탈중앙화된 방식으로 거래를 처리하는 거래소를 말한다. 또, 무기한 선물이란, 선물 거래(선물 거래는 어떠한 자산이나 재화를 미래의 특정 시간에 정해진 가격으로 거래하는 파생상품의 일종이다)와 비슷하게 작동하지만 일반 선물 거래는 기한이 정해져있는 방식인 반면 무기한 선물은 말 그대로 기한이 정해져있지 않은 계약을 뜻한다. 즉, 만기가 없다는 뜻이다. 만기가 없기 때문에 트레이더들은 지속적으로 자신들의 포지션을 가져갈 수 있다는 장점이 있다.
즉 dYdX는 암호자산을 다루는 탈중앙 무기한 선물 거래소이기 때문에 만기가 없는 선물 계약을 다루지만, 거래들이 일어나는 방식이 기존 거래소와 같지 않고, 블록체인과 스마트 컨트랙트를 이용해서 최대한 탈중앙화 된 방식으로 구현했다는 점이 다르다고 할 수 있다.
탈중앙 무기한 선물 거래소에 대해서 이해했다면, 이제 본격적으로 dYdX와 그 역사에 대해서 자세히 살펴보자.
dYdX의 설립자인 안토니오(Antonio Juliano)는 dYdX 이전에도 블록체인 업계에서 커리어를 쌓고 있었다. 그리고 흥미롭게도 그의 크립토/블록체인 커리어는 전 세계 최대 규모의 암호자산 거래소인 코인베이스(Coinbase)에서 개발자로 일하면서 시작되었다. 안토니오는 코인베이스에서 일하면서 블록체인과 암호자산에 대한 다양한 지식을 쌓을 수 있었다. 어쩌면 그가 dYdX의 프로덕트 아이디어를 떠올릴 수 있었던 이유도, 그가 이전에 코인베이스라는 암호자산 거래소에서 개발자로 일했던 것 때문일 것이다. 안토니오가 dYdX를 구상하던 시점은 암호자산 업계에서 마진 거래가 한창 유행하던 시기였다. 다양한 사람들이 단순히 암호자산을 거래하는 것을 넘어서 레버리지까지 사용해서 공격적인 투자를 하던 시기다. 이 때 안토니오는 이러한 레버리지 거래를 블록체인 위에서 구현하면 어떨지에 대한 아이디어를 구상하고 있었다. 그래서 탄생한 것이 바로 dYdX였다.
그 이후 dYdX는 a16z와 폴리체인에게 130억($10M)의 가치를 인정받아 약 26억($2M)투자를 받았고 점차 규모를 넓혀가며 프로덕트를 세상에 선보였다.
이 때의 dYdX는 사실 지금의 dYdX랑은 많이 다르다. 이 때는 레이어2에 만들어진 서비스도 아니었고(놀랍게도 이더리움 메인 체인에 디플로이한 서비스였다), 처음에는 자체적인 트레이딩 시스템도 없었다(써드 파티 DEX를 사용했었다). 또, 위에서 언급했었지만 dYdX가 시작부터 무기한 선물 거래를 지원한 것도 아니었다. 그렇다면 오늘날 우리가 알고있는 dYdX는 어떻게 만들어졌을까?
1.3.1 가스, 가스, 가스! DeFi 썸머가 불러온 참사: From L1 to L2
우선 dYdX가 이더리움 메인체인에서 서비스를 제공하다가 레이어2로 넘어간 이유를 알아봐야한다. 많은 사람들은 모르겠지만 dYdX는 2020년 초반까지만 하더라도 탈중앙 거래소중에 거래량이 가장 많이 나오는 애플리케이션이었다. dYdX 혼자서 탈중앙 거래소 거래량의 절반을 차지하던 시기가 있었으니 말 다했다. 하지만 컴파운드가 거버넌스 토큰인 COMP를 런칭하고 리퀴디티 마이닝이라는 개념을 소개하면서 이른바 디파이 썸머(DeFi Summer, 디파이 전성시대를 일컫는 단어)가 시작되었다. 디파이 썸머 기간동안엔 디파이 토큰들이 우후죽순 생겨났고(대부분 유동성 공급을 장려하기 위해서 무의미하게 생성된 토큰들이지만 당시에는 아무런 의미없이 해당 토큰들의 가격이 올라갔었다), 새로운 디파이 토큰들이 유니스왑에 빠르게 상장되고 거래되면서 많은 트레이더들이 유니스왑(Uniswap)을 사용하게 되었다. 이로인해 dYdX의 거래량은 거의 무의미한 수준(50%에서 0.5%까지)까지 떨어지게 된다.
dYdX에게 디파이 썸머가 단순히 점유율 측면에서만 위기를 안겨줬던 것이라면 오히려 다행일 것이다. 디파이 썸머는 이더리움 트랜잭션 수수료를 엄청나게 끌어올렸고, 이는 여태까지 유저 경험을 위해 유저들의 트랜잭션 수수료를 대납해주고 있었던 dYdX에게 사형선고나 다름이 없었다. 기존에는(디파이 썸머 이전에는) 트랜잭션 수수료가 저렴했기 때문에 dYdX의 거래 수수료로도 트랜잭션 수수료를 충분히 지불하고도 남았지만, 디파이 썸머로 인해 이더리움 트랜잭션 수수료가 약 100배에서 1,000배 가까이 오르자 dYdX는 엄청난 적자에 시달리게 되었다. 나중엔 dYdX에서 거래하기 위한 최소 거래 금액($10,000)을 정하는등 나름대로 조치를 취했으나, 결국 트랜잭션 수수료에 비례하는 거래 수수료를 부과하게 되었고 이는 dYdX를 이용하는 유저들에게 너무나 치명적인 장애물이 되었다(한 번 거래하는데 $100 이상의 수수료를 지불하는 경우도 많았으니 말이다).
아이러니한 일이다. 디파이가 가장 꽃 피던 시기였던 디파이 썸머에 dYdX는 살얼음판을 걷고 있었다니 말이다. 많은 사람들은 모르겠지만, 이 때 당시에 dYdX는 거의 파산할 위기에 처해있었다. 런웨이도 얼마 남지 않았던데다, 기존 투자사들이 dYdX에 추가로 투자하기를 거부하면서 심각한 자금난을 겪고있었을 뿐만 아니라, 프로덕트적으로도 dYdX의 차별점을 찾기 위해 고군분투 하던 시기였다(재미있는 사실은, 이 때 dYdX에게 자금을 대주었던건 다름아닌 Three Arrows Capital이었다는 점도 다시 돌이켜보면 너무 재미있는 부분이다).
결국 dYdX가 살얼음판 같았던 시기를 벗어나기 위해서는 본질적인 변화가 필요했고 그게 바로 이더리움 메인체인을 벗어나는 것이었다. 그렇게 해서 우리가 오늘날 알고있는 스타크웨어 기반의 탈중앙 거래소인 dYdX가 탄생하게 되었다.
dYdX에게 레이어2라는 솔루션은 유니스왑과의 경쟁이 어려웠던 부분을 해소하기 위한 해결책이기도 했지만 무엇보다 이더리움의 비이성적인 트랜잭션 수수료를 더 이상 감당하기 어려웠기 때문에, 저렴한 수수료를 부과하면서도 dYdX의 처리량을 소화할 수 있는 이더리움의 대안이었다고 볼 수 있다.
더구나나 당시에 이더리움의 레이어2가(특히 스타크웨어가) 이더리움 메인체인에서 서비스를 옮기기에 가장 최적화 되어있었고, 꽤나 높은 수준의 확장성을 제공하면서도 이더리움의 보안을 레버리지 할 수 있다는 점에서 dYdX에게 매력적인 대안으로 다가왔을 것이다. 또한 확장성을 확보했기 때문에 프로덕트적 관점에서 다양한 시도를 해볼 수 있었고, 이는 결과론적으로 dYdX라는 프로덕트의 전반적인 발전에도 영향을 끼쳤다. (dYdX가 레이어2로 옮기고 나서 이뤄낸 프로덕트의 발전이 어쩌면 위에서 언급했던 “인프라가 먼저냐 애플리케이션이 먼저냐” 논쟁에서, 인프라의 손을 들어주는 예시중에 하나가 될 것이라고 생각한 이유도 바로 이 때문이다)
뒤에서 후술하겠지만, 독자적인 dYdX체인을 만들기 전 까지 우리가 흔히 알고있는 dYdX는 사실상 스타크웨어 기반의 dYdX가 맞으며, dYdX는 레이어2 솔루션을 활용하여 최전성기를 맞이하게 된다. 레이어2로 넘어간 dYdX는 어땠는지 한 번 하나하나 분석해보자.
사실 dYdX가 스타크웨어를 채택했다고 했을 때 가장 먼저 드는 생각은, 그 많고 많은 레이어2 솔루션 중에서 왜 하필이면 스타크웨어였나? 하는 부분이다. 스타크웨어가 아닌 다른 레이어2 솔루션도 이더리움에 비하면 상당히 효율적인 환경을 제공해주고 있기 때문에, 스타크웨어가 명확한 차별점이 있지 않았다면 dYdX의 입장에선 스타크웨어를 굳이 사용할 이유가 없었다. 그렇다면 스타크웨어가 다른 롤업들, 그리고 다른 ZK 롤업들과 비교했을 때 다른점이 무엇이 있었을까?
우선 스타크웨어는 특히나 dYdX 같이 초당 수많은 거래를 처리해야하는 애플리케이션에 특화되어있는 레이어2 솔루션이다. 스타크웨어는 많은 트랜잭션을 하나의 배치로 묶어서 처리할 수 있기 때문이다. 하지만 이러한 특성은 스타크웨어 말고도 다른 ZK 롤업들 역시나 가지고 있는 특성이기 때문에 스타크웨어만의 차별점이라고 할 수는 없다. 오히려 스타크웨어가 다른 ZK 롤업들과 다르다고 할 수 있는 부분은 좀 더 다양한 종류의 트랜잭션을 구사할 수 있다는 부분에 있었다. 물론 현재 zkEVM과 같은 다양한 방법론들이 나오고는 있지만, dYdX가 레이어2 솔루션을 탐색하던 시기에는 대부분의 ZK 롤업들이 단순 트랜잭션(토큰 전송과 같은)에만 최적화 되어있던 경우가 많았다. 해서, dYdX는 트랜잭션들을 하나의 배치로 묶을 수 있으면서도 자체적으로 스마트 컨트랙트가 지원되는 솔루션을 찾았던 것이고 당시에는 스타크웨어의 스타크엑스(StarkEx)가 그 두 가지 충족 조건들 모두 만족하는 대안이었다. 물론 스타크웨어는 EVM 호환이 되는 레이어2가 아니었기 때문에 스타크웨어를 기반으로 애플리케이션을 구축하기 위해선 자체적인 언어(Cairo)를 배워야 한다는 부분이 불편함으로 작용했지만, dYdX에겐 그것이 그렇게 큰 장애물이 아니었던듯하다.
또한, 안토니오에 따르면 당시에 스타크웨어가 이더리움 기반 애플리케이션이 온보딩 하기에 가장 간편한 환경을 제공해줬고, 프로덕트를 시핑하는데에 있어서 가장 준비가 잘 되어있었다고 한다.
스타크웨어의 인프라를 레버리지 한 dYdX는 높아진 확장성을 기반으로 교마진(하나의 마진 잔액을 가지고 여러 포지션을 구축할 수 있는 마진 거래 방법)을 지원하기 시작했고, 이러한 변화는 dYdX에 더 풍부한 유동성을 가져왔다. 또한, dYdX는 더 다양한 자산들을 지원하기 시작하면서 수많은 트레이더들을 불러모으는데에도 성공했다. 새로운 엔진을 단 dYdX는 거래량 측면에서 이전과 비교했을 때 5배가 늘어나는등 비약적인 성장을 거두었다.
2.3.1 Introducing $DYDX, 완벽한 굳히기 전략
스타크웨어(StarkEx)라는 날개를 단 dYdX 재단은 자신들의 입지를 좀 더 명확하게 굳히기 위해서, 2021년 여름에 $DYDX라는 토큰을 런칭한다. $DYDX는 DYDX 프로젝트에 대한 거버넌스 토큰으로 해당 토큰의 궁극적인 목적은 프로토콜이 커뮤니티에 의해서 유기적으로 운영되는 것에 있지만, 프로토콜 참여자들에게 보다 더 적극적인 참여를 유도하는 인센티브의 목적도 가지고 있었다. 레이어2로 전환하고 나서 굉장히 성공적인 성장을 보이고 있지만, 토큰 런칭을 통해 ‘굳히기’에 들어가고 싶었던 것이다. $DYDX의 분배표를 한 번 봐보자.
$DYDX가 다른 토큰들과 비교했을 때, 조금 다른 분배 계획을 가지고 있는 부분은 바로 Retroactive Mining 부분과 Trading Rewards 부분, 그리고 Liquidity Provider Rewards 부분일 것이다. 각각의 항목을 살펴봐보자.
Retroactive Mining
여태까지 dYdX는 토큰이 없이 운영되어왔던 프로토콜이었기 때문에, 갑자기 토큰을 런칭하게 되었을 때 새로운 유저들에게만 토큰을 인센티브로 준다면 아무래도 형평성의 문제도 있고, 여태까지 dYdX를 열성적으로 사용했던 유저들이 지속적으로 dYdX를 사용할 요인도 사라질 것이다. 해서 dYdX가 준비한 것이 Retroactive Mining이다. Retroactive(소급적)라는 단어의 뜻이 내포하고 있듯, 해당 보상은 여태까지 dYdX에서 거래한 유저들을 대상으로 토큰을 지급하는 것을 말하며 단순히 dYdX에 돈을 입금하고 한 번이라도 거래해본 유저라면 토큰으로 보상을 해주는 것이 Retroactive Mining의 골자이다. 하지만 무조건 과거에만 트레이딩을 했다고 하여서 보상을 받는 것은 아니고 레이어2에서 구현된 dYdX에도 거래를 해서 특정 목표를 달성해야지만 보상을 받을 수 있게 하였다. 이로써 dYdX는 과거 유저들에 대한 보상과 더불어, 과거에만 사용해보고 새로운 dYdX를 사용해보지 못한 유저들도 레이어2 dYdX로 끌어들일 수 있는 환경을 조성하였다. Retroactive Mining에는 총 토큰량의 대략 5%가 해당 리워드에 사용되었다.
Trading Rewards
트레이딩 리워드는 말 그대로 레이어2 dYdX에서 거래한 사람들에게 인센티브를 주기위한 보상이었고, 총 토큰량의 대략 20%가 배정되었다. 보상의 기준은 dYdX에 얼마나 많은 수수료가 지불되었느냐를 기반으로 산정한다. 자세한 내용은 dYdX의 독스를 참고하시기 바란다.
Liquidity Provider Rewards
트레이딩을 유도하는 인센티브 말고도, 여느 디파이 토큰이 그렇듯 유동성 공급자에게도 $DYDX를 제공해주었다. 해당 보상은 양 사이드(바이 사이드와 셀 사이드)의 유동성을 풍부하게 해주는 것을 목표로 하였으며 전체 토큰 물량의 약 5.2%가 유동성 공급자에게 지급되었다. 자세한 인센티브 지급 방식은 dYdX의 독스를 참고하시기 바란다.
$DYDX의 임팩트
dYdX의 토큰 런칭은 그야말로 대성공이었다. dYdX가 처음 레이어2로 무기한 선물 거래 프로덕트를 런칭했을 때 일일 거래량이 약 400억($30M)이었다면, 토큰 런칭 이후에는 2.5조($2B)이 발생하는등 정말로 비약적인 성장을 거두었다. dYdX의 토큰 런칭이 굉장히 성공적이었다는 의미이다.
결과적으로 dYdX의 레이어2 전략은 굉장히 성공적이었다. 레이어2로의 전환은 존폐의 위기에 놓여있던 자신들의 프로덕트를 시장에서 가장 주목받는 프로덕트로 만들었고, 이후에 토큰까지 런칭하면서 dYdX는 탈중앙 거래소중에서도 독보적인 프로젝트가 되었다. 하지만 dYdX의 파운더인 안토니오의 고민에서도 드러났듯, dYdX는 프로덕트의 정체성적인 측면에서 많은 고민이 있었다.
”만약에 우리가 완전히 탈 중앙화 된 방식으로 프로덕트를 제공하지 않는다면, 바이낸스와 FTX에 비교했을 때 우리의 비교우위는 무엇인가? 우리가 어떻게 그들보다 10배 더 나을 수 있을까?”
안토니오 줄리아노(Antonio Juliano), dYdX 창립자
분명 레이어2 기반의 dYdX는 큰 성공을 거두었지만, 많은 부분에서 여전히 애매한 것들이 많았다. 우선 완전히 탈 중앙화된 방식의 프로덕트도 아니었던데다(레이어2 기반의 dYdX는 하이브리드 형태의 탈중앙 거래소였다. 즉 오더북이나 매칭엔진은 중앙화된 방식으로 운영이 되었다고 볼 수 있다), 확장성 부분에서도 많은 개선을 이루었음에도 dYdX가 더 좋은 프로덕트가 되기 위해서는 지금보다 더 많은 거래를 처리할 수 있어야 했다(이 또한 인프라가 아직은 프로덕트가 발전하는데에 있어서 중요한 역할을 하고있음을 시사한다). 또한 dYdX는 자신의 프로덕트에 딱 맞는 인프라가 필요했다. 레이어2 역시 나름대로 인프라를 맞춤형으로 제작할 수 있는 어느정도의 환경은 제공해주지만, dYdX는 여기서 더 나아가 모든 부분 자신의 프로덕트에 맞출 수 있는 환경이 필요했다. 그러기 위해선 기존에 존재하는 네트워크에 기반하는 레이어2는 이상적인 해답이 아니었다.
dYdX가 더 나은 프로덕트가 되기 위해선, 더 많은 거래를 처리할 수 있으면서도 탈중앙 거래소로써 정체성도 확실하게 확립해야할뿐 아니라 탈중앙거래소에 걸맞는 여러 기능들을 추가하고 변경할 수 있어야 했다. 해서, dYdX는 한 번 더 블록체인을 옮기는 전략을 선택하게 된다.
위에서 공유했듯, 결국 안토니오는 dYdX라는 프로덕트를 만들면서도 해당 프로덕트가 다른 CEX와 비교했을 때 차별점이 무엇일지에 대해서 계속 고민해왔다. 결국 dYdX는 탈중앙 거래소이기 때문에 완벽한 탈중앙성을 달성하는 것이 차별점이라고 생각한 것일까? dYdX가 자체 체인을 런칭하는데엔 여러 이유가 있었겠지만 제일 중요했던 이유중에 하나로 “온전한 탈중앙성(Full Decentralization)을 달성하는 것”을 꼽았다. 물론 이더리움 진영을 좋아하는 사람들은 “가장 탈 중앙화 되어있는 레이어1인 이더리움을 떠나서 자체 체인을 런칭하는 것이 어떻게 탈중앙화를 달성할 수 있는 길이지?”라고 되물을 수 있지만, dYdX는 프로덕트의 모든 부분을 온체인에서 처리하지 않았기 때문에 여기서 이더리움의 탈중앙성은 논외가 되어야 맞다. 어쩌면 이더리움을 지지하는 사람들과 dYdX가 바라보는 탈중앙성에 대한 정의가 달랐는지도 모르겠다.
dYdX가 진정으로 원하는 것은, 탈중앙화 되어있는 네트워크를 ‘어느정도’레버리지 하는 것이 아닌, 정말로 프로덕트의 모든 부분을 탈 중앙화된 방식으로 해결하는 것에 있었고 그러기 위해서는 결국 자체적인 체인을 런칭해야 했다는 것이다. 제일 탈중앙화 되어있는 네트워크 위에 구현해야만 무조건 탈중앙화 되어있는 것은 아니라는 것이다.
dYdX는 자체적인 체인을 런칭함으로써 비로소 오더북을 포함한 모든 부분들을 탈중앙화 된 방식으로 운영하는데에 성공했다. dYdX 를 배포한 법인인 dYdX Trading 과 dYdX 재단 모두 현재 dYdX 체인에 어떤 부분에도 관여하지 않고 있다.
또 중요한 점이라면 바로 확장성이다. dYdX에게 자체적인 체인 런칭은 프로덕트의 모든 부분에서 탈중앙화를 가능하게 함과 동시에 기존에 부족했던 확장성을 확보할 수 있는 방법이었다. 기존에 레이어2에서의 dYdX는 초당 100개의 트랜잭션을 처리할 수 있었다면, 지금 독자적인 체인에서는 약 2,000개의 트랜잭션을 처리할 수 있는 성능의 향상을 이뤄냈다. 20배의 성능 향상이다. 아마 이러한 성능의 향상은 dYdX가 이더리움 메인체인 위에서 서비스를 제공하다가 L2로 전환하고 나서 프로덕트가 맞이했던 변화만큼이나 프로적트적으로 큰 변화를 야기할 가능성이 높다. dYdX는 앞으로 더 유저 친화적이고, 더 빠른 프로덕트를 세상에 내놓을 것이다.
dYdX가 독자적인 체인으로 가기 위해서 선택한 블록체인 SDK는 바로 코스모스 SDK였다. 기존에도 Starkware의 StarkEx를 썻듯, dYdX는 블록체인을 처음부터 구축하는 거 보다는, 잘 만들어진 프레임워크를 dYdX의 니즈와 성향에 맞게 변경하는 것을 선호했고 이번 역시나 블록체인 업계에서 가장 활발하게 쓰이고있는 블록체인 SDK인 코스모스 SDK를 사용하게 되었다.
그렇다면 왜 굳이 코스모스 SDK일까? 물론 dYdX에서 명확하게 밝힌바가 없지만 필자의 생각으로는 Cosmos SDK가 가진 유연성(dYdX 뿐만 아니라 많은 프로토콜들이 코스모스 SDK를 개조하고 변형하여 자신들의 니즈에 맞게 설계하고 있다는 점을 비추어 봤을 때)과 기존에 코스모스 생태계가 구축해놓은 생태계를 레버리지 할 수 있기 때문에 코스모스 SDK를 선택했을 것이라고 본다(실제로 dYdX는 체인을 런칭하자마자 또 다른 코스모스 기반 체인은 Noble과 협력하여 쉬운 USDC 전송을 위한 파트너십을 맺었다). IBC(Inter-blockchain communication)를 통해 체인들간에 유기적인 데이터 전송이 가능한 것도 dYdX에게 큰 메리트였을 것이다.
dYdX의 기본 아키텍쳐는 다른 코스모스 기반 체인들과 비슷하지만, 다른점이 있다고 하면 인덱서(Indexer)와 프론트엔드(front-ends)가 존재한다는 부분과 벨리데이터들이 기존 코스모스 기반 블록체인과 달리 몇 가지 역할 수행을 더 해야한다는 점일 것이다. 그러면 각각의 다른점을 하나씩 살펴보도록 하자.
3.2.1 벨리데이터
dYdX는 코스모스 SDK를 기반으로 만들어졌지만, 벨리데이터의 역할이 다른 코스모스 앱체인들과는 다른 부분이 있다. 기존 코스모스 앱체인들은 단순히 트랜잭션을 전파하고, 블록을 검증하고 합의하는 과정에만 참여했다면 dYdX에는 각각의 벨리데이터들이 자신들의 오더북을 가지고 있어야 하며, 오더북에 주문을 저장해야하는 의무가 있다(해당 주문들은 컨센서스에 반영되지 않는다). 벨리데이터들이 오더북을 오프체인으로 관리하기 때문에 유저들이 주문을 넣거나 취소하는 행위들에 트랜잭션 수수료가 부과되지 않는다는 것이다.
벨리데이터들 중에 프로포저(proposer)가 있는데 이들은 다음 블록에 담길 정보를 제안하는 역할을 한다. 해서, 유저가 주문을 넣으면 해당 주문을 매칭해서 다음 블록에 담는 역할을 하고, 컨센서스를 진행하는 역할을 하고있다.
또, dYdX에선 풀노드의 역할이 매우 중요한데. 이들은 직접적인 컨센서스 과정에 참여하진 않지만, 밑에서 설명할 인덱서를 지원해준다는 점에서 dYdX 서비스가 운영되는데에 매우 중요한 역할을 한다는 점도 기존 체인들과 조금은 다른 점이라고 할 수 있다(물론 기존 체인들에서도 풀노드의 역할을 매우 중요하다).
3.2.1 인덱서(Indexer)
위 그래프에도 나와있듯, 인덱서는 dYdX 체인의 풀 노드로부터 정보를 읽어오고, 저장한뒤에, 엔드 유저에게 해당 정보를 웹2 친화적으로 전달하는 역할을 한다. 물론 프로토콜 자체적으로도 해당 역할을 할 수 있지만, dYdX의 벨리데이터와 풀노드가 이런 역할을 수행하기 위해서 최적화된 주체들이 아니기 때문에 속도가 느리고 비효율적일 수 밖에 없다. 또한 벨리데이터에게 직접적인 쿼리를 너무 많이 보내면 벨리데이터가 본연의 역할(컨센서스에 참여하고 검증하는 행위)을 수행하는데에 큰 방해가 될 수 있기 때문에 인덱서라는 자체적인 시스템이 존재하는게 중요하다.
그래프 우측에 있는 Postgres, Redis, Kafka는 각각 온 체인 데이터를 저장하거나, 오프체인 데이터를 저장하거나, 인덱서 서비스들에게 데이터를 전달하는데에 사용한다.
3.2.2 프론트 엔드(Front-end) 프론드 엔드는 말 그대로 엔드 투 엔드 애플리케이션을 개발할 때 보다더 용이하게 만들기 위해서 구축된 것이라고 볼 수 있다. 우선 웹 프론트 엔드의 경우, 자바스크립트와 리액트로 만들어졌고 오더북 정보를 API를 통해 인덱서로부터 받아서 그 정보를 바탕으로 트레이드 정보를 체인에 직접 전달하는 역할을 한다. dYdX는 해당 프론트 엔드의 코드베이스를 오픈소스화 할 것이기 때문에 누구나 dYdX의 프론트에 접근할 수 있도록 하였다. 모바일 프론트 엔드의 경우도 웹 프론트 엔드와 비슷하게 인덱서와 소통하여 정보를 가져오고, 트레이딩 트랜잭션을 직접 온 체인에 작성할 뿐만 아니라 오픈소스이기 때문에 누구나 디플로이 할 수 있도록 하였다.
3.2.3 그래서 어떻게 주문이 처리되나? 위에 있는 주체들을 다 포함해서 실제로 dYdX 체인에서 어떤식으로 주문이 처리되는지를 알아보자:
유저가 API또는 프론트엔드를 통해 주문을 넣는다.
해당 주문이 벨리데이터에게 전달된다. 그러면 전달받은 벨리데이터는 해당 트랜잭션을 다른 벨리데이터들에게 전달하고 풀노드 역시 해당 정보를 그들의 오더북에 업데이트해서 넣는다.
여느 코스모스 SDK 기반 체인들이 그렇듯 합의의 과정에서 제안자(리더)를 선택한다. 그리고 제안자는 주문을 매칭하고 해당 주문을 그 다음에 제안될 블록에 추가한다.
제안된 블록은 합의의 과정을 거치게 되는데 만약 2/3 이상의 벨리데이터가 해당 블록이 옳다고 확인했고 투표를 했다면 블록은 커밋된 것이고 온체인 데이터베이스에 저장된다(풀노드에도 저장된다는 뜻).
만약 2/3이상의 벨리데이터가 해당 블록을 검증하지 못했다면, 해당 블록은 거절된다.
블록이 커밋된 이후엔 해당 데이터가 풀 노드와 인덱서에게 전달되고, 인덱서는 해당 데이터를 API와 웹소켓을 통해 프론트에 반영한다.
당연히 자체 체인을 런칭하게 되면서 바뀌는 부분은 토큰의 유틸리티 부분이다. 앞서 언급했듯 dYdX 체인의 가장 최우선 목적은 ‘온전한 탈중앙화(full decentralization)’ 이다. 이전엔 dYdX 거버넌스를 통해 할 수 있는 것이 한정적이었다면, dYdX 체인에선 프로덕트에 대한 모든 부분이 토큰 홀더들에 의해서 정해진다. 또한 이전에는 dYdX에서 만들어진 모든 수익이 dYdX를 배포하고 관리했던 dYdX Trading, Inc. 에게 갔다면, dYdX 체인에서는 토큰 홀더들에게 돌아간다는 부분 역시나 다르다. 이는 궁극적으로 dYdX 토큰에 대한 수요를 올려주게 될 것이다(프로토콜이 성공해서 더 많은 수익이 나온다면, 그만큼 기대 수익이 높아지고, 그렇게 되면 해당 자산을 스테이킹 할 요인이 많아지기 때문에 궁극적으로 시장의 수요도 높아지고 가치도 상승하게 될 것이다).
dYdX 체인의 거버넌스는 아래와 같은 것들을 결정할 수 있게 된다:
새로운 자산과 시장을 추가하거나 제거할 수 있다.
프로토콜에 대한 매개변수(parameter)를 변경할 수 있다.
가격 정보를 가져오는 써드파티의 목록을 변경할 수 있다.
수수료 스케줄을 변경할 수 있다.
트레이딩 보상 메커니즘을 변경할 수 있다.
x/distribution module(코스모스에서 나오는 보상을 어떻게 나누는지 결정하는 모듈)의 매개변수를 변경할 수 있다.
x/staking module(코스모스에서 스테이킹과 관련된 설정을 하는 모듈)의 매개변수를 변경할 수 있다.
펀딩비를 구하는 공식을 변경할 수 있다.
보험금을 관리할 수 있다.
위에서도 언급했듯, 이제 dYdX를 만든 회사인 dYdX Trading, Inc.는 그 어떠한 거버넌스 제안이나 거버넌스 토론을 이끌어가지 않을 것이고 이제 dYdX 서비스에 대한 결정 권한은 토큰 홀더들에게 있다는 부분이 dYdX 체인이 이전의 프로덕트와 비교했을 때 가지고 있는 차별점이라고 할 수 있고, 안토니오가 고민했던 dYdX가 다른 중앙거래소(CEX)들과 비교했을 때 가질 수 있는 차별점이라고 볼 수 있다.
우리는 여태까지 dYdX의 시작과, dYdX 라는 프로덕트가 단순 애플리케이션에서 자체적인 dYdX 체인이 되기까지의 과정을 알아보았다. dYdX 체인은 이제 막 시작했기 때문에 지금 당장 해당 프로젝트의 성공을 단정짓기는 어렵다. 하지만 그럼에도 5년간 dYdX가 걸어왔던 여정을 통해서 우리가 알 수 있는 시사점은 아래와 같다.
dYdX는 이더리움 메인체인에서 프로덕트를 시작하여, 레이어2, 그리고 자체 체인을 런칭하는 모든 과정을 거치면서 프로덕트를 거듭 발전시켰다. 물론 블록체인 인프라는 지속적으로 발전하고있고, 앞으로도 계속 발전을 하겠지만 dYdX의 역사가 알려주는 사실은, 블록체인 인프라의 발전이, 반드시 프로덕트의 퀄리티 제고에 큰 영향을 준다는 것이다. 특히나 롤업만으로 확장성은 충분하다는 주장은, dYdX가 롤업을 포기하고 자체적인 체인을 런칭했다는 사실만으로도 충분히 반박이 가능하다고 생각한다. 아직 롤업만으로는 충분하지 않다. 롤업 뿐만이 아니라, 레이어1 모놀리틱 체인들도 ‘다목적 체인(general purpose blockchain)’으로 완벽하게 자리를 잡기 위해선 더 많은 발전을 해야한다. 아직 인프라의 발전이 중요하다. 필자는 인프라를 ‘상상력의 상한선’이라고 비유하기도 한다. 프로덕트를 만들기도 전에 확장성을 고민하는 것부터 이미 기존 서비스와 비교했을 때 핸디캡이라고 생각한다(물론 블록체인이 기존 서비스와 꼭 경쟁해야하느냐? 라는 질문을 했을 때 필자는 꼭 그럴 필요 없다는 답변을 하는 사람이지만. dYdX와 같이 기존 서비스와 경쟁을 해야하는 프로덕트의 경우엔 인프라의 발전이 매우 중요하다고 생각한다).
작년과 올해를 통틀어 이 시장에 등장한 롤업의 개수만 보더라도, 지금은 ‘롤업 전성시대’라고 불릴만하다. 롤업과 RaaS(Roll-up as a service, Roll-up SDK 포함)들도 시장에 넘쳐나고 있다. 소위말해 업계의 전문가들은, 누군가가 프로덕트에 대한 고민을 할 때면 “롤업으로 만들어라.”라는 답변을 기계적으로 하기도 한다. 하지만 롤업은 절대로 만능이 아니다. dYdX는 자체적인 체인을 런칭하고서야 비로소 완전한 탈중앙 거래소의 면모를 갖추었다. 이는 아직까지 L2 롤업들이 많은 한계점을 가지고 있다는 말이기도 하다. 물론, dYdX가 자체적인 체인을 런칭한다고 했을 때 이더리움 진영에서 dYdX의 그러한 결정을 ‘최악의 수’라고 비판하기도 했지만, 오늘 아티클을 통해서 dYdX가 자체 체인을 런칭한 것이 절대로 충동적이거나 비이성적인 선택은 아님을 알 수 있을 것이다(적어도 토큰 가격을 올리기 위한 단순한 이유에서 기인한 것은 아니라는 것이다).
물론 이더리움의 보안을 어느정도 레버리지 하는 것이 프로덕트의 정당성을 확보하는 과정에서 중요할 수 있지만, 아직까지 롤업으로 온전히 탈 중앙화 된 서비스를 구현할 수 없다는 점에서 이더리움의 보안을 레버리지 한다는 것이 얼마나 큰 의미로 다가오는지는 사람마다 주관적으로 받아들여질듯하다. 누군가는 프로덕트 자체적으로 특정 부분은 중앙화 된 주체가 해결하더라도, 이더리움을 레버리지 하는 것을 더 선호하겠지만, 누군가는 dYdX처럼 이더리움을 레버리지 하지 않더라도 프로덕트의 모든 부분을 탈중앙화된 방식으로 처리하는 것을 더 선호할지도 모르니 말이다. 확실한 것은 둘 중 하나가 더 ‘온전히 탈 중앙화 되어있다.’라고 할 수 없다는 것이다. 만드는 프로덕트의 성격에 따라, 자신의 철학에 따라서 맞는 선택을 하면 될 것이다. 롤업이 무조건적으로 이상적인 선택은 아님을 늘 염두해두자.
dYdX는 시장의 상황에 따라, 어떻게 보면 급진적일 수도 있는 선택들을 반복해가며 살아남았다. 많은 사람들은 dYdX를 볼 때 그저 성공한 프로덕트라고 생각하겠지만, 오늘 살펴본 dYdX의 역사에서 알 수 있듯, dYdX는 파산의 위기까지 갔었던 프로덕트다. 하지만 dYdX는 시장 상황과 업계의 상황에 맞춰서 에자일하게 변화했고 결국 살아남은 것을 넘어서 DEX 분야의 선두주자가 되었다. 만약 dYdX가 이더리움 메인체인을 지속적으로 고집했다면 지금 dYdX는 역사속으로 사라졌을 가능성도 절대로 배제할 수 없다. 결국에 중요한 것은 시장의 트렌드를 지속적으로 팔로업하고 자신들에게 제일 최적의 선택을 하는 것이 중요하고, 그것이 지금 dYdX가 살아남은 방법이라고 생각한다.
그렇기 때문에 지금 프로덕트 때문에 많은 고민을 하고있을 사람들에게, dYdX가 좋은 예시가 되었으면 좋겠다. 때로는 문제가 프로덕트에 있는게 아니라, 인프라에 있을수도 있으니 말이다.
아직 dYdX체인이 런칭한지 한 달도 안 된 시점이고, dYdX V4에서도 거래가 시작된지 얼마 안되었기 때문에 dYdX의 독자적 체인 런칭에 대한 가치판단을 하기엔 이르다고 생각된다. 하지만 dYdX는 약 5년이란 시간동안 많은 트레이더들에게 신뢰를 구축해왔고, 지속적으로 프로덕트를 발전시켜왔기 때문에 dYdX라는 브랜드가 가진 저력이 분명히 있을 것이라고 생각한다.
필자는 여전히 독자적인 레이어1 체인이 필요하다는 입장이다. 많은 리서처들이 롤업과 모듈러 블록체인에 집중할 때, 필자는 계속해서 레이어1 체인의 필요성을 설파하고 있다. 물론 코스모스 앱체인이 모듈러 블록체인과 완전 대척점에 있다고 할 수는 없지만, 독자적인 레이어1 체인이라는 점은 변함이 없기 때문에 이번 dYdX의 독립은 필자에게도 매우 중요한 사례가 될 것이다. 그래서 dYdX 체인의 성공 여부는 필자에게도 매우 중요하다. 솔직히 말해서 잘 되기를 바란다. 그래야 그 사례를 기반으로 다양한 롤업 기반 서비스들이 독자적인 체인을 런칭할테니 말이다.
이 글의 비주얼을 제공해주신 Kate에게 감사의 말씀을 전합니다.