이더리움 블록 가스 계산: EIP-7778은 환급을 어떻게 다루나
EIP-7778은 사용자 가스 환급은 유지하면서 블록 여유 공간에서는 제외해요. 두 계산 장부, 영수증 영향, 리스크와 글램스테르담 상태를 설명합니다.

이더리움 트랜잭션이 100,000만큼의 작업을 수행해도 가스 환급(Gas Refund)을 받은 뒤에는 더 적은 양에 대해서만 비용을 낼 수 있어요. 현재는 이 환급이 블록 가스 한도에서 차지하는 양도 줄입니다. EIP-7778은 두 역할을 분리해요. 사용자의 유효한 환급은 유지하되, 블록 용량에는 환급 전 작업량을 기록하는 제안입니다. 이 글에서는 테스트넷 계획을 메인넷 확정으로 오해하지 않으면서 블록체인 기초와 연결해 설명할게요.
2026년 9월 27일 현재 공식 EIP 상태는 Review예요. 이더리움 실행 명세 저장소는 EIP-7778의 목표 포크를 암스테르담(Amsterdam)으로 표시합니다. 9월 23일 테스트 픽스처 릴리스에는 암스테르담이 포함됐고, 10월 6일 세폴리아(Sepolia) 활성화를 목표로 해요. 같은 릴리스는 메인넷 전에 후속 버전이 더 나올 수 있다고 밝혔습니다. 이는 강한 테스트 신호이지만 메인넷에서 이미 작동한다는 증거나 모든 필드가 확정됐다는 보장은 아니에요.
이더리움 블록 가스 계산(Block Gas Accounting)이란?
가스는 서로 연결된 두 가지 역할을 해요. 사용자가 낼 트랜잭션 비용을 계산하고, 모든 검증 노드가 한 블록에서 처리할 작업량을 제한합니다. 현재는 대체로 같은 숫자가 두 역할을 맡아서 환급이 이용자 비용과 블록 용량 모두에 영향을 줘요.
고객 청구서와 창고 하역장의 용량표가 따로 있다고 생각해 보세요. 재활용 크레딧은 고객 청구액을 낮출 수 있습니다. 하지만 직원이 이미 옮긴 상자가 용량표에서 사라지는 것은 아니죠. EIP-7778은 청구서에는 크레딧을 남기고, 용량표에는 실제로 수행한 작업을 기록하는 방식이에요.
새 토큰 수수료나 두 번째 결제가 아닙니다. 검증자가 이용자에게 같은 작업을 두 번 청구하는 구조도 아니에요. 블록에 모은 트랜잭션이 한도 안에 들어가는지 판단하는 합의 계산 규칙의 변화입니다.
가스 환급은 왜 블록 한도를 흐리게 하나요?
이더리움은 트랜잭션 실행 중 환급 카운터(Refund Counter)를 관리해요. 대표적인 조건은 SSTORE로 0이 아닌 스토리지 슬롯(Storage Slot)을 0으로 비우는 경우입니다. EIP-3529는 슬롯 정리 환급을 줄이고 SELFDESTRUCT 환급을 없앴으며, 실제 적용되는 환급을 사용 가스의 5분의 1로 제한했어요. 정리 유인은 남지만, 환급이 사후 블록 용량을 늘리는 범위는 제한됩니다.
그래도 개념적인 불일치는 남아요. 나중에 환급으로 최종 비용이 줄어도 스토리지 쓰기 작업 자체는 이미 실행됐습니다. 현재 계산에서는 환급 후 가스가 블록 누적 사용량에 들어가므로, 명목 블록 가스 한도보다 더 많은 환급 전 실행 작업을 한 블록에 담을 수 있어요.
EIP-7778은 이를 블록 가스 한도 우회라고 설명합니다. 제안서의 사례인 이더리움 20,878,522번 블록은 환급 후 약 2,850만 가스를 기록했지만, 약 401만 가스의 환급을 더한 환급 전 작업은 약 3,251만 가스였어요. 과거 블록 하나가 현재 공격이 진행 중이라는 뜻은 아닙니다. 용량 계기와 수행 작업이 달라질 수 있음을 보여 주는 사례예요.
EIP-7778의 두 가지 계산 장부
현재 Review 명세는 아래 두 공식으로 역할을 나눠요. 구현 중 이름은 바뀔 수 있지만 핵심은 사용자 계산과 블록 계산의 분리입니다.
사용자 청구 가스 = max(환급 전 사용 가스 - 유효 환급, 콜데이터 최저 가스)
블록 계산 가스 = max(환급 전 사용 가스, 콜데이터 최저 가스)사용자 장부에는 유효한 환급이 남아요. 블록 장부에서는 환급이 다음 트랜잭션을 위한 공간을 만들지 않습니다. EIP-7623의 콜데이터 최저 비용(Calldata Floor)도 두 계산에 계속 영향을 줘요.
트랜잭션이 환급 전 100,000 가스를 사용하고 15,000 가스의 환급을 실제로 받았다고 가정해 볼게요. 더 높은 콜데이터 최저 비용은 없다고 단순화하면 다음과 같습니다.
| 관점 | 가스 단위 | 숫자의 용도 |
|---|---|---|
| 환급 후 사용자 청구 | 85,000 | 유효 가스 가격과 곱해 비용 계산 |
| 블록 용량 기여분 | 100,000 | 블록 실행 한도와 비교 |
| 두 값의 차이 | 15,000 | 블록 공간은 만들지 않는 사용자 환급 |
사용자는 15,000 단위의 혜택을 그대로 받아요. 다만 블록 빌더(Block Builder)는 이 혜택을 검증자가 15,000만큼의 작업을 하지 않았다는 증거로 취급할 수 없습니다.
영수증·빌더·사용자에게 무엇이 달라지나요?
트랜잭션 영수증은 사용자 결제 결과를 유지해요
EIP에 따르면 영수증의 트랜잭션 gasUsed는 환급 후 값을 유지합니다. 앱이 effectiveGasPrice와 곱해 사용자의 실행 비용을 계산할 때 흔히 사용하는 숫자를 보존하는 셈이에요. 모든 가스 필드가 같은 질문에 답한다고 가정하기 전에 이더리움 트랜잭션 영수증 가이드를 확인해 보세요.
반면 블록 검증에는 환급 전 실행량이 필요해요. 클라이언트는 트랜잭션 실행 중 환급을 이미 추적하므로 블록 한도를 계산할 때 이를 다시 더할 수 있습니다. 활성화 이후 영수증 gasUsed만 단순 합산해 블록 용량을 복원하는 도구는 합의 계층의 용량 계기와 다른 값을 낼 수 있어요.
블록 빌더의 패킹 규칙은 더 엄격해져요
프로포저(Proposer)와 빌더는 환급 전 용량 기여분을 사용해 트랜잭션을 선택해야 합니다. 환급이 많은 트랜잭션은 발신자에게 더 저렴할 수 있지만, 영수증에 보이는 값보다 더 많은 블록 작업 예산을 차지해요. 정렬과 패킹 소프트웨어는 사용자 청구 가스와 용량 가스를 같은 값으로 취급하면 안 됩니다.
지갑 사용자가 두 장부 중 하나를 고르는 것은 아니에요
일반 사용자는 여전히 하나의 트랜잭션 가스 한도와 수수료 매개변수를 제출해요. 환급은 실행이 끝난 뒤 적용되므로, 실행 중 가스가 부족한 트랜잭션을 살려 주지 못합니다. 지갑은 전체 경로를 추정하고 예상 비용을 보여 줘야 해요. 사용자가 EIP-7778을 켜거나 두 번째 예산을 제출할 필요는 없습니다.
글램스테르담 가스 변경과 어떻게 연결되나요?
EIP-8007은 EIP-7778을 글램스테르담(Glamsterdam)의 더 넓은 가스 재책정 작업과 함께 분류합니다. EIP-8037의 별도 상태 가스(State Gas) 차원과 결합할 때 중요한 경계도 설명해요.
실행 가스 환급은 실제 작업이 발생했어도 보상을 제공합니다. 그래서 EIP-7778은 블록 실행 가스 계산에서 이 환급을 제외해요. 반면 **상태 가스 리필(State-gas Refill)**은 영구 상태가 만들어지지 않았을 때 비용을 되돌립니다. 예를 들어 리버트(Revert)로 상태 변경이 취소되거나 같은 트랜잭션에서 슬롯을 원래대로 돌린 경우예요. 현재 설계는 측정 대상인 영구 상태 자원을 소비하지 않았으므로 리필을 차감한 순값을 유지합니다.
이 차이는 미묘하지만 중요해요. 제안된 다차원 모델에서 ‘환급’이 하나의 보편적인 바구니를 뜻하지는 않습니다. 개발자라면 모든 가스 요소에 EIP-3529식 단축 설명을 적용하지 말고 통합된 포크 규칙을 시험해야 해요. 실행 가스와 상태 가스의 경계는 글램스테르담 상태 가스 가이드에서 더 자세히 볼 수 있습니다.
개발자 실전 체크리스트
- 두 값을 구분해 이름 붙이세요. 문맥이 모호한
gasUsed대신userGasCharged,blockGasCounted처럼 역할이 드러나는 변수를 사용해요. - 영수증 합산 로직을 점검하세요. 인덱서, 시뮬레이터, 대시보드, 빌더 분석기가 영수증 값만으로 블록 용량을 계산하는지 확인합니다.
- 환급이 많은 경로를 시험하세요. 스토리지 정리, 한 블록의 여러 환급 트랜잭션, 리버트, 콜데이터 최저 비용 경계, 여러 환급 조건을 결합한 거래를 포함해요.
- 포크와 픽스처 릴리스를 고정하세요. 체인 ID, 클라이언트 빌드, EIP 리비전, 실행 명세 픽스처 태그, 테스트 날짜를 기록합니다. 개발 네트워크와 Review EIP는 바뀔 수 있어요.
- 비용 추정은 사용자 관점을 유지하세요. 블록 기여분이 더 엄격하다고 해서 사용자의 수수료를 환급 전 값으로 곱하면 안 됩니다. 비용 화면에는 프로토콜의 사용자 환급을 반영하세요.
- 빌더 정책을 재검토하세요. 환급 뒤에는 저렴해 보이는 트랜잭션도 환급 전 용량을 예약해야 합니다.
리스크와 한계
- 명세 변경 위험: EIP-7778은 Review 상태예요. 공식, 필드 의미, 다른 EIP와의 상호작용, 활성화 범위가 바뀔 수 있습니다.
- 배포 상태 오해: 테스트 픽스처와 세폴리아 일정은 메인넷 활성화를 증명하지 않아요. 공식 출처에서 현재 포크 설정을 확인하세요.
- 도구 불일치: 익스플로러와 분석 도구는 사용자 영수증 가스를 보여 주지만 내부 블록 용량 계산은 더 큰 값을 사용할 수 있어요. 라벨이 없는 차트는 오해를 부릅니다.
- 빌더 복잡성: 블록 구성은 콜데이터 최저 비용, 상태 가스와 상호작용하는 별도 계산 관점을 추적해야 해요.
- 가스 추정 혼동: 이 제안이 트랜잭션 가스 한도의 여유분을 없애 주지는 않습니다. 환급은 작업 뒤에 적용되며 실행 중인 호출이 쓸 추가 가스가 아니에요.
- 혼잡 불확실성: 엄격한 용량 계산은 환급이 많은 작업이 블록에 들어가는 방식을 바꿀 수 있지만, 포함 시간이나 미래 가스 가격은 예측하지 못합니다.
- 시장 위험: 프로토콜 계산 변경은 ETH 가격 신호가 아니에요. 크립토 자산은 변동성이 크므로 잃어도 되는 범위 밖의 자금을 위험에 노출하지 마세요.
자주 묻는 질문
EIP-7778은 이더리움 가스 환급을 없애나요?
아니요. 현재 제안은 사용자의 트랜잭션 비용에서 유효한 환급을 유지해요. 다만 그 환급이 블록 가스 한도 기여분까지 줄이지 못하게 합니다.
사용자는 환급 전 금액을 내나요?
Review 명세에서는 아니에요. 사용자 계산은 기존 환급 규칙과 콜데이터 최저 비용을 적용하면서 유효한 환급을 계속 차감합니다.
환급은 실행 중 쓸 수 있는 가스를 늘리나요?
아니요. 환급은 실행 뒤에 적용돼요. 최종 비용이 낮아지더라도 트랜잭션이 선언한 가스 한도는 환급 전 실행 경로를 감당해야 합니다.
EIP-7778은 이더리움 메인넷에서 작동하나요?
그렇게 가정하면 안 됩니다. 2026년 9월 27일 현재 EIP 페이지는 Review 상태예요. 공식 실행 명세 픽스처에는 암스테르담이 포함되고 세폴리아 테스트를 목표로 하지만, 릴리스 노트는 메인넷 전 후속 작업도 예고합니다.
스토리지 정리 환급을 그냥 없애면 안 되나요?
EIP-3529가 이미 환급을 줄이고 전체 적용량을 제한했어요. 남은 환급은 스토리지를 비울 유인을 유지합니다. EIP-7778은 사용자 유인을 남긴 채 블록 용량 계산의 정확성을 다뤄요.
1차 출처
- EIP-7778: 환급을 제외한 블록 가스 계산
- EIP-3529: 가스 환급 축소
- EIP-8007: 글램스테르담 가스 재책정
- 이더리움 실행 명세: EIP-7778 구현 추적
- 이더리움 실행 명세: 테스트 픽스처 릴리스
핵심 정리
EIP-7778은 한 가스 숫자가 맡던 두 역할을 명확한 두 관점으로 나눠요. 사용자는 유효한 환급을 유지하고, 블록 한도는 그 환급 전 수행 작업을 계산합니다. 스토리지 정리 유인을 추가 블록 공간으로 바꾸지 않으면서 검증자 작업량을 더 충실히 나타내려는 변화예요.
사용자 지갑 흐름은 익숙하게 유지될 가능성이 큽니다. 개발자, 빌더, 데이터 팀은 시스템이 어떤 가스 값을 저장·합산·표시하는지 명확히 이름 붙이고, Review 제안을 확정 규칙처럼 가정하지 말고 통합 암스테르담 규칙으로 시험해야 해요.
이 글은 교육 목적이며 투자 조언이 아닙니다. 최신 EIP, 클라이언트, 네트워크 상태를 1차 출처에서 확인하고, 잃어도 되는 범위에서 테스트하며 스스로 조사하세요(DYOR/NFA).
함께 읽으면 좋은 글

