Устройство для потоковой стеганографической передачи двоичных данных

 

Полезная модель относится к области защиты информации и может быть использована для скрытной передачи сообщений по каналам связи. Устройство включает, связанные по каналу связи передатчик и приемник, при этом передатчик содержит блок формирования открытых двоичных данных порциями по N бит, блок формирования закрытых двоичных данных, блок отбора порций двоичных данных по L бит, причем L меньше, чем N, блок симметричного шифрования с использованием ключа K, блок генерации элементов гаммы с использованием ключа Q, сумматор по модулю «2», блок внедрения двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, блок передачи открытых данных (с внедренными битами) порциями по N бит, а приемник содержит блок приема открытых двоичных данных (с внедренными битами) порциями по N бит, блок отбора младших L бит из N-битных порций открытых двоичных данных, блок приема исходной последовательности закрытых двоичных данных, блок симметричного расшифрования двоичных данных с использованием ключа K, блок генерации элементов гаммы с использованием ключа Q, сумматор по модулю «2». Новым является то, что в передатчик введены блок генерации случайного числа R, блок генерации значения заголовка сессии, состоящего из случайного числа R и предопределенного значения Z, одинакового у передатчика и приемника, блок генерации предопределенного значения окончания сессии, известного передатчику и приемнику, при этом выход блока формирования открытых данных порциями по N бит подключен к входу блока внедрения двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций первый выход блока формирования закрытых двоичных данных подключен к входу блока генерации случайного числа R, второй выход подключен к первому входу блока отбора порций двоичных данных по L бит, третий выход подключен к входу блока генерации предопределенного значения окончания сессии, выход которого подключен ко второму входу блока отбора порций двоичных данных по L бит, первый выход блока отбора порций двоичных данных по L бит подключен ко второму входу блока внедрения двоичных данных, второй и третий выходы подключены к первому входу блока сумматора по модулю «2», к третьему входу блока отбора порций двоичных данных по L бит подключен выход блока симметричного шифрования, первый вход которого подключен к выходу ключа K, второй вход подключен к выходу блока генерации значения заголовка сессии, вход которого подключен к первому выходу блока генерации случайного числа R, второй выход блока генерации случайного числа R подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен ко второму входу блока сумматора по модулю «2», первый выход сумматора по модулю «2» подключен к третьему входу блока внедрения двоичных данных, выход которого подключен к входу блока передачи открытых данных (с внедренными битами) порциями по N бит. В приемник введены блок проверки флага принятого заголовка сессии, накопитель фиксированного размера со сдвигом в сторону младших бит, блок сравнения части расшифрованного значения с ожидаемым значением Z, блок ожидания следующих открытых двоичных данных (с внедренными битами) порциями по N бит, блок установки флага принятого заголовка сессии, блок выделения из другой части расшифрованного значения числа R, накопитель переменного размера со сдвигом в сторону младших бит, блок сравнения части значения накопителя переменного размера с ожидаемым значением окончания сессии, блок сброса флага принятого заголовка, блок выделения исходной последовательности закрытых двоичных данных из другой части накопителя переменного размера, при этом выход блока приема открытых двоичных данных (с внедренными битами) порциями по N бит подключен к входу блока отбора младших L бит из N-битных порций открытых двоичных данных, выход которого подключен к входу блока проверки флага принятого заголовка сессии, первый выход блока проверки флага принятого заголовка сессии подключен к первому входу блока сумматора по модулю «2», второй выход подключен к входу блока накопителя фиксированного размера со сдвигом в сторону младших бит, выход которого подключен к первому входу блока симметричного расшифрования, ко второму входу блока симметричного расшифрования подключен выход ключа K, выход блока симметричного расшифрования подключен к входу блока сравнения части расшифрованного значения с ожидаемым значением, первый выход блока сравнения части расшифрованного значения с ожидаемым значением Z подключен к входу блока установки флага принятого заголовка сессии, второй выход подключен к первому входу блока ожидания следующих открытых двоичных данных, выход которого подключен ко второму входу блока приема открытых двоичных данных (с внедренными битами) порциями по N бит, выход блока установки флага принятого заголовка сессии подключен к входу блока выделения из другой части расшифрованного значения R, выход которого подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен ко второму входу блока сумматора по модулю «2», выход сумматора по модулю «2» подключен к входу накопителя переменного размера со сдвигом в сторону младших бит, выход которого подключен к входу блока сравнения части значения накопителя с ожидаемым значением окончания сессии, первый выход блока сравнения части значения накопителя с ожидаемым значением окончания сессии подключен к входу блока сброса флага принятого заголовка сессии, второй выход подключен ко второму входу блока ожидания следующих открытых двоичных данных порциями по N бит, выход блока сброса флага принятого заголовка сессии подключен к входу блока выделения исходной последовательности закрытых двоичных данных из другой части накопителя, выход которого подключен к входу блока приема исходной последовательности закрытых двоичных данных. Технический результат - обеспечение возможности скрытно передавать защищаемые данные в потоке открытых данных и повышение стойкости к стегоанализу за счет невозможности определения факта передачи защищаемой информации, момента начала и завершения ее передачи.

