[THE NEXT : Layer 2] DeFi가 가져온 이더리움 확장성 이슈

Tokamak Network
Tokamak Network
Published in
18 min readFeb 24, 2021

초창기, 이더리움에서 확장성 이슈는 그리 중요한 이슈가 아니었습니다. DApp도, ERC-20 토큰도 없었을 때의 이더리움은 비교적 한산했기 때문이었습니다.

비트코인에 비해서 광활한 대지였던 이더리움 (출처)

비트코인에서는 단순히 1층 주택(단순 토큰 전송)만 건설할 수 있었지만, 이더리움은 2층, 3층 주택은 물론 엘리베이터와 상업 시설(스마트컨트랙트)까지 건설이 가능했습니다.

하지만 유저들은 어떤 건물을 세워야 할지 몰랐고, 무작정 여러 건물(ERC-20 토큰)을 지어보기 시작했습니다. 실험적인 건물들은 그다지 유용하지 못했고, 유용한 건물들이 세워져서 빈 땅이 채워지려면 상당한 시간이 걸릴 것으로 예상했습니다.

이제는 너무 식상해져버린 크립토키티(Cryptokitties)

하지만 그때, 이더리움 네트워크를 매우 활발하게 활용하는 크립토키티가 등장하게 됩니다. 크립토키티는 당시 상승장과 함께 이더리움의 주요 활용사례로 부각되면서 엄청나게 많은 트랜잭션을 발생시키게 됩니다. 크립토키티라는 고양이가 이더리움을 뒤덮고, 크립토키티의 거래를 처리하느라 이더리움의 네트워크가 마비되자, 사람들은 이더리움 확장성을 매우 중요한 이슈로 생각하게 되었습니다.

그 뒤로 이더리움 생태계는 확장성을 위한 솔루션 개발에 집중하게 되고 플라즈마, 롤업, 사이드체인 등의 다양한 아이디어들이 등장하고, 자체적인 확장성을 고안한 수많은 EIP(Ethereum Improvement Proposal)들이 나오면서 해결될 수 있는 희망이 보이기 시작했습니다. 그러나 확장성 문제는 그렇게 빨리 해결되기에는 어려운 문제였습니다.

그러던 중 크립토키티의 붐이 가라앉고 이더리움의 가격도 점진적으로 하락하기 시작하면서 트랜잭션은 다시금 줄어드는 경향을 보였고, 대두되었던 확장성 문제는 뒷전으로 밀려났습니다. 그리고 트랜잭션이 다시 늘어날 시점에는 Layer-2가 구체적인 성과를 내면서 블록체인의 대중화(Mass adoption)를 충분히 견인할 수 있다고 생각했습니다.

하지만 2020년 DeFi의 부상으로 인해서 이더리움의 확장성이 매우 시급한 문제로 대두되게 됩니다.

1년 만에 예치 금액이 35배 상승한 DeFi (출처 : Defi Pulse)

DeFi는 Decentralized Finance의 줄임 말로써, 기존 법정통화가 중심이 된 금융이 아닌 블록체인 기반의 탈중앙화된 가상자산들을 기반으로한 금융을 뜻합니다. 비트코인, 이더리움 그 자체만으로도 넓은 의미의 DeFi라고 할 수 있지만, 일반적으로 DeFi는 가상자산을 기반으로한 ‘서비스’에 초점을 맞추고 있습니다.

(출처 : 과기부, KISA ‘블록체인 기반 혁심금융 생태계 연구보고서)

이더리움은 이더리움 네트워크 상에서의 수수료로 Gas라는 연료를 필요로 합니다. 현재 하나의 이더리움 블록당 쓰일 수 있는 최대 가스량(Gas limit)은 12,500,000 Gas입니다.

이더리움 가스 시스템은 Gwei * Gas 로 계산이됩니다. Gwei란 자신이 지불할 Gas에 대한 비용이라고 할 수 있습니다. [이더리움 수수료는 Gwei * Gas 로,] 만약 10 Gwei로 21,000 Gas의 트랜잭션을 발생시키면 1 Gwei (= 0.00000001 ETH) * 10 * 21,000 = 0.00021 ETH를 지출하게 됩니다.}

