Skip to content
Louis Wright edited this page Oct 14, 2026 · 2 revisions

passglyph

Hieroglyphs instead of password dots: spot a mistyped "confirm password" where it happens, without showing the password.

passglyph by Louis Wright replaces the masking dots in a password field and its confirm field with Egyptian hieroglyphs drawn on canvas. Same password, same row of glyphs. A typo changes the glyphs from the first wrong character on. Glyph i is a keyed HMAC of the prefix (no per-character mapping) under a per-instance non-extractable key, with 4–6 bits per glyph. The input stays type="password", and if anything is unsupported passglyph falls back to dots. The v1 single-glyph badge mode is still available.

Live demo · README · SECURITY-DESIGN.md

Pages

At a glance

Size (min+gzip) core 3.2 KB · hieroglyph sprite 3.8 KB (separate file) · badge alphabet 1.3 KB (separate file) · zero dependencies
Formats ESM, CJS, IIFE (window.passglyph), TypeScript types
Entry points passglyph, passglyph/hieroglyphs, passglyph/glyph, passglyph/element, passglyph/react, passglyph/vue
Modes inline (default, hieroglyphs in the field) · badge (v1 glyph beside the field)
Requires WebCrypto (secure context), canvas + Path2D. Otherwise native dots

Clone this wiki locally