Извлечь бит из вставки LSB

Я читал о вставке LSB онлайн, но он только знакомит с тем, как вставлять биты в LSB, но не описывает, как извлечь биты. Это статья, которую я прочитал о вставке LSB.

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

1 ответ

Решение

Вот алгоритм для получения зашифрованного сообщения:

  1. Прочитайте изображение.
  2. Итерировать по пикселям.
  3. Разложить пиксель на значения RGB (один байт для R, один для G, один для B)
  4. Возьмите LSB из красного. Если младший бит находится в нулевом бите, вы можете AND значение красного цвета с маской 1 (биты 000000001). Так, lsbValue = rvalue & 0x01, Поместите lsbValue (это будет только один или ноль) в старшем бите
  5. Получите LSB из зеленого. Поместите это в следующий самый высокий бит.
  6. Получите LSB от синего цвета. Поместите это в следующий бит вниз.
  7. Прочитайте следующий пиксель и разбейте его на RGB-байты.
  8. Наполните младшие биты цветовых компонентов битовыми позициями, пока не заполните байт. Это первый байт вашего зашифрованного сообщения.
  9. Продолжайте перебирать пиксели и их значения RGB, пока не обработаете все пиксели.
  10. Проверьте байты, которые вы расшифровали. Фактическое сообщение должно быть очевидным. Все, кроме зашифрованного сообщения, будет просто шумом, т. Е. Младшим битом фактических пикселей изображения.
Другие вопросы по тегам