Community draft · 2026-07-18

Ad+Card
Protocol 0.1

Ad+Card is an open, user-owned format for declarative advertising: a person declares a goal, outfitters offer to equip progress, and a truthful receipt describes exactly what evidence established—never more.

Identifier
adcard/0.1
Status
Implementable draft
Text
CC-BY-4.0
Schema
Apache-2.0

00 / Status

Implement the shape.
Do not overstate the trust.

This is a public review draft, not a final standard, certification program, or production settlement network.

Draft cryptography limitation

Version 0.1 reserves signature and attestation fields but does not yet freeze canonicalization, a signature suite, key recovery, or an attestation profile. Implementations must not claim cross-implementation cryptographic conformance or production settlement safety yet.

01 / Normative principles

Seven rules before any code.

  1. The person owns the card.Create, hold, export, and delete without surrendering it to a platform.
  2. Declared intent, not surveillance.A card exists because a person wrote it, never because tracking inferred it.
  3. Uncertainty stays visible.A Receipt never upgrades self-attested or inconclusive evidence into verification.
  4. Raw reality stays local.Only narrow claims cross the protocol boundary.
  5. Health data never enters commerce.No health-derived value affects an Offer, eligibility, or settlement.
  6. Equip, do not interrupt.An Offer supplies progress; it does not purchase distraction.
  7. Commercial offers are funded first.An unfunded material reward must not be shown.

02 / Declaration

The Ad+Card is a sentence the person chose.

A Declaration contains a person-authored goal, category, visibility, optional baseline, expiry, pseudonymous subject, and draft signature field. A fresh per-card key is the default.

{
  "spec": "adcard/0.1",
  "kind": "declaration",
  "goal": "Run a 5K without stopping by October",
  "category": "move",
  "visibility": "private"
}
  • Real identity is never a protocol field.
  • Private cards remain fully conforming.
  • A reusable identity key requires visible opt-in.
  • An optional baseline remains person-authored.
Open the complete example JSON ↗

03 / Offer

The outfitter says what support arrives and on what terms.

An Offer names what is supplied, a versioned module and its human disclosure, expiry, settlement class, and funding attestation when a reward is material.

{
  "kind": "offer",
  "equips": "Entry to a coached practice group",
  "module": {
    "id": "practice-run",
    "revision": 3,
    "disclosure": { "validates": ["arrival", "completion"] }
  }
}

An Offer must not require unrelated attention, tracking, data surrender, or hidden eligibility. What the person sees is what the outfitter signs.

Open the complete example JSON ↗

04 / Receipt

The settlement truth is narrow and human-readable.

A Receipt records a completed or stopped outcome. Each phase has one sentence, one assurance class, and one versioned validator. The person approves it before it leaves the instrument.

{
  "kind": "receipt",
  "outcome": "completed",
  "phases": [{
    "claim": "Arrived during the accepted window",
    "assurance": "verified"
  }]
}
Stopping is a first-class result.

A stopped attempt is truthful data, not a failure to hide. It may issue a Receipt without advancing commercial settlement.

05 / Assurance

Four classes. No silent promotion.

Verified

Fresh, capability-specific evidence established the claim.

Corroborated

Evidence supports the claim but cannot fully establish it.

Self-attested

The person said so. Honest, visible, and not commercial settlement.

Inconclusive

Evidence was gathered, but the claim was not established.

06 / Forbidden material

Reject anything that could reconstruct a private life.

  • Coordinates or distance to a target
  • Health samples, totals, or derived metrics
  • Private image, audio, video, or hashes
  • Answer choices, transcripts, or raw interactions
  • Motion, heading, or sensor streams
  • Opaque metadata used to smuggle the same

Raw evidence may remain locally for the minimum disclosed evaluation window. It is never Ad+Card interoperability material.

07 / Human disclosure

Authority must fit on one visible sheet.

Goal
What this moment is for
Uses
Which capabilities are needed now
Stored
What remains afterward
Shared
What can leave the device and with whom
Validates
The exact claims that may be issued
Reward
What settles and at which assurance
Expires
When the offer and its authority end

08 / Conformance roles

Build one role. Interoperate with the rest.

Card wallet

Create, hold, export, and delete Declarations. Default to private and unlinkable.

Instrument

Execute disclosed modules and issue Receipts without leaking raw evidence or inflating assurance.

Market

Match funded Offers and settle only the assurance classes the person accepted.

Until a public conformance suite is released, say “implements the Ad+Card 0.1 draft,” not “Ad+Card certified.”

09 / Open questions

What 0.2 must settle.

  • JSON canonicalization and signature suite
  • Key recovery, rotation, and reusable-identity consent
  • Receipt revocation and disputes without rewriting history
  • Replay protection and settlement nonces
  • Instrument and escrow attestation profiles
  • Category extensions and governance
  • Public test vectors and release process
  • Accessibility and localization requirements