Стеганография для всех

14.07.2017

Я часто пропадаю в бездонных глубинах Гитхаба. Там темно, уютно, и иногда попадаются довольно интересные штуки, про которые просто так никто и нигде не пишет. Сегодня я хочу показать проект Doublespeak, который представляет собой простую и незамысловатую веб-страницу на HTML, CSS и Javascript. Однако интерес представляет сам способ применения Doublespeak. Перед нами средство скрытой передачи данных, иначе — стеганографии. Для того, чтобы спрятать один текст внутри другого, Doublespeak использует четыре невидимых символа из таблицы Юникода, а именно U+200B, U+200C, U+200D и U+FEFF. Это невидимый пробел, невидимый неразрывный пробел и два невидимых компоновщика. По всей видимости, они нужны для более аккуратной вёрстки текста, однако один программист из Санта-Клары решил использовать их для четвертичной кодировки текста. Выглядит это волшебно: добавив к видимому тексту секретное послание, вы можете копировать и вставлять этот текст сколь угодно раз в (почти) любых приложениях, на разных операционных системах. Заподозрить неладное можно только посмотрев на размер файла, в котором сохранён этот «особый» текст: закодированное послание занимает в 4 раза больше байтов, чем тот же текст в обычном виде. Поэтому размер итогового текста в байтах можно рассчитать по формуле x+4y, где x — размер видимого текста, а y — размер невидимого текста. Вряд ли кто-то станет заморачиваться этим, особенно если речь идёт об использовании мессенджеров, поэтому данный вид стеганографии можно считать рабочим.

Реклама