원저자:Rui
많은 사람들이 말했듯이 계정 추상화(AA) 기술, 특히 ERC-4337은 자체 호스팅 지갑의 사용자 경험을 혁신하고 대량 채택을 위해 확장할 수 있도록 약속합니다. 그러나 2023년 5월이 가까워짐에 따라 우리는 표준이 아직 초기 단계이고 기회와 위험이 존재한다는 점을 인식해야 합니다.
*빠른 업그레이드 개발로 인해 이 글의 내용은 곧 시대에 뒤떨어질 수 있으며, 이 글은 지극히 개인적인 의견임을 알려드립니다.
TL;DR
ERC 4337 :
AA 표준은 아직 초기 단계에 있지만, 많은 혁신적인 제작자들이 이를 더욱 발전시키기 위해 노력하고 있습니다. 생태계 지원과 MetaMask와 같은 대규모 제품의 인기를 배경으로 AA가 개발을 가속화하고 흥미로운 결과를 낳을 것으로 기대할 수 있습니다.
L2:
AA 채택은 L2 솔루션마다 다릅니다. Optimism 및 Arbitrum과 같은 대규모 L2는 기본적으로 AA를 지원하지 않지만 ZKSync 및 Starknet은 AA를 지원합니다.
번들러 서비스:
우리가 AA에 대해 낙관적이며 Ethereum과 일치하는 모든 EVM과 동등한 L2가 기본 AA를 지원하지 않는 경우 네트워크에서 AA를 지원하려면 Bundler 서비스가 필요합니다.
오픈 소스 특성으로 인해 Bundler 서비스는 비독점적이므로 수익 창출이 어려워집니다. 네트워크 보안과 안정성을 보장하기 위해 다양한 Bundler 서비스가 사용됩니다.
프라이빗 번들러는 개인 정보 보호, 보안 및 기타 기능을 특정 요구 사항에 맞게 조정하여 수익을 창출할 수 있습니다.
페이마스터 서비스:
Paymaster 서비스는 상대적으로 중앙 집중화되어 있으며(Bundler 서비스에 비해) 계약은 오픈 소스이지만 백엔드는 폐쇄되어 있습니다.
Paymaster 서비스는 법정화폐 예금, 교환, 브릿징, 자동 결제, 세션, 후원 수수료 등의 기능과 결합하여 결제 시나리오를 강화하고 이를 통해 dApp 사용성을 향상시킬 수 있는 수익 모델을 가지고 있습니다.
AA 지갑 및 SDK:
AA 지갑은 키 관리 시스템, 소셜 복구, 가스비 후원, 멀티체인 계정 동기화, 지원되는 블록체인 등을 포함한 제품 관점에서 평가할 수 있습니다.
AA의 이점은 원활한 로그인 경험을 제공하는 것 이상입니다(Web3 인증은 호스팅을 통해 사용 가능). AA는 또한 복잡하고 맞춤화된 온체인 상호작용에서 dApp에 많은 이점을 제공할 수 있습니다.
BD는 이 전투의 핵심입니다. 대부분의 지갑은 Defi 및 GameFi를 대상으로 하며 생태계 지원을 얻고 대규모 dApp을 설득하며 돌파구를 찾는 데 전념하고 있습니다.
수익 창출 모델을 심층적으로 탐구해야 합니다. To Business(To B) 모델은 돈을 많이 벌지 못할 수도 있고, 자체 사용자를 축적할 수도 없는 반면, To Customer(To C) 모델은 고부가가치 시나리오를 찾아 규모에 따라 수익을 내야 하는 모델입니다. 스위칭 및 브리징 기능을 통합하면 수익성이 높을 수 있지만 핵심은 지속 가능한 모델을 찾는 것입니다.
암호화폐 지갑에 대해 알아보기
분류
이더리움 네트워크에는 MetaMask와 같은 외부 소유 계정(EOA) 지갑과 Safe와 같은 계약 계정(CA)의 두 가지 유형의 계정이 있습니다.
EOA 지갑과 계약 지갑의 주요 차이점은 제어 방법입니다. EOA 지갑은 개인 키를 통해 개인 사용자에 의해 제어되는 반면, 계약 지갑은 스마트 계약에 의해 제어됩니다. EOA 지갑은 더 간단하고 개인 암호화폐 보유를 관리하는 데 사용되는 반면, 계약 지갑은 더 복잡한 규칙을 가지며 특정 목적으로 사용될 수 있습니다.
From Bitcoin Insider
문제점
EOA 지갑 사용자는 개인 키 보호에 주의를 기울여야 합니다. 개인 키에 실수나 누락이 발생하면 자금 손실이 발생할 수 있으므로 EOA 지갑 사용 비용이 상대적으로 높고 위험도 높습니다. 숙련된 암호화폐 사용자라도 한 번의 실수나 부주의한 행동으로 인해 계정에 대한 통제권을 잃을 수 있습니다. 복잡한 운영, 가스비를 건너뛸 수 없거나 가스비를 지불할 수 없음, 제한된 지갑 기능 등은 모두 사용자를 괴롭히는 문제입니다.
스마트 계약 지갑은 일부 문제에 대한 솔루션을 제공하지만, Ethereum은 현재 ECDSA로 보호되는 EOA의 트랜잭션에 모든 작업을 패키지해야 합니다. 이로 인해 잠재적인 중앙화 위험 및 복잡한 운영과 함께 추가 거래 수수료가 발생하고 21,000의 가스 수수료가 추가로 소비됩니다. 사용자는 가스 수수료를 지불하기 위해 두 개의 계정을 관리하고 별도의 EOA에 ETH를 입금하거나 중앙 집중식 중계 시스템에 의존하여 지불해야 합니다. .
이러한 문제점으로 인해 새로운 AA 표준인 ERC-4337이 탄생했습니다.
ERC 4337 제안:
CA 문제
오늘날 이러한 문제는 모두 계약 지갑으로 해결할 수 있지만 이더리움 자체에서는 모든 것이 ECDSA로 보호되는 EOA에서 발생하는 트랜잭션으로 래핑되어야 하므로 다음과 같은 결과가 발생합니다.
추가 거래 수수료:각 사용자 작업은 EOA에 의해 시작되어야 하며, 이를 위해서는 추가로 21,000의 가스 요금이 필요합니다.
복잡성과 중앙화:사용자는 가스 요금을 지불하고 두 계정의 잔액을 관리하기 위해 별도의 EOA에 ETH를 입금해야 합니다. 또는 일반적으로 중앙 집중화된 지불을 위해 릴레이 시스템을 사용해야 합니다.
EIP-86 및 EIP-2938과 같은 이더리움 기반 블록체인에 계정 추상화를 구현하려는 시도가 수년에 걸쳐 여러 차례 있었습니다. 그러나 이러한 방법 중 어느 것도 실행하기 어려운 합의 계층에 대한 수정이 필요하기 때문에 작동하지 않습니다.
4337 메커니즘
ERC-4337은 번들링 개념 측면에서 롤업과 유사한 UserOperation이라는 상위 수준 의사 트랜잭션 개체를 도입하여 계정 추상화를 구현합니다. 다행스럽게도 이 표준을 사용하면 합의 계층을 변경하지 않고도 계정 추상화를 구축할 수 있습니다.
EIP 4337의 모듈식 설계는 스마트 계약 지갑의 계정 추상화 기능을 여러 포트로 나눕니다.
Bundler:
번들러는 EOA입니다. 모든 거래는 EOA에 의해 시작되어야 하기 때문에 Bundler를 사용하면 사용자는 EOA 개인 키를 생성하고 기억하지 않고도 스마트 계약 지갑 거래를 시작할 수 있습니다.
Bundler의 역할: UserOperation을 확인하고 UserOperation 개체 집합을 단일 번들 트랜잭션으로 패키징합니다. 인증된 UserOperation의 내용을 공용 또는 개인용 메모리 풀에 브로드캐스트합니다.
Bundler는 또한 UserOperation을 실행한 후 가장 높은 우선순위 수수료와 실제 가스 수수료 간의 차액을 챙기는 방식으로 재정적 이익을 얻습니다. 일반 트랜잭션의 Relayer와 유사하게 Bundler는 번들 트랜잭션에서 UserOperation을 주문하여 MEV를 얻을 수 있습니다.
진입 지점:
진입점은 모든 번들러가 UserOperation을 실행하기 위해 호출해야 하는 글로벌 계약입니다. 진입점은 번들러와 스마트 계약 지갑 사이의 중개자 역할을 합니다.
HandleOp를 통한 검증 및 실행: handlerOp 함수는 UserOperation을 입력 매개변수로 사용합니다.먼저 체인에서 UserOperation을 검증하여 지정된 스마트 계약 지갑 주소로 서명되었는지, 지갑에 Bundler를 보상할 만큼 충분한 가스 수수료가 있는지 확인합니다. 검증에 성공하면 함수 시그니처를 기반으로 입력 매개변수가 실행됩니다.
스마트 계약 지갑에 입금해야 하는 토큰은 Bundler에 가스 요금을 지불합니다. Bundler가 EOA를 사용하여 handlerOp를 트리거하면 가스 요금이 생성됩니다. 스마트 계약 지갑은 가스비를 자체 잔액으로 지불하거나 Pymaster에 지불을 요청할 수 있습니다. 가능한 실패: 가스비가 부족하여 검증 단계가 실패하고, 가스비가 충분하더라도 런타임 오류 등 UserOperation 실행 단계가 실패할 수 있습니다. 실행 성공 여부에 관계없이 진입점 계약은 HandleOp 기능을 트리거하기 위해 번들러에 가스 요금을 지불합니다. 진입점 계약은 스마트 계약 지갑에 토큰을 담보로 추가하거나 인출할 수 있는 기능을 제공합니다.
스마트 지갑:
스마트 계약 지갑 메인 계약은 UserOperation의 검증 단계와 실행 단계를 분리합니다. 이를 분리함으로써 Bundler는 UserOperation 오프체인을 검증하고 가스 비용을 지불하지 않고도 악의적인 거래를 필터링할 수 있습니다.
유효성 검사 단계는 verifyOp 함수에 정의되어 있습니다. 처음으로 verifyOp가 호출되면 Bundler는 오프체인 검증을 시뮬레이션하고 UserOperation에서 서명을 확인하며 스마트 계약 지갑에 충분한 가스 잔고가 있는지 확인합니다. 두 번째로 verifyOp가 호출되면 진입점 계약이 실행되며 UserOperation 이전에 온체인 검증을 수행합니다.
Paymaster:
Paymaster는 ERC 20 대체 가능 토큰을 사용하여 이더리움 가스 요금을 지불하고 가스 요금 없이 거래하는 것을 포함하여 스마트 계약 지갑의 가스 추상화 논리를 정의합니다.
Paymaster는 Paymaster의 verifyPaymasterOp를 트리거할 수 있는 dApp에 의해 배포된 스마트 계약입니다.
Wallet Factory:
Wallet Factory는 스마트 계약 지갑을 생성하기 위한 공개 계약입니다. 지갑 공장 주소와 새로운 스마트 계약 지갑의 매개변수가 initCode에 이식되면 Bundler는 해당 지갑 공장을 트리거하여 지정된 매개변수로 스마트 계약을 생성합니다. 인기 있는 Wallet Factory 코드는 완전히 감사되므로 Wallet Factory로 지갑을 만드는 것이 더 안전합니다.
Wallet Factory는 Bundler에서 더 많은 트래픽을 얻기 위해 진입점에 ETH를 스테이킹하고 UserOperations에 좋은 서비스를 계속 제공해야 합니다.
사용자는 initCode가 채워진 UserOperation을 제출하여 Bundler에 CA 지갑 생성을 요청할 수 있습니다.
사용자는 특정 사용자 정의 매개변수가 있는 Wallet Factory를 선택하여 CA 지갑을 사용자 정의할 수 있습니다.
서명 수집자:
서명 수집기는 트랜잭션의 더 빠른 확인 및 실행을 위해 여러 트랜잭션의 서명을 바이트로 집계하는 데 사용됩니다. 서로 다른 스마트 계약 지갑은 서로 다른 서명 알고리즘을 사용하며 먼저 동일한 서명 알고리즘을 사용하여 UserOperations를 집계해야 합니다.
가스비 절약: 온체인 암호화 계산은 많은 가스비를 소비하므로 BLS와 같은 집계 서명 체계는 온체인 검증 중에 가스비를 절약할 수 있습니다.
Bundler는 UserOperations를 한 번에 하나씩 검증하는 대신 여러 서명 수집기 계약을 사용하여 여러 집계 서명을 생성합니다.
Bundler는 UserOperation 배열, 집계 서명 및 집계자 주소를 진입점에 전달하고 각 UserOperation 그룹 세션은 해당 서명 집계자의 verifySignature 함수를 호출합니다.
검증을 통과한 후 Bundler는 스마트 계약 지갑에서 이 UserOperation 세트를 실행합니다.
또한 수집자는 진입점 계약에 이더리움을 보유하고 우수한 UserOperation 서비스 기록을 유지해야 합니다.
AA의 장점
가스 추출:
가스 추상화에는 가스가 없는 거래가 포함되며 ERC 20 토큰을 사용하여 가스 요금을 지불합니다. 이 논리는 Paymaster 계약이나 중계자를 통해 수행될 수 있습니다. AA의 경우 많은 스마트 계약 지갑 자체가 EIP 4337을 준수하는 Paymaster 계약을 구현하고 진입점 계약에 토큰을 스테이크하여 사용자가 가스 요금을 지불하는 데 도움을 줄 수 있습니다.
사회 회복:
개인 키가 분실되거나 손상된 경우 사용자는 새 키를 합법적인 지갑 소유자로 승인할 수 있습니다. 소셜 로그인 및 소셜 복구 논리는 일반적으로 지갑의 기본 계약에 정의되어 있습니다. 이메일, 다중 서명, MPC 또는 SWIE(이더리움으로 로그인) 등 다양한 방법을 사용할 수 있습니다.
트랜잭션 일괄 처리:
트랜잭션 일괄 처리는 지갑 사용자가 단일 온체인 트랜잭션 내에서 여러 트랜잭션을 실행할 수 있도록 하는 스마트 계약 지갑의 고유한 기능입니다.
크로스체인 브리징 및 연결 브리지 통합:
현재 많은 지갑이 제3자 제공업체와 협력하여 명목화폐 입출금 채널과 크로스체인 브리지를 지갑에 통합하고 있습니다. 이러한 입출금 채널과 크로스체인 브리지는 가스 추상화의 지불 계약(Paymaster)과 추가로 통합될 수 있습니다.
모듈형 디자인:
아마도 AA의 가장 큰 강점 중 하나는 Bundler, Paymaster 및 기타 요소를 유연하게 결합할 수 있는 모듈식 서비스일 것입니다.
AA의 단점
~에서 stackup
처리 수수료는 (아마도) 상대적으로 높습니다.
ERC-4337을 사용하여 단순 전송을 수행하는 비용은 계약 호출이 필요하기 때문에 기존 지갑(EOA라고도 함)을 사용하는 것보다 훨씬 높습니다.
그러나 Rollup 네트워크에서는 ERC-4337을 사용한 단순 전송이 EOA보다 저렴할 수 있습니다., 메인넷의 데이터 양을 줄이기 위해 서명을 함께 집계하기 때문입니다.
아직 확정되지 않은 표준:
과제에는 확장된 트랜잭션 확장성으로 인한 공격 벡터 증가, 새로운 표준으로 마이그레이션할 때 알 수 없는 오류 또는 보안 위험 가능성, 모든 트랜잭션이 적절하게 서명되고 확인되도록 보장하는 강력하고 안전한 글로벌 진입점 계약의 필요성이 포함됩니다.
Layer 2
✅ 및 ❌는 기본 AA가 지원되는지 여부를 나타냅니다.
Optimism: ❌
Optimism 버전 1에는 스마트 계약 지갑에 대한 계정 추상화를 구현하기 위한 3개의 OVM opcode가 있습니다. 그러나 버전 2에서는 일관성과 보안상의 이유로 이러한 opcode를 제거했으며 계정 추상화 지원에 대한 공식 발표는 없습니다.
Arbitrum: ❌
현재 Arbitrum에 구축된 스마트 계약 지갑이 몇 개 있지만 계정 추상화 지원에 대한 공식적인 발표는 없습니다.
Starknet: ✅
스타크넷은 검증 및 실행 기능을 갖춘 스마트 컨트랙트 계정만 보유하고 있으며, 모든 계정은 서명 검증 및 가스비 보장을 위해 이러한 기능을 구현해야 합니다. Starknet은 실행되지 않은 트랜잭션을 방지하기 위해 검증 기능이 외부 계약 상태를 호출하는 것을 금지합니다. 그러나 Starknet은 UserOperations가 부족하고 Paymaster와 같은 거래 수수료 추상 프로토콜이 없으며 새 계약을 생성하기 위해 토큰 잔액이 있는 계정이 필요하다는 점 등 Ethereum과 여전히 몇 가지 차이점이 있습니다. 또한 Starknet의 주문자는 확인된 거래가 실패할 경우 가스 수수료를 청구할 수 없지만 Ethereum은 가능합니다.
zkSync: ✅
zkSync는 EOA와 계약 계정을 구분하지 않습니다. 해당 계정 모델은 EIP 4337과 유사하며 별도의 verifyTransactiom 및 ExecutionTransaction 기능을 포함합니다. Paymaster 인터페이스에는 verifyAndPayForPaymasterTransaction 및 postOp 기능도 포함되어 있습니다. 하지만 검증 과정에서 배포된 외부 계약과 외부 저장소를 호출하는 기능 등 차이점이 있습니다. Paymaster는 거래 확인 중에 외부 저장소를 호출할 수도 있습니다.
AA 인프라:
현재 Stackup, Etherspot, Candide, Infinistism, Pimlico 등 몇몇 우수한 프로젝트들이 인프라 구축을 시도하고 있습니다.
번들러 서비스:
빌더:
일부 합의:
공공 서비스
대다수 번들러의 오픈 소스 특성으로 인해 번들러는 비독점적이고 비경쟁적입니다. 모든 RPC 엔드포인트는 오픈 소스 코드를 복사하여 Bundler를 실행할 수 있습니다.
실현하기 어렵다
Bundler를 실행하는 RPC 엔드포인트가 API 키를 통해 서비스 사용 요금을 청구하더라도 Bundler 서비스는 다른 인프라(예: 결제 계약 Paymaster)보다 수익을 창출하기가 더 어렵습니다. 왜냐하면 Paymaster는 제3자 충전 제공자 또는 DeFi 프로토콜 수집자가 사용할 수 있기 때문입니다. 협력하면 수수료 차액을 쉽게 얻을 수 있습니다.
중요 인프라
UserOperations를 검증하고 실행하려면 더 나은 분산화를 위해 가능한 한 많은 번들러가 필요합니다. 현재 제3자 Bundler 서비스 제공업체는 Stackup과 eth-infinitism뿐이므로 이러한 Bundler 서비스 제공업체가 더 많이 필요합니다.
기구
번들러는 특정 사항에 동의하지 않고도 공유 메모리 풀과 유사하게 메시지를 전달하고 사용자 작업 자체를 전파합니다. 번들러는 스팸을 필터링하는 중요한 기능을 갖고 있으며, 그 자체의 경제적인 이유로 번들러는 메모리 풀의 안전성을 보장하기 위해 최대한 많은 것을 모니터링하고자 합니다.
Bundler 서비스의 차이점은 다음과 같습니다.
번들러 서비스는 범용 인프라일 수도 있고 지갑용으로 특별히 구축될 수도 있습니다. 월렛 프로젝트는 가장 기본적인 번들러 구축에 우선순위를 둘 수 있는 반면, 제3자 제공업체는 다양한 시나리오에 맞는 모듈식 번들러를 구축해야 합니다.
Ethereum 노드와 유사하게 Bundler 서비스는 단일 실패 지점을 방지하고 생태계에 이익을 주기 위해 다양한 프로그래밍 언어로 구현됩니다.
Bundler 서비스는 개인용 메모리 풀과 공용 메모리 풀을 지원하고 개인용 메모리 풀에 대한 사용자 정의 옵션을 제공합니다.
페이마스터 서비스
Bundler 서비스에 비해 Paymaster 서비스는 상대적으로 중앙 집중화되어 있으며 계약은 오픈 소스이지만 백엔드는 폐쇄되어 있습니다.
Paymaster 서비스에는 법정화폐 예금, 교환, 브리징, 자동 결제, 세션, 후원 수수료 및 기타 기능을 통합하여 dApp 사용성을 향상시키는 수익화 모델이 있습니다.
AA 지갑 및 SDK:
제품 평가
키 관리 시스템:
다중 서명 논리(보안): 2/3 및 3/5와 같은 다중 서명 논리만 구현할 수 있습니다.
간단한 권한 관리(순차적): 키에 대한 가중치를 설정한 후 운영 계정에 대한 임계값을 설정할 수 있습니다.
역할 기반 권한 관리(Unipass): 키에 대한 가중치와 역할을 설정할 수 있습니다. 다른 역할은 다른 작업을 수행할 수 있습니다. 각 역할에는 해당 임계값도 있습니다. 이 임계값을 초과하면 해당 역할의 권한이 시행될 수 있습니다.
사회적 회복 방법
가스 수수료 후원: 자체 릴레이를 구축하거나 Bundler + Paymaster를 설정하세요.
멀티체인 계정 동기화
통합 다중 체인 주소
지원되는 블록체인
사업
비즈니스 모델: To b/To B+To C/ToC
dApp과 협력: 다양한 체인의 스테이블코인이나 DeFi와 같은 대규모 인프라 dApp과 협력합니다.
유틸리티: NFT 마켓플레이스, 런치패드 등을 통합합니다.
외부 지원: Ethereum Foundation 또는 기타 유명 벤처 캐피털 기관
영문 보고서 원본2023년 5월에 처음 출시되었습니다. 더 많은 중국 투자 리서치 콘텐츠를 보시려면 공개 계정 [SevenXVentures]를 팔로우해주세요.
이 기사는 SevenX 연구팀이 작성한 원본이며 커뮤니케이션 및 학습 목적으로만 작성되었으며 투자 참고 자료가 아닙니다. 인용이 필요하신 경우 출처를 표기해주세요.