EIP-7702 소개: 계정 추상화를 최적화하여 이더리움 채택 가속화
원제목: 《EIP-7702 Explained: The Future of Ethereum》
저자: QuickNode
편집: 심조 TechFlow
EIP-7702는 계정 추상화를 이더리움에서 대규모로 구현할 수 있도록 간결하고 단순한 구현을 통해 목표하고 있습니다.
최근 계정 추상화(Account Abstraction, AA)의 출현은 이더리움 사용자 경험 문제를 해결하는 핵심 솔루션으로 널리 주목받고 있습니다. 그러나 AA는 큰 잠재력을 가지고 있음에도 불구하고 실제 응용에서 어려움을 겪어왔으며, 최근에야 돌파구를 찾았습니다.
현재 EIP-7702의 출현은 희망을 가져왔습니다. 비탈릭 부테린(Vitalik Buterin)과 다른 핵심 이더리움 개발자들이 제안한 이 혁신적인 제안은 계정 추상화의 구현을 간소화하는 것을 목표로 하고 있습니다.
이 글에서는 EIP-7702의 세부 사항, 필요성, 개선 사항, 그리고 이더리움의 주류 응용을 위한 사용자 친화적이고 미래 적응 가능한 길을 어떻게 열어줄 수 있는지에 대해 깊이 탐구할 것입니다. 특히 최근 이더리움 ETF 신청이 승인된 이후 이 목표는 더욱 실현 가능해 보입니다.
그렇다면 계정 추상화란 무엇일까요?
계정 추상화란 무엇인가?
계정 추상화는 외부 소유 계정(Externally Owned Account, EOA) 없이 거래를 시작하고 실행할 수 있는 스마트 계약 계정을 생성할 수 있게 해줍니다. 간단히 말해, 계정 추상화는 웹3의 경험을 웹2처럼 매끄럽게 만들어 일상 사용자들이 이를 인식하지 못하게 하면서도 모든 혜택을 누릴 수 있도록 하는 것을 목표로 합니다.
웹2 시대에 고객이 결제 단말기에서 카드를 긁을 때, 모든 백엔드 시스템과 메커니즘은 조용히 작동하고 있습니다. 고객은 결제를 완료할 수 있는지에만 관심이 있고, 거래 과정의 복잡한 세부 사항에는 신경 쓰지 않습니다. 마찬가지로, 계정 추상화의 목표는 다양한 잠재적 응용 시나리오를 통해 가능한 한 매끄럽고 간편한 웹3 사용자 경험을 제공하는 것입니다.
계정 추상화의 잠재력
계정 추상화의 강력한 점은 개발자들이 자동 거래, 지갑 복구 메커니즘 등과 같은 복잡한 기능을 사용자 계정에 직접 통합할 수 있도록 허용하는 것입니다. QuickNode는 개발자들이 계정 추상화를 더 깊이 탐구하거나 실용적인 지침을 찾는 데 도움이 되는 상세한 가이드를 제공합니다. 프로젝트에서 계정 추상화를 구현하고 싶다면 QuickNode의 마켓에서 Stackup 플러그인을 통해 이 과정을 간소화할 수 있습니다.
이 개념은 많은 관심을 끌고 있으며, 점점 더 많은 계정 추상화를 지원하는 지갑들이 이를 증명하고 있지만, 본토 이더리움 구현의 부족은 고유한 채택 문제를 부각시키고 있습니다.
계정 추상화의 도전
이더리움에서 계정 추상화를 구현하는 데는 여러 가지 도전이 있습니다. ERC-4337 표준에는 고유한 문제가 있으며, 구현 과정에서도 추가적인 도전에 직면하게 됩니다. 주요 위험 요소는 다음과 같습니다:
- 소유권과 통제권 분리의 위험: 계정 추상화는 계정의 소유권과 통제권을 'EntryPoint' 계약으로 분리할 수 있으며, 이는 무단 거래 및 스마트 계약 취약점의 위험을 초래합니다. 개발자는 이러한 위험을 완화하기 위해 기술적 방어 조치를 구현해야 하며, 이는 복잡성을 증가시킵니다.
- ERC-4337 호환성의 물류 위험: 기존 EOA는 ERC-4337이 제공하는 복잡한 기능보다 훨씬 단순하며, 많은 백엔드 로직과 코드 재구성이 필요합니다. 보안성을 위해 탈중앙화된 패커와 MetaMask와 같은 인기 있는 인프라를 업데이트하는 것은 물류적 도전을 추가합니다.
(출처: EIP-4337 공식 문서)
- EntryPoint 계약이 단일 실패 지점으로 작용: ERC-4337은 사용자 작업을 처리하고 검증하기 위해 EntryPoint 계약에 크게 의존하며, 이는 보안 위험과 신뢰성 문제에 취약한 단일 실패 지점이 됩니다.
또한, 스마트 계약 계정 거래는 전통적인 EOA 거래보다 더 비쌉니다. 이는 복잡성을 증가시킵니다.
EIP-7702: 제안된 솔루션
EIP-7702는 ERC-4337, EIP-3074 및 EIP-5003의 최상의 특성을 결합하고 각자의 제한을 완화하여 이러한 도전을 해결합니다. 이 접근 방식은 계정 추상화의 구현을 보다 효율적이고 호환 가능하게 보장합니다.
주요 구성 요소:
- ERC-4337 - 스마트 계약 계정: 스마트 계약이 사용자 계정으로 작동할 수 있게 하여 개발자가 복잡한 거래 논리와 사용자 경험 개선을 구축할 수 있도록 합니다. 그러나 EOA를 스마트 계약 계정으로 변환하는 본토 지원이 부족하고, 후방 호환성이 없어 거래 비용이 높습니다.
- EIP-3074 - AUTH 및 AUTHCALL: 두 개의 새로운 연산 코드 AUTH 및 AUTHCALL을 도입하여 EOA 기능을 강화하고, 이를 통해 임시로 스마트 계약 계정으로 작동할 수 있게 합니다. 그러나 이는 하드 포크가 필요하고 호출자에 의존하여 중앙 집중화 위험을 초래합니다.
- EIP-5003 - AUTHUSURP: EOA를 스마트 계약 계정으로 영구적으로 이전하기 위해 AUTHUSURP 연산 코드를 도입합니다. 이는 EIP-3074 권한 주소에 스마트 계약 코드를 배포하고 원래 개인 키 접근을 철회하여 구현됩니다.
또한 EIP-7702는 EOA가 단일 거래에서 임시로 스마트 계약 지갑으로 실행될 수 있도록 하는 새로운 거래 유형을 도입합니다. 이 임시 코드 할당은 신뢰할 수 없으며, 기존 ERC-4337 인프라와 호환되며, 기능적 설계로 통합이 용이하고 미래 확장성을 위해 설계되었습니다. 하드 포크 없이도 가능합니다.
EIP-7702가 이더리움 채택을 가속화하는 방법
EIP-7702는 다음과 같은 특성을 통해 이더리움에서 계정 추상화의 채택 잠재력을 크게 향상시킵니다:
- 신뢰성 없음: EIP-7702는 단일 거래에서 EOA에 스마트 계약 코드를 임시로 할당함으로써 중앙 신뢰 지점에 대한 필요성을 제거합니다. 이 신뢰할 수 없는 접근 방식은 거래 후 모든 접근 또는 계약 서명을 제거합니다.
- 호환성: EIP-7702는 기존 ERC-4337 인프라와 완전히 호환되며, 하드 포크나 새로운 연산 코드가 필요하지 않습니다. EOA와 스마트 계약 계정 간에 매끄럽게 작동하며, 이더리움에서 계정 추상화를 통합합니다.
- 기능 기반 검증: EIP-7702는 검증(AUTH)과 실행(AUTHCALL)을 긴밀하게 결합하여 간섭을 줄이고 전환을 간소화합니다. 이 기능 기반 접근 방식은 학습 곡선을 낮추어 개발자 경험을 향상시킵니다.
- 미래 확장성: EIP-7702는 ERC-4337 계정과의 후방 호환성을 보장하며, 기술 부채가 낮습니다. 하드 포크 없이 유지 관리가 가능하여 개발자들이 장기 솔루션을 자신 있게 구축할 수 있도록 합니다.
개발자 친화적인 계정 추상화 경로
지금까지 계정 추상화의 약속은 구현 복잡성, 본토 지원 부족 및 다양한 접근 방식으로 인해 실현되지 못했습니다. EIP-7702는 EOA에 스마트 계약 계정 기능을 부여하는 핵심 문제를 직접 해결하는 개발자 친화적인 솔루션을 제공합니다. 이는 신뢰할 수 없고 호환 가능하며 미래 확장성이 있습니다.
이더리움이 지속적으로 발전함에 따라 EIP-7702는 계정 추상화의 진정한 잠재력을 실현하기 위한 중요한 단계로, 보다 사용자 친화적이고 개발자 친화적인 생태계를 위한 길을 열어줍니다.