Trust Anchor API
Evidence‑First Trust Anchoring on Clockchain for IP priority, anti-deepfake, and AI Act disclosure.
Document ID
TV-TRUST-API-2026-01Version
1.0Canonicalization
JSON-SORT-2026-01Status
Evidence‑First Trust Anchoring
0) Normative Rules (MUST)
- Tick-canonical semantics for any execution windows (integer ticks only).
- No floats in any signed/verified objects.
- u64 must be encoded as decimal strings (
*_u64_str). - Canonical JSON:
TV-CANON-JSONSORT-2026-01. - Key pinning required for offline verification (
GET /api/v1/keys). - CORS Policy: Ensure origins are authorized. See CORS Guide.
1) Data Model
1.1 Trust Evidence (off-chain)
Trust evidence is stored off-chain (Layer‑0 audit ledger). It MUST be signable (int-only).
{
"schema":"TV-TRUST-EVIDENCE-2026-01",
"trust_kind":"CONTENT_ATTESTATION",
"content_hash":"sha256:<64hex>",
"perceptual_hash":"sha256:<64hex>",
"content_type":"image/jpeg",
"content_size_u32":123456,
"author_did":"did:timeverse:author-001",
"creation_method":"HUMAN_RECORDED",
"ai_disclosure": null
}1.2 Trust projection inside Anchor
Trust fields are carried in the anchor message as a projection: anchor_envelope.message.l0_audit.trust.
{
"schema":"TV-TRUST-ANCHOR-2026-01",
"trust_kind":"CONTENT_ATTESTATION",
"trust_subject_hash":"sha256:<64hex>"
}2) Public Read Endpoints
GET/api/v1/clockchain/anchors
List anchors. If the anchor is a Trust Anchor, it includes trust_kind and trust_subject_hash.
GET/api/v1/clockchain/anchors/{data_hash}
Fetch detail for a specific anchor, including raw tx and anchor envelope.
3) Managed Write Endpoint
POST/api/v1/trust/submit
Submit trust evidence → get TSAE + anchor hash → optionally relay to Clockchain.
{
"schema":"TV-TRUST-SUBMIT-REQ-2026-01",
"trust_evidence": {
"schema":"TV-TRUST-EVIDENCE-2026-01",
"trust_kind":"CONTENT_ATTESTATION",
"content_hash":"sha256:...",
"..."
},
"options": {
"issue_tsae": 1,
"anchor_clockchain": 1,
"require_twatch": 0
}
}4) Offline Verification Check-list
- Recompute
data_hash == sha256(canonical(anchor_envelope)). - Verify ORCH signature with pinned ORCH key from
/keys. - If witness exists: verify T‑WATCH signature +
observed_data_hash == data_hash. - Verify FINALity:
bft_votes >= bft_threshold.
Design Rationale
Clockchain remains lightweight and scalable by only storing hash commitments. Trust evidence remains rich and auditable off-chain, while anchoring provides durable commitment and BFT finality.