EIP-8363 발행량 점감 소각 (Tapered Issuance Burn)

포함 제외 (DFI) · 합의·스테이킹 · 원문 상태 Draft · 2026-07-14 작성

스테이킹된 ETH가 많아질수록 검증자 보상의 일정 비율을 태워 없애 발행량을 줄입니다. 전체 ETH의 절반이 스테이킹되는 지점에서 소각 비율이 100%가 되어, 그 이상 스테이킹을 늘릴 발행 유인이 사라집니다.

왜 필요한가

지금 이더리움은 스테이킹된 ETH가 늘어나도 검증자에게 주는 새 ETH, 즉 발행(issuance)이 계속 늘어납니다. 검증자 한 명의 수익률은 완만하게 떨어지지만 약 1.5% 아래로는 내려가지 않아, 스테이킹 유인이 꺼지는 지점이 없습니다. 스테이킹 환경이 성숙하고 ETF 같은 수탁 기관이 늘면서 스테이킹에 요구되는 위험 보상은 점점 낮아지고 있어, 스테이킹 비율은 계속 올라갈 수 있습니다. 원문은 이것이 두 가지 문제를 낳는다고 봅니다. 첫째, ETH 대부분이 거래소, ETF, 스테이킹 서비스 같은 소수 사업자에게 몰리면 대형 사업자가 '대마불사'가 되고 문제가 생겨도 커뮤니티가 포크로 바로잡기 어려워집니다. 세금을 명목 수익에 내는 솔로 스테이커는 희석을 감안한 실질 수익이 먼저 마이너스가 되어 밀려납니다. 둘째, 스테이킹하지 않은 ETH 보유자는 계속 희석을 당하므로 ETH 대신 이자가 붙는 유동 스테이킹 토큰이 담보와 결제 수단 자리를 차지하게 됩니다. 그러면 이더리움 경제의 기본 자산이 특정 발행사의 스마트 계약과 거버넌스 위험을 떠안게 됩니다.

무엇이 바뀌나

지금

EIP-8363 이후

누구에게 영향이 있나

심층 설명

소각 비율 b와 SATURATION_BALANCE

소각 비율 b는 전체 활성 잔고 D를 포화 잔고 SATURATION_BALANCE로 나눈 값의 3/2제곱이고 1을 넘지 않게 고정합니다. SATURATION_BALANCE는 Gwei(60_250_000 * 10**9), 즉 약 6,025만 ETH로, 하드포크 시점의 ETH 공급량 절반에 맞춰 정합니다. 비율이 아니라 잔고로 적는 이유는 프로토콜이 get_total_active_balance(state)는 읽을 수 있지만 전체 ETH 공급량은 알지 못하기 때문입니다. 그래서 포크 뒤 공급량이 변하면 실제 포화 비율이 조금씩 어긋나는데, 원문은 합리적인 기간 안에서는 이 어긋남이 작고 훗날 프로토콜이 총공급량을 알게 하는 EIP가 나오면 바로잡을 수 있다고 적습니다. 계산은 get_issuance_burn이 맡습니다. 제곱근 비율의 세제곱 형태로 써서 Uint64 곱셈과 나눗셈 세 번으로 처리하고 모든 중간값이 64비트 안에 머물게 합니다. 두 제곱근 sqrt_active와 sqrt_sat은 호출자가 에포크마다 한 번만 구해 넘깁니다.

지수가 3/2인 이유: 선형 점감의 유도

