개발하기좋은날

이더리움의 MEV (Maximal Extractable Value) 본문

BlockChain

이더리움의 MEV (Maximal Extractable Value)

devbi 2022. 12. 7. 11:01
반응형

MEV의 개념은 Phil Daian이 “Flash Boys 2.0”에서 최초로 제시

 

저자의 동료들인 Dan Robinson, Georgios Konstantopoulos, 그리고Ethereum is a Dark Forest” and “Escaping the Dark Forest.”의 samczsun에 의해 널리 알려지게 되었습니다.

 

MEV라는 개념은 암호경제학(cryptoeconomics)의 기반이라고 할 정도가 되었습니다

대체 MEV가 무엇일까요?

MEV는 채굴자가 이러한 능력으로 창출할 수 있는 최대의 이익을 말합니다.

 

이더리움은 MEV 매커니즘

채굴자(혹은 validator, sequencer 등)는 블록을 생성하며 어떠한 트랜잭션을 포함시킬지, 제외시킬지, 혹은 재배열(re-order)할지를 마음대로 결정할 수 있습니다.

 

하나의 블록 내에서 트랜잭션을 처리할 수 있는 유일한 권한을 가진 채굴자는 EVM 내 MemPool 설계로 이익을 실현 할수있습니다.

블록 당 포함될 수 있는 트랜잭션 수는 정해져 있기에 수요가 몰릴 경우 블록 생성자는 수익을 극대화하기 위해 멤풀*(mempool)에서 대기 중인 트랜잭션 중에서 가스비를 가장 많이 제출한 트랜잭션을 우선적으로 블록체인에 기록

결과적으로 블록생성과정 가운데 채굴자는 재배열,제외,포함의 권한을 가지고 MEV를 실현 시킬수있게 된다 

 

 

MEV가 존재하는 이유는

  1. 블록스페이스가 한정되어 있고 (이더리움은 ~30M gas)
  2. 블록체인내 모든 활동이 투명하게 공개되어 있고
  3. 수수료 시장이 존재하며 4) 블록 생성자들이 임의로 트랜잭션 순서를 정할 수 있기 때문이다.

MEV는 어떤 영향을 미칠까?

1.  Uniswap 사례를 살펴봅시다. 큰 규모의 거래가 일어나서 일시적 가격 변동(slippage)을 가져왔고, $10,000 어치의 수익 창출 기회(MEV)가 만들어진 상황입니다. 이 때 시장차액거래를 하여 실제 가격과의 괴리를 줄여주는 봇은 Uniswap 시장을 좀 더 효율적으로 만들어줍니다. 먼저 주문을 넣은 트레이더에게 해를 입히지 않으면서요. 이것은 양성(benign) MEV 트랜잭션 좋은 예시 입니다 

 

2. 같은 거래의 다른 버전을 생각해볼 수 있습니다. 여기서는 한 차익거래 봇이 이용자의 거래를 실행되기도 전에  알아챕니다. 그리고 이용자의 거래를 “샌드위치” 공격합니다. 봇의 매수-매도 주문 사이에 이용자의 거래가 위치하도록 만드는 것입니다. 이 경우 MEV는 이용자에게 보이지 않는 세금을 뜯어내는 것과도 같습니다. 봇의 매수 주문 이후, 이용자의 주문은 인위적으로 부풀려진 가격에 체결될 것인데, 이 경우 봇은 즉각적으로 이를 되팔아서 수익을 실현할 수 있게 됩니다. 당연하게도, 채굴자들은 비용을 지불하지 않고서도 이를 실행할 수 있습니다. 이것이 악성(malignant) MEV 트랜잭션으로 불리는 사례입니다.

 

MEV 누적 이익

MEV는 시간이 흘러갈수록 점차 그 이익은 커져만 가고 있습니다. 

종류

대표적으로 아비트라지는 프론트러닝 수법중 하나

프론트러닝(frontrunning): 수익성 높은 트랜잭션(예: 아비트라지)이 멤풀에 포착될 경우 동일한 
트랜잭션을 생성한 채 가스비만 더 높게 제출하여 기회를 가로채는 행위를 뜻한다.

백러닝(backrunning): 프론트러닝과 반대로 타겟 트랜잭션 직후에 주문을 넣어 수익을 창출하는 
행위이다. 거래 규모가 큰 트랜잭션에 의해 일시적으로 높은 슬리피지가 발생하면 MEV 봇이 그 즉시
반대 주문을 넣어 시세 차익을 챙기는 것이 백러닝의 대표적인 예시이다.

 

샌드위치 공격(sandwich attack): 샌드위치 공격은 프론트러닝과 백러닝을 동시에 수행하는 MEV 공격 유형이다. 
프론트러닝, 백러닝과 마찬가지로 유니스왑같은 AMM DEX에서 흔히 발생하며, 성공했을 경우 
두 차례에 결처 수익을 낼 수 있다는 것이 특징이다.

예시: MEV봇이 유니스왑에서 알트코인A를 대량 구매하는 주문을 포착하면 
곧바로 동일한 트랜잭션을 생성하여 주문자를 프론트러닝한다. 
이후 기존 주문자가 더 높은 가격에 A를 구매하면 즉시 구매하였던 토큰을 매도하여 시세 차익을 챙긴다.

