EIP-3540은 EVM 오브젝트 포맷(EOF) v1을 도입하여 EVM 바이트코드를 구조화된 컨테이너 형식으로 저장하는 새로운 표준을 제안합니다. 코드와 데이터를 분리하고 배포 시 유효성 검사를 가능하게 하는 기반 EIP로, 현재 정체 상태입니다.
EOF의 목적
EVM 바이트코드는 현재 구조적 메타데이터 없이 단순한 바이트 배열로 저장됩니다. EOF는 코드 섹션, 데이터 섹션, 타입 섹션 등을 포함하는 명시적 컨테이너 구조를 도입하여 바이트코드의 구조적 무결성을 보장하려 했습니다.
핵심 설계
0xEF 매직 바이트로 시작하는 새로운 컨트랙트 형식이 제안되었습니다. 코드와 데이터를 분리하고, 함수 타입 정보를 포함하며, 배포 시점에 유효성 검사를 수행함으로써 런타임 오류를 사전에 방지하는 구조입니다.
관련 EIP들
EIP-3540은 EIP-3670(코드 검증), EIP-3690(JUMPDEST 테이블), EIP-4200(정적 점프), EIP-4750(함수), EIP-5450(스택 검증) 등 여러 EOF 관련 EIP들의 기반이 됩니다. 이 EIP들은 함께 EOF 스펙을 구성합니다.
정체 현황
EOF는 오랜 기간 개발이 진행되었으나 여전히 정체 상태에 있습니다. 이더리움 하드포크 일정에서 여러 차례 논의되었으나 매번 더 긴 검토 기간이 필요하다는 판단으로 연기되었습니다.