스테이킹 비율을 f = D/S(S는 총공급량)라 하면 지금의 합의 계층 수익률은 y(f) = BE/√(fS)입니다(B는 BASE_REWARD_FACTOR, E는 연간 에포크 수). 목표는 f = 0에서 0이고 f에 선형으로 늘어나 포화 비율 f_sat에서 수익률을 정확히 상쇄하는 항을 빼는 것입니다. 다시 말해 순수익률은 f ≤ f_sat에서 ỹ(f) = y(f) - (f/f_sat)·y(f_sat), 그 위에서는 0입니다. 이를 ỹ(f) = (1 - b(f))·y(f)로 놓고 풀면 b(f) = (f/f_sat)^(3/2)가 나옵니다. 지수가 1이 아니라 3/2인 것은 보상 곡선 자체가 f^(-1/2)로 줄어들기 때문입니다. 빼야 할 절대 금액은 f에 선형이지만 그것을 f^(-1/2)로 줄어드는 보상의 비율로 표현하면 반 제곱이 더 붙습니다. 그 결과 총발행량 ĩ(f) = f·ỹ(f)는 더 이상 단조 증가하지 않고 f* = 2^(-7/3) ≈ 19.8%에서 정점을 찍은 뒤 f_sat = 50%에서 0이 됩니다. b는 B와 무관하므로 전환 기간에 B를 올려도 b(f)는 그대로입니다.

임무별 소각: 증명, 제안, 싱크 위원회

새 단계 process_issuance_burn은 process_epoch에서 process_rewards_and_penalties 바로 뒤, process_effective_balance_updates 앞에 들어갑니다. 유효 잔고가 아직 그 에포크 값이라 제안자 소각이 실제 선출된 제안자에게 정확히 부과됩니다. 증명 소각은 지난 에포크에 활성이던 검증자 전원에게 부과합니다. 기준값은 get_participating_increments로 구한 플래그별 참여 잔고를 플래그마다 따로 내림한 뒤 더합니다. 먼저 더하고 한 번 내리면 최대 2 Gwei가 더 나오고 포화 상태에서는 그 차이가 무결한 검증자의 원금에서 나가기 때문입니다. 비활성 누출 중에는 증명 소각만 멈춥니다. 제안자 소각은 그 에포크의 제안자 32명에게 부과하며 기준값은 현재 에포크 참여도로 계산한 attestation_component와 sync_component의 합을 SLOTS_PER_EPOCH로 나눈 값입니다. 싱크 참여도는 상태에 누적되지 않아 증명 참여도로 대신하고 오차는 제안자 몫의 3.57% 안입니다. 싱크 위원회 소각은 보상이 블록마다 지급되므로 process_sync_aggregate에서 참여 여부와 무관하게 위원 512명 전원에게 participant_reward × b를 뺍니다. 참여자만 부과하면 기권으로 소각을 피할 수 있고 참여와 불참의 잔고 차이가 participant_reward의 2배에서 (2 - b)배로 줄기 때문입니다. 현재 명세에 없는 get_beacon_proposer_index_at_slot 조회도 새로 필요합니다.

이상화된 보상을 기준으로 삼고 임무별로 나누는 이유

소각액을 실제로 받은 보상에 비례시키면 모든 임무의 한계 보상이 (1 - b)배로 줄어 올바른 참여 유인이 약해집니다. 그래서 소각은 검증자 자신이 완벽하게 수행했을 때 받았을 보상을 기준으로 삼고 실제 수행 여부와 무관하게 뗍니다. 다만 네트워크 전체 참여도는 반영합니다. 무결한 증명자의 보상도 네트워크 참여도에 따라 줄어드는데, 소각만 전원 참여 기준으로 매기면 오프라인 비중이 1 - b를 넘을 때 성실한 검증자가 손해를 보기 때문입니다. 증명 보상이 아예 끊기는 비활성 누출 중에는 증명 소각을 전부 멈춥니다. 임무별로 나누는 이유도 같습니다. 에포크마다 균일하게 한 번 떼면 명세는 단순해지지만 드물게 돌아오는 제안과 싱크 위원회 보상까지 덮을 크기가 되어 b가 커질수록 보통 에포크의 증명 보상을 넘어섭니다. 그러면 완벽하게 증명하는 검증자도 제안 차례를 기다리는 동안 매 에포크 잔고가 줄어듭니다. 임무별로 매기면 증명을 성실히 한 검증자가 제안이나 싱크 위원회 배정이 없다는 이유로 마이너스가 되는 일이 없습니다. 원문은 모든 기준값이 네트워크 전체 집계로만 정해지므로 어떤 소각도 그것을 내는 검증자의 행동에 좌우되지 않고 성실한 검증자는 어떤 참여도에서도 받은 보상의 (1 - b)배를 순보상으로 남긴다고 설명합니다.

