dotNS¶
Introduction¶
dotNS is Polkadot's decentralized name service for Products — the registry that turns a human-readable .dot name like awesome.dot into the published Polkadot Product it points at. It's the lookup every Host runs whenever a user navigates to a .dot address.
If you have used a DNS provider, the role is similar: human-readable names map to content. The differences: dotNS is on-chain (no DNS provider in the middle), name resolution returns a Content Identifier (CID) for a Product bundle (not an IP address), and pricing is tied to Proof of Personhood so spam farming short names is bounded.
Four properties shape how a Product developer interacts with dotNS:
- The registry lives on Asset Hub: Names, owners, and the content references they point at are stored as contract state on Asset Hub, not on the People Chain or Bulletin Chain.
- Name resolution is content-addressed at the end: A
.dotname resolves to a CID, and the CID points at bytes on the Bulletin Chain (or via an IPFS gateway). See Name Mechanism. - Pricing is personhood-gated by PopRules: Short names are free for personhood holders; longer or numerically-suffixed names are open to anyone but require a deposit. See PopRules and Pricing.
- The architecture is a small set of cooperating contracts: Not a single registrar — a set of contracts each handling a slice of the model. See Architecture.
For the Product-side how-to (registering a name, publishing your bundle), see Register and Publish.
Known gaps
Two operational caveats apply to the current dotNS surface:
- Self-declared PoP tier: dotNS reads PoP tier from a status the user sets themselves. On-chain verification of PoP tier against the People Chain is a forthcoming integration; until then, treat the tier check as cooperative, not adversarial.
- Operational runbook gaps: Some operator-side procedures (migration, batch updates, contract upgrade paths) are not yet documented for this build. The reference here covers the developer-facing surface.
Where to Go Next¶
-
Learn Name Mechanism
How a
.dotname resolves to a Product bundle —namehashderivation, thecontenthash→ CID mapping, and the IPFS/Bulletin delivery path. -
Learn Architecture
The contract architecture on Asset Hub that backs the registry — what each contract is responsible for and how they cooperate.
-
Learn PopRules and Pricing
The pricing ladder for name registration: who can register what at what cost, organized by name length and PoP tier.
-
Guide Register and Publish
The Product-side how-to: registering a
.dotname, attaching your published Product bundle, and going live.
| Created: June 16, 2026