✅ 런던 하드 포크란?
2021년 8월 5일 이더리움 기능 개선을 개선하는 업그레이드 작업인 '런던 하드 포크'가 진행됐다.
하드 포크(hard fork)란, 일종의 블록체인 업그레이드 작업으로, 기존 블록체인에서 다른 블록체인으로 넘어가려고 할 때 사용되는 방식이다
\
이번 런던 하드 포크는 기존에 이더리움 문제점으로 지적돼 왔던 수수료 구조 개선과 공급량 조절 등을 해결하고자 총 5가지의 이더리움 개선 제안(EIP)을 도입하여 주요한 업그레이드가 이루어졌다.
그중, 가스비 개선안으로 EIP-1559: Fee market change for ETH 1.0 chain가 대표적이다
이외에 EIP-3198: BASEFEE opcode / EIP-3529: Reduction in refunds / EIP-3541: Reject new contract code starting with the 0xEF byte / EIP-3554: Difficulty Bomb Delay to December 2021 가 있다
현재 이더리움 체인에서는 EIP1559가 적용되어 base fee에 해당하는 이더리움이 계속해서 소각되고 있으며 메타마스크와 같은 지갑의 수수료 처리 정책도 바뀌어 있는 상황이다.
이러한 EIP 1559가 이더리움 네트워크에 어떤 변화를 가져오고 있는지에 대해 알아보자
✅ EIP-1559란?
이더리움 공식 사이트에 따르면 EIP-1559는 “일시적인 정체에 대처하기 위해 블록 크기를 동적으로 확장/축소하는 블록당 고정 네트워크 요금을 포함하는 트랜잭션 가격 책정 메커니즘입니다.” 이다.
A transaction pricing mechanism that includes fixed-per-block network fee that is burned and dynamically expands/contracts block sizes to deal with transient congestion.
EIP-1559 이전의 수수료 과정은 사용자가 트랜잭션을 보낼 때 gasPrice를 지정하여 사용자가 실제로 내는 금액은 gasFee * gasPrice 값으로 내게 된다. 여기서 gasPrice가 높으면 채굴자에게 우선순위의 트랜잭션으로 처리되어 수수료 경쟁이 있다.
-> 사용자가 입찰('가스 가격')로 거래를 보내고 채굴자가 가장 높은 입찰로 거래를 선택하고 포함된 거래가 지정된 입찰을 지불하는 단순한 경매 메커니즘을 이용해 역사적으로 거래 수수료를 책정했다.
사용자 A와 B가 각각 다른 gas price를 주고 트랜잭션을 보내게 되면 mempool(memory pool)이라는 특정한 공간에 모든 사용자들이 보낸 트랜잭션이 pending 상태로 표시되어 대기상태로 들어가게 된다.
하지만 모든 블록에는 기록할 수 있는 공간에 한계가 있는 크기가 정해져 있다.
EIP-1559 적용 이전에는 모든 블록이 동일한 Block Size limit을 가지고 있었다.
따라서 수요가 증가하거나 감소하거나 담을 수 있는 트랜잭션은 동일하게 한정되어 있고 채굴자들은 트랜잭션에서 발생하는 모든 수수료를 블록 체굴 보상 외에 추가적인 보상으로 가져가기 때문에 자연스럽게 더 높은 gasPrice를 가진 트랜잭션을 골라서 담아 가는 식으로 작동했다.
따라서, 자산의 가치가 폭등, 폭락할 때 순간적으로 트랜잭션을 보내고 싶은 사람이 많아지게 되면 가스비가 순간적으로 폭등하는 현상이 발생하게 된다. 이렇게 변동폭이 큰 가스비는 블록체인 프로젝트를 기획, 운영하거나 사용하는 데 있어서 예측하기 어려운 변수로 작용한다.
또한 순간적으로 오르는 가스비에 대한 보상은 모두 채굴자에게 돌아가는 식으로 구성이 되어 있었다.
User B와 같이 비싼 gas Price를 지불하는 사람들만 트랜잭션이 처리가 되니 사용자들 간의 수수료 경쟁이 심화되는 것이다.
그간 트랜잭션의 변동폭이 얼마나 심각했고, 이 모든 보상은 채굴자가 가져가서 이러한 구조에 대한 이슈가 있었다.
앞에서 설명한 수수료가 폭등하는 구간에 대한 조정을 블록 크기에 대한 확장과 축소 그리고 base fee를 통해 가스비를 예측하기 어려운 점을 해결하려 EIP-1559가 적용된 것이다.
이 EIP의 제안은, 네트워크의 폭주 상태에 근거해 프로토콜에 의해서 상하 조정되는 기본요금액(baseFee)으로부터 개시하는 것입니다.
네트워크가 블록당 가스 사용량 목표치를 초과하면 기본요금이 소폭 상승하고 용량이 목표치를 밑돌면 소폭 감소한다.
이러한 기본요금 변동이 제약되기 때문에 블록별 기본요금의 최대 차이를 예측할 수 있다.
이를 통해 지갑은 신뢰성 높은 방법으로 사용자의 기름값을 자동 설정할 수 있다.
네트워크 활동이 활발한 시기에도 대부분의 이용자가 가스요금을 수동으로 조정할 필요는 없을 것으로 예상된다.
대부분의 사용자의 경우 기본요금은 지갑에 의해 추정되며 사용자는 트랜잭션의 최대 수수료를 수동으로 설정하여 총비용을 제한할 수도 있습니다.
아울러 이 burn은 이더리움 인플레이션을 상쇄하면서도 채굴자에게 블록 보수와 우선 수수료를 준다.
마지막으로 블록 채굴자가 기본요금을 받지 않도록 하는 것은 이용자들로부터 더 많은 수수료를 인출하기 위해 수수료를 조작하려는 채굴자의 인센티브를 제거하기 위해 중요하다.
먼저, 새롭게 등장한 base fee의 개념에 대해 알아보자
base fee는 최소한의 금액을 나타낸다. base fee는 블록마다 적용되는데 이더리움 네트워크의 상태에 따라서 올라가거나 내려가는 구조를 취한다. 이 base fee는 원래는 채굴자에게 가던 보상이었지만이후에는 소각되는 중이다.
EIP-1559이전에는 동일한 블록사이즈에서 가스비는 변동상태에 가스비가 높은 트랜잭션이 먼저 블록에 등록되는 방식으로 진행되었지만,
일단 사용량에 따라 블록의 크기가 순간적으로 증가하였다. 또한 기본 가스비가 정해져 있고 채굴자에게 보상할 팁 만 가격경쟁이 붙게 되므로, 상대적으로 가격 경쟁의 규모가 적어지고 가격의 급등이 발생할 확률이 적어지게 된다. 물론, 사용자가 늘어나면 base fee도 증가하긴 하지만 한 블록당 최대 12.5%만 증가하게 되어 가스비가 급등하는 것 또한 막을 수 있다. 이더리움 시스템 자체에서 가격을 어느정도 조정해 주어서 큰 폭의 변화를 완화시켜주는 역할을 해주는 것이라고 볼 수 있다
채굴자들이 base fee를 일부러 높게 만드는 것을 막기 위해 base fee 는 채굴자에게 가는 대신에 소각된다.
또한 사용자는 Fee cap이라는 값을 설정하여 특정 값 밑에서만 트랜잭션이 실행하도록 만들 수 있다.
이렇게 이더리움을 소각하는 행위는 채굴자에게 집중되어 있는 보상을 네트워크 사용자 전체에게 돌아가도록 만드는 효과를 가지고 있어서 네트워크 전체적으로 볼 때 모두에게 보상이 돌아가는 방식으로 변경 되었다는 점에서 의미가 있다. 이더리움의 소각량 또한 네트워크 사용량이 많아지면 base fee가 비례해서 조금씩 올라가므로, 더 많아지게 된다.
한마디로 사용량이 더 많아짐에 따라 이더리움의 희소성 또한 점점 증가하게 되는 것이다.
👍🏻출처
https://www.mk.co.kr/news/economy/view/2021/08/765984/
https://www.coindeskkorea.com/news/articleView.html?idxno=74622
'5. Blockchain' 카테고리의 다른 글
[Wagmi] Connect Wallet 방법 (0) | 2022.09.11 |
---|---|
[Wagmi] 개념 및 사용방법 (0) | 2022.09.08 |
[Hardhat] 개념 및 초기 설정 (0) | 2022.09.03 |