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
| Rule | Value |
|---|---|
| Allowed characters | a-z, 0-9, hyphens |
| Length | 1 - 64 characters |
| Case sensitivity | Case-insensitive (stored lowercase) |
| Hyphens | No leading, trailing, or consecutive |
| TLD | .pivx, .private, .secure, .safe |
Registration Prices
| Name Length | Fee |
|---|---|
| 1 character | 10000 PIVX |
| 2 characters | 7500 PIVX |
| 3 characters | 2400 PIVX |
| 4 characters | 700 PIVX |
| 5 characters | 350 PIVX |
| 6 characters | 175 PIVX |
| 7+ characters | 90 PIVX |
Update Prices
See Name Managing, Marketplace
| Name Length | Fee |
|---|---|
| 1 character | 15 PIVX |
| 2 characters | 12 PIVX |
| 3 characters | 10 PIVX |
| 4 characters | 9 PIVX |
| 5 characters | 8 PIVX |
| 6 characters | 7 PIVX |
| 7+ characters | 6 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:
| Checkpoint | Value |
|---|---|
| PIVX start block | 5536811 — the protocol wallet's birthday; no service transaction can exist before it |
| Genesis state root | 0x0000…0000 — 32 zero bytes, the root of an empty registry |
| Contract deployment block | 115332622 |
| Deployment transaction | 0xea0025b7…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.
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.
Links
| Resource | URL |
|---|---|
| App | pivx.name/app |
| App Tor | pivxns3wsp3g6rtekzjwhqtcic2yhgngqg3ovod67hp3obt2ckmtcjyd.onion/app |
| Indexer Tor | indexer.pivxns3wsp3g6rtekzjwhqtcic2yhgngqg3ovod67hp3obt2ckmtcjyd.onion |
| GitHub | github.com/PIVX-Name |
| API | Go to page |
| Documentation | docs.pivx.name |