Text has two readers now. You are one of them. The other reads every character you cannot see.
Specimens real attacks, built in front of you -- click one
or drop a file
release to read the file
Spectrum every codepoint, in order
The machine sees
CLEAN
Paste something above.
Clean it
Lab make something disappear, so you know what it looks like when it does
Every scheme below is documented in the Unicode standard and already implemented in public research tooling. It is here because reading that the Tags block is invisible convinces nobody, and watching your own sentence vanish into a check mark convinces everybody. Whatever you build here, the analyser above takes straight back apart.
What this looks for
Honest notes
- Nothing leaves this page. There is no backend, no analytics and no network request of any kind after the page loads. Open your network tab and watch it stay empty. Detection runs on your machine because the text you would most want to check is the text you would least want to upload.
- It tries not to cry wolf. A joiner inside an emoji, a ZWNJ in Persian, a byte-order mark at offset zero and Cyrillic prose are all left alone on purpose. The control specimen in the gallery exists so you can watch it stay quiet -- a detector you never see silent is one you cannot trust when it speaks.
- Reading intent is a heuristic. When a decoded payload looks like an instruction rather than a serial number, that is pattern matching and it is labelled as such. It raises a finding's severity; it never invents one.
- It is not a decompiler. Zero-width steganography has no single standard. Known encodings are decoded and the rest is reported as present but undecoded, because a confident wrong answer is worse than an honest gap.