Definition
The evidence basis of an actor result describes the kind of evidence behind it. Proof of Actor uses four values:
- verified: a cryptographic or otherwise checkable assertion succeeded.
- declared: the actor or the application stated it.
- inferred: the conclusion was drawn from behavioral or contextual signals.
- unknown: there was not enough evidence for a determination.
Every result carries both a class (Human, Human + AI, Agent or Unknown, described in our taxonomy for application traffic) and a basis. "Agent, verified" and "Agent, inferred" are different results and should be treated differently.
Why the basis matters
Without a basis, a classification hides how much weight it can bear. A dashboard that shows "Agent" for a signed request and "Agent" for a guess based on request timing invites teams to apply the same policy to both. For security-sensitive applications in particular, an inference must never look like cryptographic verification.
Separating class from basis lets policies match the strength of the evidence:
- A read-only route might allow any Agent result.
- A higher-impact route might treat only verified agents as known operators and require stronger credentials from everyone else.
The four values in detail
Verified
Something was checked and passed. The clearest example is an HTTP message signature (RFC 9421) that validates against a key published by the agent's operator. Verified evidence proves the specific check, and nothing more: a valid signature shows which key signed the request, not that the action is authorized.
Declared
Someone said so. A client that names itself as an agent, an MCP client name, or an AI-assistance disclosure inside your own application are declarations. They are useful, often honest, and sometimes false. User-agent spoofing is the classic example of a false declaration. The User-Agent header is self-reported by design.
Inferred
The system reasoned from signals: interaction patterns in a browser session, request timing, missing browser context, protocol details. Inferences can be wrong, which is why they are always labeled as inferences and why consequential decisions about people should never rest on them alone.
Unknown
The evidence did not support a determination. This pairs with the Unknown classification and should map to an explicit fallback in your policy. Our post on why Unknown is a valid result when classifying AI traffic explains why.
Basis versus confidence scores
Many systems compress evidence into a single number. A score hides whether it came from a cryptographic check or a heuristic, and an uncalibrated percentage suggests precision that does not exist. A small set of named bases is easier to reason about, easier to audit, and harder to misuse.
Common misconceptions
"Declared means untrustworthy." Declarations are often accurate and are the only evidence available for some questions, such as AI-assistance disclosure. They simply should not be treated as verification.
"Verified means safe." Verification is about identity of the signer, not intent or permission.
Evidence basis in Proof of Actor
Every Proof of Actor result states its basis and a human-readable summary of the evidence. Policies run in your application and can use class and basis together. See Detection & Limitations or apply for early access.
Sources
- RFC 9421: HTTP Message Signatures: the clearest source of verified evidence
- RFC 9110: HTTP Semantics, User-Agent: a self-reported, declared identifier