Полезная модель относится к области защиты информации и может быть использована для скрытной передачи сообщений по каналам связи.

Известно устройство, с помощью которого осуществляется способ защиты важных битов информации, используя менее важные биты информации (см. заявку на изобретение RU 2000111545 А от 30.09.1998, дата публикации заявки от 27.04.2002). Устройство включает в себя устройство кодирования информационных битов для передачи и устройство для приема сигнала и декодирования. Устройство кодирования информационных битов для передачи содержит блок разделения на группы информационных битов, кодеры с возможностью обработки хвостовых битов, схему скремблирования с формирователем псевдослучайной последовательности, объединяемой с информационными битами с помощью операции «исключающее или», а также передатчик в заранее определенной последовательности передачи групп информационных битов. Устройство для приема сигнала и декодирования из него закодированных и скремблированных информационных битов содержит процессор для формирования гипотезы о множестве первых последовательностей битов, перекодировщик с возможностью обработки хвостовых битов для перекодирования множества первых последовательностей битов, о которых сформирована гипотеза, чтобы получить первые выборки ожидаемого сигнала, соответствующие первой группе информационных битов, средство накопления для сравнения выборок ожидаемого сигнала, схему дескремблирования выборок принятого сигнала с помощью формирователя последовательности битов дескремблирования, объединяемых с соответствующей принятой выборкой сигнала. Данное устройство принято в качестве прототипа.

Признаки прототипа, являющиеся общими с заявляемой полезной моделью, - передатчик (в прототипе устройство кодирования информационных битов для передачи) и приемник (в прототипе устройство для приема сигнала и декодирования из него закодированных и скремблированных информационных битов), связанные между собой по каналу (линии) связи; наличие в передатчике блока формирования в открытых (незащищаемых) двоичных данных порциями по N бит (в прототипе блок разделения на группы информационных битов), блока формирования закрытых (защищаемых) двоичных данных (в прототипе блок разделения на группы информационных битов), блока отбора из двоичных данных порций двоичных данных по L бит, причем L меньше, чем N (в прототипе кодеры с возможностью обработки хвостовых битов), блока симметричного шифрования двоичных данных с использованием ключа (в прототипе схема скремблирования), блока генерации элементов гаммы с использованием другого ключа (в прототипе формирователь псевдослучайной последовательности), сумматора по модулю «2» (в прототипе операция «исключающее или»), блока внедрения отобранных зашифрованных закрытых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций (в прототипе передача каждого из пятой группы скремблированных закодированных информационных битов и каждого из третьей группы закодированных информационных битов в заранее определенной последовательности передачи), блока передачи открытых двоичных данных порциями по N бит с внедренными закрытыми двоичными данными (в прототипе передатчик); наличие в приемнике блока приема открытых двоичных данных (с внедренными битами) порциями по N бит (в прототипе устройство для приема сигнала), блока отбора младших L бит из N-битных порций открытых двоичных данных (в прототипе перекодировщик с возможностью обработки хвостовых битов), блока приема исходной последовательности закрытых двоичных данных (в прототипе средство накопления метрик), блока симметричного расшифрования двоичных данных с использованием ключа K (в прототипе схема дескремблирования), блока генерации элементов гаммы с использованием ключа Q (в прототипе формирователь последовательности битов дескремблирования), сумматора по модулю «2» (в прототипе исключающие сверточные кодеры).

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

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

