Learn  ·  Topic 5 of 10

VerusID

Each artwork isn't stored on an identity — it is an identity.

What it is

A VerusID is a self-sovereign identity on the Verus blockchain. It has a human-readable name (like Destroyer of Fiat.bitcoins@), a deterministic i-address (i3xD7bRKEtJdMmKjoxMHyBjoURebQsGFhV), primary addresses that control it, revocation and recovery authorities, and a contentmultimap — an on-chain key-value store.

Identities are registered under parent namespaces. bitcoins@ is the parent namespace for this project, and each piece is a child identity under it. The curator kali.bitcoins@ is also a child of the same namespace.

This is fundamentally different from Ethereum NFTs. On Ethereum, an NFT is a row in a contract's storage — a token ID and an owner address. The metadata is elsewhere. On Verus, the identity is the asset. It carries its own name, data, provenance, and rights. Transfer the identity's primary addresses and you transfer everything — no separate instrument required.

Why it matters

Identity as a container means that control, data, and rights are unified in one on-chain object. When you update the primary addresses of Destroyer of Fiat.bitcoins@, the new controller inherits the name, the CMM data, the signed provenance, and the rights assertion — atomically.

VerusIDs also support a privateaddress field — a shielded z-address that acts as the identity's mailbox. Send to ID@:private and the data arrives encrypted at the identity's z-address. This makes identity-to-identity messaging possible without revealing who is communicating, which is a building block for agent-to-agent communication in an on-chain economy.

The same identity primitive works for credentials, certificates, legal entities, or autonomous agents. Anything that needs a name, an owner, and structured on-chain data can be a VerusID.

Worked example

Bitcoin Kali has 8 identities on VRSC mainnet — 1 curator and 7 NFTs:

curator
kali.bitcoins@
i5FXH74Xnqm3AS6iWJSLoMW1PZaev2F1bj
Block 4022359
piece 1
Destroyer of Fiat.bitcoins@
i3xD7bRKEtJdMmKjoxMHyBjoURebQsGFhV
Block 4022399
piece 2
Slayer of Bankers.bitcoins@
iNjVMpJ5UHzFkPqj2pnKNTydCqL8cqg7EK
Block 4022399
piece 3
Bane of Debasement.bitcoins@
iBLqEpqnCriDbpwavQL1PNffQQe9qp6SW3
Block 4022403
piece 4
Goddess of Sovereignty.bitcoins@
iE2g92tYqhq17Pgwj5xJtn2W14q3QKQbK2
Block 4022410
piece 5
Devourer of Time.bitcoins@
iJwuAi1htck5yxJQVSEaWXczGnXNo5d47P
Block 4022414
piece 6
Kali of the Cremation Ground.bitcoins@
i81vUWkBiVjk2GXbNChv2A2VHan1QpWdwn
Block 4022414
piece 7
Mother of the Immutable.bitcoins@
iQz4vqD43Zj1snj91wGPHZxeEWd1K1jYj1
Block 4022421

Each of these is queryable with a single call: getidentity "Destroyer of Fiat.bitcoins@". An optional second argument pins the lookup to a specific block height — this viewer uses each piece's registration height, so what you see here is always the original signed state, not a mutable later version. The returned object includes the full contentmultimap, primary addresses, and the revocation and recovery authorities.

See Destroyer of Fiat's identity data →