Соединители, селекторы и заполнители
TAG CHARACTERS (U+E0000–U+E007F)
Теневая копия ASCII. U+E0020–U+E007E повторяют печатные символы ASCII один в один и не рисуют ничего. U+E007F CANCEL TAG завершает последовательность.
- Диапазон
U+E0000–U+E007F- Категория
- Соединители, селекторы и заполнители
- Удаляется по умолчанию
- Если одиночный
- Управляющий параметр
- Агрессивно
-a - Может нести нагрузку
- Да
Откуда он берётся
Единственное узаконенное сегодня применение — внутри флагов регионов: 🏴, за которым идут теги для «gbsct» и завершающий тег, — это флаг Шотландии. Всё остальное делается намеренно: именно на этом блоке построен ASCII smuggling, «контрабанда команд», когда к промпту или документу дописывают невидимую инструкцию.
Почему это важно
Это самое опасное семейство в списке. Теговая последовательность невидима для человека, копируется и вставляется целиком и читается многими языковыми моделями как обычный текст — вот так безобидный на вид абзац и несёт инструкцию, которой читатель никогда не видел. Если вы проверяете недоверенный текст перед тем, как отдать его модели, начинать нужно с этого блока.
До и после
Шесть теговых символов складываются в слово, которого не увидит ни один читатель. Ghostchars показывает каждый из них с его позицией и его двойником из ASCII.
Символ показан подписанной плашкой, чтобы было видно, где он стоит. В вашем тексте он не рисует ровно ничего.
Когда он уместен
Внутри полной последовательности флага региона: базовый чёрный флаг, один или несколько теговых символов и завершающий тег. Ghostchars разбирает последовательность целиком и оставляет ровно такие; теговый символ вне корректного флага считается одиночным и удаляется.
Как его удалить
Одиночные теговые символы удаляет базовый проход. Корректные последовательности флагов остаются и попадают в отчёт; параметр «Агрессивно» (`-a`) удаляет и их, оставляя вам голый чёрный флаг.
Это водяной знак ИИ?
Используется для сокрытия данных — но не водяной знак
Нет — и здесь стоит быть особенно точным. Теговые символы не водяной знак, оставленный моделью; это поверхность атаки, направленной НА модели. Теговая последовательность в тексте, который вы собираетесь вставить в ассистента, — это инъекция в промпт, пока не доказано обратное.
Известный носитель намеренно спрятанных данных. Кто-то поместил его туда специально, а это уже другой вопрос, чем то, кто написал слова.
Вопросы
Что такое ASCII smuggling?
Это запись читаемого текста ASCII в теговом блоке: на экране его нет, а в строке он есть. Всё, что читает сырой текст, — включая многие языковые модели, — способно на него отреагировать.
Не сломается ли флаг Шотландии или Уэльса?
Нет. Эти флаги И ЕСТЬ теговые последовательности: чёрный флаг, код региона теговыми символами и завершающий тег. Ghostchars проверяет последовательность целиком и оставляет её; удаляет её только параметр «Агрессивно».
Нужно ли чистить текст перед тем, как вставить его в ИИ-ассистента?
Если текст пришёл оттуда, где вы ничего не контролируете, — да. Невидимые инструкции в теговом блоке это штатный способ доставки непрямой инъекции в промпт.
Проверьте свой текст
Вставьте что угодно в инструмент очистки, чтобы увидеть каждый скрытый символ: позицию, кодовую позицию и то, что произойдёт с каждым из них. Ничего никуда не отправляется.