Contract Addresses

Where the XnY Protocol contracts are deployed on Base and Base Sepolia, which of them are live on each network, and what each one holds.

These are the addresses the deploy scripts wrote and the off-chain stack reads. They are generated from the deployment manifests in the protocol repository, so a redeployment moves this page rather than leaving it behind.

Not every contract is live on every network. Base has three — DidRegistry, FrontierRegistry and ContributionFingerprintRegistry — and six that are not deployed there: DidBoundAccountRegistry, DidBoundAccount, DatasetVersionRegistry, OwnershipRegistry, RoyaltyEngine and GrantAnchorRegistry. Base Sepolia has all nine. A contract with no deployment is marked as such below rather than shown as an address, and the zero address is never a contract you can call.

Base

Chain ID 8453. 3 of 9 deployed.

ContractAddress
DidRegistry0xf73eD23b998b3987503F4F4Ba4eAb85386ebfCC4
DidBoundAccountRegistryNot deployed
DidBoundAccount beaconNot deployed
FrontierRegistry0x7Bc9DCBd6a0fdc7C8d69581d973eBD970cdBD7Fe
ContributionFingerprintRegistry0x13ba76AF87406884ab9E35cd01cA9D69958f9D49
DatasetVersionRegistryNot deployed
OwnershipRegistryNot deployed
RoyaltyEngineNot deployed
GrantAnchorRegistryNot deployed

Base Sepolia

Chain ID 84532. 9 of 9 deployed.

What each one holds

ContractWhat it holds
DidRegistryIdentity records every other contract resolves a DID against.
DidBoundAccountRegistryCreates and tracks the account bound to a DID.
DidBoundAccount beaconThe upgradeable beacon every DID-bound account reads its implementation from.
FrontierRegistryFrontiers, campaigns and tasks — the hierarchy work is submitted against.
ContributionFingerprintRegistryAnchors a contribution fingerprint to a task and a contributor DID.
DatasetVersionRegistryAssembled dataset versions and the fingerprints each one drew on.
OwnershipRegistryERC-1155 ownership shares in a dataset version.
RoyaltyEngineTakes a deposit in an admitted currency and accounts it against those shares.
GrantAnchorRegistryOn-chain record of an access grant and its revocation.

Reading an address

Each contract above has one address per network where it is deployed, and that address is a stable entry point rather than a snapshot of code. Seven of the nine are UUPS proxies: the address survives an upgrade while the implementation behind it changes, so follow the proxy on the block explorer to reach the implementation currently in use. DidBoundAccount is the exception in shape — that address is the upgradeable beacon every DID-bound account reads its implementation from, so it is neither an account nor the implementation itself.

DidRegistry is deployed outside this protocol's repository, which holds only its interface. The address is the one the other contracts resolve DIDs against, and its upgrade and ownership arrangements are not governed by the rules the rest of this page describes.

Transactions against any of these are paid in ETH, as on any EVM chain. None of them charges $XNY — see Token Utility for what the token does and does not do, and Architecture for how the contracts fit together.

Copy an address from this page rather than from a search result or a message.

Last updated

On this page