Tech/EIPs/#6046
EIP 6046카테고리 · 코어유형 · 표준 트랙상태 · 정체

Replace SELFDESTRUCT with DEACTIVATE

EIP-6046는 논란이 많은 SELFDESTRUCT 옵코드를 제거하고 컨트랙트를 비활성화(deactivate)만 할 수 있는 새 기능으로 대체하는 Stagnant 상태의 Core EIP입니다. 스테이트리스 이더리움과 Verkle 트리 전환을 위한 사전 작업입니다.

제안 내용

SELFDESTRUCT를 DEACTIVATE 옵코드로 대체하여 컨트랙트의 코드와 스토리지를 즉시 삭제하는 대신 실행만 비활성화합니다. 잔액 이전 기능은 유지되지만 상태 삭제는 더 이상 발생하지 않습니다.

SELFDESTRUCT 문제점

SELFDESTRUCT는 스테이트 트리의 즉각적인 수정을 요구하여 Verkle 트리와 스테이트리스 클라이언트 구현을 복잡하게 만듭니다. EIP-6049로 공식 폐기가 예고된 상황입니다.

경쟁 제안들

EIP-4758(SELFDESTRUCT를 SENDALL로 대체)과 EIP-6780(SELFDESTRUCT의 동일 트랜잭션 내 생성 시에만 동작 허용)이 유사한 목적으로 제안되었습니다. EIP-6780이 Cancun 업그레이드에 포함되었습니다.

현재 상태

EIP-6780이 실제 네트워크에 채택됨으로써 EIP-6046의 접근법은 실질적으로 대체되었습니다. Stagnant 상태로 남아 있습니다.

공식 EIP 문서open_in_new