Поставленная задача решается за счет того, что в известном устройстве, включающем, связанные по каналу связи передатчик и приемник, при этом передатчик содержит блок формирования открытых двоичных данных порциями по N бит, блок формирования закрытых двоичных данных, блок отбора порций двоичных данных по L бит, причем L меньше, чем N, блок симметричного шифрования с использованием ключа K, блок генерации элементов гаммы с использованием ключа Q, сумматор по модулю «2», блок внедрения двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, блок передачи открытых данных (с внедренными битами) порциями по N бит, а приемник содержит блок приема открытых двоичных данных (с внедренными битами) порциями по N бит, блок отбора младших L бит из N-битных порций открытых двоичных данных, блок приема исходной последовательности закрытых двоичных данных, блок симметричного расшифрования двоичных данных с использованием ключа K, блок генерации элементов гаммы с использованием ключа Q, сумматор по модулю «2», в передатчик введены блок генерации случайного числа R, блок генерации значения заголовка сессии, состоящего из случайного числа R и предопределенного значения Z, одинакового у передатчика и приемника, блок генерации предопределенного значения окончания сессии, известного передатчику и приемнику, при этом выход блока формирования открытых данных порциями по N бит подключен к входу блока внедрения двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, первый выход блока формирования закрытых двоичных данных подключен к входу блока генерации случайного числа R, второй выход подключен к первому входу блока отбора порций двоичных данных по L бит, третий выход подключен к входу блока генерации предопределенного значения окончания сессии, выход которого подключен ко второму входу блока отбора порций двоичных данных по L бит, первый выход блока отбора порций двоичных данных по L бит подключен ко второму входу блока внедрения двоичных данных, второй и третий выходы подключены к первому входу блока сумматора по модулю «2», к третьему входу блока отбора порций двоичных данных по L бит подключен выход блока симметричного шифрования, первый вход которого подключен к выходу ключа K, второй вход подключен к выходу блока генерации значения заголовка сессии, вход которого подключен к первому выходу блока генерации случайного числа R, второй выход блока генерации случайного числа R подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен ко второму входу блока сумматора по модулю «2», первый выход сумматора по модулю «2» подключен к третьему входу блока внедрения двоичных данных, выход которого подключен к входу блока передачи открытых данных (с внедренными битами) порциями по N бит.

В приемник введены блок проверки флага принятого заголовка сессии, накопитель фиксированного размера со сдвигом в сторону младших бит, блок сравнения части расшифрованного значения с ожидаемым значением Z, блок ожидания следующих открытых двоичных данных (с внедренными битами) порциями по N бит, блок установки флага принятого заголовка сессии, блок выделения из другой части расшифрованного значения числа R, накопитель переменного размера со сдвигом в сторону младших бит, блок сравнения части значения накопителя переменного размера с ожидаемым значением окончания сессии, блок сброса флага принятого заголовка, блок выделения исходной последовательности закрытых двоичных данных из другой части накопителя переменного размера, при этом выход блока приема открытых двоичных данных (с внедренными битами) порциями по N бит подключен к входу блока отбора младших L бит из N-битных порций открытых двоичных данных, выход которого подключен к входу блока проверки флага принятого заголовка сессии, первый выход блока проверки флага принятого заголовка сессии подключен к первому входу блока сумматора по модулю «2», второй выход подключен к входу блока накопителя фиксированного размера со сдвигом в сторону младших бит, выход которого подключен к первому входу блока симметричного расшифрования, ко второму входу блока симметричного расшифрования подключен выход ключа K, выход блока симметричного расшифрования подключен к входу блока сравнения части расшифрованного значения с ожидаемым значением, первый выход блока сравнения части расшифрованного значения с ожидаемым значением Z подключен к входу блока установки флага принятого заголовка сессии, второй выход подключен к первому входу блока ожидания следующих открытых двоичных данных, выход которого подключен ко второму входу блока приема открытых двоичных данных (с внедренными битами) порциями по N бит, выход блока установки флага принятого заголовка сессии подключен к входу блока выделения из другой части расшифрованного значения R, выход которого подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен ко второму входу блока сумматора по модулю «2», выход сумматора по модулю «2» подключен к входу накопителя переменного размера со сдвигом в сторону младших бит, выход которого подключен к входу блока сравнения части значения накопителя с ожидаемым значением окончания сессии, первый выход блока сравнения части значения накопителя с ожидаемым значением окончания сессии подключен к входу блока сброса флага принятого заголовка сессии, второй выход подключен ко второму входу блока ожидания следующих открытых двоичных данных порциями по N бит, выход блока сброса флага принятого заголовка сессии подключен к входу блока выделения исходной последовательности закрытых двоичных данных из другой части накопителя, выход которого подключен к входу блока приема исходной последовательности закрытых двоичных данных.

