
EIP-7702 제안에 있어 비탈릭은 왜 서둘렀는가?
글: 0XNATALIE
EIP-3074은 올해 4월 이더리움의 다음 하드포크 계획에 포함되었으며, 외부 소유 계정(EOA)이 트랜잭션 권한을 스마트 계약에 위임할 수 있도록 함으로써 사용자에게 더 편리한 경험을 제공하는 것을 목표로 하고 있습니다. 그러나 이 기능은 커뮤니티의 우려를 불러일으켰으며, 많은 구성원들이 서명이 잘못 사용될 경우 전체 계정 자산이 위험에 처하고 피싱 공격자들에게 기회를 줄 수 있다고 걱정하고 있습니다. 보안성을 더욱 강화하기 위해 최근 비탈릭 부테린(Vitalik Buterin)은 EIP-3074의 대안으로 EIP-7702를 제안하였고, 이는 커뮤니티 내에서 광범위한 논의를 촉발시켰습니다.
EIP-7702은 계정 추상(Account Abstraction) 기능을 향상시키기 위해 새로운 트랜잭션 유형을 도입합니다. 이 새로운 트랜잭션 유형은 외부 소유 계정(EOA)이 트랜잭션 처리 중 일시적으로 스마트 계약의 특성을 채택한 후, 트랜잭션이 종료되면 원래 상태로 복귀할 수 있게 합니다. 그렇다면 모두 계정 추상화 제안인 ERC-4337, EIP-3074, EIP-7702는 어디서 차이가 날까요?
ERC-4337: 애플리케이션 레이어의 계정 추상 표준
ERC-4337: Alt Mempool을 사용하여 계정을 추상화함. ERC-4337은 비탈릭이 제안한 것으로, 애플리케이션 레이어 표준이며 주요 목적은 스마트 계약 계정이 EOA처럼 주도적으로 트랜잭션을 시작할 수 있도록 하는 것입니다. EntryPoint이라는 스마트 계약을 도입함으로써, 스마트 계약이 마치 사용자의 계정처럼 작동하게 되며, 사용자는 자산과 트랜잭션을 관리하기 위해 계정처럼 동작하는 스마트 계약을 조작할 수 있습니다. 이를 통해 다중 서명, 자동 트랜잭션 실행 등의 복잡한 로직을 구현할 수 있습니다.
주요 특징:
-
하드포크 불필요: ERC-4337은 하드포크 없이 구현 가능하며, 이더리움 프로토콜에 어떤 수정도 필요하지 않습니다.
-
호환성: 기존 EOA 시스템과 호환되므로 전환이 보다 원활합니다.
-
목표: 계정 추상을 실현하여 스마트 계약이 거래를 처리하고 검증하는 계정 역할을 할 수 있도록 함.
-
본질: 스마트 계약 계정이 EOA처럼 주도적으로 트랜잭션을 시작할 수 있는 기능 부여.
-
EIP-3074: 권한 부여 및 대리 실행
EIP-3074: AUTH 및 AUTHCALL 오퍼레이션 코드. EIP-3074은 이더리움 연구원 SamWilsn, Go Ethereum 개발자 Matt Garnett 등이 제안했으며, 비탈릭은 이 제안서 작성에 참여하지 않았습니다. 이 방식은 EOA가 권한을 스마트 계약에 위임할 수 있도록 허용하며, AUTH와 AUTHCALL이라는 두 가지 새로운 오퍼레이션 코드를 도입하여 스마트 계약이 EOA를 대신해 작업을 수행할 수 있게 합니다. 예를 들어 트랜잭션 배치 처리, 가스비 스폰서십 등이 가능합니다. 이는 이더리움 가상 머신(EVM)에 상당한 변경을 초래합니다.
주요 특징:
-
위임 메커니즘: EOA는 AUTH 오퍼레이션 코드를 통해 스마트 계약에 권한을 부여하고, AUTHCALL을 통해 해당 스마트 계약이 자신을 대신해 작업을 수행하게 할 수 있습니다.
-
보안 위험: 악성 계약에 권한을 위임할 경우 자금 도난 등의 보안 문제가 발생할 수 있습니다.
-
목표: EOA가 일시적으로 권한을 스마트 계약에 위임함으로써 EOA의 기능을 확장하는 것.
-
본질: EVM 업그레이드를 통해 두 개의 오퍼레이션 코드 추가.
EIP-7702: 일시적으로 스마트 계약화된 EOA
EIP-7702: 트랜잭션 한 건에 대해 EOA 계정 코드를 설정함. 비탈릭이 공동 저자로 참여해 5월 7일에 발표한 이 제안은 EIP-3074의 대안으로, EOA가 트랜잭션 처리 중 일시적으로 스마트 계약 기능을 활용할 수 있도록 하는 메커니즘을 도입합니다. 이를 통해 EOA는 단일 트랜잭션 실행 기간 동안 EOA를 스마트 계약 지갑으로 변환했다가 트랜잭션이 끝나면 다시 일반 상태로 돌아갈 수 있습니다. 또한 EIP-7702는 이미 EOA 코드를 일시적으로 변경하는 프레임워크를 제공하므로, EIP-7702 기반으로 EIP-5003(EAO가 영구적으로 스마트 계약 계정으로 전환 가능)을 구현하는 것이 비교적 쉬워지며, 트랜잭션 종료 후 코드 삭제를 설정하지 않음으로써 EOA의 영구적인 스마트 계약 전환이 가능해집니다.
주요 특징:
-
일시적 전환: 트랜잭션 처리 과정에서 EOA가 일시적으로 스마트 계약 코드를 적용해 특정 작업을 수행할 수 있음.
-
높은 호환성: EIP-7702는 ERC-4337의 스마트 계약 지갑 코드와 높은 호환성을 가지며, 이미 ERC-4337을 위해 작성되고 배포된 스마트 계약 코드를 직접 활용할 수 있어 기존의 계정 추상화 작업을 재사용할 수 있고, 기존 계정 체계의 분열을 방지합니다.
-
새로운 오퍼레이션 코드 불필요: EIP-3074과 비교할 때 EIP-7702도 프로토콜 레이어 표준이지만, 트랜잭션 내에서 스마트 계약 코드를 일시적으로 적용하므로 EVM을 영구적으로 변경할 필요가 없습니다.
-
목표: EIP-3074과 ERC-4337의 장점을 결합하여 더욱 유연하고 호환 가능한 계정 추상화 방안을 제공하는 것.
-
본질: 스마트 계약 코드를 일시적으로 적용.
EIP-7702는 새로운 오퍼레이션 코드를 도입하지 않으면서도 EIP-3074과 유사한 기능을 구현할 수 있는 방법을 제공하며, 동시에 계정 추상화 궁극의 실현을 위한 준비를 더 잘합니다. 계정 추상화 궁극(Endgame of Account Abstraction)이란 미래의 예견된 상태를 의미하며, 이 상태에서는 이더리움의 모든 계정이 전통적인 EOA에 의존하지 않고 스마트 계약 지갑을 통해 자산과 트랜잭션을 관리하게 됩니다. 이러한 모든 계정이 스마트 계약 지갑을 사용하는 상황을 계정 추상화의 '궁극'이라고 부릅니다. EIP-7702는 현재의 문제를 해결할 뿐 아니라 미래의 잠재적 계정 모델과의 호환성을 설계함으로써 장기적인 유효성과 실용성을 보장합니다.
TechFlow 공식 커뮤니티에 오신 것을 환영합니다
Telegram 구독 그룹:https://t.me/TechFlowDaily
트위터 공식 계정:https://x.com/TechFlowPost
트위터 영어 계정:https://x.com/BlockFlow_News











