DefaultVerifier
← Back to Specifications

Verifier Interface v0.1

A minimal interoperable interface for cryptographic verification receipts.

Status

Draft v0.1

Goals

Overview

The verifier interface defines a minimal interoperable model for issuing, transporting, and independently verifying cryptographic verification receipts.

The interface is intentionally small:

The interface does not define:

Those layers may compose above or alongside verifier receipts.

Receipt Model

A verifier receipt is a detached cryptographic assertion describing the outcome of a verification event.

Receipts are:

Canonical Signed Object

The canonical signed object consists of:

{
  "task_id_hash": "string",
  "verdict": "PASS | FAIL | INDETERMINATE",
  "confidence": 0.0,
  "reason_code": "string",
  "ts": "ISO8601 timestamp",
  "verifier_kid": "string"
}

Optional:

{
  "counterparty": "string"
}

The canonical signed object excludes:

Receipt Identity Derivation

Receipt identity is derived from:

SHA-256(
  UTF8(
    JCS(canonical_signed_object)
  )
)

The resulting identifier format is:

sha256:<hex_digest>

Verification Process

  1. Retrieve verifier receipt
  2. Construct canonical signed object
  3. Apply RFC8785 JCS canonicalization
  4. Compute SHA-256 digest
  5. Verify receipt_id matches derived digest
  6. Retrieve verifier public key from JWKS or registry
  7. Verify Ed25519 signature

Public Key Discovery

Verifier public keys SHOULD be exposed through:

/.well-known/jwks.json

Alternative verifier-specific registries MAY also be supported.

Example Receipt

{
  "receipt_id": "sha256:9e2d7b...",
  "task_id_hash": "sha256:2fbc91...",
  "verdict": "PASS",
  "confidence": 0.98,
  "reason_code": "MATCHED_SPEC",
  "ts": "2026-05-24T17:42:11Z",
  "verifier_kid": "sar-prod-ed25519-03",
  "counterparty": "example-agent",
  "sig": "base64url_signature"
}

Design Principles

Continuity Composition

Verifier receipts MAY compose into higher-order continuity systems.

Such systems may:

This specification intentionally does not constrain those higher-order composition models.

Reference Implementation

Browser Verification

The reference explorer supports:

Verification occurs independently in-browser without requiring trust in the explorer frontend.

License

This specification is provided under Apache 2.0.