PreviewThe WPS spec is in preview. The public spec URL, reference implementation repo, and Worlds product itself land with the v1 launch. Read the page for the shape of the standard; the actionable links go live with the launch.
← All standards

WPS v1 · Preview · CC BY 4.0 (planned) · MIT verifier (planned)

Worlds Provenance Sidecar

Restoring accountability to the written word, one paragraph at a time. An open standard for per-paragraph cryptographic provenance. Verifiable offline. No chain. SHA-256 + Ed25519 + an RFC 6962-style Merkle log.

Spec, reference verifier, and conformance fixture go public with the v1 launch. Want the heads-up? Get studio updates.

AI made authorship illegible

In a 2026 experiment, novelist Vauhini Vara fed her own books to an AI and asked it to write in her voice. Her closest readers — including a friend of three decades — could not reliably distinguish the imitation from her own prose. Stylistic detection alone is finished.

A few months later, the novel Shy Girl was pulled by its publisher amid AI-writing allegations. The author's defense was that maybe a third party did it — unprovable in either direction. There was no signature, no timestamp, no artifact anyone could point at.

Watermarking AI output is one half of the answer. Watermarking human output — at the paragraph level, signed by the author, verifiable offline — is the other half.

By the numbers

Climate-credible provenance

ApproachEnergy / 1M recordsCO₂e / 1M recordsOffline verify
Bitcoin anchoring~1.5 GWh~900 tNo
Ethereum PoS~10 kWh~6 kgNo
WPS (Merkle log, this spec)~5 kWh~3 kgYes

Anchored on the methodology in Climate-Aware Text Provenance (CoinLaw 2026 Bitcoin energy data; Ethereum.org post-Merge estimates; CT-log throughput benchmarks). Conservative midpoints; full methodology footnoted in the spec.

vs Bitcoin

~300,000×

more energy-efficient than chain-anchored provenance.

vs Ethereum PoS

~2×

more efficient — and no chain, no RPC node, no external dependency.

Per book

< 1 email

A book's worth of provenance verifies in milliseconds — less energy than sending an email.

What the spec looks like

A manuscript exports alongside a manuscript.provenance.json sidecar. Each paragraph is a record. Each record is signed by the author's Ed25519 key, hashed into a Merkle leaf, and bound to the manuscript root by a Worlds audit signature.

{
  "spec_version": "1.0.0-phase-b",
  "manuscript_id": "01HZX...UUID",
  "audit_root": "9f2d...c1a8",
  "audit_signature": "5b7e...a40c",
  "author_keys": [
    {
      "fingerprint_hex": "a7fa...5664",
      "public_key_hex": "3c9b...77d1"
    }
  ],
  "records": [
    {
      "unit_id": "para-001",
      "author_type": "HUMAN-ORIGINAL",
      "model": null,
      "text_hash_hex": "1c4a...0e9d",
      "author_key_fingerprint_hex": "a7fa...5664",
      "parent_unit_id": null,
      "created_at_iso": "2026-05-09T14:23:11.000Z",
      "signature_hex": "51e5...af01",
      "merkle_proof": [ /* ... */ ]
    }
  ]
}

Full schema, canonical encoding rules, and 24 byte-equality test vectors ship in the spec at the v1 launch.

How to adopt

  1. Install the reference verifier. Node 22+ required for Web Crypto Ed25519.
    cd tools/verify-cli
    npm install
  2. Round-trip a fresh demo sidecar against the full eight-step verifier pipeline.
    npm run verify -- --demo
  3. Run the 24-check conformance fixture against your implementation — every intermediate byte is pinned.
    npm run verify -- --vectors ../../docs/spec/v1/test-vectors.json
  4. Verify a real manuscript with the audit key pinned out of band.
    npm run verify -- <manuscript.txt> <sidecar.provenance.json> --audit-key <hex>

How WPS relates to existing standards

  • vs C2PA: C2PA wraps the whole manuscript with publisher-level metadata. WPS signs each paragraph by the named human author. The two compose — C2PA on the export, WPS on the body. A C2PA WG extension for per-paragraph human signing is an open question we're tracking.
  • vs Project Origin: BBC / NYT / CBC / Microsoft sign at the article level, by the publisher. WPS signs at the paragraph level, by the author.
  • vs Nostr: Nostr signs each event as a single atom — a post is one signature. WPS subdivides the post and signs each paragraph independently, so a single document can carry mixed human and AI authorship with paragraph-level granularity.
  • vs SynthID (Google): SynthID watermarks AI output. WPS attests human output. They solve opposite halves of the same problem; both will be needed.

Open implementations welcome

The cryptography is the trust. The reference verifier is one of N validators. Anyone will be able to implement the spec against the canonical fixture and reach the same answer. Conformance procedure lives in §13 of the spec — both ship publicly with the v1 launch.