Definitie
De bewijsbasis van een actorresultaat beschrijft welk type bewijs erachter zit. Proof of Actor gebruikt vier waarden:
- verified: een cryptografische of anderszins controleerbare verklaring is geslaagd.
- declared: de actor of de applicatie heeft dit aangegeven.
- inferred: de conclusie is afgeleid uit gedrags- of contextsignalen.
- unknown: er was onvoldoende bewijs voor een vaststelling.
Elk resultaat bevat zowel een klasse (Human, Human + AI, Agent of Unknown, beschreven in onze taxonomie voor applicatieverkeer) als een basis. "Agent, verified" en "Agent, inferred" zijn verschillende resultaten en moeten ook verschillend worden behandeld.
Waarom de basis belangrijk is
Zonder basis verbergt een classificatie hoeveel gewicht die kan dragen. Een dashboard dat "Agent" toont voor een ondertekende request en ook "Agent" voor een gok op basis van request-timing, verleidt teams om op beide dezelfde policy toe te passen. Vooral voor securitygevoelige applicaties mag een inferentie nooit eruitzien als cryptografische verificatie.
Door klasse en basis te scheiden, kunnen policies aansluiten op de sterkte van het bewijs:
- Een read-only route kan elk Agent-resultaat toestaan.
- Een route met grotere impact kan alleen geverifieerde agents behandelen als bekende operators en van alle anderen sterkere credentials vereisen.
De vier waarden in detail
Verified
Er is iets gecontroleerd en dat is geslaagd. Het duidelijkste voorbeeld is een HTTP message signature (RFC 9421) die valideert tegen een key die is gepubliceerd door de operator van de agent. Verified bewijs bewijst alleen die specifieke controle, en niets meer: een geldige signature laat zien welke key de request heeft ondertekend, niet dat de actie geautoriseerd is.
Declared
Iemand heeft het zo aangegeven. Een client die zichzelf als agent identificeert, een MCP client name, of een melding over AI-assistance binnen je eigen applicatie zijn declaraties. Ze zijn nuttig, vaak eerlijk, en soms onjuist. User-agent spoofing is het klassieke voorbeeld van een onjuiste declaratie. De User-Agent header is uit ontwerp zelfgerapporteerd.
Inferred
Het systeem heeft geredeneerd op basis van signalen: interactiepatronen in een browsersessie, request-timing, ontbrekende browsercontext, protocoldetails. Inferenties kunnen fout zijn, en daarom worden ze altijd als inferentie gelabeld. Daarom mogen ingrijpende beslissingen over mensen daar nooit alleen op rusten.
Unknown
Het bewijs ondersteunde geen vaststelling. Dit sluit aan op de Unknown-classificatie en moet in je policy worden gekoppeld aan een expliciete fallback. Ons artikel over waarom Unknown een geldige uitkomst is bij het classificeren van AI-verkeer legt uit waarom.
Basis versus confidence scores
Veel systemen vatten bewijs samen in één getal. Een score verbergt of die uit een cryptografische controle of uit een heuristiek kwam, en een ongekalibreerd percentage suggereert precisie die er niet is. Een kleine set benoemde bases is eenvoudiger te redeneren, eenvoudiger te auditen en moeilijker verkeerd te gebruiken.
Veelvoorkomende misverstanden
"Declared betekent onbetrouwbaar." Declaraties zijn vaak correct en zijn voor sommige vragen de enige beschikbare vorm van bewijs, zoals bij het melden van AI-assistance. Ze mogen alleen niet als verificatie worden behandeld.
"Verified betekent veilig." Verificatie gaat over de identiteit van de ondertekenaar, niet over intentie of toestemming.
Bewijsbasis in Proof of Actor
Elk Proof of Actor resultaat vermeldt de basis en een voor mensen leesbare samenvatting van het bewijs. Policies draaien in je applicatie en kunnen klasse en basis samen gebruiken. Zie Detection & Limitations of meld je aan voor early access.
Bronnen
- RFC 9421: HTTP Message Signatures: de duidelijkste bron voor verified bewijs
- RFC 9110: HTTP Semantics, User-Agent: een zelfgerapporteerde, declared identifier