Decentralized Token Registry

One Symbol. One Token.

TNS Protocol is a decentralized registry for unique token symbols on Solana. Like DNS for token tickers. Verify any token with a single on-chain lookup.

The Problem

On Solana, anyone can create a token with any symbol. Search "BONK" on any DEX and you'll find hundreds of results. Search "AAPL" and you'll find dozens of fake RWA tokens. Which one is real? Current solutions rely on centralized verification teams and proprietary algorithms. This doesn't scale and creates trust dependencies.

Duplicate Symbols

20,000+ tokens created daily. Hundreds call themselves "BONK". Dozens call themselves "AAPL". Which one is real? Right now, there's no way to know on-chain.

Verification at Scale

With millions of tokens, centralized verification off-chain is error prone and mutable. Aggregators need a single on-chain source of truth.

RWA Hindered

Tokenized securities and RWAs can't come on-chain without unique symbols and indisputable verification.

The Solution

Without on-chain truth, verification is centralized and disputable—two orgs can claim different tokens are "verified." A better primitive exists on Solana to enforce symbol uniqueness efficiently. It is called PDAs (Program Derived Addresses). TNS provides a single source of truth. One symbol, one token, verifiable by anyone.

On-Chain Registry

Simple PDA lookup. Verify any token with one RPC or CPI call.

Unique Symbols

Each symbol can only be registered once. Like stock tickers.

Decentralized

ICANN-inspired pricing baked into the contract.

Trustless

No committees, no data science, no trusted third parties.

Available Now

On-Chain Verification

Any program can verify symbols with a simple PDA lookup or CPI call. Trusted programs can reject unregistered tokens on-chain.

Off-chain verification

// Single RPC call - no search required
const [pda] = PublicKey.findProgramAddressSync(
[Buffer.from("token"), Buffer.from(symbol)],
TNS_PROGRAM_ID
);
const account = await connection.getAccountInfo(pda);
const isVerified = account !== null;

On-chain guards

// CPI: Read TNS account
let tns_account = Account::<Token>::try_from(&tns_pda)?;
// Guard: Symbol must be registered to place trade
require!(
tns_account.mint == token_mint.key(),
ErrorCode::UnverifiedSymbol
);
Token 2027 Proposal

A New Standard On-Chain

What if duplicate symbols were impossible? A new token standard could enforce uniqueness at creation—not through flags, but by design.

The Mint Instruction

// In the new token standard's mint instruction:
let tns_result = tns_program::cpi::lookup(symbol);
// Reject if symbol already exists
require!(
tns_result.is_none(),
ErrorCode::SymbolAlreadyExists
);
// Register symbol atomically with mint
tns_program::cpi::register(symbol, new_mint.key())?;

This is a proposal, not a guarantee

Whether this becomes an official standard depends on community adoption. The on-chain verification above works today—this is about what's possible next.

Token / Token-2022

The current standard. Anyone can create any symbol. Duplicates allowed. Great for memes, experiments, and permissionless creation. Requires on-chain lookup to know if it's the verified token.

No uniqueness guarantee

Token-2027

A new standard where mint CPIs into TNS—failing if the symbol exists, auto-registering if it doesn't. If it's this type, it's unique by definition.

Guaranteed unique

Two standards, two purposes. Memes stay permissionless. Utility tokens get the uniqueness guarantee that serious projects need.

The Future

Soon, every launchpad will be able to offer symbol registration at token creation. Just like choosing a domain name or stock ticker, part of building a project will be finding a symbol that's truly yours. The TNS contract is written such that up to 10% of the registration fee can be shared as a platform fee with partners building on the TNS.

launchpad.example

Create Token

Launch your token on Solana

Super Dog Coin
WOOF
Available

Checked via TNS — single PDA lookup

Register unique symbol on TNS?

Claim "WOOF" so no other token can use it. $10/year.

What if the symbol is taken?

BONK
Taken
Launch Token

Concept: TNS integrated into a launchpad's token creation flow. One PDA call to check. One instruction to register.

Memecoins

No registration required. Create freely, trade at your own risk. Like memes themselves, anyone can remix and repost.

Utility Tokens

Registered symbols for legitimate projects that need unique identity.

RWAs

A clear mechanism for shareholders to trust a single source of truth on-chain.

DNS ensures no one else can take traffic to your .com. TNS ensures no other token can claim your symbol.

Built for the Solana Ecosystem

Just as SNS (Solana Name Service) maps .sol domains to wallet addresses, TNS (Token Name Service) maps token symbols to verified mints. Two complementary naming systems for the Solana ecosystem.

SNSSolana Name Service
Wallet identity

Maps human-readable .sol domains to wallet addresses.alice.sol → 7xK9...3nF

TNSToken Name Service
Token identity

Maps unique token symbols to verified mint addresses.$BONK → DezX...8z7P

What About Existing Tokens?

Existing verified tokens can claim their symbols during the genesis phase. TNS launches with training wheels that are progressively removed. See the Genesis Lists for the full curation methodology and data sources.

Q1 2026

Phase 1: Genesis

Working with the DAO to verify the list of existing symbols and seed them for free for 5 years. Verified tokens can be claimed by their mint authority. Reserved tradfi symbols (S&P 500, Russell 3000) and non-whitelisted tokens require admin approval.

Who can register:
Verified → admin
Reserved → admin
Not listed → admin
Open questions for the DAO:
Should symbols be able to expire at all?
Should the current authority be able to update the mint?
Q2 2026

Phase 2: Open Registration

Non-whitelisted symbols open to anyone. Verified tokens remain protected for mint authorities. Reserved tradfi symbols stay admin-only for legitimate RWA onboarding.

Who can register:
Verified → mint authority
Reserved → admin
Not listed → anyone
Q3-Q4 2026

Phase 3: Full Decentralization

All restrictions removed. Any symbol—including reserved finance tickers—becomes first-come, first-served.

Who can register:
All symbols → anyone
2027+

Phase 4: Immutability

Upgrade authority permanently revoked. No admin, no governance, no changes. Pure infrastructure, like TCP/IP.

Not on the whitelist?

Open a pull request to add your token to the verified whitelist.

Request Whitelist Addition

Simple Pricing

ICANN-inspired pricing schedule. Hardcoded in the program.

1 Year
Standard registration
~$10

Matching .com wholesale pricing

5 Years
14% discount
~$43

Save $7

Best Value
10 Years
25% discount
~$75

Save $25 with max years

Ready to Register?

Secure your token's verified symbol before someone else does.

Register Now