곰투 크립토
guide전체 41편 중 35편

이더리움 트랜잭션 타입 완벽 정리: 레거시와 타입 1–4

이더리움 레거시·액세스 리스트·동적 수수료·블롭·Set Code 트랜잭션의 타입 바이트, 수수료 필드, 용도와 리스크를 설명합니다.

GOMTU
GOMTU
크립토 리서치 · 2026년 9월 7일 · 약 8분
공유𝕏in
이더리움 트랜잭션 타입 완벽 정리: 레거시와 타입 1–4

블록 탐색기에서는 type: 0x2, 롤업 배치에서는 0x3, 최신 지갑 작업에서는 0x4를 볼 수 있어요. 성공 코드일까요, 토큰 표준일까요, 아니면 서로 다른 네트워크일까요? 모두 아닙니다. 같은 블록체인이란 무엇인지 다루는 기초 가이드 안에서 서로 다른 이더리움 트랜잭션 형식을 나타내며, 타입을 먼저 읽으면 어떤 필드와 수수료 규칙을 적용해야 하는지 알 수 있어요.

이 가이드는 2026년 9월 기준 이더리움 메인넷에서 활성화된 트랜잭션 계열을 정리합니다. 레거시(Legacy)와 타입 0x01부터 0x04까지 다뤄요. ‘타입 0’이 RPC에서는 유용한 이름이지만 실제 EIP-2718 봉투 바이트는 아닌 이유, 지갑이 형식을 고르는 방법, 타입만으로는 증명할 수 없는 내용도 함께 살펴봅니다.

이더리움 트랜잭션 타입이란?

광고

택배 분류장을 떠올려 보세요. 모든 상자가 같은 배송망에 들어오지만, 겉의 색상 라벨은 일반 배송인지, 냉장 화물인지, 반품 승인인지 알려 줍니다. 라벨은 안의 물건이 가치 있거나 안전하다는 뜻이 아니에요. 어떤 규칙으로 상자를 해석하고 처리할지만 정합니다.

EIP-2718은 이더리움에 이런 분류 계층을 만들었습니다. 타입 트랜잭션(Typed Transaction)은 개념적으로 다음처럼 인코딩돼요.

TransactionType || TransactionPayload

첫 바이트가 페이로드(Payload)의 정의를 선택하고, 실제 필드 규칙은 각 EIP가 정합니다. EIP-2718은 0x01부터 0x7f까지의 양수 값을 타입 봉투에 사용해요. 레거시 트랜잭션은 기존 RLP 리스트를 유지합니다. 레거시 RLP 리스트는 다른 바이트 범위에서 시작하므로 클라이언트가 여러 디코더를 시험하지 않고도 구분할 수 있어요.

이 구조는 프로토콜 설계 문제를 해결했습니다. 과거에는 새 기능을 레거시 인코딩과 모호하지 않게 끼워 넣어야 했어요. EIP-2718 이후에는 새 형식이 자기 페이로드를 정의하면서도 이더리움의 블록·실행·영수증 구조를 함께 사용할 수 있습니다.

이더리움 트랜잭션 타입 한눈에 보기

현재 메인넷에서 활성화된 계열은 다음과 같습니다.

탐색기·RPC 타입프로토콜 형식핵심 추가 기능수수료 모델대표 사용자
0x0레거시 RLP 트랜잭션원래 필드와 서명단일 gasPrice 입찰호환성 중심 작업
0x1EIP-2930 액세스 리스트주소·스토리지 키 사전 선언gasPrice와 목록 비용특수 도구
0x2EIP-1559 동적 수수료최대 수수료·우선 수수료 상한기본 수수료 + 우선 수수료일반 지갑 대부분
0x3EIP-4844 블롭블롭 수수료 상한·버전 해시타입 2 실행 수수료 + 별도 블롭 수수료롤업 배치 제출자
0x4EIP-7702 Set CodeEOA 코드 위임 인가타입 2 방식 실행 수수료지원 스마트 계정 지갑

숫자는 순위가 아니에요. 번호가 크다고 더 빠르거나 안전하다는 뜻은 아닙니다. 각 형식은 서로 다른 목적을 가진 도구예요.

Note

