EIP-6049는 이더리움의 기존 "SELFDESTRUCT" opcode를 더 이상 사용하지 않고 Shapella 업그레이드의 상하이 하드 포크의 일부로 "halt"라는 새로운 opcode로 대체할 것을 제안하는 이더리움 개선 제안입니다.[1]
2022년 11월 27일, EIP-6049는 문제가 있는 SELFDESTRUCT opcode를 더 이상 사용하지 않고 "halt"라는 더 안전하고 제어된 기능으로 대체하여 이더리움의 스마트 계약의 보안과 안정성을 개선하기 위해 만들어졌습니다.
자체 파괴 opcode를 사용하면 스마트 계약이 자체적으로 파괴되고 남은 자금을 지정된 수신자에게 반환할 수 있습니다. 그러나 특정 시나리오에서 사용하기에 문제가 되는 몇 가지 문제가 있습니다.[2]
자체 파괴의 주요 문제 중 하나는 계약 소유자뿐만 아니라 누구든지 호출할 수 있다는 것입니다. 이로 인해 악의적인 행위자가 계약을 파괴하고 소유자가 모든 자금을 잃게 되는 상황이 발생할 수 있습니다. 또한 자체 파괴에는 무한한 비용이 발생하므로 많은 양의 가스를 소비하고 서비스 거부 공격을 생성하는 데 사용할 수 있습니다.[3]
제안된 "halt" opcode는 계약이 자체적으로 파괴되는 더 안전하고 제어된 방법을 제공하여 이러한 문제를 해결하기 위한 것입니다. 자체 파괴와 달리 halt는 계약 소유자만 호출할 수 있으며 고정된 가스 비용이 있습니다. 이렇게 하면 공격자가 기능을 남용하고 많은 양의 가스를 소비하는 공격을 생성하기가 더 어려워지고 결과적으로 개발자는 계약에 대한 더 큰 제어력을 확보하고 이더리움 네트워크에 광범위한 손상을 일으킬 수 있는 공격의 위험을 줄일 수 있습니다.[2][3]