Приховати текст у зображенні
Приховайте секретний текст у зображенні методом LSB-стеганографії, за бажання з шифруванням AES-256-GCM, і прочитайте його пізніше. Працює локально.
Як приховати повідомлення в зображенні
- Перетягніть зображення в зону завантаження або натисніть на неї, щоб вибрати файл. Найкраще підходить PNG, але працює будь-яке зображення, яке може відкрити ваш браузер: результат завжди зберігається як новий PNG.
- У розділі Приховати повідомлення введіть текст у поле Секретне повідомлення. Рядок Місткість показує, скільки байтів займає повідомлення і скільки може вмістити зображення.
- Для конфіденційності позначте Зашифрувати повідомлення парольною фразою (AES-256-GCM) і введіть Парольну фразу. Опція Показати парольну фразу дає змогу перевірити, що ви ввели.
- Натисніть Приховати повідомлення й завантажити PNG. Файл зберігається як
name-hidden.png, а в рядку стану вказано, скільки значень кольору було змінено.
Як прочитати приховане повідомлення
- Перетягніть PNG у ту саму зону завантаження. Якщо в ньому є повідомлення, приховане цим інструментом, відповідна примітка з’явиться одразу після завантаження зображення.
- Якщо повідомлення було зашифроване, введіть парольну фразу в поле Парольна фраза (лише якщо повідомлення було зашифроване).
- Натисніть Показати приховане повідомлення. Текст з’явиться під заголовком Приховане повідомлення, його можна одразу скопіювати.
Усе відбувається у вашому браузері: зображення, повідомлення і парольна фраза ніколи не завантажуються на сервер.
Як це працює: найменш значущий біт (LSB)
Кожен піксель зберігає значення червоного, зеленого й синього кольорів від 0 до 255. Інструмент замінює останній біт (найменш значущий) цих трьох значень одним бітом вашого повідомлення, піксель за пікселем у порядку читання. Наприклад, значення червоного 200 у двійковому записі виглядає як 11001000; якщо записати біт 1, вийде 11001001, тобто 201. Значення кольору ніколи не змінюється більше ніж на 1, і ця різниця невидима оку.
Використовуються лише повністю непрозорі пікселі, а альфа-канал не чіпається. Напівпрозорі пікселі пропускаються, оскільки браузери не можуть точно зберегти їхні молодші біти. Перед повідомленням інструмент записує 13-байтовий заголовок: сигнатуру, прапорець шифрування, довжину та контрольну суму CRC-32, яка виявляє пошкоджені дані.
Місткість становить приблизно (кількість непрозорих пікселів × 3 ÷ 8) − 13 байтів. Фото 1000 × 1000 вміщує близько 375 000 байтів – набагато більше, ніж будь-яке текстове повідомлення. Шифрування додає 49 байтів (версія, кількість ітерацій, 16-байтова сіль, 12-байтовий вектор ініціалізації IV і 16-байтовий тег автентифікації). У разі шифрування ключ виводиться з вашої парольної фрази за допомогою PBKDF2-SHA-256 (600 000 ітерацій), а текст шифрується алгоритмом AES-256-GCM, який також виявляє будь-яке втручання.
Чого стеганографія не робить
Стеганографія приховує сам факт існування повідомлення; сама по собі вона не є надійним захистом. Послідовне вбудовування LSB, як у цьому інструменті, легко виявляється засобами стегоаналізу (тест хі-квадрат, аналіз площини LSB), а будь-хто, хто відкриє зображення в цьому інструменті, прочитає незашифроване повідомлення. Якщо вміст має лишатися приватним, скористайтеся шифруванням із довгою унікальною парольною фразою: захист не сильніший за саму фразу. Але й тоді шифрування захищає вміст, а не факт того, що щось приховано.
Приховані біти також крихкі. Повторне стиснення JPEG чи WebP, зміна розміру, обрізання, знімки екрана, фільтри, а також більшість соцмереж і месенджерів (які стискають і часто конвертують зображення) знищують повідомлення. Передавайте PNG як файл: вкладенням до листа, посиланням на хмарне сховище або через «надіслати як документ» у месенджері.
Відповідальне використання
Доречні сфери застосування: головоломки, квести, завдання CTF, позначення власних зображень, навчання принципам роботи цифрових зображень, особисті нотатки. Не використовуйте інструмент, щоб обійти правила на роботі чи в навчальному закладі або закон, і поважайте чужі зображення та авторські права.
Поширені запитання
Чи можна побачити, що в моєму зображенні є повідомлення?
Неозброєним оком – ні: кожне значення кольору змінюється щонайбільше на 1. Проте засоби стегоаналізу часто виявляють LSB-вбудовування, а сам цей інструмент повідомляє про наявність повідомлення під час завантаження зображення.
Чому моє приховане повідомлення зникло?
Імовірно, зображення було повторно стиснене, змінене в розмірі чи конвертоване, наприклад соцмережею, месенджером або фоторедактором. Біти зберігаються лише в точному файлі PNG.
Чи можна почати з фото JPEG?
Так. Фото декодується, а результат зберігається як PNG – без втрат. Залиште його у форматі PNG: якщо зберегти знову як JPEG, повідомлення зникне.
Що буде, якщо я забуду парольну фразу?
Повідомлення не вдасться відновити. Чорного ходу немає, а неправильну парольну фразу відхиляє перевірка автентичності AES-GCM.
Чому файл PNG більший за оригінал?
PNG стискає без втрат, тому зазвичай він більший за JPEG того самого фото. Це ціна збереження кожного прихованого біта.
Схожі інструменти
- Шифрування тексту з паролем Шифруйте й розшифровуйте текст парольною фразою у браузері: AES-256-GCM і PBKDF2 із 600 000 ітерацій. Нічого не надсилається на сервер. Чесні обмеження.
- Видалення EXIF-даних з фото Видаліть EXIF, GPS-координати та інші метадані з фото без втрати якості. Працює у вашому браузері, файли не завантажуються на сервер.
- Конвертер зображень у Base64 Конвертуйте зображення в Base64 або data URI з готовим кодом для CSS і HTML чи декодуйте Base64 назад у зображення з переглядом. Безкоштовно й приватно.
- Конвертер зображень Конвертуйте зображення між PNG, JPG, WebP, BMP та ICO у браузері. Пакетна обробка, розміри для фавікона й вибір фону для прозорості. Без завантаження на сервер.