Zero-width and invisible-ink methods
These methods convert the secret into bits and map each bit to a choice between code points that render nothing, such as U+200B and U+200C, with a terminator at the end. The invisible sequence is stitched into a visible carrier message, so the text looks unchanged. Decoding ignores every visible character, re-reads the invisible ones as bits, and rebuilds the message. Encoder and decoder must share the same mapping.