EIP-7702
Stable은 EIP-7702를 지원하며, 이를 통해 EOA가 자신의 계정 코드를 기존 스마트 계약으로 설정할 수 있습니다. EOA는 원래 주소와 개인 키를 유지하면서 해당 계약의 로직을 실행합니다. 이 위임은 EOA가 명시적으로 변경하거나 해제할 때까지 지속됩니다.
전체 사양은 EIP-7702를 참조하십시오.
Stable에서 EIP-7702가 제공하는 기능
EIP-7702는 기존 EOA가 계정 마이그레이션 없이 스마트 계약 로직을 실행할 수 있도록 합니다. Stable의 USDT 중심 결제 환경에서 다음과 같은 패턴을 지원합니다.
- 배치 결제: 여러 호출(예: 급여 지급 시 여러 수신자에게 지급)이 단일 원자적 트랜잭션에서 실행됩니다.
- 지출 한도: 위임 계약이 EOA에 대한 일일 상한 또는 트랜잭션당 한도를 강제합니다.
- 세션 키: EOA는 소유자의 개인 키를 노출하지 않고 dApp에 범위가 지정된 시간 제한 트랜잭션 권한을 부여합니다.
작동 방식
EIP-7702는 authorizationList를 포함하는 새로운 트랜잭션 유형(0x04)을 도입합니다. 각 승인은 EOA가 해당 트랜잭션에 대해 실행할 스마트 계약을 지정합니다. 흐름은 다음과 같습니다.
- 위임 계약 선택 또는 배포: EOA가 실행하려는 로직을 구현하는 표준 솔리디티 계약. 이미 배포된 계약을 사용하거나 직접 배포할 수 있습니다. 가능한 한 감사된 계약을 사용하십시오.
- 승인 서명: EOA 소유자가 위임 계약을 지정하는 메시지에 서명합니다.
- EIP-7702 트랜잭션 제출: 트랜잭션에는 승인이 포함되며, EOA는 실행 중에 위임자의 코드를 실행합니다.
제출 후, EOA의 계정 코드는 위임자로 설정됩니다. EOA에 대한 후속 트랜잭션은 소유자가 위임을 해제하거나 교체할 때까지 위임자의 로직을 실행합니다.
변경되지 않는 사항
- 새로운 계정 불필요: 사용자는 기존 EOA 주소와 개인 키를 유지합니다. 마이그레이션 단계는 없습니다.
- 기존 키로 계속 서명: EOA의 개인 키는 승인 및 모든 후속 트랜잭션에 서명합니다. EIP-7702는 새로운 서명 체계를 도입하지 않습니다.
- 표준 EVM 실행: 위임자는 일반 계약 코드처럼 실행됩니다. 계약 실행을 디버깅하거나 추적하는 도구는 변경 없이 작동합니다.
보안 고려 사항
- 위임자 접근은 전적입니다. 위임 계약은 위임 기간 동안 EOA에 대한 완전한 실행 권한을 가집니다. 위임자 선택을 신뢰 결정으로 다루십시오. 악의적인 위임자는 자산을 고갈시킬 수 있습니다.
- 위임은 지속됩니다. 단일 트랜잭션이 끝난다고 만료되지 않습니다. 소유자는 더 이상 위임을 원하지 않을 때 명시적으로 위임을 해제하거나 교체해야 합니다.
- 가스 비용은 약간 더 높습니다. 승인 처리로 인해 가스 비용이 약간 더 높지만, 위임자가 여러 호출을 일괄 처리할 때 상쇄됩니다. Stable에서 기본 수수료는 1 gwei이고 가스는 USDT0로 표시되므로 추가 승인 오버헤드는 1센트 미만으로 유지되며, 표준 ERC-20 전송과 비슷한 비용입니다.
다음 권장 사항
- 계정 추상화 (EIP-7702): 위임 계약에 대해 배치 결제, 지출 한도 및 세션 키를 구현합니다.
- USDT0를 가스로 사용: EIP-7702 트랜잭션이 실행되는 가스 모델을 이해합니다.
- 가스 면제: 애플리케이션이 사용자 가스를 대신 지불하는 가스 면제 흐름과 위임 방식을 비교합니다.

