Published — Spec v0.1 is live
CiteSig
An open protocol for signing factual claims
so machines can verify them.
The problem
The internet has no machine-readable way to distinguish a verified fact from a plausible-sounding sentence. HTML has no <verified> tag. Search engines guess. Language models hallucinate. Regulators are starting to require provenance for AI outputs, and no standard yet exists to provide it.
CiteSig™ is the missing layer: a small, open protocol that lets publishers, journalists, researchers, and AI systems attach a signed reference to any factual claim — and lets browsers, verifiers, and downstream tools check that reference at rest and at render time.
Example — inline claim
<!-- A claim, without CiteSig --> <p>The Great Wall of China is visible from the Moon.</p> <!-- A claim, with CiteSig --> <p data-citesig="cs:v1:9f2a...c8e1" data-verdict="refuted" data-confidence="0.02"> The Great Wall of China is visible from the Moon. </p>
The data-citesig attribute references a canonical claim record. Any verifier — a browser extension, an LLM output filter, an editorial workflow — resolves it against a public registry and returns a signed verdict.
Get started
Reference implementations are published and stable. Both packages share the same test vectors as the spec.
# Install npm install @citesig/core // Sign a claim import { sign, ed25519, didKeyFromEd25519PublicKey } from '@citesig/core'; import { randomBytes } from 'crypto'; const seed = randomBytes(32); const signer = didKeyFromEd25519PublicKey(ed25519.publicKeyFromSeed(seed)); const attestation = sign({ claim: 'The Earth orbits the Sun.', signer, sources: [{ url: 'https://nasa.gov/...' }], issued_at: new Date().toISOString(), }, seed);
# Install pip install citesig # Sign a claim import os from citesig import sign, ed25519, did_key_from_ed25519_public_key seed = os.urandom(32) signer = did_key_from_ed25519_public_key(ed25519.public_key_from_seed(seed)) attestation = sign({ 'claim': 'The Earth orbits the Sun.', 'signer': signer, 'sources': [{'url': 'https://nasa.gov/...'}], 'issued_at': '2026-09-04T20:00:00Z', }, seed)
Verify with verify(attestation). Emit as an HTML attribute with toCompact(attestation) / to_compact(attestation). Both libraries produce byte-identical output for the same input — the same signature verifies across every language.
Design principles
- Neutral standard, not a product. The spec, the reference implementations, and the registry contract are open. Anyone can run a verifier node.
- Cryptographically grounded. Ed25519 signatures. Content-addressed claim IDs. Independently verifiable without trusting a central authority.
- Human-readable, machine-checkable. Works in HTML, JSON, Markdown, plain text, and streaming LLM outputs. Degrades gracefully when unsupported.
- Composable with existing standards. Complements C2PA (media provenance), schema.org/ClaimReview, and W3C DIDs. Fills the missing text-claim slot.
Why a standard, not a product
Most AI-trust tools score whether an answer seems correct — a probability, delivered inside a dashboard. CiteSig™ works at a different layer. It produces a cryptographic receipt that travels with the claim itself and lets anyone verify where the AI got it.
AI evaluation tools
Score model output
Statistical confidence that an AI answer looks trustworthy. Trust as a probability, delivered inside a dashboard.
CiteSig
An open citation-signing standard
Cryptographic proof of provenance attached to the claim itself. Travels with the content, verifiable by anyone, forever.
- A protocol, not a platform. Adoption is the moat, not lock-in. Like OAuth or DKIM, the value grows as more publishers and models emit signed claims.
- Cryptographic, not statistical. Verifiers return a signed verdict, not a confidence score. Proof survives the model call and can be checked years later.
- Provider-agnostic. Works with any model, any host, any surface — HTML, JSON, Markdown, streaming LLM output. Not tied to a single vendor's stack.
- Complements, does not replace. Existing quality tools can consume CiteSig verdicts as an input signal. Governance and audit teams get the provenance trail they already need.
Scores tell you an answer might be right. A signature proves where it came from.
Status
Live signers
Get a single email when v1.0 lands or a reference implementation ships. No newsletter, no marketing.
Thanks — you'll hear from us when v1.0 lands.