다만 모두가 고정가로 트랜잭션을 발생시킨다면, 시스템이 무엇을 먼저 처리하기 어려워서 네트워크가 마비될 수 있습니다. 이를 방지하기 위해서 이더리움은 남들보다 높은 Gwei를 제출한 트랜잭션을 먼저 처리하는 경매시스템을 채택하고 있습니다.

유저들은 자신의 트랜잭션이 빠르게 처리되게 하기 위해서 높은 Gwei를 제출하게 되고, 다른 유저는 그 보다 더 높은 Gwei를 제출하면서, 낮은 Gwei로 입찰한 트랜잭션들은 후순위로 밀려나게 됩니다. 또한 높은 Gwei를 적어낸 트랜잭션이 가스도 많이 사용하면, 낮은 Gwei를 입찰한 트랜잭션들은 더욱 느리게 처리되게 됩니다. 한 블록당 처리할 수 있는 Gas는 제한이 있기 때문입니다.

DeFi는 단순 토큰 보다 더욱 많은 Gas를 필요로 하기 때문에, 한 블록에는 더욱 적은 트랜잭션만 담길 수 있게되고 빠르게 블록에 담기기 위한 Gwei 값은 더욱 올라가게 됩니다.

DeFi는 더 많은 Gas를 요구합니다

왜 DeFi는 더 많은 가스를 필요로 하고, 왜 빨리 블록에 담기고 싶어할까요?

이번 포스팅을 통해서 DeFi가 어떻게 빠르게 성장했으며, 왜 확장성 문제가 시급하고 중요한 문제가 됐는지를 알아보고자 합니다.

AMM DEX의 등장

앞서 언급한 바와 같이 DeFi는 말 그대로 ‘Decentralized’ Finance입니다. 따라서 모든(혹은 거의 모든) 트랜잭션이 탈중앙화된 온체인 위에서 발생해야 합니다. 만약 중앙화된 플랫폼을 거치게 된다면 이는 완전한 DeFi라고 지칭하기에는 힘들 것입니다.

DeFi가 성립되기 위해서는 DEX(Decentralized Exchange)의 존재가 필수적입니다. DeFi의 대출 포지션 청산, 부채 관리 등이 DEX에서 거래될 수 있어야 하기 때문입니다. DeFi에서는 모든 프로세스가 온체인에서 처리되어야하기 때문입니다.

하지만 DEX에는 치명적인 단점이 있었습니다. 체결되는 주문 외에도 단순 매수매도 주문과 그 주문을 취소하는 데에도 가스를 계속 지불해야한다는 점입니다. 이로인한 적은 오더북 유동성(Liquidity)/높은 슬리피지(Slippage)는 DEX의 사용성을 크게 낮추었습니다. 불편한 UI는 덤이었습니다.

1세대 DEX인 Folkdelta의 오더북 시스템 DEX

이런 불편함 때문에 DEX는 오랫동안 블록체인 생태계의 중심이 되지 못했습니다. 가장 중요한 가치교환 수단이 활발하지 못해서 온체인에서의 행동들은 주목받지 못했습니다.

하지만 이러한 상황을 상당수 해결할 수 있는 자동화된 마켓메이커(Automated Market Maker, AMM) 기반의 AMM DEX가 등장하게 됩니다.

AMM DEX의 구조 (출처 : Bancor)

자동화된 마켓메이커는 기존 거래소의 오더북 형태가 아니라, 거래 페어에 대한 유동성에 따라서 가격이 결정되게 만들어줍니다. AMM은 위의 그림처럼, 물을 채워두고 필요에 따라서 한쪽 탱크의 물을 가져다 쓰지만 다른 한쪽에서 다시 물이 들어와서 풀의 크기는 일정하게 유지되는 것이라고 볼 수 있습니다.

