Session Account
Pronunciation: SESH-uhn uh-KOWNT
Also known as: Session-Based Account
Definition
A session account is a temporary or restricted account used to authorize a limited set of actions for a defined period, application, value, or permission scope. It is commonly implemented through smart-account policies, delegated keys, or application-specific credentials. The term is architectural rather than universally standardized, so its expiration, revocation, and authority must be defined by the system. Practical use requires recognizing that a session that is only limited in the interface can remain broadly authorized at the protocol layer.
Overview
A session account gives an application limited transaction authority without repeatedly requesting the user’s primary wallet signature. A game, trading interface, or payment workflow may create a secondary key or account that can call selected contracts, spend within a cap, or operate until a deadline. The controlling policy is usually enforced by a Smart Account, authorization module, or protocol-specific delegation mechanism.
This is different from handing an application the user’s main Secret Key. A well-designed session account has narrower permissions and can be revoked without moving the primary assets. Restrictions may cover destination addresses, token types, function selectors, daily value, transaction count, chain ID, or expiry time. Some systems call the underlying credential a session key even when no separate on-chain account exists.
Security depends on enforcement, not the label. A client-side promise to use a key only for one purpose is insufficient if the blockchain accepts broader signatures. Policies must be checked on-chain or by a trusted authorization layer. Replay protection, nonce handling, revocation propagation, and clock assumptions also need attention. An expired credential should not remain usable through queued or delayed transactions.
Applications should clearly show what the session can do, how long it lasts, and how to terminate it. Operators should log creation, permission changes, use, and revocation. High-risk functions such as owner replacement, unrestricted transfers, or policy upgrades should remain outside the session scope. Session accounts improve usability only when their limited authority is technically verifiable and easy to revoke.
A reliable evidence trail includes the delegated key or account, allowed actions, spending limits, chain scope, creation time, expiry, and revocation state. It becomes important because a session that is only limited in the interface can remain broadly authorized at the protocol layer. Operational controls should enforce restrictions on-chain, invalidate queued actions after revocation, and alert on use outside the intended scope.
Key Takeaway
A session account improves repeated-use convenience by delegating narrow, temporary authority instead of exposing the user’s primary signing power.
Sources
- ERC-4337: Account Abstraction Using Alt Mempool — Ethereum Improvement Proposals (2026-08-02)
- ERC-6900: Modular Smart Contract Accounts — Ethereum Improvement Proposals (2026-08-02)
- EIP-7702: Set Code for EOAs — Ethereum Improvement Proposals (2026-08-02)