Back

Metadata and identity

P08-L05 · P08 · P08-M02

Distinguish editable metadata from corroborated asset identity

ILLUSTRATIVE · needs_review

Prerequisites: P08-L04

Learning objectives

  • Separate on-chain metadata from remote payload and cache.
  • Compare display changes without changing the asset tuple.
  • Classify declarations and mutability claims with explicit limits.

EN source master · P08-L05 · 45 minutes estimated · needs_review

Why this matters

A token can change its name or image without changing its exact mint. Two different mints can show identical branding. An immutable on-chain URI can still point to externally changeable content. These distinctions matter when an analyst reports that an asset “is official.”

This lesson teaches a metadata comparison with explicit provenance. It retains NFT metadata as a useful foundational example while focusing on token identity; no NFT launch or full NFT valuation workflow is required.

Explanation

Separate the object from its description

Identity is the network/address/object tuple verified in P08-L01. Metadata describes the object. A familiar logo or name can help a user recognize a candidate, but neither uniquely identifies it. Preserve the tuple when display fields change.

The ERC-20 interface makes name and symbol optional [S08-ERC20]. An absent display field does not erase an object's existence. Conversely, successful display fields do not authenticate brand affiliation. Read metadata as a set of claims with a mechanism, not a certificate.

For a Solana asset using Metaplex Token Metadata, inspect the metadata account's linkage, update authority and mutable flag. Under this specific program, a mutable asset's update authority can change specified metadata fields, and some delegated authorities have additional scope [S08-METADATA]. Do not universalize those rules to every metadata implementation.

Follow the full description chain

A display can originate from an on-chain field, an on-chain URI, an off-chain JSON response, an image URL in that response and a platform cache. Each layer has a distinct source and possible update path. An analyst should record where the displayed name actually came from.

If the URI is stable but its HTTP response changes, the content changed without an on-chain URI edit. If an on-chain flag prevents future metadata-account updates, that does not by itself freeze all remote servers or caches. Content-addressed storage requires checking the actual reference and payload rather than trusting a storage-brand label.

Record a captured payload or reproducible digest with its acquisition context when conducting a real review. Do not invent a digest from a screenshot. The fixture supplies literal short payload fields so the exercise can compare contents without live network requests.

Distinguish mutability from authenticity

A mutable flag describes a control, not whether the data are truthful. False metadata can be immutable; legitimate metadata can need updates. A revoked update path cannot retrospectively authenticate an issuer relationship.

In the inspected Token Metadata implementation, isMutable=false rejects replacement of the descriptive Data object. It does not by itself prove that every field of the Metadata account—or the update authority—is frozen; those operations have separate authorization and invariants. Verify the instruction and deployed program version before asserting immutability for a specific field or authority. [S08-METADATA-CODE] Scope that statement to the reviewed mechanism and do not claim a universal freeze of all presentation. NFT-oriented fields such as verified creators or collections have their own semantics; a check mark is not a blanket guarantee of token economics or identity.

A domain in metadata is self-declared by whoever supplied that metadata. A website listing the same token is another declaration. Depending on control and provenance, these may be two directions of one self-assertion rather than independent corroboration. Preserve the distinction between declared links and independently verified association.

Corroborate carefully

Start from an authenticated issuer communication and compare the exact network/address. State how the communication's provenance was established. Search-result ranking, follower count and copied branding do not establish issuer control.

If issuer provenance is not supplied, classify the relationship as declared and unverified. If a reliably authenticated publication names a different mint, you can report a mismatch with that declaration. Do not leap from a mismatch to a legal fraud accusation; compromised communications or stale releases are alternative explanations requiring investigation.

Archive the relevant statement and its publication/capture context. A present-day webpage cannot prove what it displayed during a prior launch unless an appropriate historical record exists. Separate current retrieval time from the claimed date of a publication.

Handle competing displays

When two interfaces display different names for the same object, identify on-chain state, payload acquisition context and cache policy. Do not “resolve” the mismatch by silently selecting the more attractive branding. Your report may preserve the exact object while leaving the presentation discrepancy unresolved.

When two objects display identical names, preserve both identifiers and compare independently. One may be a wrapped representation or a deliberate copy; identical presentation alone cannot classify the relationship. A bridge claim needs its own mechanism and custody evidence outside this metadata exercise.

Display updates should not overwrite previously captured evidence. A report needs the version it relied on, so a later reviewer can reproduce the decision. The current lesson's synthetic S0/S1 labels are exercise contexts, not actual observation timestamps.

