Frühere Abwehren gegen KI-Screen-Reading arbeiteten auf der Pixelschicht — zufälliges Rauschen, Frequenzbereichsstörung, Sub-Pixel-Jitter, Micro-Blur, chromatische Verschiebungen. Diese sind weiterhin effektiv gegen klassische OCR-Engines und bleiben Teil der geschichteten Abwehr. Aber moderne Vision-Language-Models — GPT-4V, Claude Vision, Gemini und ihre Nachfolger — haben Tokenizer-bewusste Patch-Encoder, die Wörter zunehmend aus partiellen visuellen Hinweisen rekonstruieren. Die Pixel können verrauscht sein und das Modell erholt dennoch den zugrunde liegenden Text.
Die nächste Angriffsfläche liegt eine Schicht höher: das DOM. Innerhalb des Headless-Browsers, der die geschützte Seite rendert, besitzen wir die tatsächlichen Zeichendaten, die auf den Bildschirm gemalt werden. Wir können entscheiden, dass der Buchstabe an Position 47 des dritten Absatzes nicht mehr das Original ist; es ist ein visuell ähnliches, aber anderes Zeichen desselben Alphabets. Die OCR oder das VLM, das einen Screenshot dieser Seite betrachtet, sieht das substituierte Zeichen und meldet es als Wahrheit. Das Modell weiß nicht, dass es substituiert wurde; es hat nichts, womit es vergleichen könnte.
Das Schwierige ist, dies zu tun, ohne das Lesen für den menschlichen Benutzer zu unterbrechen. Der Enthüllungsmechanismus — ein kleiner Bereich um den Cursor, der substituierten Text zurück zum Original kippt — ist die Antwort. Menschen lesen durch Fixierung: Das Auge fixiert eine Phrase, die Mustererkennung des Gehirns ergänzt den Rest aus dem peripheren Sehfeld plus Kontext. Die Cursor-Enthüllung richtet sich darauf aus, wo der Benutzer tatsächlich schaut; der Rest der Seite kann substituiert bleiben, weil der Benutzer ihn ohnehin nicht Buchstabe für Buchstabe liest. Ein KI-Modell, das denselben Screenshot betrachtet, hat keinen solchen Cursor, keine solche Enthüllung — es liest alles als substituierten Text.
Ein Skript wird von ZeroLeaks Headless-Browser in jede geschützte Seite injiziert. Beim Start durchläuft das Skript das DOM, wählt visuell ähnliche Substitute für einen Teil der Buchstaben desselben lateinischen Alphabets aus und schreibt sie in die Seite. Die Position des Cursors steuert eine Enthüllungszone — wo auch immer der Benutzer schaut, scheinen die Originale durch. Alles außerhalb der Enthüllung bleibt substituiert.
Ein Zeichen an einer Position auf der Seite wird zu einem anderen Zeichen, das visuell ähnlich aussieht, aber ein anderer Buchstabe ist — a wird zu e, b wird zu p, m wird zu w, n wird zu u. Der Tausch erfolgt zwischen Buchstaben, die in der lateinischen Schrift eine visuelle Familie teilen, nicht zwischen Unicode-Lookalikes. Warum diese Unterscheidung wichtig ist: OCR- und KI-Vision-Pipelines normalisieren Unicode-Homoglyphen (kyrillisches a wird zu lateinischem a) zurück ins kanonische Latein. Substitutionen innerhalb derselben Schrift lassen dem Normalisierer nichts zu tun — das Modell liest das substituierte Zeichen als tatsächlichen Buchstaben.
Wohin immer der Benutzer den Cursor bewegt, kippt ein Bereich darum (standardmäßig ein Kreis, konfigurierbar als horizontales Band) die substituierten Zeichen zurück zu ihren Originalen. Der Benutzer liest, wo er schaut; die natürliche Mustererkennung des Gehirns übernimmt den Rest aus dem peripheren Sehfeld. Außerhalb der Enthüllung bleibt die Seite substituiert — was ein KI-Modell sieht, das den Screenshot betrachtet.
Wenn die Seite lädt, erhält jeder substituierte Buchstabe einen spezifischen Ersatz, der für die Lebensdauer der Seite stabil bleibt. Es gibt kein Flackern, keine zeitliche Rotation, keine Animation im Sichtfeld des Benutzers — die Chiffre sitzt lautlos hinter der Cursor-Enthüllung. Ein früheres Design rotierte die Chiffre alle paar Frames; Benutzermüdigkeitstests zeigten, dass dies messbares Leseunbehagen verursachte, daher bleibt das finale Design statisch.
Text Cipher arbeitet innerhalb des DOM des Headless-Browsers — direkt auf den Zeichendaten, nicht auf den gerenderten Pixeln. Pixelschicht-Abwehren gegen KI-Vision-Modelle arbeiten darunter weiter; Text Cipher fügt eine orthogonale Angriffsfläche hinzu, mit der Pixelwiederherstellungstechniken nicht helfen können. Ein Angreifer, der die Pixelschicht durchbricht, muss den substituierten Text dennoch korrekt lesen. Ein Angreifer, der die originalen Zeichen irgendwie wiederhergestellt hat, muss immer noch die Pixelschicht überwinden.
Jedes nachstehende Verhalten ist Teil des Produktionsdesigns nach der empirischen Ermüdungsrevision; die Live-Implementierung entspricht genau diesem. Die Konfiguration erfolgt pro geschütztem Service über die Betreiberkonsole.
Substitutionen bleiben innerhalb des lateinischen Alphabets. Die Substitutionstabelle ist nach visueller Familie kuratiert: runde Bögen (a, e, o, c), gespiegelte Bögen (b, p, d, q), schmale Vertikalen (i, l, j, 1), Bögen (m, n, u, h, w), Unterlängen (g, y, j, q). Jeder Buchstabe in der Tabelle hat 2-4 visuelle Nachbarn; die Substitution wählt einen davon. Breitenübereinstimmung wird bevorzugt, damit kein Layout-Reflow entsteht.
Die Standardform ist ein Kreis mit konfigurierbarem Radius (Standard 200 px). Eine alternative Bandform deckt einen horizontalen Streifen auf der Höhe des Cursors ab — nützlich für langseitige Inhalte, bei denen die Augenbewegung überwiegend horizontal ist. Die Form wird mit anderen ZeroLeak-cursorbasierten Effekten geteilt, sodass Operatoren einmal konfigurieren.
Wenn das Skript erstmals einen Textknoten sieht, speichert es den Originalwert in einer Pro-Knoten-Map und schreibt den substituierten Wert ins DOM. Nachfolgende Updates verwenden dieselbe Substitution — es gibt keine Frame-weise Rotation. Der Benutzer nimmt eine stille Seite wahr; die Chiffre ist hinter der Cursor-Enthüllung unsichtbar.
Das Substitutionsskript wird von der ZeroLeak-Engine in jedes im Headless-Chromium navigierte Dokument injiziert. Die geschützte Web-Anwendung wird nicht modifiziert; die Chiffre läuft als seitenseitiger Helfer zwischen dem gerenderten Dokument und der Anzeigeschicht des Benutzers. Es ist keine Koordination mit dem Code der geschützten Anwendung erforderlich.
Text, den der Benutzer in Eingaben, Textbereiche oder contentEditable-Regionen tippt, ist von der Substitution ausgeschlossen. Die geschützte Anwendung sieht saubere Eingaben, so wie der Benutzer sie geschrieben hat. Suchfelder, Nachrichtenkomposition, Formulareinreichung — alles nicht betroffen.
Ein IntersectionObserver verfolgt, welche Textknoten tatsächlich sichtbar sind. Nicht im Bildschirm sichtbarer Text wird nicht substituiert (der Benutzer kann ihn sowieso nicht sehen). Wenn der Benutzer einen verborgenen Abschnitt in den Sichtbereich scrollt, wird die Substitution gerade rechtzeitig angewendet. Dies hält die laufenden Kosten proportional zu dem, was auf dem Bildschirm zu sehen ist, nicht zur Gesamtseitengröße.
Same-Script-visuelle Substitution ist das Herzstück der Technik. Die nachstehende Tabelle ist eine Stichprobe des tatsächlichen Produktions-Mappings; die vollständige Tabelle deckt alle Kleinbuchstaben, Großbuchstaben und ausgewählte Ziffern ab.
Diese vier Zeichen teilen alle die geschlossene Bogenform; eines durch ein anderes zu substituieren bewahrt die Silhouette auf Leseabstand. Ein Wort wie 'data' könnte in der substituierten Form zu 'doto' werden — ein Mensch, der es durch die Cursor-Enthüllung flüchtig betrachtet, liest sofort 'data', eine OCR oder ein KI-Modell, das die substituierte Form liest, gibt 'doto' zurück.
Diese vier sind visuelle Spiegel voneinander; eines durch ein anderes zu substituieren bewahrt das Muster aus vertikalem Stamm und Bogen. Das Wort 'database' könnte in Chiffreform zu 'patabose' werden — visuell nah genug, dass die Mustererkennung des Gehirns das Original wiederherstellt, semantisch unverwandt genug, dass ein KI-Modell, das es liest, das falsche Wort zurückgibt.
Diese fünf teilen das Bogen-/Inverted-Bogen-/Wiederholter-Bogen-Muster; Substitution innerhalb dieser Familie bewahrt den Gesamtrhythmus des Textes. 'human' könnte zu 'wuwon' werden — auf einen Blick unter dem Cursor lesbar, für eine KI, die den substituierten Text liest, unerkennbar.
Frühere Vorschläge verwendeten Unicode-Confusables (kyrillisches а für lateinisches a, griechisches ο für lateinisches o). Diese wurden abgelehnt, weil OCR-Pipelines und KI-Vision-Modelle diese zurück ins kanonische Latein normalisieren — Tesseract mit einem russischen Sprachpaket auf gemischtem Latein-Kyrillisch-Text gibt saubere lateinische Ausgabe zurück, weil der Sprachmodell-Zweite-Pass kyrillische Homoglyphen auf ihre lateinischen Entsprechungen projiziert. Substitutionen innerhalb derselben Schrift lassen nichts zu normalisieren.
Text, der innerhalb von HTML5-Canvas oder SVG gerendert wird, ist nicht Teil des DOM-Textknoten-Sets; die Chiffre berührt ihn nicht. Ebenso bleibt Text, den der Benutzer in Eingaben und Textbereiche tippt, sauber. Diese Abdeckungslücken sind bewusst: Canvas- und SVG-Inhalte werden parallel von den Pixelschicht-Abwehren behandelt, und Formulareingaben müssen sauber bleiben, damit die geschützte Anwendung funktioniert.
Benutzer mit persönlichen KI-Assistenten auf ihrem Telefon oder neben ihrer Workstation — jeder kann einen Screenshot in GPT-4V oder Claude Vision einfügen und ihn bitten, zusammenzufassen. Mit Text Cipher wird die KI-Zusammenfassung auf dem substituierten Text aufgebaut — sie gibt plausibel aussehende Ausgabe zurück, die bei näherer Betrachtung von dem abweicht, was auf dem Originalbildschirm stand.
Dokumente, die auf dem Bildschirm gelesen, aber nicht über ein KI-Tool exfiltriert werden sollen. Ein Screenshot, der für eine KI-Analyse aufgenommen wird, gibt unleserliche Zahlen und veränderte Namen zurück — die KI berichtet zuversichtlich Inhalte, die nicht dem eigentlichen Dokument entsprechen.
Medizinisches Personal mit Nur-Lese-Zugriff auf Patientenakten kann keinen externen KI-Assistenten sinnvoll nutzen, um die Daten zusammenzufassen oder abzufragen — die KI sieht substituierten Text. Klinische Erkenntnisse bleiben in der geschützten Umgebung; der KI-Aufnahmepfad gibt ein anderes Dokument zurück.
Von Analysten eingesehene vertrauliche Inhalte. Jedes von außerhalb der geschützten Umgebung konsultierte KI-Tool liest substituierten Text, nicht das ursprüngliche vertrauliche Material. Die Offenlegungsgrenze hält am KI-Aufnahmepfad genauso wie am Screenshot-Pfad.
Wir laden eine Seite, bewegen den Cursor über den Text, damit Sie normales Lesen sehen, nehmen einen Screenshot und geben ihn an Tesseract, GPT-4V und Claude Vision — und zeigen Ihnen den sehr unterschiedlichen Text, den jedes davon zurückgibt.