Autonomous multi-agent systems require delegated financial capabilities. Traditional API keys and private keys provide binary permissions: an agent has total wallet access or none.
ArcenAuth solves this with a 3-layer cryptographic authorization stack:
- Layer 3: Autonomous Agent Mandates (AAM) — Cryptographically signed delegation credentials (
ArcenPayAgentMandate) constraining spend limits, token whitelists, recipients, domains, and expiry dates.
- Layer 2: Deterministic Policy Engine (ArcenPolicy) — deterministic evaluation rules evaluated prior to signing any transaction.
- Tier 1 Invariant: On-Chain Revocation (
SessionVault) — Authoritative on-chain registry guaranteeing instant revocation enforcement.
Autonomous Agent Mandates (AAM)
An ArcenPayAgentMandate is an off-chain cryptographic voucher signed by a root wallet or parent agent:
Delegation Chains & Monotonic Scope Narrowing
Sub-agents can delegate further sub-mandates. To prevent privilege escalation, ArcenAuth mathematically enforces monotonic scope narrowing (isScopeSubset):
- Child
maxPerTxn ≤ Parent maxPerTxn
- Child
maxDaily ≤ Parent maxDaily
- Child
maxTotal ≤ Parent maxTotal
- Child
allowedTokens ⊆ Parent allowedTokens
- Child
allowedRecipients ⊆ Parent allowedRecipients
- Child
allowedResourceDomains ⊆ Parent allowedResourceDomains
- Child validity interval [validFrom,validUntil]⊆ Parent interval
Deterministic Policy Engine (ArcenPolicy)
Before signing any voucher or link payment, the agent runtime evaluates policies with deterministic precedence:
- Root Co-Sign: If transaction has valid root co-signature, allow immediately.
- Explicit Deny: If ANY matching policy rule evaluates to
EFFECT_DENY, the transaction is blocked immediately.
- Explicit Allow: If at least ONE matching policy rule evaluates to
EFFECT_ALLOW and no deny matches, the transaction is permitted.
- Default Deny: If no policy matches, the transaction is rejected.
x401 Agent Identity, Provenance & Attestation
While x402 defines autonomous payment execution (HTTP 402 Payment Required), x401 represents the standard for agent identity, provenance, and credential authentication (HTTP 401 Unauthorized).
Why x401 is an Optional Capability Gate
- Sub-Cent Micropayments: Agents spending \0.001$ per API request must not encounter heavy identity verification handshakes.
- High-Value Actions (>\10$ or sensitive API domains): a mandate can carry an x401
humanAttestation record. When present and required, settlement expects a verified credential (or root co-sign) before releasing funds:
Revocation
Mandates declare a revocation method: onchain_registry (an authoritative registry in the SessionVault contract) or offchain_endpoint (the mandate’s checkUrl, the default). agent.revokeMandate() broadcasts to the configured registry and, when on-chain revocation is configured, records the revocation on-chain. Settlement refuses any mandate marked revoked, so a revoked delegation cannot move funds even if off-chain policy or API state is stale. Query authoritative status with GET /api/v1/mandates/:id/status or agent.getMandateStatus(). Last modified on October 4, 2026