예를 들어, 이더리움 100 개와 테더 10000 개를 이더리움-테더풀에 공급한다면, 이더리움의 가격은 1 개당 100 테더가 됩니다. 여기서 한 사람이 이더리움 1 개를 100 테더에 주고 구매하면, 이더리움-테더풀의 잔액은 이더리움 99 개와 테더 10100 개가 됩니다. 이 거래 이후 이더리움의 가격은 약 102 달러로 상승하게 됩니다. (실제 AMM은 조금 더 복잡한 수식에 의해서 계산 됩니다. AMM의 공식에 대해서 자세히 알고 싶다면 https://bit.ly/3jM2JvB를 참고해주세요.)

이 풀에 유동성을 공급하게 되면, 공급한 풀에 대한 지분을 가져가면서 거래 수수료를 받을 수 있었고, 기존 DEX보다 훨씬 유동성 공급이 원활해 질 수 있었습니다.

하지만 여전히 수수료만으로는 유동성을 풍부하게 채울 수 없었습니다. DEX를 비롯한 대부분의 DeFi는 더욱 많은 유동성을 필요했습니다.

Compound의 등장, 大 Yield Farming 시대의 시작

Yield Farming 시대를 연 Compound

Compound는 예금/대출 서비스를 제공하는 DeFi 프로젝트입니다. 원활한 대출이 이루어지기 위해서는 많은 예금이 필요했습니다. 하지만 대출 비율에 따른 예치 금리만으로는 많은 예금을 장려하기 힘들었습니다.

그래서 Compound는 예금/대출 이용자들에게 Compound Protocol의 거버넌스 토큰인 Compound(COMP)를 지급하자는 제안이 통과했고, 이용자들에게 COMP를 분배했습니다. 이 제안이 바로 일드파밍(Yield Farming)의 시작을 알리게 되었습니다. (일드파밍이란 보상을 얻기 위해서 유동성을 공급하는 행위를 뜻합니다)

Compound의 제안이 통과된 지 얼마 되지 않아 미국의 최대 거래소인 Coinbase에 COMP의 상장소식이 뜨게되고, COMP의 가격은 폭등하기 시작합니다.

가치가 올라간 COMP를 획득하기 위해서 엄청난 자금이 Compound에 몰리기 시작합니다. Compound는 순식간에 10억 달러 이상의 자금을 유치하면서 DeFi분야 예치금액 1위를 달성하기도 합니다.

Compound의 대성공 이후 유동성을 확보하기 위해서 자신들의 거버넌스 토큰을 보상으로 지급하는 Yield 파밍은 큰 유행을 거두며, 大 일드 파밍 시대가 열리게됩니다.

DeFi의 근간이 된 유니스왑의 거버넌스 토큰 UNI 파밍

이후 Yearn의 YFI, Sushiswap의 SUSHI, Uniswap의 UNI 토큰 등이 일드파밍의 보상으로 등장했으며, 각각 수억 달러가 넘는 유동성을 확보하면서 DeFi의 유동성은 어느때보다 커지게됩니다.

그런데 일드파밍의 보상은 바로 개인의 지갑으로 지급되는 것이 아니라, 본인이 직접 자신의 이더리움을 Gas로 소모해서 청구해야 받을 수 있었습니다.

이러한 과정에서 기존 이더리움에는 없었던, ‘DeFi 예치’ ‘보상 Claim’ ‘보상 판매’라는 트랜잭션이 이더리움 네트워크 상에 생겨나게 되면서 이더리움의 부하는 크게 늘어나게 됩니다.

Front Running의 등장

DEX에 유동성이 풍부해지자, 이를 이용한 차익거래 기회 또한 등장하게 됩니다. DEX는 이더리움의 블록이 생성될 때마다 주문이 체결되고 가격이 변동됩니다. 하지만 중앙화된 거래소(CEX)에서는 1초안에도 엄청난 가격 변동이 생기곤 합니다.

예를들어 바이낸스에서는 1이더리움의 가격이 1850 달러에서 1950 달러까지 1초만에 상승했다고 가정했을 때, 유니스왑에서는 다음 블록이 생성되기 전까지는 여전히 1이더리움이 1850 달러 선에서 유지가 되고 있을 것입니다.

이 과정에서 차익거래의 기회가 생기게됩니다. 다른 사람들보다 1850 달러에 빠르게 주문을 넣게되면 이더리움 1 개당 100 달러 정도의 시세차익을 낼 수 있게 되는 것입니다.

이더리움 네트워크에서 1 개의 블록은 보통 13초에 하나 생성됩니다. 그렇기 때문에 주문을 넣었다고 해서 거래가 바로 체결이 될 수는 없습니다. 1 개의 블록이 확인(Confirmation)되어야 하기 때문입니다.

Frontrunning 개념도 (출처: Secretnetwork)

하나의 블록이 생성되기전에 들어온 주문들은 선입선출법(First In First Out, FIFO)이 아닌 더 높은 Gwei를 적어낸 유저가 먼저 체결되게 됩니다.

예를들어, A유저가 100 Gwei로 10이더리움을 1850 달러에 매수하는 주문을 18시 1분 1초에 넣었다고 가정해보겠습니다. 그리고 B유저가 18시 1분 2초에 105 Gwei로 10이더리움-1850 달러 주문을 입찰하게 되고 18시 1분 3초에 블록이 확인되게 되면 어떤 결과가 발생할까요?

A유저가 먼저 주문을 넣었다고 하더라도 B유저의 주문이 먼저 체결되게 됩니다. A유저의 주문은 B유저의 주문이 실행 된 이후의 가격으로 체결되게 됩니다.

이런 이더리움의 경매시스템 때문에, DEX와 CEX간 시세차익이 발생하는 시점이 오게 되면 수많은 프론트러닝(Front Running) 트랜잭션들이 발생되게 되고, 프론트러너들의 경쟁으로 인해서 Gwei 값은 큰 폭으로 상승하게 됩니다.

DEX Aggregator의 등장

모두 한번정도는 온라인에서 쇼핑을 해보신 적이 있을 것입니다. 온라인 쇼핑을 하다보면 같은 제품인데도 쇼핑몰 마다, 셀러마다 전부 가격이 다른 것을 볼 수 있습니다. 이런 불편함을 막기 위해서 우리는 Amazon, Naver 같은 Aggregator 플랫폼을 이용합니다.

이러한 플랫폼을 거치게되면 최적의 가격으로 편리하게 구매할 수 있게됩니다.

같은 제품인데도 셀러마다 다른 가격 (출처: Amazon)

이더리움 네트워크 상에도 유니스왑 뿐만 아니라 Balancer, Sushsiswap, Bancor, Airswap 등 수많은 DEX가 존재합니다. 이러한 DEX들 간의 가격은 조금씩 차이가 나며, 유동성에서도 차이가 납니다. 따라서 한 DEX에서만 거래를 진행하는 것은 구매단가면에서 여러 DEX를 사용하는 것보다 손해를 보게 됩니다. Amazon, Naver를 거치지 않고 한 셀러에게서 비싸게 사는 사태가 발생하는 것입니다.

하지만 여러 DEX에서 각각 가격 견적을 받고, 거래를 집행하는 것은 여간 귀찮은 일이 아닙니다. 이런 문제를 해결해주기 위해서 여러 DEX들의 견적을 받아, 최적의 견적을 뽑아주는 DEX Aggregator 플랫폼들이 등장하게 됩니다.

대표적인 Dex Aggregator, 1inch exchange

Dex Aggregator들은 여러 DEX에서 가격 견적을 받아와서, 유저가 최적의 가격에 토큰을 거래{하고 시장이 효율적으로 균형을 찾도록}할 수 있도록 제공하는데, 이 과정에서 {온체인 서비스의 특성상}는 1 개의 트랜잭션을 위해서 여러 개의 토큰이 전송되는 과정을 거쳐야만 합니다.

Metamask Swap을 활용한 거래 내역

위의 트랜잭션을 보게되면 999,999 개의 AMP 토큰을 이더리움으로 교환하기 위해서 1inch exchange와 Balancer, Uniswap, Sushiswap의 4 개의 DEX를 거쳐서 거래가 완료되었습니다.

이러한 거래는 {하나의} 일반 DEX 이용보다 훨씬 많은 Gas를 필요로 합니다. Uniswap 사용시에는 평균적으로는 12만~20만 정도의 Gas를 필요로하지만, 해당 트랜잭션에서는 약 90만(891,277)의 가스를 사용하였습니다.

DEX Aggregator는 사용자들의 편의성을 크게 증가시켰지만, 다량의 가스를 소비하면서 이더리움 네트워크의 가스 과부하를 발생 시키게 되었습니다.

이더리움은 DeFi를 위한 전용 플랫폼인가?

이더리움은 DeFi뿐 아니라 단순 토큰 전송부터 게임, 데이터 저장 등 다양한 DApp을 위한 플랫폼입니다. 지금처럼 DeFi가 이더리움 네트워크 상위권을 지속적으로 차지한다면 당장에는 이더리움의 가격과 해쉬레이트가 상승하여 이더리움 네트워크가 높은 안정성을 가질 수 있을 것입니다.

하지만 DeFi의 트렌드가 장기적으로는 이더리움에 좋지 않은 영향을 끼칠 수도 있습니다. 예를들어 이더리움이 DeFi만을 위한 플랫폼이 되어서 NFT, 게임, 소셜 등의 DApp들이 이더리움외의 다른 체인으로 떠나면 어떻게 될까요? 당장은 풍족한 유동성 아래에서 이더리움체인이 활발하게 돌아갈 수 있겠지만, DeFi의 유동성이 점차 감소하거나 이더리움 가격이 하락한다면 이미 한번 떠난 다른 분야의 DApp들은 돌아오지 않을 것이고, 이더리움 생태계는 단조로운 생태계로 메말라갈 것입니다.

정치, 경제적으로 아일랜드의 주식이었던 감자(출처: 감자먹는 사람들, 빈센트 반 고흐)

단조로운 생태계의 비극은 현실 세계에서도 찾아볼 수 있습니다. 19세기 아일랜드로 돌아가 봅시다.

19세기 아일랜드의 주식은 감자였습니다. 아일랜드의 기후와 정치적인 여건 상, 아일랜드에서는 거의 모든 작물로 감자를 기를 수 밖에 없었습니다. 감자 이외에 생산되는 가축과 곡물은 전부 잉글랜드로 수출되었습니다. 하지만 19세기 중순 아일랜드에는 감자 역병이 돌았고, 경작 중이던 감자는 전부 썩어버리기 시작했습니다.

잉글랜드를 위해서 가축과 곡물을 생산했던 아일랜드는 잉글랜드에 도움을 요청했지만, 잉글랜드는 제대로된 구제정책을 펼치지 않았습니다. 기근을 피하기위해서 다른 작물을 경작할 시간도, 환경도 부족했던 아일랜드는 남아서 아사를 택하거나, 다른 나라로의 이주를 택할 수 밖에 없었습니다.

기근 직전에 800만명에 달했던 아일랜드의 인구는 기근을 거치면서 200만명 이상이 아사하거나 이주를 택했고, 이때 잃은 인구는 200년이 지난 지금도 800만명에 도달하지 못하고 있습니다.

이 사례에서 이더리움은 ‘아일랜드’, DeFi는 ‘감자’, 잉글랜드를 위한 가축과 곡물은 ‘이더리움 가스비와 DeFi의 수익’, 다른 작물들은 ‘DeFi 이외의 Dapp’이라고 할 수 있습니다.

이더리움 네트워크 상에서 DeFi의 독주가 계속 된다면, 이더리움의 네트워크 수수료가 부담되는 DApp들은 이더리움을 떠나게 될 것입니다. 한번 떠난 디앱을 다시 돌아오게 하는 것은 사실상 불가능에 가깝습니다. 체인을 마이그레이션 할 때 드는 비용이 매우 크기 때문입니다.

만약 DeFi의 인기가 사그러들고, DeFi가 발생하던 이더리움의 트랜잭션 과부하가 없어지게 된다면 어떻게 될까요? 이더리움은 다시 외로운 싸움을 시작해야할 수도 있습니다. 지금의 이더리움은 경쟁자들과 비교해서 탈중앙성과 다양성, 유저 수 등 거의 모든면에서 압도하고 있습니다. 확장성을 제외하고는 말이죠.

하지만 다양성과 유저 수를 잃게 된다면, 그때도 이더리움이 경쟁자들에 비해서 압도적이라고 할 수 있을까요? 다양성과 유저 기반을 잃게된다면 이더리움의 탈중앙성도 훼손될 수 있습니다.

DeFi 광풍이 꺼졌을때 이더리움 생태계를 유지하고, 탈중앙성을 지키기 위해서는 이더리움의 확장성 이슈는 지금 당장 해결해야 하는 사안입니다.

DeFi의 근간을 뒤흔들 수 있는 이더리움 확장성의 한계

DeFi의 성장에는 부족할 수 있지만, 붕괴되지 않았던 이더리움의 안정성이 있었습니다. 지금까지는 이더리움 네트워크가 DeFi의 성장을 받쳐주었기 때문입니다. 하지만 이더리움 확장성의 한계가 오랜기간 지속되어 안정성을 잃게된다면, DeFi 역시 돌이킬 수 없는 큰 피해를 입을 수도 있습니다.

Covid-19이 초래한 전 세계적인 자산 폭락 당시 이더리움의 가격변동 추이 (출처 : Makerdao)

2020년 3월 12일에 시작된 전 세계적인 자산 가격 붕괴는 이더리움 네트워크에도 큰 영향을 미쳤습니다. 이더리움의 가스 수수료는 큰 폭으로 증가했고, 컨펌되지 않고 이더리움 네트워크를 떠도는 트랜잭션은 수십만 개에 이르렀습니다.

이더리움의 대폭락으로 담보 가치의 하락으로, DeFi의 대규모 청산이 제대로 일어났어야 했지만 이더리움의 혼잡으로 인해서 정상적인 청산이 일어나지 못했습니다. 2020년 3월 12일 당시 가장 거대했던 DeFi인 MakerDAO는 이더리움의 폭락과 이로인한 이더리움 네트워크의 마비 때문에 수백만 달러의 이더리움이 0 달러에 청산되는 상황을 겪었습니다.

이런 상황은 이더리움의 가격 폭락과 이더리움 네트워크의 혼잡이 겹쳐져서 생긴 결과지만, 다시 이러한 일이 생기지 않으리란 보장은 없습니다.

또한 지금 이더리움 생태계 위의 DeFi들은 서로 얽히고 얽혀있습니다. 유니스왑의 LP토큰이 크림 파이낸스의 담보물로 사용되며, 유니스왑 LP토큰을 담보로 크림파이낸스에서 대출한 USDT를 다시 AAVE에 예치해서 수익을 낼 수도 있습니다.

이렇게 프로토콜 간의 상호의존성이 커진 상황에서, 네트워크의 혼잡과 오류로 단 하나의 프로토콜만 붕괴되더라도 수 많은 DeFi들이 동시다발적인 큰 타격을 입을 수 있습니다.

서브프라임 모기지 발 글로벌 경제 위기 (출처: Cagle cartoon)

우리는 이미 여러 금융상품들이 엮인 파생상품의 근원 담보가치가 문제가 생겼을 때, 탄탄해보이던 금융과 경제가 순식간에 무너지는 것을 2008년 서브프라임 모기지발 경제위기때 볼 수 있었습니다.

담보가치가 하락해서 생기는 문제에 대한 대비책이 있더라도, 네트워크가 마비되서 그 대비책이 가동되지 않는다면 어떨까요? 이더리움 발 블록체인 경제 위기가 올 수도 있을 것입니다.

따라서 이더리움 확장성 이슈의 빠른 해결은 아래와 같은 이유를 위해서라도 반드시 필요합니다.

  1. DeFi 광풍으로 인한 네트워크 혼잡 상황에서 Non DeFi Dapp들의 이탈방지을 방지하여, 다변화된 생태계 유지
    => 이더리움의 확장성이 확보된다면, DeFi의 광풍이 꺼졌을 때에도 이더리움은 다양성을 유지하면서 지속적으로 성장해 나갈 수 있을 것입니다.
  2. 이더리움 네트워크 마비로 인한 DeFi 생태계의 붕괴 가능성 감소
    => 또한 이더리움 네트워크 마비로 인한 DeFi 시스템의 연쇄청산 방지 시스템 작동으로 유저들의 피해를 막고 DeFi의 위험요소를 제거할 수 있을 것입니다.

This post was written by Ryan

--

--