MEV는 좋은 영향 보다 나쁜 영향이더 많다

※ 개인적으로 아비트라지는 DEX 운영에 있어 좋은 영향이라 생각한다 하지만 수많은 봇들은 당연히 네트워크 문제를 일으키므로 화이트리스트를 적용시킨 아비트라지가 있다면 어떨까 생각해본다

 

1. 유저 경험(UX) 훼손 및 수익 갈취

  • 프론트러닝, 샌드위치 공격과 같은 악의적인 MEV 활동은 유저들에게 많은 기회를 빼앗는다 
  • Bot이 있는 이상 일반 사용자에게 있어 기회는 돌아가기 힘들다  

2. 네트워크 과부하 발생 

  • PGA(블록스페이스 경매) 활동으로 인한 과도한 경쟁은 네트워크 과부하및 가스비 폭등 

3. 네트워크 불안성 조성 

  • Re-org는 긴체인의 법칙으로 진행된다 악의적인 MEV는 과거의 트랜잭션을 복사하여 실행시킨뒤 Re-org를 진행시켜 원하는 수익을 실현시킬수있다, 보통 규모가 비교적 작고 보안이 약한 블록체인에서 발생할 가능성이 높음
  • 대표적으로 Time bandit attack

이더리움 2.0은 MEV에 어떤 영향을 끼칠까? 

결론부터 말하자면, 오히려 MEV가 활발히 활동할것이다 

  1. PoW 합의 알고리즘에서는 채굴자들이 랜덤으로 선출되며, 그 누구도 다음 채굴자가 누가 될 지 100% 확신할 수 없다. 반면, 이더리움 PoS 전환 이후에는 블록 생성자로 선정될 경우 2epoch 동안 함께 블록을 생성할 검증자가 누구인지 파악이 가능하여 오히려 MEV를 기회를 더 많이 포착할수있게 한다 
  2. PoS 전환은 블록 생성에 따른 ETH 보상을 90% 가까이 낮춰 검증자 노드들로 하여금 MEV 활동을 장려하는 결과가 발생할 수도 있다.
  3.  EIP-1559 이후 베이스 수수료(base fee)가 소각되고 있기 때문에 검증자 노드들의 몫은 더욱 줄어들었다

결과적으로 인플레이션을 대폭 감소시켜 ETH 가치를 보존하고 끌어올리는데 기여하지만, 반대로 블록 생성 보상이 대폭 줄어든다는 것을 뜻하기도 한다. 이에 따라 검증자들은 줄어든 보상을 충당하기 위해 MEV 활동을 더욱 공격적으로 펼치게 될 여지가 있다.

해결책은 무엇이있을까?

mev 솔루션으로 많이 사용되는 Flashbot(경매 서비스)  

 

Flashbot

  1. 트랜잭션 정보가 모두에게 공개된 멤풀이 아닌 별도의 프라이빗 트랜잭션 풀을 운영하고
  2. 전통 경매 방식 중 하나인 최고가격입찰제(first price sealed bid auction)에 기반한 비공개 블록스페이스 입찰(sealed bid blockspace)을 진행한다는 특징이 있다. 

MEV Boost 

  • 플래시봇과 동일한 서비스이나, searcher와 relay 사이에 builder라는 새로운 역할군이 추가되었다는 것이 차이점이다.

근본적인 또 다른 해결책? 

Batching trading

  • 암호화폐 거래소의 호가창에서 단일 배치 내 여러 거래를 한꺼번에 묶어 일괄적으로 처리하는 방식을 의미한다.
  • 각 블록의 결제 가격이 같도록 토큰쌍들의 가격을 정확히 매길 수 있는 가격결정 매커니즘으로 활용될 수 있다.

디파이 시스템에서 채굴자 또는 검증인(validator)은 트랜잭션을 재배치할 권한을 갖는데, 배칭옥션은 그러한 권한을 없애는 역할을 한다. 배칭옥션에서 채굴자들은 주문과 상관없이 트랜잭션을 실행해야 하기 때문이다. 배칭옥션의 결제 가격은 균일하므로 거래의 주문 순서는 가격에 아무런 영향을 미치지 않는다.

배칭옥션은 프로토콜을 기반으로 한 댑의 개발을 촉진함으로써 사용자들에게 다음과 같은 향상된 트레이딩 기법을 제공한다.

  • 가스 비용 없는(gasless) 제출 또는 사용자들이 서명된 메시지를 통해 오프체인 주문을 제출하는 것
  • 트레이더가 다르더라도 동시에 발생한 거래에 대해 동일한 가격을 적용하는 것
  • 외부의 제3자 유동성 풀에 의존하지 않고 '욕망의 일치(coincidence of wants)'에 따라 사용자들을 직접 매칭하는 것

Reference 

https://research.paradigm.xyz/MEV

https://xangle.io/insight/research/635f8c1f6c4f32e243e4349c

반응형

'BlockChain' 카테고리의 다른 글

스마트 컨트랙트 시큐리티 패턴  (0) 2022.11.02
Fallback, Receive 그리고 재진입 공격  (0) 2022.10.30
재진입 공격 방지 (Re-Entrancy)  (0) 2022.10.28
External Call 보안  (0) 2022.10.28
채굴 (Mining)  (0) 2022.10.17
Comments