Признаки предлагаемого устройства, отличительные от прототипа - введение в передатчик блока генерации случайного числа R, блока генерации значения заголовка сессии, состоящего из случайного числа R и предопределенного значения Z и блока генерации предопределенного значения окончания сессии, выход блока формирования открытых данных подключен к входу блока внедрения двоичных данных, первый выход блока формирования закрытых данных подключен к входу блока генерации случайного числа R, второй выход подключен к первому входу блока отбора порций двоичных данных по L бит, третий выход подключен к входу блока генерации предопределенного значения окончания сессии, выход которого подключен ко второму входу блока отбора порций двоичных данных по L бит, первый выход блока отбора порций двоичных данных по L бит подключен ко второму входу блока внедрения двоичных данных, второй и третий выходы подключены к первому входу блока сумматора по модулю «2», к третьему входу блока отбора порций двоичных данных по L бит подключен выход блока симметричного шифрования, первый вход которого подключен к выходу ключа K, второй вход подключен к выходу блока генерации значения заголовка сессии, вход которого подключен к первому выходу блока генерации случайного числа R, второй выход блока генерации случайного числа R подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен ко второму входу блока сумматора по модулю «2», первый выход сумматора по модулю «2» подключен к третьему входу блока внедрения двоичных данных, выход которого подключен к входу блока передачи открытых данных (с внедренными битами) порциями по N бит;

введение в приемник блока проверки флага принятого заголовка сессии, накопителя фиксированного размера со сдвигом в сторону младших бит, блока сравнения части расшифрованного значения с ожидаемым значением Z, блока ожидания следующих открытых двоичных данных (с внедренными битами) порциями по N бит, блока установки флага принятого заголовка сессии, блока выделения из другой части расшифрованного значения числа R, накопителя переменного размера со сдвигом в сторону младших бит, блока сравнения части значения накопителя переменного размера с ожидаемым значением окончания сессии, блока сброса флага принятого заголовка, блока выделения исходной последовательности закрытых двоичных данных из другой части накопителя переменного размера, при этом выход блока приема открытых двоичных данных (с внедренными битами) порциями по N бит подключен к входу блока отбора младших L бит из N-битных порций открытых двоичных данных, выход которого подключен к входу блока проверки флага принятого заголовка сессии, первый выход блока проверки флага принятого заголовка сессии подключен к первому входу блока сумматора по модулю «2», второй выход подключен к входу блока накопителя фиксированного размера со сдвигом в сторону младших бит, выход которого подключен к первому входу блока симметричного расшифрования, ко второму входу блока симметричного расшифрования подключен выход ключа K, выход блока симметричного расшифрования подключен к входу блока сравнения части расшифрованного значения с ожидаемым значением, первый выход блока сравнения части расшифрованного значения с ожидаемым значением Z подключен к входу блока установки флага принятого заголовка сессии, второй выход подключен к первому входу блока ожидания следующих открытых двоичных данных, выход которого подключен ко второму входу блока приема открытых двоичных данных (с внедренными битами) порциями по N бит, выход блока установки флага принятого заголовка сессии подключен к входу блока выделения из другой части расшифрованного значения R, выход которого подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен ко второму входу блока сумматора по модулю «2», выход сумматора по модулю «2» подключен к входу накопителя переменного размера со сдвигом в сторону младших бит, выход которого подключен к входу блока сравнения части значения накопителя с ожидаемым значением окончания сессии, первый выход блока сравнения части значения накопителя с ожидаемым значением окончания сессии подключен к входу блока сброса флага принятого заголовка сессии, второй выход подключен ко второму входу блока ожидания следующих открытых двоичных данных порциями по N бит, выход блока сброса флага принятого заголовка сессии подключен к входу блока выделения исходной последовательности закрытых двоичных данных из другой части накопителя, выход которого подключен к входу блока приема исходной последовательности закрытых двоичных данных.

На чертеже показана схема устройства для потоковой стеганографической передачи двоичных данных.