가스비란? 블록체인 트랜잭션 수수료 완벽 가이드
이더리움 가스비의 작동 원리, 비용을 좌우하는 요인, 절약 실전 팁 7가지, 그리고 꼭 알아야 할 리스크까지 한 번에 정리했습니다.

이더리움 트랜잭션 영수증 완벽 정리: 상태·가스·로그 읽는 법
이더리움 트랜잭션 영수증의 status, gasUsed, 로그, 컨트랙트 주소, 타입 및 영수증 루트가 무엇을 증명하는지 설명합니다.

글램스테르담 가스 재책정: EIP-8037·EIP-8038 개발자 가이드
EIP-8037 상태 가스와 EIP-8038 상태 접근 비용이 이더리움 가스 가정을 어떻게 바꾸는지, 영향받는 컨트랙트와 테스트 방법을 설명해요.
관련 주제 살펴보기

이더리움 글램스테르담 업그레이드: ePBS·BAL과 확정된 사실
글램스테르담은 2026년 4분기 예정이에요. 확정된 범위, 세폴리아 일정, ePBS, 블록 레벨 접근 리스트와 남은 변수를 설명합니다.
크립토 주소 포이즈닝: 송금 전 지갑 주소를 검증하는 방법
주소 포이즈닝은 거래 내역에 닮은 지갑 주소를 심는 사기예요. 작동 원리와 안전한 전체 주소 검증 체크리스트를 알아보세요.