Недавно довелось мне практиковаться в создании сложной и многоуровневой загадки, где надо было использовать коды, шифрование, секретные послание и прочую ерунду. Как шифровать в Linux помощью OpenSSL, с помощью TrueCrypt и с помощью GnuPG я уже писал. А вот как сделать свой QR Code я ещё не писал. А ведь это просто. Так же, бьюсь об заклад, что в 90-х вы не раз видели фильмы про хакеров, где супер мощные ребята прятали текстовые сообщения в картинке, в обычном изображении. Так вот, это до абсурда просто. Напоследок, в GNOME есть быстрый и удобный способ пользоваться шифрованием, с помощью утилиты Cryptkeeper. О QR Code’ах, картинках с сообщениями и Cryptkeeper’е под катом.
Как сделать QR Code
О том, что такое QR Code и где эта штуковина используется, вы сможете прочитать более подробно на страницах Wikipedia, я только отмечу, что текстовое сообщение упакованное в QR Code не может превышать 4,296 символов, если это будут только цифры, то можно запихнуть 7,089 символов. Я это к тому, что Войну и Мир в QR Code вам засунуть не удастся, но короткое сообщение пожалуйста. Кстати для телефонов iPhone и Android есть масса приложений, которые могут не напрягаясь читать QR Code.
Для создания QR Code в Linux нужна утилита qrencode:
- sudo apt-get install qrencode
Далее, что-бы создать стандартную картинку с QR Code:
- qrencode -o suko.png 'Super Secret Message for Pr. Obama!'
Задать размер можно опцией -s:
- qrencode -o hello_big.png -s 10 'Super Secret Message for Pr. Obama!'
Картинка с кодом появится в вашей текущей директории, если вы не знаете где вы =) то сделайте pwd.

Как спрятать сообщение в картинке
Методы описанные ниже, работают как часы, но вряд ли, текстовое сообщение в картинке или фотографии, хорошая идея, во первых это старо как мир, вот вторых, после «инъекции» текста в картинку, она «полнее» и «набирает вес», а MD5-сумма тут же меняется.
Давайте возьмём вот эту картинку:

- user@linux:~/Desktop$ md5sum Leda.png
- e8f3fecaa6d11b07e1cc0b51908e11e9 Leda.png
- user@linux:~/Desktop$ ls -la Leda.png
- -rw-r--r-- 1 user user 879328 2011-04-18 20:13 Leda.png
Обратите внимание на MD5-сумму и размер.
А теперь давайте сделаем инъекцию в виде текстового сообщения в эту картинку.
- cat Leda.png -> Leda_Secret.png
где Leda.png — текущая картинка
Leda_Secret.png — имя для картинки с текстом внутри
После выполнения команды переведенной ниже, вы увидите только мерцающий курсор, начинайте набор сообщения, Enter — пропуск строки и Ctrl+D выход, сообщение зашивается автоматически.
Картинка с сообщением внутри:

А вот параметры картинки:
- user@linux:~/Desktop$ md5sum Leda_Secret.png
- 41491b7ec6156f5cd72df110ef6e4e01 Leda_Secret.png
- user@userlinux:~/Desktop$ ls -la Leda_Secret.png
- -rw-r--r-- 1 user user 879402 2011-04-18 20:14 Leda_Secret.png
Сравните MD5-сумму и «вес» картинки, вторая тяжелее первой на 74 байта.
Прочитать текст в картинке можно с помощью tail:
- tail Leda_Secret.png
В самом конце вы увидите ваш текст
Если ваше сообщение хранится в текстовом файле, то можно «слить» текст с файла в картинку «на прямую»:
- cat Leda.png message.txt > secret.png
Помимо уже изученного нами кустарного метода, существует метод нормальный и куда более серьезный, но об этом отдельной статье.
Зашифрованный каталог с помощью Cryptkeeper
Это простой и не навязчивый метод зашифровать каталог в Ubuntu Linux.
Ставим Cryptkeeper в систему:
- sudo apt-get install cryptkeeper
Добавляем вашего юзера в группу fuse:
- sudo addgroup userid fuse
Делаем Log Out -> Log On в систему. Далее идем в меню Приложения -> Системные утилиты -> Cryptkeeper (Applications -> System Tools -> Cryptkeeper) в трее у вас появится значок. Клацнете по нему левой кнопкой мыши, выберите «Новая зашифрованная папка», в открывшемся окне нажмите создать папку, дайте ей имя и нажмите «Вперед». Далее введите пароль, После чего папка примонтируется и вы сможете сложить в нее файлы.
Для того, что-бы отмонтировать каталог, кликните левой кнопкой мыши по значку Cryptkeeper в трее и снимите галочку с каталогка

Способ очень простой, насколько надежный не знаю, но парнуху спрятать от родителей таким образом можно.










О, порно, о :)
Да, безусловно, так низко, некультурно и аморально =)
Только вот не думаю, что картину Леонардо Да Винчи, «Леда и лебедь» написанную в 1508 году, можно занести в категории порно =)))