For regulated services
Know your agent
When a customer’s account is touched by software, can you tell who authorised it?
Banks and other regulated services are starting to see third-party AI agents inside customer accounts—moving money, changing settings, or pulling data. Often there is no reliable way to tell a human login from an agent, or whether the customer actually wanted that agent to act.
This is not a problem unique to one sector. Any service that must know who is behind an API call faces the same gap as agents become normal.
The problem in plain terms
Traditional controls assume a person is at the keyboard. An agent can hold session cookies, refresh tokens, or API keys and behave like the customer. Without a separate proof of authorisation, you only see activity—not whether a verified human delegated it.
You still need to meet your own compliance rules (KYC, AML, age limits, and so on). But you should not have to copy everyone’s passport into your systems just to answer: “Is this wallet or agent allowed to do this on behalf of a real person?”
A chain you can verify
Zipwire Attest and the open ProofPack libraries support a simple sequence. Each step produces evidence the next step can check—without your service ever seeing someone’s ID document.
A verified human
The customer completes a one-time identity check (for example through Zipwire Attest). Their wallet receives an on-chain IsAHuman attestation—a cryptographic stamp that they are a real person, not a document image stored on your servers.
A signed delegation
The customer delegates their agent’s wallet with an IsDelegate attestation on the Ethereum Attestation Service (EAS). That record says, in effect: “this agent may act for me.” Today, delegates are created on the EAS site; creating delegations inside Zipwire is coming soon.
The agent presents proof
When the agent calls your API, it can send a signed ProofPack (a JWS) that reveals only the claims you need—such as “over 18”, nationality, or AML status—linked back to the human root through the delegation chain.
Your service verifies
Your backend verifies the signature and chain with ProofPack (or, for a lighter check, calls the public IsDelegate API). You apply your own policy. No ID document ever transits your systems unless you choose to collect it separately.
Verification without seeing the ID
The human’s passport or driving licence stays with the attestation provider. What you receive is cryptography: attestations on-chain, optional selective disclosure in a ProofPack, and your choice of which attester addresses to trust. You learn whether the chain is valid and which claims were disclosed—not what the document looked like.
For regulated flows that need specific claims (not just “is there a human behind this agent?”), see Compliant Agent Operations in the Zipwire docs.
Go deeper
- When Agents Come Calling — March 2026 blog post on ProofPack, IsDelegate, and what backends need to verify.
- Compliant Agent Operations — how agents prove user compliance for regulated and financial APIs.
- IsDelegate API — public endpoint to check whether a wallet has a valid delegation chain to a human.
- ProofPack on GitHub — open-source verification libraries (JavaScript, .NET, Rust).
- Zipwire Attest — where customers establish the human root attestation.
Zipwire provides infrastructure and open specifications for this model. We do not claim partnerships with or adoption by any particular bank or regulator; this page describes a technical approach teams can evaluate for their own risk and compliance processes.