18개월 전환: 기준 보상 계수 128에서 64로

포크와 동시에 소각을 전부 적용하면 지금의 스테이킹 비율(f ≈ 33%)에서 순수익률이 약 2.6%에서 1.2%로 절반 넘게 깎여 대규모 이탈을 부를 수 있습니다. 그래서 get_base_reward_per_increment가 읽는 기준 보상 계수를 TRANSITION_BASE_REWARD_FACTOR(128)에서 시작해 TRANSITION_DURATION_EPOCHS(123,300 에포크, 548일 × 하루 225 에포크, 약 18개월) 동안 BASE_REWARD_FACTOR(64)로 선형 감소시킵니다. 128로 두 배 올리면 순수익률 곡선이 지금 곡선과 f ≈ 31% 부근에서 만나 출발점이 지금과 비슷해집니다. 계수가 정수라 감소는 65단계 계단이 되고 한 단계는 약 1,927 에포크, 8.6일입니다. 보상, 벌칙, 소각이 모두 같은 base에서 나오므로 전체가 함께 움직여 균형이 깨지지 않습니다. 기존 보상 코드에서 바뀌는 곳은 get_base_reward_per_increment 하나뿐이고 전환이 끝나면 지금과 똑같이 동작합니다. 한편 곡선의 모양, 곧 50%에서 소각이 100%가 되는 성질은 계수와 무관해 활성화 첫 에포크부터 그대로 작동합니다. 하드포크는 보통 6개월 이상 전에 포함이 확정(SFI)되므로, 확정부터 영구 수익률 도달까지 약 2년의 적응 기간이 생긴다고 원문은 봅니다.

왜 소각이고 왜 50%인가

보상 곡선을 다시 그리는 대신 소각을 택한 이유는 네 가지입니다. 첫째, 영구 매개변수가 SATURATION_BALANCE 하나뿐이고 그 값에 'ETH 공급의 절반'이라는 자연스러운 기준이 있습니다. 둘째, 그리핑 공격을 막으려면 보상과 벌칙이 짝을 이뤄야 하는데, 그러면 어떤 곡선이든 성실한 검증자는 늘 양의 수익을 얻어 수익률 바닥이 남습니다. 소각은 이 바닥을 없애 균형 수익률을 시장이 정하게 합니다. 셋째, 보상과 벌칙 전체를 줄여서 수익률을 낮추면 임무별 미시 유인이 약해져 MEV에 밀릴 수 있지만 소각은 일정을 그대로 두고 뒤에서 거시 수익률만 깎습니다. 넷째, 뗀 ETH를 다른 검증자나 재단 등으로 돌리면 총발행량이 그대로이고 로비 대상이 생기므로, EIP-1559의 기본 수수료 소각처럼 없애는 것이 중립적입니다. 50%는 목표치가 아니라 발행 유인이 완전히 꺼지는 지점이며 시장은 그 아래 어딘가에 자리 잡습니다. 과반이 스테이킹되면 구제 연합이 곧 경제의 다수가 되고 포크로 맞설 더 큰 집단이 없어지므로 여기가 질적으로 다른 문턱입니다. 60%와 70%를 가를 근거는 없고 반대로 오늘 비율 33% 이하로 잡으면 활성화 즉시 소각이 100%가 되어 지분이 빠져나갑니다. 발행량이 약 20%에서 정점을 찍고 줄어들므로 대형 사업자는 커질수록 줄어드는 몫을 더 크게 나누는 셈이 되고 지분의 절반을 쥔 사업자는 공급의 약 31%가 스테이킹된 시점부터 성장이 손해가 됩니다. MEV는 소각과 무관하게 지분 비례로 쌓이므로 이 문턱을 끌어올리는 방향으로 작용합니다.

