и повідомлення розміром (колічество_байт_в_файле - 54) біт. p align="justify"> Сам алгоритм методу передбачає розбиття повідомлення на біти, які послідовно записуються в молодші біти зображення. Для того, щоб ускладнити визначення наявності повідомлення в контейнері для зловмисника, повідомлення кодується за допомогою одного з криптографічних шифрів, і лише після цього записується в стеганоконтейнер. [1]
Також, для приховування наявності повідомлення у файлі, молодші біти незадіяних байтів заповнюються шумом, що генерується генератором псевдовипадкових чисел [1].
Читання ж повідомлення відбувається майже аналогічно. Спочатку читаються значення молодших бітів файлу зображення, декодуються криптографічним шифром і записуються у файл-результат. p align="justify"> стеганографія файл програмування біт
4. Реалізація методу заміни НЗБ для BMP файлів на мові програмування Java
Програма представляє собою графічне додаток. Передбачені наступні функції:
відкрити bmp файл;
завантажити текстовий файл з ключем, або написати ключ у текстовому полі самому;
записати в текстове поле повідомлення;
завантажити повідомлення з текстового файлу;
записати повідомлення у відкритий графічний файл, методом НЗБ, кодуючи його XOR шифром з даного ключа;
прочитати повідомлення з файлу, декодувати егоXORшіфром за допомогою даного ключа;
зберегти прочитане повідомлення в файл;
закрити bmp файл; шифрування-вид симетричного шифрування, при якому кожен біт повідомлення перетвориться з використанням нового біта ключа за наступним правилом: 0 +0 = 0, 0 +1 = 1, 1 +0 = 1 , 1 +1 = 0.
Розглянемо особливості реалізації програми
Програма містить 4 класу:
Entry - вхідна точка докладання, здійснює завантаження графічного інтерфейсу програми.
StegoForm - опис графічного інтерфейсу, і реалізація всіх пов'язаних з ним функцій.
StegoMessenger - клас, в якому описані методи перевірки контейнера на наявність повідомлення, а також запису і читання повідомлення в контейнер.
XOREncoder - клас описує методи кодування і декодування повідомлення за допомогою XOR шрифту і переданого ключа.
Розглянемо методи класу StegoMessenger: - повертає максимальний розмір повідомлення для даного файлу, в байтах. - перевіряє файл на те, чи записано у нього повідомлення, кодоване ключем key. Для цього читає останній біт у перших 32 байтів після заголовка файлу, декодує з даними ключем, за допомогою методу decrypt класу XOREncoder, та порівнює з перевірочним числом. Повертає true - якщо числа співпали, і false - якщо немає. - Ме...