# EIP-1559

이더리움 거래수수료는 자원 획득을 위한 단순 경매 메커니즘의 형태로 설계되어 있습니다. 사용자가 가스비용을 예측하여 거래를 생성, 전송하고, 채굴자들은 이와 같은 거래들 중 가장 높은 가스 비용으로 전송된 거래들을 선택하여 블록을 생성하는 방식으로 운영됩니다.&#x20;

비트코인, 이더리움과 같이 한정된 자원을 경매를 통해 획득해야하는 시스템에서 이러한 정책 방향은 유효합니다. 그러나, 거래수수료가 급변하는 상황에서는 사용자가 전송한 거래를 확정하기 위해 합리적인 수준 이상의 거래 수수료를 지불하거나, 긴 시간을 기다려야 하는 문제점이 있습니다.

EIP-1559는 이더리움 London HF에 적용된 동적 거래수수료 조정 메커니즘으로 일시적인 네트워크 혼잡을 효율적으로 처리하기 위해 블록별로 거래수수료의 일부를 소각하고, 블록의 사용가능한 가스총량을 이전 블록대비 1/1024 만큼 확장 및 축소할 수 있도록 고안된 알고리즘 입니다.

메타디움은 SPoA 합의 알고리즘을 사용하여 대용량 고속 처리가 가능하며, 블록 사이즈는 이더리움의 3.5배(기본 블록가스제한은 105,000,000), 블록생성시간은 이더리움의 1/12(기본 1초)까지 지원가능합니다. 따라서, 메타디움에서는 거버넌스에 의해 결정된 고정가스비 정책을 사용하는 것도 합리적인 선택일 수 있습니다.

하지만, 고정가스비 정책은 네이티브 코인인 META의 가격 변동성에 따라 네트워크의 DDoS 공격을 제어하기 위한 가스비도 함께 변경되는 문제점을 가지고 있습니다. On-Chain Governance에 의해 고정가스비의 변경이 가능하지만 빠른 대처가 불가능하여 네트워크의 안전을 저해할 위험을 내포하고 있습니다.&#x20;

따라서, 메타디움에서는 DDoS 공격 및 봇(Bot)의 과도한 거래 생성으로부터 네트워크를 보호할 목적으로 아래의 조건을 가진 가진 EIP-1559 프로토콜을 적용하였습니다.

메타디움에 적용된 EIP-1559의 `BaseFee` , `CurrentGasTarget`은 다음의 공식들에 의해서 매블록마다 실시간으로 계산됩니다.

<figure><img src="https://1248669494-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIICGwZTASYk4HHaVX87b%2Fuploads%2FyPTf3cXC4OwvHUFP4Qer%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202023-11-30%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%201.57.59.png?alt=media&#x26;token=54d7bfc5-58f9-4927-97ef-e1636c52df9c" alt=""><figcaption><p>BaseFee 계산공식</p></figcaption></figure>

위의 공식에서 `baseFeeMaxChangeRate`(기본값 55%)는 고정값으로, 거버넌스 투표를 통해서만 변경될 수 있습니다.&#x20;

또한, `BaseFee`가 무한정 커져서 선의의 사용자의 모든 META가 거래수수료로 사용되는 것을 막기 위해서, BaseFee의 최대값인 `maxBaseFee`(기본값 50,000Gwei)가 정해져 있습니다. 이 값은 거버넌스 투표에 의해 변경될 수 있습니다.

<figure><img src="https://1248669494-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIICGwZTASYk4HHaVX87b%2Fuploads%2Fsn7hRDyOcSlM1HLjE5JF%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202023-11-30%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%202.36.10.png?alt=media&#x26;token=35463201-55cd-479b-8478-060a9a82e6eb" alt=""><figcaption><p>BaseFee 가능범위</p></figcaption></figure>

아래의 공식에서 `gasTargetPercentage`(기본값 30%)와 `PreviousGasLimit`(기본값 105,000,000)는 고정값으로, 거버넌스 투표에 의해서만 변경될 수 있습니다.

<figure><img src="https://1248669494-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIICGwZTASYk4HHaVX87b%2Fuploads%2FqgPm1rQZzHmLBJMroqHr%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202023-11-30%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%202.42.33.png?alt=media&#x26;token=854accae-173d-4bb4-ad0e-9e81e3a3e8d3" alt=""><figcaption><p>GasTarget 계산공식</p></figcaption></figure>

메타디움 사용자는 고정 가스가격인 `maxPriorityFeePerGas`(기본값 100Gwei)값과 최신 블록에 기록된 가변 가스가격인 `BaseFee`(기본값 1Gwei)값을 사용하여 거래를 생성할 수 있으며, 해당 알고리즘은 기존의 EIP-1559를 지원하는 모든 지갑과 호환됩니다.
