SettleMint
Security

Advanced accounts security

How DALP bounds the authority of the advanced accounts execution layer: sponsorship ticket constraints, signer key controls, account-management safety rails, and the separation between execution and identity.

Account abstraction is an execution route, not a trust boundary. It changes how gas is paid and how the platform represents transaction signing authority, but it does not grant compliance status, alter asset policy, affect custody approval, or change who owns an identity. Three surfaces bound what the AA layer can do: what a sponsorship signature covers, how signing keys are managed, and what account-management operations the smart account accepts. If you are evaluating security boundaries, start with these three controls. Related pages: Advanced accounts design, Paymasters and Gas Sponsorship, and Advanced accounts concept.

Sponsorship abuse and the ticket bound

The most obvious risk in a paymaster is broad or replayable sponsorship: a single credential that authorises gas payment for any transaction on behalf of any party. DALP answers this with a SponsorshipTicket the paymaster validates on-chain via an EIP-712 signature.

The ticket is not a per-UserOp blank check. It binds:

  • the sender address,
  • a hash of the call data,
  • the organization identifier,
  • a deadline, and
  • a maximum gas cost.

A sponsorship signature is valid only for a specific sender submitting a given payload within a fixed time window, at a capped cost. Replaying it against a different payload or sender fails the on-chain check. Each ticket covers one organization, so a ticket from one organization cannot sponsor operations in another.

You rotate the paymaster signer key through the operator API. Use key rotation as the remediation step when a key may be compromised.

Rendering diagram...

Key compromise and the multisig validator

A single compromised signing key is the primary threat in any AA account. If you use multi-approver accounts, DALP addresses this through a weighted multisig validator, an ERC-7579 validator module.

Multiple signers must accumulate enough weight to meet a threshold before any operation proceeds. No single key below that threshold can authorize execution on its own.

A subtler risk is a signer using account-management functions to change the validator setup and bypass the multisig entirely. The weighted multisig validator blocks this: it carries no account-management authority. A signer who can meet the threshold for ordinary operations still cannot use that position to reconfigure the account's validator modules. Account configuration and transaction execution stay separate.

Account-management safety rails

ERC-7579 modular accounts can hold multiple validator modules. DALP's smart account supports up to 16 validators and refuses to remove its last one.

This blocks a lockout attack where an actor strips validators one by one until no valid signing path remains and the account becomes permanently inaccessible. The account itself enforces this invariant, not an off-chain policy.

ThreatControl
Replay a sponsorship signature for a different payloadTicket binds callDataHash; on-chain check fails
Use a sponsorship signature after expiryTicket binds deadline; on-chain check fails
Sponsor operations beyond a cost capTicket binds maxGasCost
Compromise paymaster signer keyKey rotation via operator API
Single-signer takeover of multi-approver accountWeighted multisig threshold; the validator grants no account-management authority
Remove all validators to lock out an accountAccount refuses last-validator removal
Bypass executor gate with a direct contract writeAll writes route through the central transaction queue
Assume a sponsored transaction carries compliance statusAA is execution only; identity, eligibility, and asset policy are independent

Separation of signing and execution

When issuing claims, the issuer EOA signs the off-chain payload. The on-chain addClaim write then routes through the AA-aware transaction queue and may execute from the smart wallet.

The EOA that produced the credential and the account that submits the transaction are distinct. Compromising the execution path does not let an attacker produce valid off-chain claim signatures. The two surfaces carry separate key material and face separate compromise scenarios.

More broadly, account abstraction does not create a parallel execution path. Every on-chain write routes through the one transaction queue, which resolves in a single place whether the executing account is an EOA or a smart wallet. A route handler cannot silently override that choice or submit a contract write that bypasses the queue.

The setup boundary

The platform enables account abstraction only after an organization is fully provisioned. Setup runs on the EOA path and covers smart wallet creation, bundler and paymaster configuration, role assignment, and identity metadata initialization. Only after all of that does the platform switch on the advanced accounts setting.

This ordering prevents a circular dependency: the AA substrate cannot authorize the operations that create it. If you attempt to reverse the setup sequence mid-flight through the AA path, the platform blocks the request with an undefined authorization state.

Invitations into an already AA-enabled organization route through AA from that point forward. The platform bundles smart wallet creation for a new member with initialization data on the first UserOp-capable transaction. That transaction is ordinarily identity creation. The bundling ensures no intermediate state where a member has a session but no wallet or identity, which would leave authorization checks in an indeterminate state.

This page covers the controls as currently implemented. If you are reviewing incident response, formal verification of the validator module, or audit coverage, those topics are outside this page's scope.

On this page