Устройство для потоковой стеганографической передачи двоичных данных содержит передатчик 1 и приемник 2, связанные между собой по каналу (линии) связи 3. Передатчик 1 содержит блок формирования открытых двоичных данных порциями по N бит 4, блок формирования закрытых двоичных данных 5, блок отбора порций двоичных данных по L бит 6, причем L меньше, чем N, блок симметричного шифрования 7 двоичных данных с использованием ключа K 8, блок генерации элементов гаммы 9 с использованием ключа Q 10, сумматор по модулю «2» 11, блок внедрения двоичных данных 12 порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, блок передачи открытых данных (с внедренными битами) порциями по N бит 13, блок генерации случайного числа R 14, блок генерации значения заголовка сессии 15, состоящего из случайного числа R и предопределенного значения Z, одинакового у передатчика 1 и приемника 2, блок генерации предопределенного значения окончания сессии 16, известного передатчику 1 и приемнику 2.

При этом выход блока формирования открытых данных порциями по N бит 4 подключен к входу блока внедрения двоичных данных 12 порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций первый выход блока формирования закрытых двоичных данных 5 подключен к входу блока генерации случайного числа R 14, второй выход блока 5 подключен к первому входу блока отбора порций двоичных данных по L бит 6, третий выход подключен к входу блока генерации предопределенного значения окончания сессии 16, выход которого подключен ко второму входу блока отбора порций двоичных данных по L бит 6, первый выход блока 6 подключен ко второму входу блока внедрения двоичных данных 12, второй и третий выходы блока 6 подключены к первому входу блока сумматора по модулю «2» 11, к третьему входу блока отбора порций двоичных данных по L бит 6 подключен выход блока симметричного шифрования 7, первый вход которого подключен к выходу ключа K 8, второй вход подключен к выходу блока генерации значения заголовка сессии 15, вход которого подключен к первому выходу блока генерации случайного числа R 14, второй выход блока 14 подключен к входу ключа Q 10, выход ключа Q 10 подключен к входу блока генерации элементов гаммы 9, выход которого подключен ко второму входу блока сумматора по модулю «2» 11, первый выход сумматора по модулю «2» подключен к третьему входу блока внедрения двоичных данных 12, выход которого подключен к входу блока передачи открытых данных (с внедренными битами) порциями по N бит 13.

Приемник 2 содержит блок приема по каналам связи открытых двоичных данных (с внедренными битами) порциями по N бит 17, выход которого подключен к входу блока отбора младших L бит из N-битных порций открытых двоичных данных 18, выход блока 18 подключен к входу блока проверки флага принятого заголовка сессии 19, первый выход блока проверки флага принятого заголовка сессии 19 подключен к первому входу блока сумматора по модулю «2» 20, второй выход блока проверки флага принятого заголовка сессии 19 подключен к входу блока накопителя фиксированного размера со сдвигом в сторону младших бит 21, выход которого подключен к первому входу блока симметричного расшифрования 22, ко второму входу блока симметричного расшифрования 22 подключен выход ключа K 8, выход блока симметричного расшифрования 22 подключен к входу блока сравнения части расшифрованного значения с ожидаемым значением Z 23, первый выход которого подключен к входу блока установки флага принятого заголовка сессии 24, второй выход блока сравнения части расшифрованного значения с ожидаемым значением Z 23 подключен к первому входу блока ожидания следующих открытых двоичных данных 25, выход блока ожидания следующих открытых двоичных данных 25 подключен ко второму входу блока приема открытых двоичных данных (с внедренными битами) порциями по N бит 17, выход блока установки флага принятого заголовка сессии 24 подключен к входу блока выделения из другой части расшифрованного значения числа R 26, выход которого подключен к входу ключа Q 10, выход ключа Q 10 подключен к входу блока генерации элементов гаммы 27, выход которого подключен ко второму входу блока сумматора по модулю «2» 20, выход сумматора по модулю «2» 20 подключен к входу накопителя переменного размера со сдвигом в сторону младших бит 28, выход которого подключен к входу блока сравнения с ожидаемым значением окончания сессии 29, первый выход блока сравнения с ожидаемым значением окончания сессии 29 подключен к входу блока сброса флага принятого заголовка 30, второй выход подключен ко второму входу блока ожидания следующих открытых двоичных данных 25, выход блока сброса флага принятого заголовка 30 подключен к входу блока выделения исходной последовательности закрытых двоичных данных 31, выход которого подключен к входу блока приема исходной последовательности закрытых двоичных данных 32.

