ODNCA is an initiative of ORDnet.ioinfo@odnca.org
ODNCA
THE LIFE OF A NAME

From inscription to signed answer.

A name here is not an entry in someone’s database — it is a satoshi you own, carrying an inscription anyone can read. This page walks the whole life of a name: claim, ownership, transfer, resolution, and proof.

1 · The claim

Governed by ODNCA-STD-003 (SNS-NAME-1).

A valid registration is a JSON inscription on an output of exactly one satoshi:

{ "p": "sns", "op": "reg", "name": "alex.web3" }

The name is normalized (head-strip, trim, lowercase), must contain exactly one dot with no whitespace or control characters, and may be 1–2048 bytes of UTF-8. First seen wins — among valid claims, the earliest on-chain claim owns the name, forever. OpNS names are the bare form: no dot, no TLD — the two shapes can never be confused.

Only the JSON form registers. A plain-text body that merely looks like a name — a filename inside an on-chain website, index.html, style.css — never creates a claim. This is what keeps the namespace clean while everything else lives on the same chain.

Registered vs. verified are separate facts: any conformant claim is valid; claims issued through a recognised registrar additionally carry the registrar’s issuer signature, binding name and destination wallet, replay-proof. An unverified raw claim that is first still wins.

2 · Ownership and transfer

Governed by ODNCA-STD-001 §2–3.

There is no transfer operation. The name lives in its satoshi; spending the output that carries it moves the name — to a buyer, a new wallet, an heir. Any wallet that can move a sat can transfer a name: no registry approval, no special transaction format. Conformant indexers track every name to its exact satoshi position, classify where it lands, and journal every step for reorg-safe rollback.

THE SAT LANDS ONSTATUSMEANING
a P2PKH outputheldThe address is the holder. The normal case.
an unknown scriptcontractOwner unknown, script hash recorded, tracking continues — never treated as a burn.
OP_RETURN / the feeburnedThe name is dead. Honest and final.

3 · Resolution

Governed by ODNCA-STD-001 §4–8.

One HTTP call turns name.web3 or mailbox@name.web3 into the current holder. Every answer is signed over a fixed field set including its expiry, and carries the name’s origin (its birth) and its current outpoint (where its satoshi sits right now).

Honesty is wire-level: a mailbox that doesn’t exist still pays the domain holder — disclosed as fallback: true inside the signed fields. Fresh registrations answer no_holder during propagation instead of guessing. Errors are always readable JSON with a machine code.

The mailbox rule is one sentence: the holder of a mailbox is, by definition, the holder of the domain.

$ curl sns.ordnet.io/resolve/ordnet.web3
ok: true  name: ordnet.web3
holder_script: 76a914…88ac
origin: 367a0a1d…:0
current: dc54c20a…:0
expires: +300s
sig: ✓ secp256k1 · verified

4 · Proof — the three trust levels

Each level is a strict superset of the last. Skipping levels is always your choice, never the protocol’s requirement.

LEVELYOU ADDWHAT IT BUYS
1 · Trustread the JSON, pay the scripta five-line integration
2 · Verifycheck the signature against the published keycaching-safe; every answer provable after the fact
3 · Provecheck the current outpoint is unspent at any nodetrust nobody — the chain itself confirms the holder

Beyond level 3 sits the Certificate of Ownership: the full name state is periodically committed as an on-chain merkle root, and every holder can obtain a compact proof — leaf, merkle path, chain anchor — verifiable offline, mintable on-chain as a permanent attestation. See Operators.

5 · The data channels

Governed by ODNCA-STD-005 and ODNCA-STD-006. There is no DNS-style record model — deliberately.

CHANNELTHE ON-CHAIN TRUTHREAD VIA
Paymentthe current outpoint of the name’s satoshithe signed resolver answer
Mail1-sat message inscriptions owned by the recipient — the inbox is literally the recipient’s property; attachments referenced by outpoint; end-to-end encryption via the mailbox keythe recipient’s own wallet
Contenta 1Sat Ordinals inscription script in a sat; the name’s coupling (with subdomains and routes) points at an exact outpointord://name.web3

Two schemes, fixed for good: sns:alex.web3 names the name — the primary form for links and QR codes. ord://alex.web3 loads the content coupled to the name (a mutable reference), while ord://<txid> loads that exact inscription forever (a permanent reference).