Home / VTP Specification
Open specification
The Voice Trust Protocol.
A trust layer only works if anyone can verify it. VTP is an open specification for identity, disclosure, consent, and audit on machine-to-human voice calls — free to implement, free to inspect.
Contents
1 · Abstract
VTP defines how an autonomous voice agent proves its identity, discloses its nature, obtains consent, and produces a verifiable record before and during a call with a human. It is transport-agnostic and sits above SIP/PSTN and any voice-AI platform. The goal mirrors TLS on the web: a shared, inspectable trust primitive that no single vendor owns.
2 · Terminology
Agent— an autonomous system that speaks on a call.Passport— a signed credential asserting an agent's identity and purpose.Verifier— the party that validates a passport against a registry.Ledger— the append-only record of disclosure, consent, and session events.
The key words MUST, SHOULD, and MAY are to be interpreted as described in RFC 2119.
3 · Voice Passport
A Passport is a signed object. Verifiers MUST reject a Passport whose signature does not validate against the issuer's registered key, and SHOULD reject one whose purpose does not match the call context.
{
"id": "vp_<id>",
"agent": "<agent_id>",
"issuer": "<org>",
"purpose": "<scope>",
"alg": "ed25519",
"sig": "<base64>",
"exp": "<iso8601>"
}
4 · Handshake
Before audio reaches the human, the agent MUST present its Passport, the Verifier MUST validate it, disclosure MUST be delivered, and consent MUST be recorded where required by policy or law. A session that fails any mandatory step MUST NOT proceed.
- Agent → Verifier: present Passport
- Verifier: validate signature & scope
- Verifier → Human: AI disclosure
- Human → Verifier: consent (where required)
- Verifier: open Ledger, arm escalation, admit session
5 · Audit records
Every mandatory step MUST be written to an append-only Ledger with a monotonic timestamp and a hash chained to the previous entry. Records MUST be exportable and independently verifiable without access to the Verifier's private state.
6 · Status of this document
VTP/1.0 is a working draft published for public comment. It is not yet a ratified standard and may change. Implementers should expect revisions and are invited to contribute through the working group.