Возможность осуществления заявляемой полезной модели подтверждается следующим примером.

В качестве примера в передатчике и в приемнике используется алгоритм криптографического преобразования ГОСТ 28147-89 как в режиме простой замены, так и в режиме гаммирования без обратной связи. В качестве долгосрочных секретных ключей для режима простой замены используется предопределенные значения, идентичные в передатчике и в приемнике. Режим простой замены используется для шифрования сгенерированных передатчиком сессионных ключей и безопасной передачей их приемнику. Таблицы замен в передатчике и в приемнике - предопределенные. В передатчике и в приемнике устанавливается предопределенное значение используемых младших бит L.

Устройство для потоковой стеганографической передачи двоичных данных работает следующим образом.

1. Для встраивания в поток стегосообщения в передатчике 1 в блоке 4 постоянно генерируется некоторая открытая информация, например, о каких-либо физических параметрах (уровень освещенности, скорость и т.п.) в виде двоичных данных порциями по N бит.

2. В определенный момент времени при возникновении необходимости передачи закрытых (защищаемых) двоичных данных блок 5 дает сигнал блоку 14 о необходимости начала новой сессии передачи закрытых данных.

3. В блоке 14 генерируется случайное число R.

4. В блоке 15 генерируется заголовок пакета стегоданных, который состоит из предопределенного значения Z, идентичного в приемнике 2 и передатчике 1, и случайного числа R.

5. В блоке 7 заголовок пакета стегоданных шифруется в режиме простой замены с помощью долгосрочного ключа K 8, идентичного в приемнике 2 и передатчике 1. Применение случайного числа R в составе заголовка пакета позволит, при использовании одного и того же долгосрочного ключа K 8, исключить повторяемость заголовка пакета в зашифрованном виде.

6. В блоке 6 происходит отбор порций зашифрованного заголовка пакета стегоданных порциями по L бит, причем L<N.

7. По завершению шифрования в блоке 7 происходит генерация в блоке 10 ключа Q, зависящего от случайного числа R.

8. В соответствии с ключом Q, используемого для режима гаммирования без обратной связи в качестве части сессионных секретных ключей и/или части синхропосылки, в блоке 9 генерируется начальный элемент гаммы.

9. В блоке 5 начинают формироваться закрытые (защищаемые) двоичные данные.

10. В блоке 6 происходит отбор порций закрытых (защищаемых) двоичных данных порциями по L бит, причем L<N

11. В блоке 11 на закрытые (защищаемые) двоичные данные (тело стего), т.е. на их поток, накладывается побитно сгенерированная гамма путем сложения по модулю 2.

12. При необходимости во всех дальнейших операциях в блоке 9 генерируются последующие элементы гаммы.

13. По завершению формирования в блоке 5 закрытых (защищаемых) двоичных данных в блоке 16 генерируется итоговый пакет окончания стегосессии, который состоит из предопределенного значения.

14. В блоке 6 из итогового пакета окончания стегосессии происходит отбор порций двоичных данных порциями по L бит, причем L<N.

15. На порции итогового пакета окончания стегосессии в блоке 11 накладывается побитно последующая гамма.

16. Собирается полный пакет стегоданных, располагаемый в обратном порядке: итоговый пакет окончания стегосессии, зашифрованный в режиме гаммирования, тело стего, аналогично зашифрованное в режиме гаммирования, а также заголовок пакета, зашифрованный в режиме простой замены. Полный пакет побитно, в соответствии с установленным значением количества используемых младших бит, с помощью блока 12 внедряется в младшие биты открытых значений путем замены младших бит контейнера. Отбор бит из полного пакета ведется со стороны младших бит. Блок 13 производит передачу в линию связи 3.

17. Для сохранения величины «шума» и для невозможности определения момента окончания одного полного пакета стегоданных и начала другого, в возможные перерывы между окончанием посылки одного полного пакета стегоданных и началом посылки следующего необходимо продолжить шифрование тех же младших бит открытых значений с помощью последующих элементов гаммы. Эти значения игнорируются приемником. В случае если с момента инициализации передатчика генерация гаммы не происходила, необходимо сгенерировать фиктивную гамму, в качестве части секретных ключей и/или части синхропосылки в передатчике используется несколько случайных чисел.

