Skip to content
Tech News
← Back to articles

SoulsOnly.tff – A font for humans not AI and keyboard firmware to type in it

read original more articles

Souls Only: a human-readable, AI-unfriendly cipher font you can type

A font whose rendered glyphs spell readable text while the stored character stream (what copy-paste, HTML/PDF extraction, and scrapers see) is noise. The font is the decoder, applied only at the rendering layer, and the cipher is driven by an ordinary keyboard: you type normal keys, the keyboard emits the noise stream, and only this font renders it back into words.

This is a craft and statement project, not a claim of unbreakable security. See Limitations in font-cipher-brief.md .

How it works

A font has two streams people usually conflate: the character stream (stored bytes) and the glyph stream (what is drawn after cmap and GSUB run). This project decouples them:

Every printable character is encoded as two halves, and each half is chosen at random from a pool of 2-character ASCII codes (homophones). So one character is typed as four ASCII symbols, and the same character produces different bytes each time.

The font maps each ASCII code carrier to a blank glyph in cmap , then a GSUB liga rule collapses each 2-character code into one opaque half-glyph.

, then a GSUB rule collapses each 2-character code into one opaque half-glyph. The two half-glyphs tile into the real character. Shared classes reuse one canonical left half so the left image is ambiguous: the lowercase bowl a c d e g o q , the lowercase stem m n r u , and the uppercase bowl O C G Q each share a single left half-glyph. Half-glyph names are opaque, so a font-table dump reveals only meaningless half-shapes, never a half-to-character mapping.

Because four ASCII characters collapse into one rendered character, the stored byte count and the rendered glyph count deliberately diverge.

Plain letters typed in the font do NOT decode: the Latin letter codepoints are deliberately mapped to meaningless half-glyph fragments, so pasting ordinary text and applying the font yields noise. Readable words only ever come from the cipher stream, which reinforces that the font is the key, not a normal typeface.

... continue reading