Print This Post Стеганография etc

Четверг, 15. Сентябрь 2011
Раздел: C#, C/C++, Софт, Это интересно, автор:

Было нечего делать, решил написать какую-нибудь необычную софтину. В голову пришла идея создания программки, которая могла бы прятать внутри картинок какие-либо данные. Такой подход сокрытия данных называется Стеганографией. Выбрал я самый простой формат картинок - BMP. В изображениях формата BMP (24- или 32-битных, несжатых) цветовые данные хранятся в виде отдельных байтов, поэтому можно модифицировать их младшие биты и без видимых изменений заныкать в картинку некоторый объем информации.

Я набросал консольную программу на C++ и GUI-интерфейс к ней на C#. Вот краткие возможности этого софта:
[+] Возможность прятать в 24- и 32-битные картинки BMP-формата без сжатия данные.
[+] Возможность использовать 1/2/4 младших бита картинки для сохранения информации.
[+] Можно также просто зашифровать файл и сохранить его в виде 24-битной картинки (это уже нельзя назвать стеганографией).
[+] Программа при упаковке файла сохраняет не только его данные, но и имя, а также CRC32, это все используется при распаковке.

Файлы распаковываются в директорию с программой.

Скриншоты:

На сладкое - пара шифрованных картинок :)
В первой - пароль ко второй:
Во второй - фото Kaimi с его подругой:

Скачать программу: ZIP
Исходники самой консольной утилиты, шифрующей и расшифровывающей данные: shitty_encoder.zip

Также рекомендую почитать

 Обсудить на форуме


Получать обновления на почту:     

Метки: , , , , , .

Комментариев: 32 к “Стеганография etc”

  1. Что-то похожее и ожидал увидеть на фото Каими с подружкой :)

    [Ответить]


  2. vista1x :

    Может я что-то неправильно делаю, но у меня постоянно ошибка "Some error ocurred revealing data". Упаковывается только с включенным "Dont use base imege, non-tenograpfic". И упакованный файл распокавать не получается.

    [Ответить]

    dx:

    Возможно, битмап слишком маленький, а файл слишком большой. Лог сюда, или скриншот программы с логом.

    [Ответить]

    NixaN48:

    Я въехал, нужно чтобы "You can hide up" значение было больше чем "size of selected file" Как тут - http://clip2net.com/clip/m94825/1319110165-clip-2kb.png?nocache=1

    Автор! Респектище! Идея шикарная. А можно запилить так, чтоб если файл не влезет - об этом было бы написано каким-нить красным шрифтом? Не для себя прошу) Только кнопку неактивной не надо делать. Туда хоть кусок файла влезает. Не знаю нафига он нужен, но мне нравится этот эффект.

    [Ответить]


  3. 3mph :

    У Каими пристрастие к бдмс)

    [Ответить]

    cb^3:

    он злобный заяц :D

    [Ответить]


  4. cb^3 :

    только недавно думал об этом кстати))

    норм))
    dx +

    [Ответить]

  5. Полезно, но вот пароль не смог разгадать )

    [Ответить]

    3mph:

    Там же вроде бы все просто.
    Если вы вывернули картинку наизнанку, то вам квесты Каими и DX'a противопоказаны.

    [Ответить]

  6. а я уж думал там действительно фото каими с его подругой)

    [Ответить]

    3mph:

    Ну за чем портить людям интригу :(

    [Ответить]

    cb^3:

    эт точно...

    [Ответить]

    flisk:

    Там есть 2 фото, достать второе можно, если подумать нестандартно.

  7. [...] - 5 gift-кодов для майнкрафта. А обнаружить коды поможет утилита из предыдущей статьи и немного [...]


  8. required :

    интересно было бы увидеть исходники :)

    [Ответить]

    cb^3:

    cb^3 of rofling :DD

    [Ответить]


  9. vlaha :

    !Kaimi&Girlfriend.jpg - ужс
    А такую интригу уж завели :)))

    [Ответить]

    dx:

    Так там правда Kaimi :))

    [Ответить]


  10. LAdog :

    кто из них Kaimi? тот,кого режут?

    [Ответить]


  11. SHiNiGaMi :

    Kaimi животное :D

    [Ответить]


  12. odr@dek :

    Заточить под браузер, и прям как CameraShy.
    Помню в начале 2000_х этими игрулькоми баловались =\
    _xakep.ru/post/15839/default.asp

    [Ответить]


  13. Sean :

    Мне очень нравится читать подобные статьи.
    Огромная волна умиления связана с тем головокружением от успехов, что не позволяет автору критически оценить свое произведение.
    Написать LSB алгоритм здорово, но использовать его в программе с подобным интерфейсом что раздавать воробьев, непойманных в клетку.
    Алгоритм = 10-25% работы и успеха, остальное = интерфейс.
    Изо всех программ на эту тему самая симпатичная, ИМХО, Stegnote, впрочем познакомиться с ней и ей подобным трудно, Google доступен не всем.

    [Ответить]

    dx:

    Если ты думаешь, что я планировал сделать идеальную многофункциональную программу с обалденным интерфейсом, свистелками-перделками, то ты ошибся.

    [Ответить]

  14. [...] консольной утилиты, входящей в комплект программ этого поста про стеганографию. Код не ахти и писался не для всеобщих глаз и не с целью [...]


  15. alexp :

    Скажите,а рар архив если запилить в картинку,норм будет?или не выйдет

    [Ответить]

    Kaimi:

    Без разницы какие данные засовывать внутрь, главное чтобы в пределах допустимого размера для выбранного изображения.

    [Ответить]

    alexp:

    Ясно. Я вот попробывал другими аналогичными прогами пооткрывать картинку,запакованную в вашей, не вышло. хм

    [Ответить]


  16. Sean :

    "Если ты думаешь, что я планировал сделать идеальную многофункциональную программу с обалденным интерфейсом, свистелками-перделками, то ты ошибся"
    Так что, слабо? Не умеешь делать перделки? только умные вещи, а свистелки не можешь?
    Нет, здесь я не ошибся. Если ты писал её для себя, так и радуйся сам. Если хочешь похвастаться творчеством перед другими(а не для этого ли ты вообще здесь?), то покажи достойный восхищения код или красивый результат в виде готовой программы, написанные хоть на Бейсике. Пользоваться картоном, когда знаешь про туалетную бумагу, совсем не хочется,-это про интерфейс. Не надо розовой с запахом лаванды, достаточно чего-то помягче. Что касается идеальности, что таких не бывает, в учебниках про это уже написано. Что касается многофункциональности, то хватит решения одной задачи, исполненной ясно и просто. Ждемс.

    [Ответить]

    Kaimi:

    Мы свистелки делать не умеем, да и мягкую туалетную бумагу тоже. Так что извини, братюнь, ничего не изменится в контексте данного сайта.

    [Ответить]

    dx:

    А ты полистай блог, полистай, вот как разберешься со всем, что у нас тут лежит, так и пиши. Со всеми исходниками, методиками, описаниями и т.д. А то увидел кусочек шарпа и сразу негодование, да? Исходники я выложил, кстати.
    А свистелки делать умею, но ты мне не указ, поэтому обойдешься без них, извини.

    [Ответить]


  17. Dron :

    Народ вы хоть обьясните как пользоваться прогой!
    Я Зашифровываю картинку, и каждый раз при расшифровке картинки у меня выскакивает окно с ошибкой что тут видители нету шифра!
    Чё за херь?

    [Ответить]

    dx:

    Не знаю. Картинку выложи куда-то, в которую прячешь файл.

    [Ответить]


Оставьте ваш комментарий