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

SET_INDESTRUCTIBLE opcode

EIP-2937은 스마트 계약을 영구적으로 파괴 불가능하게 만드는 SET_INDESTRUCTIBLE 오프코드를 제안합니다. 계약의 불변성을 강화하는 메커니즘을 제공하려 했으나 현재 정체 상태입니다.

제안 동기

스마트 계약의 SELFDESTRUCT 기능은 계약이 예상치 않게 파괴될 수 있는 위험을 내포합니다. DeFi 프로토콜에서 핵심 계약의 갑작스런 파괴는 심각한 손실을 야기할 수 있습니다. SET_INDESTRUCTIBLE은 계약 배포자가 계약의 영구성을 선언할 수 있는 메커니즘을 제공합니다.

오프코드 동작

SET_INDESTRUCTIBLE을 실행한 계약은 이후 SELFDESTRUCT 호출이 실패하게 됩니다. 이 설정은 한번 적용되면 취소할 수 없는 단방향 작업입니다. 계약 코드의 초기화 단계에서 실행하여 배포 시부터 불변성을 보장할 수 있습니다.

정체 이유

SELFDESTRUCT 자체가 이더리움에서 제거될 방향으로 논의되고 있어 이 제안의 필요성이 줄었습니다. EIP-6780에서 SELFDESTRUCT의 동작을 제한하는 방식이 더 광범위하게 채택되었습니다. 불변 계약은 이미 배포 패턴과 관행으로 관리되고 있습니다.

현재 상황

EIP-2937은 Stagnant 상태로 남아있습니다. SELFDESTRUCT의 단계적 폐기 방향이 이 제안을 사실상 불필요하게 만들었습니다. 계약 불변성은 업그레이드 불가능한 배포 패턴과 감사를 통해 보장하는 것이 일반적입니다.

공식 EIP 문서open_in_new