# EIP-6780

> EIP-6780은 SELFDESTRUCT opcode의 기능을 보안 강화를 위해 동일 스마트 컨트랙트 내 트랜잭션으로 제한하는 이더리움 개선 제안입니다...

- Canonical URL: https://iq.wiki/kr/wiki/eip-6780
- Categories: Projects & Protocols
- Tags: Layer 1, DeFi
- Created: 2024-04-06T02:44:40.906Z
- Last updated: 2024-04-14T22:08:35.387Z
- Source: IQ.wiki — the world's largest blockchain and crypto encyclopedia (https://iq.wiki)

---

**EIP-6780**은 [이더리움 개선 제안](https://iq.wiki/wiki/ethereum-improvement-proposal-eip)으로, 이전에는 컨트랙트가 스스로 파괴되어 코드와 스토리지를 지울 수 있었던 SELFDESTRUCT opcode의 기능을 제한합니다. 이제 동일한 트랜잭션 내에서 생성된 컨트랙트에 대해서만 작동합니다. 이는 더 깔끔하고 관리하기 쉬운 상태를 보장하여 장기적인 안정성과 보안을 강화하는 동시에 해당 기능의 합법적인 사용을 허용합니다. [\[2\]](#cite-id-w0flrtggxp8)[\[3\]](#cite-id-5wah0oiplng)



## 개요

EIP-6780 - "동일 트랜잭션 내에서만 SELFDESTRUCT"는 향후 [이더리움](https://iq.wiki/wiki/ethereum) 애플리케이션에서 사용될 Verkle Tree 아키텍처를 준비하기 위해 SELFDESTRUCT opcode의 기능을 수정합니다. SELFDESTRUCT opcode는 [스마트 컨트랙트](https://iq.wiki/wiki/smart-contract)가 스스로 삭제하고 남은 자금을 지정된 주소로 보낼 수 있도록 하는 강력한 도구입니다. 이는 더 원활하게 실행되는 네트워크를 위해 이더리움의 내부 관리 방식을 간소화하는 것과 유사합니다.[\[1\]](#cite-id-rqxbnl0y4yf)

현재 이더리움 애플리케이션은 [Merkle Tree](https://iq.wiki/wiki/merkle-tree) 아키텍처를 사용하며, SELFDESTRUCT opcode를 사용하여 코드 및 스토리지 삭제와 같은 계정 상태에 상당한 변경을 가할 수 있습니다. 그러나 향후 이더리움 애플리케이션에서 Verkle Tree 아키텍처가 사용될 때 Verkle Tree 아키텍처는 각 계정을 루트 계정과 연결되지 않은 다른 계정 키에 저장하기 때문에 계정을 수정하거나 삭제하기가 쉽지 않습니다.
따라서 EIP-6780은 SELFDESTRUCT opcode의 기능 수정안을 제안합니다. EIP-6780에 따르면 수정된 SELFDESTRUCT opcode는 사용 시 계정을 변경하거나 삭제하는 기능이 더 이상 없으며, [스마트 컨트랙트](https://iq.wiki/wiki/smart-contract)에 의해 생성된 동일한 트랜잭션에서 SELFDESTRUCT가 호출되는 경우를 제외하고는 ETH를 호출자에게 전송하는 데만 사용됩니다.

현재 컨트랙트와의 트랜잭션을 시작할 수 있는 사람을 제한하기 위해 SELFDESTRUCT를 사용하는 [메인넷](https://iq.wiki/wiki/mainnet)에 컨트랙트가 존재합니다. 아무도 호출할 기회를 갖지 못하도록 동일한 트랜잭션에서 컨트랙트를 파괴함으로써 가능합니다.[\[5\]](#cite-id-aofvbmdypi)




EIP-6780은 사양을 직접적으로 단순화하지는 않지만 다음을 통해 구현을 크게 개선합니다.

* 블록당 스토리지 편집 제한: 이는 Verkle 트리의 구현을 용이하게 하고 클라이언트 개발을 용이하게 합니다.
* 코드 지속성 보장: 이는 계정 추상화 지갑에서 트랜잭션 검증을 강화하여 DoS 취약점을 방지합니다.
* 이러한 새로운 불변성은 추가 단순화를 위한 길을 열어 잠재적으로 향후 SELFDESTRUCT를 완전히 제거할 수 있습니다.[\[3\]](#cite-id-5wah0oiplng)

## 작성자

* Guillaume Ballet
* [Vitalik Buterin](https://iq.wiki/wiki/vitalik-buterin)
* Dankrad Feist
