블록체인 기록

ERC-4337 userOperation

Dreaming Developer Student 2025. 7. 17. 09:55
728x90
반응형
SMALL

ERC-4337(계정 추상화)에 대해 집중적으로 알아볼텐데요 먼저 userOperation에 대한 개념과 주요 필드 속성들을 통해 이해하는 시간을 가져보도록 하겠습니다. 코드보다 이론 중심으로 설명할테니 참고해주시면 됩니다!

 

📑목차
1. userOperation
1-1. userOperation이란?
1-2. userOperation 구조
1-3. sender
1-4. nonce
1-5. initCode
1-6. callData
1-7. callGasLimit
1-8. verificationGasLimit
1-9. preVerificationGas
1-10. maxFeePerGas
1-11. maxPriorityFeePerGas
1-12. paymasterAndData
1-13. signature

서론

 요즘 이더리움 지갑이 점점 스마트화 되고 있다는 소식 들어보셨나요? 바로 ERC-4337 덕분인데요, 이 표준은 UserOperation이라는 개념을 통해 지갑을 더 유연하고 편리하게 만들어줍니다. 이번 글에서는 ERC-4337이 무엇인지, 그리고 우리가 왜 주목해야 하는지 간단히 소개해보겠습니다.

본론

1. userOperation

 

1-1. userOperation이란?

UserOperation은 ERC-4337에서 정의된 트랜잭션을 추상화한 객체

 

기존의 이더리움 프로토콜에서는 EOA에서 사용자가 직접 서명한 트랜잭션을 네트워크에 보내야했지만,  ERC-4337에서는 userOperation 이라는 구조체를  상위 계층에 기능을 추상화하여 더 유연하고 확장성을 고려한 스마트 계약 기반으로 구현할 수 있게 된 것입니다

 

1-2. userOperation 구조

struct UserOperation {
    address sender;
    uint256 nonce;
    bytes initCode;
    bytes callData;
    uint256 callGasLimit;
    uint256 verificationGasLimit;
    uint256 preVerificationGas;
    uint256 maxFeePerGas;
    uint256 maxPriorityFeePerGas;
    bytes paymasterAndData;
    bytes signature;
}

 

1-3. sender

스마트 계정 주소


1-4. nonce

트랜잭션 중복 방지 숫자

 

1-5. initCode

스마트 계정 유효 여부

 

1-6. callData

실제로 호출할 로직

 

1-7. callGasLimit

callData 실행에 할당된 최대 가스 한도

 

1-8. verificationGasLimit

스마트 계정의 각각의 서명 검증 실행할때 가스 한도

 

1-9. preVerificationGas

번들러가 트랜잭션을 처리하기 위해 소비하는 가스 비용

 

1-10. maxFeePerGas

기본 가스비와 번들러에게 제공할 tip을 합친 가스 비용

 

1-11. maxPriorityFeePerGas

UserOperation을 수집하고 블록에 포함시키는 번들러에게 제공되는 가스 수수료

 

 

1-12. paymasterAndData

대납자의 계정 주소 포함된 데이터 

 

1-13. signature

UserOperation내용을 검증하는 서명값

결론

ERC-4337은 기존 이더리움 프로토콜을 수정하지 않고, UserOperation이라는 상위 객체를 도입해 트랜잭션 처리 방식을 확장합니다. 이 구조는 스마트 지갑 생성, 서명 검증, 가스비 대납 등 다양한 기능을 구성 가능한 필드들(initCode, callData, paymasterAndData 등)로 추상화합니다. 그 결과, 사용자는 더 유연하고 사용자 친화적인 온체인 경험을 누릴 수 있게 됩니다.

728x90
반응형
LIST