An indexed string topic is a digest, not recoverable text.
LET’S PICTURE IT
A fingerprint can confirm a candidate document without containing the document itself.
SEE IT FOR YOURSELF
From an emitted Transfer event to a receipt logStep 1 / 4
A token implementation may update balances and emit its standard Transfer event. State and the emitted record are related but distinct.
A token implementation may update balances and emit its standard Transfer event. State and the emitted record are related but distinct.A non-anonymous Transfer event uses the full thirty-two-byte Keccak-256 signature digest as topic zero, not a four-byte function selector.In the common ERC-20 shape, from and to occupy topics one and two. The raw value is a thirty-two-byte data word. Other standards can index fields differently.An application can decode receipt logs under the correct ABI. A matching signature does not establish that an unknown emitter is an honest token.
Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.
Identify the dynamic indexed value
For an indexed string, the topic holds a Keccak-256 hash of the special indexed-event encoding. It does not contain an offset to a string tail.
Use the correct hashing input
A direct indexed string uses its content bytes for this special encoding. More complex indexed structures have additional rules, so ordinary abi.encode is not a universal replacement.
Understand the information loss
A decoder cannot reconstruct arbitrary original text from a digest. If you already know a candidate string, you can compute its expected topic and compare the bytes.
Emit a readable companion when needed
A contract can include both an indexed digest-bearing field and a non-indexed copy when applications need filtering and readable content. That is a deliberate event design choice.