Для восстановления из потока стегосообщения, в приемнике 2 осуществляются следующие действия:

1. Блок 17 постоянно принимает открытые значения потока (с внедренными младшими битами) из линии связи 3 в виде двоичных данных порциями по N бит и передает принятые двоичные данные на следующие шаги.

2. Блок 18 производит отбор младших бит из открытых двоичных значений в соответствии с установленным значением количества используемых младших бит L. Отобранные биты передаются на следующие шаги.

3. В случае если в блоке 19 флаг принятого заголовка сессии не установлен (заголовок пакета стегоданных еще не принят), то восстановленные биты накапливаются путем их добавления в старшие биты предопределенной переменной-накопителя 21 необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит. На каждом этапе после очередного сдвига и добавления старших бит в блоке 22 осуществляется попытка расшифровать эту переменную в режиме простой замены на идентичном с передатчиком 1 долгосрочном ключе K 8. Блок 23 после каждого расшифрования ждет появления заголовка пакета стегоданных, который состоит из предопределенного значения Z, идентичного в передатчике и приемнике, и случайного числа R. В случае если при сравнении старшей части расшифрованного заголовка пакета происходит совпадение с ожидаемым предопределенным значением Z, заголовок пакета считается успешно принятым и в блоке 24 происходит установка флага принятого заголовка сессии. В противном случае управление переходит к блоку ожидания следующих открытых данных 25 и прием информации открытых значений потока (с внедренными младшими битами) из линии связи 3 в блоке 17 продолжается до момента успешного приема заголовка пакета. После момента успешного приема заголовка пакета блок 24 передает управление блоку 26, где происходит выделение из младшей части расшифрованного заголовка пакета случайного числа R, которое в блоке 10 используется для формирования ключа Q, используемого для режима гаммирования без обратной связи в качестве части сессионных секретных ключей и/или части синхропосылки, после чего в блоке 27 происходит генерация первых (и последующих, при необходимости) элементов гаммы.

5. В случае если в блоке 19 флаг принятого заголовка сессии установлен (заголовок пакета стегоданных уже принят), то в блоке 27 из гаммы отбираются следующие неиспользованные биты в соответствии с установленным в приемнике значением количества используемых бит и происходит расшифрование восстановленных бит - наложение в блоке 20 отобранных элементов гаммы сложением по модулю 2 на восстановленные биты. Расшифрованные восстановленные биты накапливаются в блоке 28 путем их добавления в старшие биты предопределенной переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит. В блоке 29 после каждого очередного сдвига ожидается появление в старшей части переменной-накопителя ожидаемое значение окончания стегосессии, в случае появления которого в блоке 30 происходит сброс флага принятого заголовка сессии, в блоке 31 происходит выделение исходной последовательности закрытых двоичных данных путем отбрасывания этой старшей части переменной-накопителя для удаления значения окончания стегосессии, исходная последовательность закрытых двоичных данных успешно принята и передается в блок 32. В противном случае блок 29 передает управление блоку ожидания следующих открытых данных 25 и прием информации открытых значений потока (с внедренными младшими битами) из линии связи 3 в блоке 17 продолжается до момента успешного приема значения окончания стегосессии.

6. Блок 17 продолжает принимать открытые значения потока (с внедренными младшими битами) из линии связи 3 в виде двоичных данных порциями по N бит и передает принятые двоичные данные на следующие шаги, где происходит повторение цикла ожидания начала следующей стегосессии и ее обработка.

Противник, не знающий секретного ключа, наблюдает в младших битах потока информацию, неотличимую для него от случайной. Он не может определить момент начала передачи стегоданных, их завершение и содержание стегосообщения.

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

