A word wearing another word's face

unicode.homoglyph

A Latin word with one or two letters replaced by non-Latin lookalikes, so the reader sees the right word and every machine downstream reads a different string.

How the text is hidden

Cyrillic and Greek contain letters that every font draws identically to a specific Latin letter — Cyrillic U+0410 against Latin A, U+043E against o, and so on. Substituting one of them into an otherwise-Latin word leaves the page looking correct and the stored string different. Nothing is concealed: the reader sees every character and is not deceived. What diverges is identity, which defeats every literal match — a blocklist for a party name, a regex, an exact-substring redaction check, a retriever, a search index.

Why a model still reads it

There is nothing to strip and nothing invisible; the substituted letter is what the document says. The model tokenises a word the reader never wrote, and any exact match against the real word misses.

What we do about it

detection: '…The hits findHomoglyphs produces — the unnarrowed set, before the four reviewer filters — are folded into text.matchable and into instruction matching, so an ordinary Cyrillic disguise cannot evade escalation.' And add to residual: 'µ is excluded from the confusables table by name, so µsername is neither reported nor folded — a knowing hole taken rather than flag µm and µg in every technical document — and a word substituted above the one-third line is not folded either.'

How often it fires

Not measured. We publish a rate only where one has been measured against a named corpus of the right format, and no figure exists for this technique yet. Absence means unknown — never low.

next

Check your own file

Three commands: a key, credit, a verdict.

Start with the API