Skip to content

Sponsor References

A sponsor is any DRS node that hosts reference data for a specific asset on a specific network. When a manifest says "sponsor": "circle.com", senders can query Circle’s DRS to verify the asset is real.

Why Sponsors Exist

USDC is a human-readable label, not a unique identifier. Multiple tokens may share the same ticker. The canonical Circle-issued USDC on Ethereum is a different contract than a bridged variant with the same name. Sponsors solve this by publishing the ground truth.

How It Works

  1. An operator configures their node to accept USDC on Ethereum, citing circle.com as the sponsor:
{
"value_type": "USDC",
"transfer_type": "ethereum",
"reference": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"sponsor": "circle.com"
}
  1. A sender that wants to verify queries the sponsor’s DRS:
Terminal window
curl https://circle.com/.well-known/directory/references/USDC/ethereum
  1. The sponsor responds with reference data:
{
"value_type": "USDC",
"transfer_type": "ethereum",
"reference": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"issuer": "Circle",
"decimals": 6
}
  1. The sender compares the reference in the manifest against the sponsor’s response. If they match, the asset is verified.

Becoming a Sponsor

Any DRS node can be a sponsor. You need:

  1. A domain with DNS configured for DRS (_drs._tcp SRV, _drskey TXT)
  2. Reference data stored in KV for the pairs you sponsor

The reference endpoint is served automatically by @directory/worker.

Store Reference Data

Terminal window
drs update-config --references '[
{
"value_type": "USDC",
"transfer_type": "ethereum",
"reference": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"issuer": "Circle",
"decimals": 6
}
]' --cf-token <token> --account-id <id> --kv-namespace <config-id>

Open Schema

The reference response schema is intentionally open-ended. The only required fields are value_type, transfer_type, and reference. Beyond that, include whatever metadata is useful:

  • issuer — who issued the asset
  • decimals — token decimals
  • Regulatory identifiers
  • Audit reports
  • Any other fields relevant to the transfer type

Multiple Sponsors

Multiple parties may sponsor the same reference. Circle may sponsor USDC on Ethereum. Coinbase may independently sponsor the same contract address. Both are valid. The reference is the ground truth. The sponsor is who vouches for it.

Operators choose which sponsor to cite in their manifest. Senders choose whether to verify.

No Central Registry

This design eliminates the need for a central token registry. The receiving node’s manifest tells the sender everything: the value type, the transfer type, the reference, and who sponsors it. Verification is optional and peer-to-peer.