Six verbs of sovereign sociality, on Bitcoin.
Identity, confidentiality, legitimacy, provenance, authority, commitment. Six composable protocols. No custody. No token. No issuer. Everything the modern web does through captured intermediaries — done with one Bitcoin address and no permission.
Six verbs of sovereign sociality: am · whisper · decide · declare · delegate · swear.
A small Bitcoin UTXO, left alone, is the only credible economic signal on the open internet. Every alternative way of asking “is this user real?” or “is this commitment serious?” or “is this voter weighted?” either costs trust or recreates a captured intermediary. Bitcoin opportunity cost is universally observable, unforgeable, and meaningful regardless of jurisdiction.
- proof of workcosts electricity
- kyccosts dignity — and creates a honeypot
- captchascost attention, break constantly
- social vouchingcosts a pre-existing graph
- oauth claimscosts a captured issuer
- custodial escrowcosts trust in the operator
- bonded satscosts opportunity cost on bitcoin you already held
Every protocol in the family is built on the same primitive: a BIP-322 signature from a Bitcoin address over a canonical human-readable message. Learn that one shape, and the rest of the family pattern-matches.
Six independent protocols. Each one ships a spec repo, reference impls in TypeScript and Python, conformance test vectors, a public documentation site, and a hosted reference application. None depends on another at the protocol level — but every one optionally composes with the others.
"I have stake now." Sign one Bitcoin message; any verifier checks N sats unspent for N days. The base-layer primitive every other sibling can optionally reference as a stake-at-signing signal.
"I can receive now." Sealed envelopes addressed to a Bitcoin address. X25519 device keys bound via BIP-322. No centralized key server, no account, no message broker.
"I chose now." Three canonical weight modes (one_per_address / sats / sats_days). Deterministic, pure, cross-impl-testable tally. Polls and ballots are signed JSON.
"I said this now." BIP-322 authorship + OpenTimestamps Bitcoin-block priority. Replaces PGP + OTS + C2PA in one self-contained envelope. Verifies offline, forever.
"I authorize now." Every agent gets a Bitcoin address. Principals grant scoped, revocable, BIP-322-bound action rights. Every agent action is signed, scoped, non-repudiable.
"I swear forward." BIP-322-signed declarations about future-verifiable propositions, bonded to an OC Attest, with deterministic resolution mechanisms. Enforcement is by public exposure — never custody, never slashing.
The family is closed at six. If a candidate seventh verb appears that meets all three Bitcoin-load-bearing tests AND the no-custody discipline, we'll re-open the count. Until then, six.
Every primitive in the family passes the same test: if it works identically on Ed25519, it doesn't belong here. Three properties make Bitcoin specifically necessary, and stripping any one degrades the protocol to a known commoditized design (PGP, x509, OAuth claims, EAS attestations, DocuSign).
- universal stake oraclesats × days is the only credibly-neutral economic signal on the open internet. ed25519 has no economic layer.
- non-malleable timebitcoin block headers are the only credibly-neutral long-horizon time primitive. l2s and altcoins reintroduce operator trust or reorg risk.
- global identity namespacebitcoin addresses are globally enumerable with no registrar. pseudonymous ed25519 keys have no economic or temporal grounding to anchor a public ledger to.
- not custodialno protocol in the family ever holds sats. funds never move. bonds and stake are economic signals, not balances under contract control.
- not slashing-basedno actor — protocol, counterparty, voter, oracle — can seize bonded sats. ever. teeth come from public records, not lockup.
- not aggregated reputationevery protocol ships raw metrics (sats_bonded, days_unspent, kept_count, broken_count) and refuses to ship a canonical score. platforms compose policy from raw queries.
- not proof of personhoodone address can be one human, ten humans, or zero. for one-human-one-vote, look at world id or brightid; this stack is a different shape.
- not legalproduces evidence admissible in jurisdictions that recognize digital signatures. does not produce judgments. does not replace courts when enforcement requires state violence.
- not a smart contract platformno vm, no gas, no on-chain state writes. everything is off-chain canonical envelopes plus reads of public bitcoin and nostr state.
The same shape across every protocol — sign once with your Bitcoin wallet, optionally publish, anyone verifies offline.
- 1sign one canonical message
your wallet produces a BIP-322 signature over a deterministic, human-readable text. you read what you sign before signing — no hidden fields. byte-exact serialization across every reference impl.
- 2publish (optional)
the signed envelope can be posted as a Nostr kind-30078 replaceable event for durable public discovery. or kept private. or attached to a URL. or printed on a QR code. envelopes are transport-agnostic.
- 3any verifier reads it offline
given (envelope, public bitcoin chain state), any conforming impl on any machine produces the same yes/no answer. the reference verifier at ochk.io is a convenience mirror — never the authority.
The protocols are independent — none depends on another to function — but every pair composes natively. A few of the canonical patterns:
- attest + gateocGate({ minSats, minDays }) drops into express, next, fastify, hono, or workers. one config block, one bot filter.
- stamp + atteststamp envelopes optionally embed an attest attestation_id as a stake-at-signing signal. verifiers re-resolve the signer's bond against current chain state.
- vote + attestvote's sats_days weight mode resolves voter weight directly from on-chain UTXOs. attest can additionally gate who is allowed to cast a ballot.
- agent + anya principal grants an agent a scoped delegation; the agent can then sign stamps, lock seals, vote ballots, or pledges within its scope. revocable.
- pledge + stamppledges can resolve via stamp_published — the canonical way to swear "I will publish X by time T."
- pledge + votepledges can defer dispute resolution to an OC Vote with a pre-specified voter set and threshold.
- lock + anycounterparties to a bilateral pledge or a sensitive coordination can use Lock to seal envelopes addressed to each other before publishing anything.
Forum operators, Nostr relay operators, airdrop distributors, DAO coordinators, SLA-bound services, content auditors. Drop ocGate() in front of an HTTP route or compose pledgeHistory predicates for richer policies. One config block, one drop-in middleware line.
Wallet developers, Nostr clients, content tools, agent frameworks, governance dashboards. Five published surfaces — @orangecheck/{sdk,gate,react,cli,wallet-adapter} plus the per-protocol cores — cover the typical integrator surface.
Anyone signing into a forum, casting a vote, sealing a message, anchoring a release, delegating to an agent, or staking their word on a future commitment — without handing KYC to every platform they touch. One signature, one shareable URL, no account anywhere.
UniSat, Xverse, Leather, Alby — any BIP-322-capable extension. One click. The reference apps never touch private keys, balances, or transaction history beyond public chain data.
Sign the canonical message in Sparrow, Bitcoin Core, Electrum, or any hardware wallet via PSBT. Paste the signature back. Equally secure. No browser extension required, no account anywhere, fully air-gappable.
- non-custodialyou control your keys, always. funds never move. no bond is ever locked away from the holder.
- no personal datano emails, names, phone numbers, or KYC selfies, anywhere in the family.
- no telemetryreference SDKs talk only to public Bitcoin explorers and Nostr relays you pass in.
- offline-verifiablegiven an envelope and public chain state, anyone on any machine — including an air-gapped one — can verify independently. ochk.io is a convenience mirror, never the authority.
- public-by-designaddresses, bonds, claimed handles, and pledge outcomes are public. that is the property that makes verification trustless. use fresh, single-purpose addresses if linkability matters.
- open sourceevery protocol spec under CC-BY-4.0; every reference impl under MIT.
// all you need is a bitcoin wallet that signs messages (BIP-322 preferred)
// Building on OrangeCheck? get in touch — happy to help integrators wire up gates, pledge predicates, or custom resolution mechanisms.