OKX 연구원 | 계좌 추상화 10년 진화의 종말 전투, EIP-7702를 통해 과거와 미래를 살펴보다
서론
Pectra는 이더리움 Dencun 이후 첫 번째 주요 업그레이드로, 프라하 실행 레이어 하드포크와 Electra 합의 레이어 업데이트를 포함하며, 역사상 가장 많은 11개의 EIP를 통합하여 검증자의 유연성, 네트워크 확장성 및 실행 효율성을 크게 향상시킵니다. 이더리움 메인넷 Pectra 하드포크가 2025년 5월 7일 공식 활성화됨에 따라, 계정 추상화(Account Abstraction)의 "궁극적인 형태"인 EIP-7702도 공식적으로 대중의 시야에 들어왔습니다!
만약 아직 EVM 기반의 Web3 지갑이 EIP-7702를 지원하지 않는다면, 이는 의심할 여지 없이 이더리움 전체 생태계와 사용자에 대한 포기를 의미합니다.
이것이 바로 비탈릭과 EF의 결단이며, 판도라의 상자가 곧 열릴 서막입니다! 현재 이더리움 생태계를 지원하기 위해 OKX Wallet은 이더리움 최신 계정 추상화 표준 EIP-7702를 선제적으로 지원하고 있으며, 체험해보고 싶은 사용자들을 위해 공식 진입점을 열었습니다. 여러분은 【OKX Wallet 홈 기능 구역 - More - 7702 업그레이드】를 통해 업그레이드하여 안전하고 전문적인 EIP-7702를 경험할 수 있습니다. 따뜻한 팁: 필요에 따라 업그레이드를 선택하고 경험할 수 있으며, 업그레이드를 하지 않아도 기존 생태계와 애플리케이션의 정상적인 사용에는 영향을 미치지 않습니다. 자산 안전을 보장하기 위해 반드시 공식 경로를 통해 작업하고, 피싱 링크와 악성 웹사이트에 주의하여 자산 위험을 피해야 합니다.
이 글을 따라가며 계정 추상화의 진화 역사, EIP-7702가 가져오는 사용자 가치와 시장 변화, 그리고 그 안에 잠재된 위험을 종합적으로 이해해 보세요.
개요
본문에 포함된 코드는 okx/js-wallet-sdk에 위치하며, OKX Wallet에서 사용하는 EIP-7702 SDK 구현은 커뮤니티 파트너에게 오픈 소스로 제공됩니다.
EIP-7702는 새로운 거래 유형을 추가하여 일반 EOA가 특정 계약 주소를 자신의 논리적 대리 계약으로 설정할 수 있게 합니다.
EIP-7702는 "비용 우위"와 "유연성"으로 인해 ERC-4337이 수년간 구축한 생태계를 완전히 계승하고 초월할 것입니다.
EIP-7702는 일반 사용자에게도 보이지 않는 위험이 있으며, 사용자가 업그레이드를 하지 않더라도 특정 상황에서 거래 실패 또는 자산 손실 위험을 초래할 수 있습니다.
EIP-7702는 새로운 사용자 경험을 가져오며, 사용자의 주체가 계약화로 이전될 때 시장 응용도 함께 진화할 것입니다. Gas 추상화, 가정용 계층 계정 등 오랫동안 기다려온 매끄러운 경험이 수십억 명을 이끌어 저비용으로 Web3 세계에 진입할 것입니다.
거래소와 DApp에 있어 EIP-7702의 특성을 적용하면 50% 이상의 비용 절감이 이루어져 계약 계정 시대를 완전히 수용할 수 있습니다.
계정을 왜 추상화해야 할까요?
계정 추상화의 비전은 이더리움 자체보다도 더 오래된 상상입니다.
이번 HK Web3 카니발에서 비탈릭은 여러 차례 다중 서명(Multi-sig), 계정 추상화, ZK 이메일 등 일련의 솔루션을 통해 이더리움이 "아이폰 순간" 목표의 50%를 완료했다고 강조했습니다.
빠르든 느리든, 낙관적이든 한정적이든, 우리는 깊이 들어가 AA가 왜 이렇게 영향력이 있는지 살펴보겠습니다! 결국 10년의 긴 여정을 거쳐 비탈릭은 AA 분야에서 그가 꿈꾸던 종착점에 도달했으며, 23년 이더리움 로드맵의 진행률에 중요한 한 획을 그었습니다.
계정 추상화, 도대체 무엇을 위한 것인가?
사실 본질적으로 해결하고자 하는 것은 소유권 분리 문제입니다. 현재 EOA(Externally Owned Account 외부 계정)의 소유권과 서명 권한은 사실상 동일한 개체가 보유하고 있습니다(모두 개인 키를 통해 모든 지시를 제어합니다). 이는 이더리움의 거래 구조에서 기인하며, 이더리움의 표준 거래에는 From 쪽이 없고, 실행 시 VRS 매개변수(즉, 사용자 서명)를 통해 From 주소를 역으로 해석합니다. 그리고 이더리움이 "세계적 상태 기계"로 설계된 만큼, 거래를 통해 체인 상 상태의 변화를 구현하는 데 완전히 의존하며, From 쪽을 지정할 수 없기 때문에 거래의 실행 권한과 최고 소유권이 결합되어 있습니다. 이것이 EOA가 간단하고 이해하기 쉬운 반면, 사용하기 불편한 일련의 문제의 근원입니다:
- 개인 키 보호가 어렵습니다: 사용자가 개인 키를 잃어버리면(분실, 해킹, 양자 해독) 모든 자산을 잃게 됩니다.
- 서명 알고리즘이 적습니다. 서로 다른 서명 알고리즘은 서로 다른 성능 손실을 초래하며, 체인 상 저장 비용을 초래합니다.
- 서명 권한이 높습니다. EOA의 기본 개인 키는 모든 권리를 가지고 있습니다.
- 복잡한 거래의 수수료가 높습니다. 수수료는 반드시 ETH로 지불해야 하며, 임의의 거래, 단일 작업은 최소 21000의 기본 비용이 필요합니다.
- 거래에 개인 정보가 없습니다. 과거 Circle이 제안한 비밀 ERC-20 프로토콜이 있었지만, 주류가 되지 않았습니다.
결국 현재의 블록체인 세계는 사용자에게 너무 복잡합니다. 사용자는 Gas 가격, Gas 한도, 거래 블로킹(Nonce 순서) 등의 개념을 이해해야 하며, 일반 사용자에게 복잡한 정보를 숨기는 것이 EIP-7702가 궁극적으로 해결하고자 하는 문제입니다.
ERC-4337과 EIP-7702의 핵심 차이점은 무엇인가요?
AA를 목표로 하는 다양한 제안이 있으며, 필자는 이전에 이에 대해 탐구한 바 있습니다. 전체적으로 정리해보면 본질적으로 두 가지 경로로 나뉩니다:
경로 1: EOA 주소가 CA 주소를 구동하도록 하기
ERC-4337은 이 측면의 전형적인 예입니다. 한 문장으로 요약하면: 새로운 거래 객체 UserOperation을 제안하여 사용자가 이 객체를 메모리 풀에 전송하고, bundlers의 형태로 지시를 일괄 패키징하여 계약을 통해 개별 거래를 실행합니다. 본질적으로는 기본 거래와 계정 운영을 계약 레벨에서 실행하도록 끌어올리는 것입니다.
실행 원리는 아래 그림과 같습니다:
bundler라는 역할을 통해 이 솔루션은 일괄 거래, 가스 면제, 적은 서명 알고리즘 등 문제를 해결할 수 있습니다.
하지만 복잡성과 사용자 거래 비용, bundler와 EntryPoint의 단일 실패 위험은 해결할 수 없습니다.
사용자가 ERC-4337로 이전하게 되면, 위 그림의 user2의 요구 사항이 단순히 Transfer 거래를 수행하는 것이라 하더라도, 사용자 거래 수수료는 EOA에 비해 두 배가 됩니다.
CA 및 EOA의 최신 사용자 수 데이터를 보면, 일부 사용자가 고급 플레이어로서 체인 상 CA를 주체로 하는 다양한 작업, 일괄 호출 등을 매우 의존하고 있다 하더라도, 그렇다면 왜 일반 CA를 사용하지 않겠습니까? bundler의 설계로 인해 하드포크 수준의 업그레이드를 피할 수 있지만, ERC-4337은 두 배의 비용 지출 단일 실패 위험을 초래하며, 사용자는 EOA의 기존 유연성을 잃게 됩니다. 따라서 다양한 사용자 요구에 직면하여 현재 시장의 사용자는 ERC-4337 솔루션을 그리 선호하지 않는 것이 분명합니다. 2년의 발전 동안 전체 추세는 현저히 하락했으며, 이더리움의 3억 개 독립 주소 수에 비해 여전히 멀리 떨어져 있습니다. 물론 우리는 ERC-4337의 부족함을 비난하는 것이 아니라, 그 발전에 따라 발전한 Paymaster, Gas 추상화 등의 역할과 개념이 EIP-7702에서 다시 한 번 적용되고 있다는 점을 강조하고 싶습니다. 필자는 어떤 산업의 발전도 일회성으로 이루어지지 않으며, 중요한 것은 과거의 흥망에서 규칙과 경험을 발견하는 것입니다.
2.2 경로 2: EOA 주소를 CA 주소로 변환하기
사실 2015년 11월 비탈릭은 EIP-101을 제안하여 계약을 계정의 새로운 구조로 삼았습니다. 주소를 코드와 저장 공간만 가지도록 변경하고, 수수료 지원을 ERC20로 변경하며, 프리컴파일 계약을 통해 기본 토큰을 ERC20 유사로 변경하여 잔액을 저장할 수 있도록 했습니다(대리 수납 권한 등의 기능을 가질 수 있습니다). 2018년 1월에는 EIP-859 제안이 있었으며, 핵심 기능은 거래 상대방 계약이 배포되지 않은 경우 거래에 첨부된 code 매개변수를 사용하여 계약 지갑을 배포하는 것입니다. 최종적으로 EIP-3074의 제안에서 추가적으로 유도된 EIP-7702가 이더리움 메인넷에 통합되었습니다! EIP-7702의 이념과 효과는 사실 매우 간단합니다. 새로운 거래 유형을 통해 초기화를 완료하고, 이후 사용자가 EOA에서 단일 거래 중 임시적이고 선택적으로 스마트 계약 기능을 허용하여 비즈니스에서 일괄 거래, 무가스 거래 및 사용자 정의 권한 관리 등을 지원할 수 있게 합니다. 그 중 가장 중요한 능력은 사용자가 임시적이고 선택적인 공간을 가질 수 있게 하는 것입니다. 또한 여러 사용자가 동일한 논리 계약을 공유할 수 있어 사용자 이동 비용을 크게 줄일 수 있습니다. 사용자가 EIP-7702 설정을 완료하려면 8W의 Gas가 필요하며, 대략 0.06 달러입니다. 새로운 계약을 설정하거나 논리 계약 설정을 취소하려면 4W Gas만 필요합니다. 설정을 완료한 후, 일괄 거래 시 사용자에게 대폭적인 가스 최적화를 가져올 수 있습니다. 아래 표를 보세요:
물론 당신은 두 번, 심지어 여섯 번의 토큰 전송이 필요하냐고 생각할 수 있습니다.
일반 사용자는 한 번의 거래로 한 가지 작업을 수행하는 것에 익숙해져 있기 때문에, 장면이 많지 않아 보이지만, Web3 게임, Web3 결제와 같은 다양한 응용 장면에서는 실제로 자주 발생합니다. 예를 들어, 게임 내에서 생성된 화폐인 동전과 사용자 충전 화폐인 은화를 동시에 소비하는 경우가 있습니다. 또는 특정 활동에 참여하면서 NFT 입장권과 입장료를 동시에 소비하는 경우도 있습니다.
복잡한 장면을 상상하지 않더라도, 현재 체인 상에서 가장 주류인 스왑 수요에서도 승인 및 전송의 일괄 요구가 있습니다. 심지어 현재는 사용자가 이미 쓸모없는 승인 권한을 빠르게 삭제할 수 있도록 도와주는 작은 도구를 만들 수 있습니다. 효과는 쉽게 비교할 수 있으며, 분명히 비용을 약 40% 줄일 수 있습니다.
EIP-7702의 핵심 원리
이러한 효과가 왜 발생하는지 탐구하려면, 그의 원리로 돌아가야 합니다. 사실 그의 핵심은 두 가지 논리로 나뉘며, 사용자 설정 단계와 일상 사용 단계로 나뉩니다.
설정 논리 계약 단계
핵심 프로세스는 다음과 같습니다:
첫 번째 단계: 서명 권한 부여, 원래 EOA의 개인 키를 통해 특별한 해시 문자열에 서명합니다. 이 문자열은 chain_id, address, nonce로 구성되어 있으며, 여기서 Address는 최종적으로 설정할 논리 계약의 주소이고, Nonce는 거래가 재전송되지 않도록 보장하는 전략입니다.
두 번째 단계: 서명 거래, 첫 번째 단계의 권한 정보가 있으면 누구나 유형 4의 거래를 구성할 수 있으며, 여러 권한 정보를 포함하여 여러 주소에 대해 한 번에 권한 설정을 수행할 수 있습니다.
세 번째 단계: 블록체인에 방송, 거래가 내부 Authorization을 처리하는 동안 논리 계약이 이미 활성화됩니다.
여기에는 더 많은 기술적 세부 사항이 있으며, okx 오픈 소스 js sdk의 구현을 참조하여 기본 데이터 인코딩 프로세스를 확인할 수 있습니다. 물론 이 솔루션은 일부 보안 위험과 복잡성을 숨기고 있으며, 우리는 아래에서 자세히 설명할 것입니다.
3.2 실행 논리 계약 단계
설정을 완료한 후, 거래 To 주소가 당신을 가리킬 때, 이는 스마트 계약을 호출하는 것과 같으며, 시스템은 당신이 설정한 논리 계약의 코드를 "로드"하여 현재 EOA의 상태에서 그 논리를 실행합니다.
두 가지 장면을 사용하여 살펴보겠습니다:
첫 번째, 당신이 스스로를 호출하는 경우
당신이 OKX 7702 스마트 계약과 같이 높은 보안성과 사용자 정의 제어 능력을 가진 계약을 설정했다면, 미리 작성된 calldata를 지정하여 현재 작업을 한 번에 여러 지시로 완료할 수 있습니다. 예를 들어, Approve+Transfer를 동시에 완료하거나 Approve+Swap을 동시에 완료할 수 있습니다.
결코 과소평가하지 마세요. 현재 총 27억 건의 이더리움 거래 중 Approve는 약 7500만 건이며, 각 거래에 대해 8W Gas를 계산하면 약 46만 ETH가 소모됩니다. 1700달러의 ETH 시세를 기준으로 하면 거의 8억 달러에 달합니다.
두 번째, 다른 사람이 당신을 호출하는 경우
과거 이더리움에서는 다른 사람이 EOA 주소를 호출하는 경우가 없었지만, 지금 당신은 만능 계약으로서 완전히 사용자 정의할 수 있습니다. 당신은 하위 계정을 개설하여 권한을 분배할 수 있으며, 소수의 Paymaster에게 화이트리스트를 설정하여 DApp의 지정된 계정이 당신을 대신하여 거래를 시작하도록 허용할 수 있습니다. 이를 통해 전통적인 블록체인 응용에서 반복적으로 서명을 요청하는 곤경을 완전히 면제받을 수 있습니다.
얼마나 강력한 능력인가요! 그래서 이것이 거의 모든 주요 지갑인 OKX Wallet, Metamask, WalletConnect, Biconomy, BaseWallet, Rhinestone, ZeroDev, TrustWallet, Safe 등 관련 팀들이 빠르게 지원하는 이유입니다.
EIP-7702는 계정 추상화의 종착점인가요?
네, 이번에는 사용자가 선택할 것입니다!
EOA가 충분히 좋지 않다는 것이 아닙니다. 객관적으로 말하면 EOA는 간단하고 명확하며 안전합니다. 하지만 이번 프라하 업그레이드 이후 EOA는 더 좋아질 것입니다. 비용과 경험 때문입니다. 잡스가 청바지 주머니에서 아이폰을 꺼낼 때, 그런 경험은 사용자들이 처음에는 생각하지 못했던 것들입니다.
계정 추상화는 많은 체인들이 탐색하고 적극적으로 시도하는 분야입니다. 예를 들어:
- Starknet은 ZK-Rollup(레이어 2)으로, 기본 계정이 모두 계약 계정이며 EOA가 없습니다.
- zkSync Era는 AA 계정을 기본 방식으로 사용하며, Bundler의 복잡한 단계가 필요하지 않습니다.
- Nervos CKB는 UTXO 모델과 유사하지만, 모든 계정이 사용할 검증기를 사용자 정의할 수 있도록 허용하여 소유권과 제어권을 분리합니다.
- Aptos / Sui는 Move 계열의 레이어 1에서 중요한 역할을 하며, EVM 방식의 AA는 아니지만 계정 사용자 정의 능력을 갖추고 있으며, 모듈화 서명, 다중 검증 등을 허용합니다.
- EVM의 Linea / Base / Mantle / Polygon / Arbitrum / Optimism 등 관련 생태계는 이미 ERC-4337을 통해 AA 지원을 완료했으며, 이더리움 메인넷과 마찬가지로 향후 EIP-7702 업그레이드를 따를 것입니다.
지갑과 AA 관련 분야의 인프라는 EIP-7702를 위한 기반을 더욱 포괄적으로 마련하고 있습니다.
EIP-7702의 핵심 경험 최적화: 일괄 거래, Gas 추상화(즉, Gasless 등 무가스 솔루션), 계정 위탁 등은 Coinbase, Metamask, Biconomy, Zerodev, Rhinestone, Ithaca 등 서비스 제공업체들이 모두 지원하고 있습니다.
이들은 모두 ERC-4337 시대에서 한 단계 더 발전한 적응을 이루었으며, 이는 EIP-7702의 큰 장점입니다. 최종적으로 계정 주체는 EOA와 CA의 형태를 모두 갖추게 되며, AA를 둘러싼 많은 기존 인프라가 이전하여 적응할 수 있습니다.
이제 EOA, ERC-4337, EIP-7702 간의 최종 효과 층 차이를 표로 나타내 보겠습니다.
객관적으로 이더리움 시스템은 다른 체인보다 훨씬 더 무거운 역사적 짐을 가지고 있습니다. 이는 최근 커뮤니티에서 비탈릭이 EVM 가상 머신을 변경하는 것에 대한 반대 목소리가 나오는 이유이기도 하며, 초기에는 ERC-4337을 선택할 수밖에 없었던 이유입니다. 그러나 더 나은 선택(EIP-7702)이 생기면 역사적 짐과 우수한 비용 최적화를 동시에 이룰 수 있게 되어, 사용자는 "아이폰 순간"을 맞이하게 됩니다.
기초 형태의 변화에 따라 파생된 형태는 더 나아가 상상할 수 있습니다. 예를 들어:
- 사용자는 Passkey 또는 Google 계정을 사용하여 지갑을 제어할 수 있습니다. 조건을 제한하여 서명 면제 등의 경험 기능을 구현할 수 있습니다.
- 사용자는 ZKEmail 등을 설정하여 복구 능력을 실현하고 개인 키를 찾는 기능을 구현할 수 있습니다.
- 체인 상에서의 대규모 거래자는 여러 거래를 1건으로 통합하여 블록 대기 시간을 크게 줄이고, 체인 상 스왑을 더 빠르게 진행하며, 연속 거래를 통해 거래 실패 위험을 줄일 수 있습니다.
시간은 사용자 경험에 큰 영향을 미칩니다. 전체 블록체인 세계에서 합의 시스템 순위가 두 번째(비트코인 다음)인 ETH는 BSC처럼 블록 시간을 3초에서 1.5초로 줄여 사용자 경험을 향상시킬 수 없습니다. 따라서 EIP-7702 기반의 지갑 도구는 사용자 경험에서 가장 중요한 다리 역할을 합니다.
따라서 앞서 논의한 기초에 결합하여, EIP-7702는 계정 추상화의 궁극적인 형태라고 할 수 있습니다!
하지만 미래에 모든 사용자가 이를 전면적으로 사용할 것이라고 보기는 어렵습니다. 그 자체의 응용이 신중해야 하며, 복잡한 스마트 계약이 통합되면 가져오는 보안 위험도 적지 않습니다. 일부 공격 방식은 매우 은밀할 수 있습니다. 따라서 2025년 5월 7일 이더리움 프라하 업그레이드가 활성화된 이후, 사용자가 가장 필요로 하는 것은 진정으로 안전한 지갑이며, 기술적 전문성을 통해 이를 보호해야 합니다.
종국의 전투가 끝났나요?
아니요.
확실히 Pectra는 이더리움 역사상 가장 야심찬 업그레이드로, 11개의 EIP를 포함하여 역사상 가장 많은 수를 자랑합니다! EIP-7702의 많은 이점은 우리가 눈으로 확인할 수 있으며, 위의 원리와 데이터를 통해 판단할 수 있습니다.
하지만 사용자 참여 선택 이후, 시장은 혼란의 전투를 맞이할 것입니다.
AA 생태계는 지속적으로 발전하는 과정에서 점차 파편화되는 경향을 보이고 있으며, 계정 추상화를 정의하는 EIP는 ERC-4337, ERC-6900, ERC-7579 등 다양한 인터페이스 표준이 존재하지만, 서로 다른 구현 솔루션 간에는 사용자 경험, 인터페이스 규범 및 행동 예측에서 명확한 차이가 있습니다. 서로 다른 지갑 구현 솔루션은 유사한 응용 장면과 제한된 핵심 기능에 집중하고 있지만, 각기 호환되지 않는 설계 가정과 구현 논리를 채택하고 있습니다.
가장 전형적인 숨겨진 문제는 저장소의 혼란입니다.
EIP-7702가 출시된 후, EOA 계정 하의 저장 공간이 계약에서 사용 가능해졌으며, 이 저장 공간은 단일 계약이 독점하는 것이 아니라 여러 스마트 계정 제공자가 공동으로 전환하여 사용할 수 있습니다.
사용자가 "대리 계약 전환(re-delegation)" 작업을 시작하면 기존 계정 계약이 새로운 계약으로 대체됩니다. 그러나 이전 계약이 기록한 상태 데이터는 삭제되지 않고 여전히 해당 EOA의 저장소에 남아 있습니다. 이는 새로운 대리 계약이 이전 계약이 기록한 저장 데이터에 접근하거나 수정할 수 있게 하여 "저장 오염"(참조 자료 2의 위험)을 초래할 수 있으며, 현재 계약의 실행 논리를 방해하거나 파괴할 수 있습니다.
비록 커뮤니티 내에서 저장소 혼란의 영향을 줄이기 위해 namespace를 통해 저장소를 격리하는 다양한 솔루션(ERC-7201)이 등장했지만, 어떤 솔루션을 사용하든 현재 생태계에서는 nonce의 유일성과 안전성을 보장하기 위한 강제적인 통일 규범이 여전히 부족합니다.
또 다른 전형적인 문제는 실행 표준의 혼란입니다.
이 글에서 드러난 것처럼: 《파편화에서 통합으로: 스마트 계정 표준화의 필요성》(참조 자료 3)
현재: Safe, Biconomy 및 ZeroDev는 각각의 버전의 일괄 호출 기능을 구현했지만, 세 가지의 함수 명명, 인터페이스 매개변수 및 결과 처리 방식은 모두 다릅니다. 그 중 ZeroDev는 일괄 호출 실패의 경우를 고려했지만, Safe와 Biconomy는 이러한 장면을 처리하지 않았습니다.
업계의 표준이 "각자 도생"하는 방식은 필연적으로 혼란의 전투를 초래합니다. 사용자, dApp, 개발자는 모두 그 피해자입니다. 따라서 EIP-7702의 출시는 단순한 기술 혁신이 아니라 스마트 계정의 일반 인프라를 구축할 기회입니다. 이는 우리가 "합의 재구성"의 창구를 제공하여 전체 Web3 지갑 생태계가 기능 다양성에서 구조 통일성으로 나아가 진정한 지속 가능한 발전을 이루도록 합니다.
EIP-7702 활성화 후 필수적인 세 가지 보안 이해
이제 다양한 관점에서 사용자, DApp, 거래소 등 조직을 종합적으로 살펴보며 이 시스템이 우리에게 어떤 영향을 미치는지, 기회를 가져오고 위험을 초래하는지 알아보겠습니다. 위험을 이해해야만 이 시스템이 제공하는 혜택을 더 완벽하게 누릴 수 있습니다.
EIP-7702는 복잡한데, 업그레이드하지 않아도 되나요?
물론, 적극적으로 업그레이드하지 않기로 선택할 수 있지만, 하나의 위험을 알아야 합니다. 프라하 업그레이드 이후, 당신의 한 메시지 서명이 무심코 자신을 위험에 빠뜨릴 수 있습니다.
확실히 EIP-7702는 강한 피싱 위험이 있습니다. Authorization의 매개변수는 address, nonce, chainid로 구성되며, 이 중 chainid가 0이면 해당 서명 권한이 어떤 체인에서도 nonce가 충족되는 경우 유효하게 작용할 수 있습니다.
OKX 오픈 소스 서명 SDK에서 7702 프로세스의 구체적인 구현 방식을 보면, 해당 표준에 맞추기 위해 사용자가 최종적으로 서명하는 것은 해시 값 0xabc입니다. 그 계산 방식은 다음과 같습니다:
여기서 keccak은 이더리움에서 주류인 해시 알고리즘으로, 임의 길이의 데이터로부터 고정된 32바이트 길이의 결과를 생성하는 특징이 있습니다. rlp는 정보 인코딩 방식이며, 마지막의 Magic은 고정 값입니다.
하지만 최종적으로 생성된 결과는 구체적인 내용을 이해할 수 없는 해시 값이기 때문에, 사용자가 경솔하게 메시지에 서명하고 다른 사람이 당신의 권한을 가지고 체인에 적용할 수 있다면, 무의식적으로 code가 설정되어 0day 수준의 공격 사건이 발생할 수 있습니다. 또한 set code는 강제적이므로, 당신이 과거에 안전한 계약을 설정했다고 해서 교체되지 않을 것이라고 생각할 수 없습니다.
따라서 안전한 지갑은 사용자가 임의의 해시 값을 서명하는 것을 금지합니다. 이 점은 이전에도 언급된 바 있습니다(해시 값이 일반 거래를 나타낼 수도 있기 때문입니다).
5.2 위험한 계약을 잘못 업그레이드한 경우, 자신을 어떻게 보호할 수 있나요?
이 위험은 매우 일반적입니다. 결국 자신이 피싱에 완전히 노출되지 않을 것이라고 보장할 수는 없습니다.
이 문제를 방어하기 위해서는 이더리움 시스템에서 거래가 nonce 순서에 따라 진행되어야 하며, 연속성을 유지해야만 체인에서 인정받을 수 있다는 기술적 배경을 알아야 합니다.
따라서 두 가지 공격 방식이 존재합니다.
첫 번째 경우는 해커가 현재 주소의 다음 nonce 값을 탈취하여 Authorization에 서명하는 경우입니다. 이 경우 처리도 간단합니다. 공격을 받았다면, 빠르게 Gasfee를 사용자 정의할 수 있는 지갑(예: OKX Wallet 또는 다른 안전한 지갑)을 사용하여 ETH를 다른 안전한 주소로 빠르게 전송하세요. 이 조치는 한편으로는 ETH 자산을 전이시키고, 다른 한편으로는 유효한 nonce 값을 교체하여 해커가 가진 것이 무효화되도록 합니다.
두 번째 경우는 해커가 후속 nonce 값을 탈취한 경우입니다. 이 경우 현재 Transfer를 수행하면 오히려 해커가 가진 Authorization이 유효해질 수 있습니다. nonce가 정확히 무엇인지 알 수 없기 때문에, 사실 어떤 작업도 절대적인 안전을 보장할 수 없습니다. 자산을 신속하게 전송하여 자신을 보호하는 수밖에 없습니다.
이렇게 보면 EIP-7702가 더 위험해 보이나요? 사실 그렇지 않습니다!
블록체인에서는 사용자 주권이 사용자 개인 키에 귀속되는 시스템이기 때문에, 언제든지 무분별한 서명은 자산 손실로 이어질 수 있습니다. 그러나 여기서 중요한 것은, 대규모 사용자가 특정 공격의 표적이 되는 경우를 제외하고, 대부분의 경우 사용자가 중요한 개인 키를 자주 사용해야 하므로 위험이 발생한다는 점입니다.
만약 당신이 AA를 통해 가정 계정과 개인 하위 계정의 총합 기능을 구현하고, 각 하위 계정에 사용할 수 있는 한도를 설정했다면, 기본적으로 주 계정은 시스템 수준의 설정을 변경할 때만 호출하면 되며, 일반적인 일상 사용에서는 소규모 계정으로 해결할 수 있습니다.
왜 업그레이드 후 일부 일반 거래가 실패했나요?
이런 상황은 EIP-7702를 지원하지 않는 지갑 도구에서 자주 발생합니다.
우선 기술적 배경을 보충하자면, 이더리움에서 계약 호출 과정에서 사용자의 현재 주소의 code 필드를 먼저 확인합니다. 내용이 존재하면 기본적으로 수용하는 함수를 통해 해당 논리를 실행합니다.
이러한 기반에서 일반 사용자에게는 EIP-7702의 계약 설정을 완료하면 기본적으로 수용 함수의 기능이 활성화되므로, 임의의 일반 ETH Transfer 거래는 일부 계약 논리를 실행하게 되어 전체 Gas 사용량이 증가합니다. 일반 거래의 Gas Limit을 21000으로 설정했다면, 자연스럽게 실패하게 됩니다.
마찬가지로 많은 NFT 프로젝트가 수신자 주소가 블랙홀 주소(즉, 자산을 전송할 수 없는 주소)인지 확인하여 거래를 금지하므로, 수용 함수가 적절히 처리되지 않으면 ERC20, ERC721 자산을 수신하지 못해 손실될 수 있습니다.
이에 대해 EIP-7702를 명확히 지원하는 지갑을 통해 설정하거나, 안전하게 감사받고 사용자 승인을 받은 논리 계약을 사용하는 것을 권장합니다.
이더리움 메인넷 Pectra에는 어떤 변화가 있을까요?
시장에서 많은 목소리가 이더리움이 길을 잃은 것처럼 보인다고 주장합니다. 왜 많은 업그레이드가 사용자와 관련이 없을까요? 정말 그런가요? 이번 업그레이드의 다른 EIP를 살펴보며 답을 찾아보겠습니다. EIP-7702는 사용자가 느낄 수 있는 가장 큰 업그레이드 변화이지만, 나머지 10개의 EIP는 다양한 차원에서 이더리움 생태계에 변화를 가져옵니다.
우선 암호학적 지원 측면에서 EIP-2537을 통해 BLS12-381 타원 곡선의 프리컴파일 작업을 도입하여 BLS 서명 검증 등 복잡한 암호 작업을 최적화하고, 더 높은 보안성(120+ 비트 보안성)과 계산 효율성(Gas 최적화)을 제공합니다.
스테이킹 장면에서도 여러 가지 최적화 포인트가 있습니다. 객관적으로 말하면 스테이킹은 확실히 최적화가 필요합니다. 이더리움의 검증자 집단은 빠르게 성장하고 있으며, 거의 백만 개의 검증자 스테이킹 주소가 존재합니다. 이는 MAXEFFECTIVEBALANCE가 32 ETH로 제한되어 있어, 노드 운영자가 더 큰 스테이킹 자산을 관리하기 위해 여러 검증자 계정을 생성해야 하며, 이로 인해 많은 "중복 검증자"가 존재하게 됩니다. 따라서 EIP-7251을 통해 최대 한도를 높여 Lido와 같은 집합 스테이킹 프로토콜이 관리해야 할 계정 수를 줄이고 시스템의 복잡성을 감소시킬 수 있지만, 이는 탈중앙화 문제를 악화시켜 ETH 스테이킹 시장을 더욱 집중화할 수 있습니다.
이번 업그레이드 이후 더 큰 규모의 노드 운영자가 여러 검증자 계정을 통합할 수 있게 되며, 소규모 검증자에게는 더 많은 유연성을 제공하여 복리 수익 누적이나 더 유연한 스테이킹 증가를 통해 수익을 늘릴 수 있습니다. 이는 매우 중요합니다. 원래 32 ETH에 도달한 후, 새로 발생한 10 ETH의 수익은 사실상 ETH 스테이킹에 계속 사용되지 않기 때문입니다. 왜냐하면 다시 32 ETH를 모아야 새로운 계정을 열 수 있기 때문입니다. 하지만 이번 업데이트 이후에는 42 ETH를 직접 스테이킹할 수 있습니다. 따라서 분명히 복리 수익이 다시 ETH 시스템으로 돌아올 수 있으며, 사용자 경험의 편리함과 함께 ETH 유동성을 낮추는 전조가 될 수 있습니다.
마지막으로 L2 생태계에 대한 대폭적인 최적화가 이루어졌습니다. 이더리움은 항상 L2 생태계 공동체의 길을 확고히 걸어왔습니다. 다른 SVM 계열과 MOVE 계열은 본질적으로 L1을 발전시키고 있으며, 그 위의 L2를 탐색하는 데 일정한 모순과 충돌이 있습니다. 그 근본 원인은 이러한 체인의 높은 성능이 L2를 개발하는 데 상대적으로 덜 의존하기 때문입니다.
더 많은 L2의 효율적인 이더리움 메인넷과의 상호작용을 장려하기 위해 EIP-7623을 통해 거래 중 calldata의 gas 비용을 각 바이트당 4/16 gas에서 10/40 gas로 높여 L2가 calldata를 사용하지 않고 Blob을 더 많이 사용하도록 유도하고 있습니다.
또한 EIP-7691을 통해 블록 내 blob의 용량을 늘려 더 큰 규모의 L2 저장 공간을 지원합니다. 이전 칸쿤 업그레이드에서 blob을 나타내는 두 개의 핵심 매개변수인 target과 max는 각 블록의 목표 blob 수와 최대 blob 수를 나타냅니다.
칸쿤은 3과 6이었고, 이제 프라하 이후에는 매개변수가 6과 9로 변경되었습니다. 요컨대, 확장되었습니다.
따라서 이더리움은 L2의 TPS를 통해 이더리움 본체를 향상시키고 있으며, 그 과정에서 여러 문제도 존재합니다. 유동성 분산, 크로스 체인 복잡성, 긴급 탈출 용량 등입니다. 따라서 현재 Pectra 업그레이드에서 이더리움은 L2에 "고속도로"를 추가하고 있지만, 이후 "차량 흐름 관리"와 "다양한 고속도로의 요금 기준"을 해결하는 것이 가장 근본적인 문제입니다.
미래를 엿보다
이 글은 거의 만 자에 달하며, 우리는 계정 추상화의 발전 근원에서 시작하여 ERC-4337과 EIP-7702가 대표하는 두 가지 경로와 비교를 통해, EIP-7702의 원리와 메커니즘을 깊이 탐구하고, 사용자 주류 장면의 장단점과 조정 효과를 분석했습니다.
필자는 "Not your keys, Not your money"라는 위대한 이념이 EIP-7702에 의해 전복되는 것이 아니라, 주권과 사용 용이성을 모두 갖춘 또 다른 차원의 보완과 완성이라고 생각합니다. 비탈릭 재단 연구원 요아브 와이스가 말했듯이, "다음 10억 사용자는 종이에 12개의 단어를 쓰지 않을 것입니다."
두 가지의 비교를 통해 EIP-7702가 ERC-4337에 비해 상당한 최적화를 제공하여 사용자에게 공간과 유연성을 부여하고, 이후 시장에서 사용자에게 더 쉽게 인정받고 사용될 수 있을 것이라고 말할 수 있습니다. 사용자가 CA를 체인 상 주체로 채택하기 시작하면 복잡한 거래 유형이 EVM 계열 체인에서 대량으로 발생할 것입니다.
이로 인해 우리는 미래의 그림자를 엿볼 수 있으며, 기초 계정 주체와 거래 유형의 풍부함이 많은 과거의 애플리케이션 경험 문제를 해결할 것이며, 더 이상 사용자가 Nonce, Gas 등의 논리를 이해해야 할 필요가 없게 될 것입니다. 대신 지갑 등의 진입 서비스 도구가 간소화된 처리를 제공할 것입니다.
비록 업계 수준의 다원성이 일정 정도 인터페이스 표준과 저장 공간의 혼란을 초래하겠지만, 필자는 가치 있는 혼란이 더욱 통일된 표준을 만들어낼 것이라고 낙관적으로 보고 있습니다. 탈중앙화된 다원적 경쟁은 결국 산업 발전을 촉진할 것입니다. 그래서 EIP-7702가 출시된 후, 이더리움 생태계가 즉시 폭발하지는 않을 것입니다. 이는 기술적 기반 업그레이드가 나선형 상승을 이루는 것이며, 이러한 업그레이드는 종종 시장 응용보다 2-3년 앞서 진행되어 응용 계층이 점차 발효될 시간을 남겨두기 때문입니다.
또한 이번 업그레이드 이후 사용자의 안전은 더욱 진입 도구 층의 서비스 품질에 의존하게 될 것입니다. 오픈 소스는 사용자에게 안전감을 주는 중요한 첫 걸음이므로, OKX Wallet이 이번에 통합한 EIP-7702 기반 SDK 구현도 오픈 소스로 제공되어 커뮤니티와 시장의 시험을 공개적으로 받으며, 자가 관리의 길을 더욱 멀리 나아가는 많은 오픈 지갑들이 사용자에게 절대적인 자율권을 부여하고 있습니다.
마지막으로 Pectra 업그레이드 자체로 돌아가, 우리는 이더리움이 미래 방향에 대한 사고와 고집을 다시 한 번 볼 수 있습니다. 현재 L2 대전략이 안정적인 실행기에 접어들면서, 이더리움의 로드맵은 지난 10년 동안 세부 사항에서 많은 변화를 겪었지만, 핵심 목표는 여전히 예기치 않게 일관성을 유지하고 있습니다. 안전하고 탈중앙화된 친환경(POS) 블록체인을 원하며, 높은 확장성과 검증 용이성을 갖추기를 희망합니다. EIP-7702와 같은 효과적으로 사용자 경험을 향상시키는 AA 제안이 하드포크를 통해 도입되었다는 것은 이더리움이 항상 탐색하고 있다는 것을 의미합니다. 탈중앙화를 보장하면서 다중 체인 간의 경쟁력을 어떻게 높일 것인지(강력한 솔라나와 같은 새로운 세대의 공공 체인과의 경쟁에서도), 그리고 이상적인 슈퍼 컴퓨터가 되기 위해 어떻게 할 것인지에 대한 고민을 계속하고 있습니다!