티스토리 뷰

Deep dive into EIP-4844 분석을 통해 이더리움 덴쿤(Dencun) 업그레이드의 핵심인 블롭 운반 트랜잭션(Blob-Carrying Transactions, Type 0x03)의 동작 원리와 가스 수수료 메커니즘을 상세히 살펴봅니다. 2024년 3월 13일 메인넷에 정식 반영된 EIP-4844는 레이어2 롤업 체인의 트랜잭션 수수료를 획기적으로 절감하기 위해 고안되었습니다.
기존 이더리움 가상머신(EVM)의 값비싼 영구 저장소인 Calldata 대신, 일정 기간(약 18일) 보관 후 비콘체인에서 프루닝되는 독립된 데이터 블록 '블롭(Blob)'을 도입한 것이 기술적 본질입니다. 이를 통해 롤업 데이터 가용성(Data Availability) 확보 비용을 대폭 낮추고 네트워크 처리량을 극대화했습니다.
1. 이더리움 트랜잭션 진화와 Type 0x03(Blob Tx)의 도입 배경
이더리움 네트워크는 베를린 하드포크(2021-04-15) 이후 EIP-2718 봉투형(Envelope) 트랜잭션 표준을 채택하여 트랜잭션 페이로드 최상단에 고유 타입 바이트를 부여해왔습니다. 덴쿤 업그레이드를 통해 네 번째 표준 트랜잭션 타입인 Type 0x03이 공식 프로토콜에 추가되었습니다.

| 트랜잭션 명칭 | 타입 바이트 (RLP 최상단) | 도입 하드포크 / 표준 | 주요 목적 및 특징 |
|---|---|---|---|
| Legacy Transaction | 0x00 | 최초 메인넷 규격 | 기본 가스비 단일 입찰 방식 트랜잭션 |
| Access List Transaction | 0x01 | 베를린 하드포크 (EIP-2930) | 상태 접근 목록 사전 명시로 가스 최적화 |
| EIP-1559 Transaction | 0x02 | 런던 하드포크 (EIP-1559) | 기본 수수료 소각 및 우선순위 수수료 도입 |
| Blob Carrying Transaction | 0x03 | 덴쿤 업그레이드 (EIP-4844) | 롤업 체인 대용량 데이터 일시 저장 전용 블롭 수반 |
Type 0x03 트랜잭션은 실행 계층(Execution Layer)의 연산 리소스를 낭비하지 않으면서 대용량 압축 데이터를 네트워크에 전파할 수 있도록 설계된 전용 파이프라인입니다.
2. 블롭(Blob)의 암호학적 레이아웃과 데이터 포맷 규격
블롭(Blob)은 다수의 롤업 트랜잭션 데이터를 압축하여 전달하기 위해 암호학적으로 특수 설계된 저장 단위입니다. 하나의 블롭은 4,096개의 필드 엘리먼트(Field Element)로 구성된 벡터 구조를 지니며, 각 필드 엘리먼트는 정확히 32바이트 크기를 갖습니다. 결과적으로 1개 블롭의 총 데이터 용량은 131,072바이트(128KB)에 해당합니다.

- 필드 엘리먼트 벡터 크기: 4,096개
- 필드 당 허용 수치 범위: 0 <= x < 52435875175126190479447740508185965837690552500527637822603658699938581184513
- 암호학적 기반 곡선: BLS12-381 타원곡선 스칼라 필드 Modulus 기반
- 약정 및 무결성 검증 체계: KZG 다항식 약정(Polynomial Commitments Scheme) 활용
필드 엘리먼트의 데이터 범위가 특정 소수(Modulus) 미만으로 제한되는 이유는 KZG 다항식 약정 검증 시 BLS12-381 타원곡선을 사용하기 때문입니다. 이를 통해 EVM이 128KB의 대용량 데이터를 직접 실행·해석하지 않고도 해당 데이터가 조작 없이 포함되었음을 수학적으로 빠르게 검증할 수 있습니다.
3. 블롭 가스 수수료(Blob Gas Fee) 산정 메커니즘과 파라미터
블롭 트랜잭션 발신자는 기존 EVM 연산 실행 가스 수수료와는 별도로, 블롭 공간 사용량에 상응하는 '블롭 가스 수수료(Blob Gas Fee)'를 추가 납부해야 합니다. 두 수수료 시장은 완전히 독립된 2차원 가스 모델(Two-dimensional Gas Market)로 분리되어 있습니다.


| 프로토콜 상수 명칭 | 설정 값 (Value) | 단위 및 기술적 의미 |
|---|---|---|
| GAS_PER_BLOB | 131,072 (2^17) | 블롭 1개당 고정 소모 가스량 (1바이트 = 1가스) |
| TARGET_BLOB_GAS_PER_BLOCK | 393,216 | 블록당 목표 블롭 가스량 (블롭 3개, 약 0.375MB) |
| MAX_BLOB_GAS_PER_BLOCK | 786,432 | 블록당 최대 허용 블롭 가스량 (블롭 6개, 약 0.75MB) |
| MIN_BLOB_BASE_FEE | 1 | 기본 블롭 가스 단가 하한선 (1 wei) |
| BLOB_BASE_FEE_UPDATE_FRACTION | 3,338,477 | 블롭 초과 가스 누적에 따른 단가 변동 비율 지수 분모 |
최종 블롭 가스 수수료 산출 공식은 다음과 같습니다: [총 블롭 가스 수수료 = 사용 블롭 개수 * 블롭 당 가스(131,072) * 블롭 기본 단가(Blob Base Fee)]. 만약 블롭 내 4,096개 슬롯 중 단 1개(32바이트)만 채우고 나머지 4,095개 슬롯이 비어있더라도, 네트워크에는 고정된 131,072 가스가 일괄 부과됩니다.
블롭 기본 단가는 직전 블록들의 누적 초과 가스량(excess_blob_gas)에 따라 지수함수적으로 조정됩니다. 블록당 목표치인 3개 이하가 유지되면 단가는 최저 1 wei로 수렴하지만, 네트워크 과부하로 블록당 최대치인 6개 블롭이 연속 실리면 단가는 약 1.125 wei 이상으로 급격히 상승하여 트랜잭션 유입을 조절합니다.
4. Blob Carrying 트랜잭션 페이로드 규격 및 핵심 제약 조건
Blob Carrying 트랜잭션의 실행 계층 페이로드는 기존 EIP-1559 구조를 계승하되 블롭 제어를 위한 신규 필드 2개가 추가되었습니다. 또한 스마트 컨트랙트 생성과 관련된 중대한 제약 조건이 존재합니다.

