Skip to content

Soft-binding

Soft-binding

Soft-binding (Layer 3) enables provenance recovery for assets whose C2PA manifests have been removed — for example, by social media platforms that strip metadata on upload.

How it works

  1. Exact lookup — extracts the watermark payload (a 16-byte ULID) and queries the manifest index. Confidence: 1.0 when found.
  2. Perceptual hash lookup — computes pHash/dHash/aHash and matches against the fingerprint index using Hamming distance ≤ 6/64. Used when watermark extraction fails.
  3. Audio/video fingerprint — chromaprint (audio) or keyframe pHash (video) for non-image assets.
  4. Semantic embedding lookup (optional, off by default) — CLIP/CLAP embeddings via pgvector HNSW. For candidate discovery only; never used as sole proof.

Recovery API

POST /v1/lookup

See the Lookup API reference for the full request/response format.

Confidence and ranking

Results are ranked: exact matches outrank fuzzy matches. Each result includes:

  • recovery_method — which lookup class succeeded
  • confidence — calibrated score for that method

Explicit limits

Soft-binding does not guarantee recovery under:

  • High-effort adversarial watermark removal
  • Re-encode attacks that destroy frequency-domain signals
  • Deep crops that remove all watermarked regions

Full soft-binding policy →