EIP-8037/EIP-8038 Glamsterdam
Ethereum Foundation 보고서는 다가오는 Glamsterdam 하드포크에서 EIP‑8037과 EIP‑8038이 8개의 가스 관련 불변성을 깨뜨려 프로젝트가 실패할 가능성을 노출한다는 점을 조사합니다. 개발자들에게 계약을 감사하도록 권고했으며, 하드포크 지연을 초래했습니다.
핵심 내용
- Glamsterdam은 여러 연산의 가스 비용을 재정의하여 알려진 8개의 불변성을 깨뜨립니다.
- Chainsecurity가 변경이 적용되면 실패할 수 있는 여러 프로젝트를 식별했습니다.
- 식별된 문제가 해결될 때까지 하드포크가 연기되었습니다.
- 개발자들은 제공된 레포를 사용해 나열된 불변성에 대해 계약을 감사하도록 권고됩니다.
- 내부 및 외부 감사(Chainsecurity, Dedaub)가 진행 중이지만 모든 코드를 포괄적으로 검토하기는 어렵습니다.
보고서가 조사하는 내용
Ethereum Foundation의 최신 보고서는 다가오는 Glamsterdam 업그레이드, 특히 EIP‑8037과 EIP‑8038에 초점을 맞추고 있습니다. 이 두 EIP는 특정 opcode와 상태 접근에 대한 가스 가격을 전면 개편합니다. 핵심 질문은 새로운 가스 규칙이 기존에 가정했던 8개의 불변성을 무효화하면서 어떤 기존 스마트 계약이 깨질 것인가입니다.
방법론 및 데이터 출처
Chainsecurity는 테스트넷 실험을 수행하고 새로운 규칙 하에서 취약해질 수 있는 몇몇 프로젝트를 표시했습니다. 그들의 발견은 공개 블로그 게시물과 진단 도구에 문서화되어 있습니다. Foundation은 Chainsecurity, Dedaub, 그리고 자체 내부 팀에게 감사를 의뢰하고 있으나, 온·오프 체인 모든 코드를 전면 검토하는 것은 현실적으로 불가능하다고 인정합니다.
주요 결과
보고서는 가스 재가격 책정이 실제로 8개의 특정 불변성을 위반하며, 이미 이러한 가정을 기반으로 운영 중인 라이브 계약이 존재한다는 점을 확인했습니다. 이 위험 때문에 All Core Devs (ACD) 그룹은 하드포크를 연기하고 Hoodi 포크도 문제 해결 전까지 보류하기로 결정했습니다. 이후 Hegota 업그레이드 작업은 영향을 받지 않고 진행됩니다.
주의점 및 제한 사항
식별된 프로젝트는 문제를 보여주는 사례일 뿐이며, 감사 범위가 제한적이기 때문에 아직 테스트되지 않은 많은 계약이 여전히 노출될 수 있습니다. 따라서 Foundation의 조치는 모든 영향을 받는 코드를 완전하게 나열하기보다 예방 차원의 조치임을 강조합니다.
커뮤니티에 미치는 영향
계약 개발자, 감사인, 툴 제공자는 전용 GitHub 레포에 있는 8개의 불변성을 검토하고 제공된 프롬프트를 사용해 자신의 코드베이스에 적용해 보아야 합니다. 영향을 받는 프로젝트는 [email protected] 로 Foundation에 연락해야 합니다. 이러한 협업 접근 방식은 하드포크가 진행되기 전에 네트워크를 안전하게 유지하고, Ethereum의 신뢰성과 개발자 신뢰를 보존하는 데 목적이 있습니다.