Write the narrow result

Useful findings distinguish exact identity, displayed fields, editable controls and issuer correspondence. “Same mint, changed off-chain name at S1” is specific. “The token changed identity” is misleading if the address remains fixed.

Commercial status, Creator Lab use and Academy completion cannot improve a metadata evidence classification. A metadata analysis provides neither a price prediction nor a safety certificate. It can still support a precise identity investigation without any paid tool access.

Key terms

  • Metadata: descriptive fields associated with an object.
  • URI (uniform resource identifier): reference identifying a resource; this fixture uses it to locate an external payload.
  • Payload: content retrieved from that resource.
  • Update authority: permission governing a specified metadata operation.
  • Mutability: whether a mechanism permits changes.
  • Corroboration: evidence supporting a claimed relationship beyond an untested declaration.

Historical example

ILLUSTRATIVE — FIX-P08-05. SIM-SOL-A at fictional S0/S1. URLs ending in .invalid are nonfunctional training labels.

RecordObject/contextSupplied contents
M1MINT-A, metadata META-A, S0name Alpha; URI alpha.example.invalid/data; mutable=true; authority U
M2MINT-A, META-A, S1same on-chain fields as M1
J1URI response captured S0name Alpha; image alpha.example.invalid/logo1
J2same URI response captured S1name Alpha Prime; image alpha.example.invalid/logo2
M3MINT-B, META-B, S0name Alpha; same logo appearance; mutable=false
D1unauthenticated issuer-like pagedeclares SIM-SOL-A / MINT-A
D2metadata's website fieldpoints to that same page; no domain-control evidence

No delegated-update inventory or authenticated issuer publication is supplied. All payloads are synthetic.

What the evidence proves

OBSERVED in fixture: A's exact mint and on-chain fields stay fixed across S0/S1; URI contents differ. B is a different mint with similar branding.

INFERRED: A's changed remote presentation does not require a supplied on-chain URI change. D1/D2 form a declaration loop.

What the evidence does not prove

UNKNOWN: Issuer authenticity, domain control, cache behavior and full delegated-update scope.

INSUFFICIENT EVIDENCE: B's immutable flag does not authenticate its logo or issuer. D1/D2 cannot alone establish independent corroboration.

Common mistakes

Equating name changes with mint changes; calling unchanged URI immutable content; assuming immutable metadata is true; counting reciprocal declarations as independent verification; and treating collection/creator labels as economic endorsements.

Practical exercise

Compare M1/M2 and J1/J2 separately. Explain whether A's mint changed. Evaluate B's claim to be “the official Alpha because immutable.” Classify D1/D2 and list three next evidence requests.

Show worked correction

Worked correction and expected reasoning

The mint remains MINT-A on SIM-SOL-A. M1/M2 show no supplied on-chain edit, while J1/J2 show changed payload contents. The fixture does not identify who changed the remote server or why. Different interface displays could also involve caches, which are not supplied.

B has a different mint and a supplied false mutable flag. Neither fact authenticates issuer affiliation. D1/D2 remain reciprocal declarations with insufficient independent evidence.

Request an authenticated issuer publication naming the exact tuple, provenance/control evidence for the linked domain and complete applicable metadata authority/decoder records. For historical display questions request archived payloads with capture context.

Score out of ten: object/payload comparison (four), immutable-truth boundary (two), declaration classification (two), evidence requests (two).

Checklist

  • Preserve the exact object while comparing displays.
  • Trace fields to on-chain data, URI, payload or cache.
  • Record change permissions and mechanism scope.
  • Separate mutability from authenticity.
  • Preserve reciprocal declarations as unverified until corroborated.

Summary

Metadata is a description chain with update mechanisms. Exact identity can remain fixed while displayed content changes.

Summary

Immutable is not authenticated. A stable URI is not automatically stable content. Same branding does not mean same mint or issuer.

Visual specifications

Draw mint→metadata→URI→payload→image chain with S0/S1 columns. Mark on-chain fields equal, payload different. Compare MINT-B separately; use dashed D1/D2 declaration loop, never an official badge.

Illustrative display changes and declared links; issuer association unresolved.

Use deterministic SVG/HTML or charts with text alternatives, dark navy/black and restrained cyan, electric blue and violet. Label every quantity and uncertainty. At 390px stack panels; 768px/desktop and Arabic RTL verification remain future asset work. Keep identifiers LTR and factual axes/edge directions unchanged. Use only the official supplied ZECOIN mark if branding is added. Both records are specifications, not delivered assets.

