Cross-Chain Identity
A single entity usually operates on multiple chains. A DAO has a treasury on Ethereum, ops accounts on Arbitrum, grants on Base, a Solana program, and a Bitcoin cold vault. Today, linking these addresses to one identity depends on convention: a Twitter bio, a governance forum post, a page on the website. None of those are cryptographic. Notareum binds an issuer identity to addresses across every chain through signed.nota files that share an issuer DID, producing a verifiable cross-chain identity graph.
The model
Every.nota file references the same issuer DID and is signed by a key listed in that DID document. Consumers resolve the DID, enumerate the authorized keys, and verify each address .nota against the appropriate key for that chain.
DIDs as identity anchors
Notareum uses W3C Decentralized Identifiers (DIDs) as the canonical issuer anchor. The two most common methods are:did:web:acmedao.xyzresolves tohttps://acmedao.xyz/.well-known/did.json.did:pkh:eip155:1:0x...derives directly from an Ethereum address.
publicKeyMultibase, and the chains it is valid for. Example:
.nota carries a signature from the correct key. Revoking a key is a DID document update, which cascades to every .nota that key signed.
Binding chains per issuer
.nota is canonically serialized so signature semantics are unambiguous.
Chain identifier conventions
chainId and chainName are the two identity coordinates. The protocol follows these conventions:
The SDK exposes a
chainIdToName helper and a reverse chainNameToId for consistent binding.
Consumer resolution
A consumer verifying a payment claim like “send to Acme DAO’s Arbitrum treasury” follows this path:Proving cross-chain control
Claiming an address on another chain is cheap. Proving control requires the signing key for that chain to sign a payload bound to the issuer identity. Notareum provides a standardcontrol proof:
proof.signature.signer matches the address and that the address is bound to the stated DID. This is the .nota analogue of signing a message in MetaMask to prove account control.
Cross-chain revocation
Revocation is key-scoped, not chain-scoped. Three revocation paths:- Revoke a specific
.notaviaNotaRegistry.revokeResource. Only that chain/address pair is affected. - Revoke a key in the DID document. Every
.notasigned by that key is implicitly untrusted going forward. Consumers checking DID state reject new verifications but can still honor receipts issued before revocation (if timestamps are within the key’s validity window). - Revoke the issuer entirely. The issuer DID is marked retired; all resources under that DID are untrusted.
Integration patterns
- Wallets render “Acme DAO (7 chains verified)” with a single issuer query, then route sends to the right chain/address pair.
- Block explorers cluster addresses by issuer DID across chains.
- Cross-chain bridges require sender and recipient to be addresses bound to the same issuer DID as an anti-phishing guard.
- Compliance tooling builds entity-level reports spanning every chain without manual mapping.