초안 EIP는 추가 값을 제안할 수 있습니다. 예를 들어 EIP-8202는 현재 0x05를 제안하지만 상태가 Draft예요. 메인넷에서 활성화된 타입으로 취급하기 전에 반드시 최신 EIP 상태를 확인하세요.

각 형식은 어떻게 작동할까요?

레거시: 보통 타입 0으로 표시

레거시 트랜잭션은 논스(Nonce), 가스 가격, 가스 한도, 목적지, 값, 데이터, 서명 값을 담는 원래의 RLP 리스트예요. 앞에 EIP-2718 타입 바이트가 붙지 않습니다. JSON-RPC와 탐색기가 균일한 인터페이스를 위해 보통 0x0으로 표시하므로 타입 0이라는 이름이 널리 쓰여요.

레거시 수수료는 단일 gasPrice를 사용합니다. EIP-1559 이후에도 포함될 수 있지만, 최대 수수료와 우선 수수료 상한을 분리해 표현하지 못해요. 호환성을 위해 중요하지만 새로운 지갑 트랜잭션의 기본값으로는 정보가 덜 세밀합니다.

타입 1: EIP-2930 액세스 리스트

EIP-2930은 타입 0x01을 정의합니다. 체인 ID와 액세스 리스트(Access List)를 추가해요. 액세스 리스트는 실행 중 접근할 것으로 예상되는 주소와 스토리지 키를 적고, 고유 비용을 미리 내는 대신 실행 전에 웜(Warm) 상태로 만듭니다.

타입 1은 여전히 단일 gasPrice를 써요. 액세스 리스트는 허용 목록이 아니므로 목록 밖 상태에 접근해도 막지 않습니다. 쓰지 않는 항목이나 중복 항목을 넣으면 총 가스가 오를 수도 있어요.

타입 2: EIP-1559 동적 수수료

EIP-1559는 타입 0x02를 정의합니다. 단일 가격 입찰 대신 max_fee_per_gasmax_priority_fee_per_gas를 사용해요. 프로토콜은 발신자가 정한 상한을 넘지 않는 범위에서 블록의 기본 수수료(Base Fee)와 우선 수수료(Priority Fee)를 부과하고, 기본 수수료 부분은 소각합니다.

타입 2도 비어 있을 수 있는 액세스 리스트 필드를 포함합니다. 수수료 상한을 정하면서 기본 수수료 변화에 대응할 수 있어 일반 지갑 전송과 컨트랙트 호출에 널리 쓰여요. 가스 단위, 수수료 상한, 최종 청구액의 차이는 이더리움 가스비 가이드를 참고하세요.

타입 3: EIP-4844 블롭

EIP-4844는 블롭(Blob)을 운반하는 타입 0x03을 정의합니다. 동적 수수료 필드에 max_fee_per_blob_gas와 블롭 버전 해시(Versioned Hash) 목록을 더해요. 롤업은 같은 데이터를 일반 콜데이터(Calldata)에 올리는 것보다 저렴한 데이터 가용성 경로로 블롭을 사용합니다.

큰 블롭 데이터는 네트워크·합의 계층의 사이드카(Sidecar)로 이동하고, 실행 트랜잭션은 버전 해시로 이를 약속합니다. 블롭 가스는 별도 수수료 시장을 사용하므로 gasUsed × effectiveGasPrice만으로 전체 비용을 계산할 수 없어요. 타입 3은 목적지를 비워 컨트랙트를 생성하는 방식도 허용하지 않습니다.

타입 4: EIP-7702 Set Code

EIP-7702는 타입 0x04를 정의합니다. 인가 목록(Authorization List)을 통해 외부 소유 계정(EOA)이 이미 배포된 코드를 자기 계정 맥락에서 실행하도록 지정할 수 있어요. 주소를 유지하면서 배치 처리나 가스 대납 같은 스마트 계정 기능을 사용할 수 있습니다.

이더리움 재단의 Pectra 메인넷 공지에 따르면 EIP-7702는 2025년 5월 메인넷에서 활성화됐습니다. 타입 4는 동적 수수료 방식과 액세스 리스트를 이어받지만 블롭 트랜잭션은 아니며, 빈 목적지를 통한 컨트랙트 생성도 지원하지 않아요.