Tools

Use RADAR for the lesson's bounded educational purpose only if network support, exact identity, fields and provenance are verified. No runtime endpoint or provider capability is asserted by this content. Use the embedded offline fixture without paid access. Missing data stays unknown; no wallet connection, transaction signature, token launch or live trade is required. Academy progress, payments and referrals never change Radar evidence. A Diagnostic Passport preserves observations and limits, not a price prediction or safety certificate.

Sources & claim boundaries

Documentation supports mechanisms, not fictional dataset values. All examples and exercise records are original ILLUSTRATIVE material, frozen in this file. S0/S1 are synthetic context labels; observedAt is null because no live or historical ledger measurement was collected. Re-review documentation and actual deployed behavior before any publication or integration.

Next lesson

P08-L06 after the worked exercise and quiz review.

Visual specifications

P08-L05-V01

SPECIFICATION_ONLY · ILLUSTRATIVE

Which layer changed and which identity claim remains uncorroborated?

Illustrative display changes and declared links; issuer association unresolved.

Draw mint→metadata→URI→payload→image chain with S0/S1 columns. Mark on-chain fields equal, payload different. Compare MINT-B separately; use dashed D1/D2 declaration loop, never an official badge.

MINT-A remains fixed while payload name/image change; different MINT-B shares branding; page and metadata reciprocate unverified links.

390px stacked panels with text equivalent; later verify 768px and desktop

RTL labels and navigation; identifiers isolated LTR; preserve numeric axes, event order and factual edge direction.

FIX-P08-05

P08-L05-V02

SPECIFICATION_ONLY · ILLUSTRATIVE

Which claim is supported, conditional, unknown or unsupported?

Illustrative evidence boundaries; no safety or investment verdict.

Four labelled OBSERVED/INFERRED/UNKNOWN/INSUFFICIENT EVIDENCE rows tied to this lesson's claims and record IDs. Observations are supplied fictional records, not live measurements.

Four evidence-state rows with record locators and next verification steps.

390px stacked panels with text equivalent; later verify 768px and desktop

RTL labels and navigation; identifiers isolated LTR; preserve numeric axes, event order and factual edge direction.

FIX-P08-05

Sources & claim boundaries

S08-METADATA · official_documentation_or_standard

Metaplex Token Metadata Updating Assets

Supported claim
Update authority, mutable flag and editable metadata fields within this specific program.
Verification boundary
Primary page inspected for editorial mechanism support; no deployed asset or ledger fixture independently measured.
Checked at
2026-09-30
Open primary source
https://www.metaplex.com/docs/smart-contracts/token-metadata/update

S08-ERC20 · official_documentation_or_standard

ERC-20 Token Standard

Supported claim
Standard interface; optional name, symbol and decimals; not privilege or identity certification.
Verification boundary
Primary page inspected for editorial mechanism support; no deployed asset or ledger fixture independently measured.
Checked at
2026-09-30
Open primary source
https://eips.ethereum.org/EIPS/eip-20

S08-METADATA-CODE · official_implementation

Metaplex Token Metadata implementation (pinned)

Supported claim
The `is_mutable` check rejects replacement `Data`; `new_update_authority` is handled separately under its authorization and invariants.
Verification boundary
Official source code inspected at pinned commit; no deployed asset or ledger fixture independently measured.
Checked at
2026-10-05
Open primary source
https://github.com/metaplex-foundation/mpl-token-metadata/blob/353d01be4af3018e1daf49d0cd35ba9f731d9c9c/programs/token-metadata/program/src/state/metadata.rs

Dataset provenance

id: FIX-P08-05

dataStatus: ILLUSTRATIVE

observedAt: null

source: Original frozen educational fixture embedded in lesson

timeBasis: Synthetic S0/S1 snapshots, not UTC observations or real blocks

identifiers: Deliberately invalid fictional network, asset and account labels; never use as transaction targets

scope: Fictional metadata/payload versions and unauthenticated reciprocal declarations.

Test your reasoning

P08-L05-Q1 · What changed between M1/M2 and J1/J2?
P08-L05-Q2 · Does B's immutable metadata prove issuer authenticity?
P08-L05-Q3 · How should D1/D2 be described?
P08-L05-Q4 · What is needed to review a changing display reproducibly?
P08-L05-Q5 · What follows from an unchanged URI alone?