Skip to main content

What is PIVX Names?

Briefly

PIVX Names is a naming protocol for PIVX working on-chain and based on the Sapling shielded memo. It lets you register human-readable names like richard.pivx and map them to PIVX shielded addresses. Every registration is proven correct with a Zero-Knowledge Proof.

The Problem

PIVX shielded addresses are 78 characters long. They look like this:

ps12qtzaw6x3dh35xuukrqgk06e9ffx8szg2n2huqncwjsnj3ajczmklqgcx97kn63vwlge6gj2cmn

The Solution

Register a name by sending a single shielded PIVX transaction. An Indexer watches the blockchain, validates each registration, and builds a registry. A Zero-Knowledge Prover then generates a mathematical proof that every registration is correct.

Anyone can resolve richard.pivx to get Richard's address. Anyone can verify the proof. No trust required.

Name Rules

RuleValue
Allowed charactersa-z, 0-9, hyphens
Length1 - 64 characters
Case sensitivityCase-insensitive (stored lowercase)
HyphensNo leading, trailing, or consecutive
TLD.pivx, .private, .secure, .safe

Registration Prices

See Name Registration

Name LengthFee
1 character10000 PIVX
2 characters7500 PIVX
3 characters2400 PIVX
4 characters700 PIVX
5 characters350 PIVX
6 characters175 PIVX
7+ characters90 PIVX

Update Prices

See Name Managing, Marketplace

Name LengthFee
1 character15 PIVX
2 characters12 PIVX
3 characters10 PIVX
4 characters9 PIVX
5 characters8 PIVX
6 characters7 PIVX
7+ characters6 PIVX

The Registrar

The registrar's protocol address, its viewing key and the anchor contract are all published. This is deliberate: the viewing key is what lets anyone audit the service without asking permission, and the contract is what they check their own result against.

Protocol address — send every command here:

ps1rf97n020fhwycx2nnxfm97ufeyygk9q64h96e5dx304lreg9zl53sas6g3c9gnlfpqw5s4u3zsh

Viewing key — decrypts everything that address has ever received:

pxviews1qwz6qt2gqqqqpqpyt8fy0k64xunn9fgekcgrukw6lqvks83f2j65qrfjgehv3sqqdvy6xsz3m00yfdg5rg56z04q9uw8z9uwyjnzrh0wn63a6gga3r9jw6rm44rqykywnzxuw20yjq5hn8e09cu4h59xx94g8awapkn2n2x4mslvmr7ql5367436u6608slsjyfyxarczq8pag6sex4288mu3ewyhrr73vccm3cqy8mz9wtp282568cej5qdhatlqqf5s8j2rkhdktshc36cy

Anchor contract — where every state root is published, on BNB Smart Chain (chain ID 56):

0x25c7ab6e524a67a9571ac4f02c266658c4e620cb

A replay has to start from a known point, so the two ends of the chain are pinned as well. These are the checkpoints an independent indexer begins from:

CheckpointValue
PIVX start block5536811 — the protocol wallet's birthday; no service transaction can exist before it
Genesis state root0x0000…0000 — 32 zero bytes, the root of an empty registry
Contract deployment block115332622
Deployment transaction0xea0025b7…ed774e97

The genesis root is not a secret: in the compact Sparse Merkle Tree an empty subtree is 32 zero bytes at every height, so an empty registry hashes to zero, and that is the value the contract was deployed with. Anyone replaying from block 5536811 arrives at the same starting state without being told what it is.

With these values you can scan PIVX from the start block, decrypt every command and payment the service has ever received, replay them through the open-source indexer, compute the state root yourself, and compare it against the contract with isRootValid(bytes32) — see Verifying Proofs. If the registrar ever censored, reordered or invented an operation, your root would differ from the one on-chain.

The indexer ships with its own resolution API, so you never have to depend on a public endpoint — including ours.

warning

Verify these values before relying on them

Once published, cross-check the address, viewing key and contract address against the GitHub repository and the app itself; the contract and its deployment transaction can also be read straight off BscScan. A documentation site is exactly the thing an attacker would want to alter.

ResourceURL
Apppivx.name/app
App Torpivxns3wsp3g6rtekzjwhqtcic2yhgngqg3ovod67hp3obt2ckmtcjyd.onion/app
Indexer Torindexer.pivxns3wsp3g6rtekzjwhqtcic2yhgngqg3ovod67hp3obt2ckmtcjyd.onion
GitHubgithub.com/PIVX-Name
APIGo to page
Documentationdocs.pivx.name