| 필드 명칭 | 데이터 형식 및 규격 | 기능 및 유효성 검증 규칙 |
|---|---|---|
| to | 20바이트 주소 (Address) | 비워둘 수 없음(필수). 신규 컨트랙트 배포 트랜잭션으로 사용 불가 |
| max_fee_per_blob_gas | 단위 가스당 최대 지불 가능 Wei | 발신자가 허용하는 블롭 기본 수수료의 상한선. 현재 단가가 높으면 미포함 |
| blob_versioned_hashes | 32바이트 해시 배열 (Array) | 0x01 버전 바이트와 KZG 약정의 SHA256 해시 결합값 목록 |
blob_versioned_hashes 필드는 각 블롭의 48바이트 KZG 약정값(Commitment)을 SHA256 처리한 후, 최상위 1바이트를 버전 식별자(0x01: VERSIONED_HASH_VERSION_KZG)로 치환한 32바이트 식별자 목록입니다. 이는 48바이트 약정을 EVM 친화적인 32바이트 규격으로 정규화하여 호환성을 보장하기 위함입니다.
트랜잭션 풀(TxPool)의 ValidateTransaction 로직은 블롭 트랜잭션 내 blob_versioned_hashes 개수가 0개인 경우(blobless blob transaction)와 블록당 상한선인 6개를 초과하는 경우(too many blobs in transaction) 모두 검증 오류를 발생시켜 거부합니다.
5. 네트워크 래퍼 트랜잭션과 비콘체인 Sidecar 수명 주기 관리
실행 노드에서 생성된 트랜잭션이 P2P 네트워크를 통해 비콘 노드(Consensus Layer)로 전파될 때는 단순 RLP 페이로드가 아닌 Network Wrapper 형태로 포장됩니다. 최종 래퍼 구조는 [rlp([payload, blobs[], commitments[], proofs[]])] 형태를 취합니다.

- blobs: 4,096개 필드 엘리먼트로 결합된 원본 롤업 데이터 바이트열
- commitments: KZG 암호화를 통해 48바이트로 압축된 블롭 약정 데이터
- proofs: 블롭 데이터가 약정과 정확히 일치함을 증명하는 48바이트 KZG 증명값 (Challenge-Open 검증)
- Sidecar 객체: 비콘 블록과 결합되어 합의 계층 검증자들에게 독립적으로 배포되는 컨테이너
비콘체인에 저장된 블롭 데이터는 영구 보존되지 않습니다. 프로토콜 상수 MIN_EPOCHS_FOR_BLOB_SIDECARS_REQUESTS에 명시된 기준에 따라 4,096 에포크(Epoch), 즉 약 18일 동안만 노드에서 조회 가능합니다. 기간 경과 후 원본 블롭 데이터는 합의 계층에서 자동 프루닝되어 노드의 스토리지 부담을 영구적으로 방지합니다.
EIP-4844는 이더리움 메인넷의 보안성을 희생하지 않으면서 롤업 확장성을 획기적으로 개선한 덴쿤 업그레이드의 핵심 축입니다. 일시적 데이터 보관소인 Sidecar와 다차원 가스 가격 결정 메커니즘을 통해 레이어2 네트워크의 데이터 가용성(DA) 비용을 유의미하게 절감시켰습니다.
향후 완전한 댕크샤딩(Full Danksharding)으로 전환되는 과정에서도 이더리움 데이터 구조의 근간은 EIP-4844의 KZG 다항식 약정 및 블롭 아키텍처를 기반으로 확장될 전망입니다. 온체인 데이터 및 가스비 동향을 지속적으로 모니터링하여 스마트 컨트랙트 및 인프라 설계에 선제적으로 대응할 필요가 있습니다.
이더리움(ETH) 거래 및 시장 대응을 준비 중이신가요?
이더리움(ETH) 거래를 준비 중이라면 관련 거래소의 거래 수수료와 진행 중인 혜택 조건을 함께 확인해 보세요. 공식 제휴 링크를 통해 신규 가입 및 KYC 인증 완료 시 거래 수수료 할인과 웰컴 보너스 혜택이 적용됩니다. 실제 거래를 시작하기 전 공식 가이드에서 세부 지급 조건과 적용 절차를 먼저 확인하시기 바랍니다.
[안내: 본 안내는 제휴 링크를 포함하고 있으며, 가입 및 이용 조건 충족 시 소정의 파트너 혜택이 발생할 수 있습니다. 모바일 앱 이용자는 APK 설치 가이드를 참고하세요.]
[투자 유의 안내] 본 글은 단순 정보 제공을 목적으로 하며 특정 가상자산에 대한 투자 권유나 자문이 아닙니다. 암호화폐 거래는 높은 가격 변동성과 원금 손실 위험을 수반하므로 모든 투자 판단과 책임은 투자자 본인에게 있습니다.