Устройство для потоковой стеганографической передачи двоичных данных, включающее связанные по каналу связи передатчик и приемник, при этом передатчик содержит блок формирования открытых двоичных данных порциями по N бит, блок формирования закрытых двоичных данных, блок отбора порций двоичных данных по L бит, причем L меньше, чем N, блок симметричного шифрования с использованием ключа K, блок генерации элементов гаммы с использованием ключа Q, сумматор по модулю 2, блок внедрения двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, блок передачи открытых данных (с внедренными битами) порциями по N бит, а приемник содержит блок приема открытых двоичных данных (с внедренными битами) порциями по N бит, блок отбора младших L бит из N-битных порций открытых двоичных данных, блок приема исходной последовательности закрытых двоичных данных, блок симметричного расшифрования двоичных данных с использованием ключа K, блок генерации элементов гаммы с использованием ключа Q, сумматор по модулю 2, отличающееся тем, что в передатчик введены блок генерации случайного числа R, блок генерации значения заголовка сессии, состоящего из случайного числа R и предопределенного значения Z, одинакового у передатчика и приемника, блок генерации предопределенного значения окончания сессии, известного передатчику и приемнику, при этом выход блока формирования открытых данных порциями по N бит подключен к входу блока внедрения двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, первый выход блока формирования закрытых двоичных данных подключен к входу блока генерации случайного числа R, второй выход подключен к первому входу блока отбора порций двоичных данных по L бит, третий выход подключен к входу блока генерации предопределенного значения окончания сессии, выход которого подключен к второму входу блока отбора порций двоичных данных по L бит, первый выход блока отбора порций двоичных данных по L бит подключен к второму входу блока внедрения двоичных данных, второй и третий выходы подключены к первому входу блока сумматора по модулю 2, к третьему входу блока отбора порций двоичных данных по L бит подключен выход блока симметричного шифрования, первый вход которого подключен к выходу ключа K, второй вход подключен к выходу блока генерации значения заголовка сессии, вход которого подключен к первому выходу блока генерации случайного числа R, второй выход блока генерации случайного числа R подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен к второму входу блока сумматора по модулю 2, первый выход сумматора по модулю 2 подключен к третьему входу блока внедрения двоичных данных, выход которого подключен к входу блока передачи открытых данных (с внедренными битами) порциями по N бит; и в приемник дополнительно введены блок проверки флага принятого заголовка сессии, накопитель фиксированного размера со сдвигом в сторону младших бит, блок сравнения части расшифрованного значения с ожидаемым значением Z, блок ожидания следующих открытых двоичных данных (с внедренными битами) порциями по N бит, блок установки флага принятого заголовка сессии, блок выделения из другой части расшифрованного значения числа R, накопитель переменного размера со сдвигом в сторону младших бит, блок сравнения части значения накопителя переменного размера с ожидаемым значением окончания сессии, блок сброса флага принятого заголовка, блок выделения исходной последовательности закрытых двоичных данных из другой части накопителя переменного размера, при этом выход блока приема открытых двоичных данных (с внедренными битами) порциями по N бит подключен к входу блока отбора младших L бит из N-битных порций открытых двоичных данных, выход которого подключен к входу блока проверки флага принятого заголовка сессии, первый выход блока проверки флага принятого заголовка сессии подключен к первому входу блока сумматора по модулю 2, второй выход подключен к входу блока накопителя фиксированного размера со сдвигом в сторону младших бит, выход которого подключен к первому входу блока симметричного расшифрования, к второму входу блока симметричного расшифрования подключен выход ключа K, выход блока симметричного расшифрования подключен к входу блока сравнения части расшифрованного значения с ожидаемым значением, первый выход блока сравнения части расшифрованного значения с ожидаемым значением Z подключен к входу блока установки флага принятого заголовка сессии, второй выход подключен к первому входу блока ожидания следующих открытых двоичных данных, выход которого подключен к второму входу блока приема открытых двоичных данных (с внедренными битами) порциями по N бит, выход блока установки флага принятого заголовка сессии подключен к входу блока выделения из другой части расшифрованного значения R, выход которого подключен к входу ключа Q, выход ключа Q подключен к входу блока генерации элементов гаммы, выход которого подключен к второму входу блока сумматора по модулю 2, выход сумматора по модулю 2 подключен к входу накопителя переменного размера со сдвигом в сторону младших бит, выход которого подключен к входу блока сравнения части значения накопителя с ожидаемым значением окончания сессии, первый выход блока сравнения части значения накопителя с ожидаемым значением окончания сессии подключен к входу блока сброса флага принятого заголовка сессии, второй выход подключен к второму входу блока ожидания следующих открытых двоичных данных порциями по N бит, выход блока сброса флага принятого заголовка сессии подключен к входу блока выделения исходной последовательности закрытых двоичных данных из другой части накопителя, выход которого подключен к входу блока приема исходной последовательности закрытых двоичных данных.



 

Наверх