위임은 단순한 표시 변경이 아니라 강력한 권한입니다. 대상 코드를 검증하고 해제 방식을 이해하며, 예상하지 못한 인가 요청은 피싱 위험으로 취급하세요.

공통 필드와 달라지는 필드

모든 형식은 이더리움 상태 전이를 요청할 수 있지만 직렬화된 필드 위치를 서로 바꿔 읽을 수는 없습니다.

발신자 논스, 가스 한도, 목적지, 전송 값, 입력 데이터, 서명 권한 같은 개념은 공통이에요. 하지만 정확한 서명 대상과 수수료 필드는 형식마다 다릅니다. 타입 트랜잭션 EIP는 대체로 타입 바이트도 서명 메시지에 포함해 한 형식의 서명을 다른 형식으로 몰래 재해석하지 못하게 해요.

핵심 차이는 다음과 같습니다.

  • 수수료 표현: 레거시와 타입 1은 gasPrice, 타입 2–4는 최대·우선 수수료 필드를 사용해요.
  • 액세스 리스트: 타입 1이 도입했고 타입 2–4도 해당 필드를 포함합니다.
  • 블롭 약속: 위 활성 형식 중 타입 3만 블롭 전용 수수료와 버전 해시 필드를 가져요.
  • 인가 목록: 타입 4는 EIP-7702 위임 인가를 담습니다.
  • 컨트랙트 생성: 레거시·타입 1·타입 2는 빈 목적지로 생성을 표현할 수 있지만 타입 3·4는 허용하지 않아요.

원시 트랜잭션의 리스트 위치가 항상 같은 뜻이라고 가정하면 안 됩니다. 봉투를 먼저 읽고 해당 타입의 명세를 적용하세요. RLP는 대부분 형식 아래의 바이트·리스트 경계를 제공하지만 그 의미는 선택된 트랜잭션 EIP가 정합니다.

지갑·RPC·영수증은 타입을 어떻게 보여 줄까요?

대부분 사용자는 트랜잭션 타입을 수동으로 고를 필요가 없습니다. 지갑이나 라이브러리가 요청한 작업, 수수료 필드, 네트워크 기능, 공급자 응답을 보고 지원 형식을 골라요. 동적 수수료 상한을 가진 일반 전송은 보통 타입 2입니다. 롤업의 블롭 게시자는 의도적으로 타입 3을 만들고, EIP-7702 인가를 쓰는 지갑 흐름에는 타입 4 지원 소프트웨어가 필요해요.

JSON-RPC를 점검할 때는 다음 순서를 권합니다.

  1. 타입 전용 필드를 읽기 전에 type을 확인하세요.
  2. 타입이 없거나 0x0이라면 API 스키마와 클라이언트 동작을 확인한 뒤 레거시로 판단하세요.
  3. 타입 2 이후 수수료 형식은 상한이 전부 청구됐다고 가정하지 말고 영수증의 유효 가격과 비교하세요.
  4. 타입 3은 비용 계산에 블롭 가스 필드를 포함하세요.
  5. 타입 4는 외부 발신자만 보지 말고 인가와 현재 위임 상태를 확인하세요.

EIP-2718은 타입 트랜잭션과 같은 타입의 영수증도 연결합니다. 트랜잭션 영수증 가이드에서는 영수증이 실행 결과를 기록하지만 원래 페이로드 전체를 보여 주지는 않는 이유를 설명해요.

리스크와 흔한 실수

타입은 성공 상태나 최종성이 아니에요

0x2는 동적 수수료 형식이라는 뜻이지 ‘성공’이라는 뜻이 아닙니다. 실행은 되돌려질 수 있고, 블록에 포함돼도 서비스가 요구하는 최종성 기준에 못 미칠 수 있어요. 영수증 상태와 블록 맥락을 따로 확인하세요.

수수료 상한은 최종 수수료가 아니에요

가스 한도는 가스 단위를 제한하고 수수료 필드는 그 단위의 가격을 정합니다. 타입 2 방식의 maxFeePerGas는 상한이지 실제 청구액과 항상 같지 않아요. 타입 3의 블롭 수수료는 별도 경로입니다.

네트워크 지원 범위는 상황마다 달라요

