Coinatio Research
Cross Chain8 min read

Token Control Models on Solana, EVM, and Sui

The word ownership hides materially different control systems across chains. Solana token programs store named authorities in mint or extension state. EVM tokens implement permissions in contract code through owners, roles, or proxies. Sui Move commonly represents authority as scarce capability objects. Comparing only whether a project says ownership is renounced can therefore produce false conclusions. This guide provides a verification framework for builders and researchers. It is educational only and not financial advice.

Editorial research by Coinatio, checked against the primary documentation cited below. Educational content only.

Editorial illustration for Token Control Models on Solana, EVM, and Sui
Key takeaways
  • Translate each public claim into a concrete state field, code path, role, or capability.
  • Supply, account restriction, metadata, fees, upgrades, and treasury custody are separate control domains.
  • Null ownership does not neutralize other roles, proxies, program authorities, or capabilities.
  • Verification requires both historical events and current state.

Prerequisites and control inventory

Begin with a list of actions that matter: create supply, destroy supply, freeze accounts, pause transfers, change fees, edit metadata, upgrade logic, move treasury assets, and manage liquidity. For each action, identify the onchain mechanism, current controller, transfer process, and whether removal is technically possible. This action based inventory travels better across chains than labels such as adminless.

Collect exact identifiers: Solana mint and token program, EVM chain and contract address, or Sui package ID and full coin type. Use official documentation and direct RPC reads. Interfaces and explorer labels can assist discovery but should not replace state inspection.

  • Record current controllers and all pending or delayed changes.
  • Distinguish individual keys, multisignatures, governance contracts, and immutable null states.
  • Map offchain dependencies such as metadata hosting and administrative interfaces.
  • Check whether bridges or wrapped versions introduce separate control models.

Solana authorities

For a conventional Solana mint, mint authority controls new issuance and freeze authority controls account freezing. Either may be changed or set to none according to program rules. The Token Extension Program adds extension specific authorities, including controls associated with transfer fees, metadata pointers, hooks, or delegates. Supply can be fixed while significant transfer or fee powers remain.

Verify the mint's owning program, deserialize state for that program, and enumerate base and extension authorities. Inspect the transactions that changed them. A null mint authority is strong evidence that the standard program cannot mint more units, but it says nothing about treasury concentration, metadata accuracy, or unrelated programs.

EVM roles, ownership, and proxies

ERC 20 defines token interactions but not administration. A contract may embed fixed supply, use Ownable, assign AccessControl roles, place logic behind a proxy, or combine these models. Ownership renunciation affects only functions protected by that owner check. A minter role can remain active, and a proxy administrator may still replace implementation logic.

Read verified source, runtime bytecode, role membership, owner state, proxy storage slots, and implementation contracts. Review events for ownership transfers, role grants, and upgrades. OpenZeppelin documentation explains its patterns, but custom code may behave differently. A multisignature improves key distribution only when its signers, threshold, and modules are understood.

Sui capabilities

Sui Move often encodes permission through possession of an object with a capability type. The standard coin TreasuryCap authorizes minting and burning. Other application capabilities can govern metadata or surrounding protocol behavior. Transferring a capability changes its controller, while consuming it can permanently remove that path when the module provides no way to recreate it.

Inspect normalized module code, package dependencies, created objects, object owners, and transaction effects. Confirm whether a capability is address owned, object owned, shared, wrapped inside another object, or destroyed. Package code and mutable objects require separate analysis.

Checklist, verification, and limitations

Produce a control matrix with one row per action and evidence links for current state. Recheck through a second RPC provider and at a stated block, slot, or checkpoint. Publish uncertainty where indexers cannot fully enumerate controllers. Repeat the review after migrations, upgrades, authority transfers, or bridge deployments.

No matrix proves good intent or eliminates operational, legal, economic, bridge, or application risk. Immutable controls can prevent incident response, while retained controls can be abused or compromised. Describe tradeoffs rather than calling either model universally safe, and never present technical immutability as a promise of value.

  • Checklist: supply, freeze, pause, fee, metadata, upgrade, treasury, and liquidity controls are covered.
  • Checklist: controller type, transfer path, delay, and revocation status are documented.
  • Verification: current state and historical change transactions agree.
  • Limitation: offchain signers, legal arrangements, and undisclosed key compromise cannot be proven from state alone.

Sources

  1. Solana Docs: Tokens
  2. OpenZeppelin Contracts: Access Control
  3. OpenZeppelin Contracts: Proxies
  4. Sui Framework: Coin Module

This article explains technical and market-data concepts. It is not financial, legal, tax, or investment advice. Verify current chain state and primary documentation independently.

Continue researching