EIP-2803은 EVM 내에서 여러 하위 호출을 포함하는 리치 트랜잭션(Rich Transactions)을 네이티브로 지원하는 방안을 제안합니다. 트랜잭션 내에서 직접 바이트코드를 실행하여 복잡한 작업을 단순화하려 했으나 정체 상태입니다.
핵심 아이디어
리치 트랜잭션은 트랜잭션이 단순한 ETH 전송이나 단일 계약 호출을 넘어 복잡한 실행 로직을 포함할 수 있게 합니다. EOA(외부 소유 계정)가 여러 계약 호출을 하나의 트랜잭션으로 실행할 수 있게 하는 것이 목표입니다. 이는 별도의 멀티콜 계약 없이도 배치 작업을 가능하게 합니다.
기술적 구현
트랜잭션 데이터가 특수 오프코드 시퀀스를 포함하면 EVM이 이를 실행 코드로 처리합니다. 실행 컨텍스트는 EOA를 발신자로 유지하면서 여러 하위 호출을 수행합니다. 기존 계약과의 호환성을 유지하면서 새로운 실행 모델을 도입하려 했습니다.
정체 이유
EOA가 임의의 코드를 실행하는 것에 대한 보안 우려가 컸습니다. 계정 추상화(ERC-4337)가 더 안전하고 포괄적인 방식으로 유사한 기능을 제공하게 되었습니다. EIP-3074도 유사한 문제를 해결하려 하여 여러 제안 간의 방향이 분산되었습니다.
현재 상황
EIP-2803은 Stagnant 상태로 남아있습니다. 리치 트랜잭션의 개념은 ERC-4337의 UserOperation과 EIP-7702를 통해 다른 형태로 실현되고 있습니다. 스마트 계약 지갑과 계정 추상화가 이 문제의 주류 해결책이 되었습니다.