Final 상태 EIP가 정의한 타입이라도 모든 EVM 호환 체인, 과거 블록, RPC 서비스, 하드웨어 지갑, 서명 라이브러리에서 자동 지원되는 건 아닙니다. 대상 네트워크와 도구 버전을 확인하세요. 알 수 없는 타입의 첫 바이트를 떼어 내 ‘수정’하면 안 됩니다.

새 기능은 보안 표면도 넓혀요

액세스 리스트는 컨트랙트를 검증하지 않습니다. 블롭 약속은 롤업 동작을 보증하지 않아요. EIP-7702 인가는 코드에 광범위한 계정 권한을 넘길 수 있습니다. 가능하면 정확한 호출을 시뮬레이션하고, 신뢰할 수 있는 경로로 주소를 확인하며, 서명이 무엇을 허용하는지 이해하세요.

Warning

타입이 익숙하다는 이유로 원시 트랜잭션에 서명하지 마세요. 체인 ID, 목적지, 값, 콜데이터, 수수료 상한과 액세스·블롭·인가 필드를 모두 확인해야 합니다.

실전 점검 체크리스트

  • 체인과 RPC 스키마를 확인했나요?
  • 트랜잭션 type을 먼저 읽었나요?
  • 해당 타입의 EIP로 필드를 디코딩했나요?
  • 논스·목적지·값·콜데이터를 검증했나요?
  • 가스 한도와 단위당 수수료를 구분했나요?
  • 타입 3이라면 블롭 수수료를 포함했나요?
  • 타입 4의 EIP-7702 인가를 모두 검토했나요?
  • 신뢰할 수 있는 도구로 컨트랙트 호출을 시뮬레이션했나요?
  • 포함 뒤 영수증 상태와 유효 수수료를 확인했나요?
  • 명시적인 확인 횟수·최종성 정책을 적용했나요?

FAQ

레거시 트랜잭션은 실제 바이트에서 0x00으로 시작하나요?

아니요. 레거시 트랜잭션은 EIP-2718 접두부 없이 기존 RLP 리스트로 인코딩됩니다. RPC와 탐색기가 균일한 API를 위해 흔히 0x0으로 표시해요.

타입 2는 항상 레거시보다 저렴한가요?

아닙니다. 타입 2는 수수료 상한과 기본 수수료 처리를 더 명확하게 표현하지만 최종 비용은 사용한 가스와 네트워크 상황에 따라 달라요. 타입 번호가 절감을 보장하지 않습니다.

타입 2에도 액세스 리스트를 넣을 수 있나요?

네. EIP-1559 타입 2 페이로드에도 액세스 리스트 필드가 있습니다. 타입 1이 기능을 도입했지만 독점하지는 않아요.

스마트 컨트랙트가 블롭을 콜데이터처럼 읽을 수 있나요?

아니요. 타입 3 실행은 버전 해시를 통해 블롭에 약속하지만 블롭 내용은 일반 EVM 콜데이터가 아닙니다. 롤업은 블롭 데이터 가용성 경로에서 관련 데이터를 가져와 해석해요.

타입 4는 일반 지갑 트랜잭션보다 자동으로 안전한가요?

아닙니다. 유용한 스마트 계정 기능을 제공하지만 안전성은 위임 코드, 인가 범위, 지갑 인터페이스, 사용자 검증에 크게 좌우됩니다.

주요 출처

페이로드보다 봉투를 먼저 읽으세요

이더리움 트랜잭션 타입은 버전이 있는 봉투이지 품질 점수가 아닙니다. 레거시는 원래 형식을 유지하고, 타입 1–4는 서로 다른 목적을 위해 액세스 리스트, 동적 수수료, 블롭, Set Code 인가를 더해요. 타입을 확인하고 해당 명세로만 디코딩한 다음 실제 의도와 영수증을 검증하세요.

이 글은 교육 목적이며 투자 조언이 아닙니다. 이더리움 트랜잭션은 되돌릴 수 없고 스마트 컨트랙트는 실패할 수 있으며 크립토 자산은 변동성이 큽니다. 잃어도 되는 금액만 사용하고, 최신 1차 문서를 직접 확인하며, 스스로 조사하세요(DYOR).

광고

함께 읽으면 좋은 글

관련 주제 살펴보기

GOMTU의 다른 글