보안 고려사항: 다운타임 비용, 경제 안보, MEV 비중

b는 전체 활성 잔고만으로 정해지는 공개 함수이고 모든 검증자에게 같게 적용되므로 누구도 자기 몫을 남에게 떠넘길 수 없고 새 그리핑 경로도 생기지 않습니다. 다운타임 비용은 ETH 기준으로는 지금과 같습니다. 임무를 하고 안 하고의 잔고 차이가 그대로이기 때문입니다. 다만 순수익이 (1 - b)배로 줄어 손실을 메우는 데 걸리는 날수는 (1 + b/p)/(1 - b)배로 늘어납니다. p = 40/54 ≈ 0.74는 벌칙과 이상화 보상의 비율로, 오늘 비율(f ≈ 33%)에서 약 3.8배입니다. 가동률 99%인 검증자는 완벽한 검증자 순수익의 96%를 남기며 지금은 98%입니다. 경제 안보 면에서 이 EIP는 의도적으로 균형 지분량을 낮추지만 공격 비용은 몰수당할 지분의 시장가치로 정해지고 수십 % 비율에서도 그 규모는 충분히 크다고 봅니다. MEV 비중은 2026년 7월 31일까지 1년간 MEV-Boost 릴레이 지급 합계가 2.42M 블록에서 약 72,600 ETH, 블록당 평균 0.030 ETH였고 로컬 빌드 190,000 블록을 같은 평균으로 쳐도 실행 계층 보상은 78,300 ETH 미만입니다. 약 4,000만 ETH 지분 대비 최대 0.20%입니다. 합의 발행은 에포크당 64√D Gwei로 연간 약 1,054,000 ETH, 2.62%이므로 발행이 수익률의 93% 이상을 차지하고 비율이 40%에 안착해도 80% 이상입니다. 계산 비용은 검증자당 O(1) 공제 하나와 제안자 32명 패스, 현재 에포크 참여 잔고를 더하는 새 순회 한 번이 추가되어 검증자 수에 선형을 유지합니다.

원문 상태와 코어 개발자 콜 결정

원문 상태는 Draft입니다. 상수 값, 전환 길이, 소각 계산 방식 모두 아직 바뀔 수 있습니다. 코어 개발자 콜에서 다룬 경과입니다. 08.06 ACDC #184에서 EIP-8363의 PFI가 절차상 유효하다고 확인하고 헤고타(Hegota) 포크 후보로 접수했습니다. CFI나 SFI 결정은 없었고 수용의 전제로 커뮤니티 합의가 필요하다는 점을 못박았습니다. 09.16 AMA #15에서 논의했으나 결정은 없었습니다. 09.17 ACDC #187에서는 결정을 보류하고 stokes가 다음 ACDC 전까지 더 넓은 커뮤니티 의견을 모을 절차를 제안하기로 했습니다. 10.01 ACDC #188에서 챔피언(제안을 책임지고 밀어붙이는 담당자)들이 EIP-8363을 철회해 DFI가 되었습니다. 코어 개발자 콜에서 범위를 정하는 대신 더 넓은 커뮤니티 주도 절차를 밟기로 했습니다. 논쟁에서는 공동 저자 pintail이 과잉 발행이 포획으로 이어진다는 논거가 수사적 술책이 아니라고 했고 dapplion은 반대하는 사업자들이 손해를 보기 때문에 거부할 뿐이라고 했습니다. 공개 당일 제안자 트윗에는 번호가 EIP-8361로 적혀 있었습니다.

EIP 원문 · ← EIPs