Способ потоковой стеганографической передачи двоичных данных
Иллюстрации
Показать всеИзобретение относится к области защиты информации, а именно к скрытной передаче сообщений по каналам связи. Техническим результатом является повышение стойкости к стегоанализу. Технический результат достигается тем, что при потоковой стеганографической передаче двоичных данных генерируют передатчиком заголовок пакета ZR путем конкатенации известного приемнику и передатчику значения синхронизации Z и случайного числа R, вырабатываемого передатчиком, шифруют ZR по алгоритму симметричного шифрования (АСШ) на известном приемнику и передатчику долгосрочном ключе шифрования K, генерируют сессионный ключ шифрования Q на основе R, и элементы гаммы с помощью АСШ в режиме гаммирования на Q, накладывают на скрываемые данные (тело пакета) побитно сгенерированную гамму путем сложения по модулю 2, генерируют завершающую часть пакета (ЗЧП), состоящую из известного приемнику и передатчику значения, накладывают на ЗЧП побитно последующие элементы гаммы, собирают полный пакет зашифрованных скрываемых двоичных данных, располагаемый в порядке: ЗЧП, тело пакета и заголовок пакета, из полного пакета отбор бит осуществляют со стороны младших бит. 2 з.п. ф-лы, 3 ил.
Реферат
Изобретение относится к области защиты информации и может быть использовано для скрытной передачи сообщений по каналам связи.
Известен способ внедрения дополнительной информации в цифровые изображения, заключающийся в замене отдельных битов в байтах исходного цифрового изображения и использовании части оставшихся битов для коррекции конечного цифрового изображения. Причем исходное цифровое изображение раскладывают на битовые слои, для записи дополнительной информации выбирают один из полученных битовых слоев, который представляют в виде битовой последовательности, запись дополнительной информации в полученную битовую последовательность осуществляют с помощью кода, причем при записи дополнительной информации с помощью кода в полученной битовой последовательности биты, расположенные на границах всех переходов одинаковых битовых последовательностей нулей и единиц, заменяют в соответствии с битами записываемой дополнительной информации (см. патент RU 2288544 С2 от 25.11.2004).
Известен способ стеганографической защиты секретной информации, заключающийся в замене малозначимых битов цифрового сигнала контейнера битами секретной информации. При этом для записи бита секретной информации выбирают подмножество отсчетов цифрового сигнала, изменение значения которых на единицу приводит к установлению бита секретной информации в значении дискретной функции распределения значений отсчетов цифрового сигнала контейнера, причем из этого подмножества отсчетов для записи бита секретной информации выбирают тот отсчет, модуль разности которого между собственным значением и средним значением соседних отсчетов максимален (см. патент RU 2262805 С2 от 25.12.2002).
Недостатком описанных известных способов является то, что они неприменимы к потоковым контейнерам, когда заранее неизвестно статистическое распределение данных потокового контейнера.
Наиболее близким к заявляемому изобретению по совокупности существенных признаков является способ потоковой стеганографической передачи двоичных данных, при котором внедряют скрываемые двоичные данные в потоковый контейнер в передатчике путем формирования открытых двоичных данных порциями по N бит и скрываемых двоичных данных необходимого размера, отбора из скрываемых двоичных данных порций двоичных данных по L бит, причем L меньше, чем N, шифрования скрываемых двоичных данных, встраивания отобранных зашифрованных скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, передачи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными по каналам связи. Восстанавливают скрываемые двоичные данные из потока данных в приемнике путем приема по каналам связи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными, извлечения зашифрованных скрываемых двоичных данных порциями по L бит из N-битных порций открытых двоичных данных из соответствующих младших L бит N-битных порций, формирования зашифрованных скрываемых двоичных данных из порций по L бит, расшифрования скрываемых двоичных данных и формирования исходной последовательности скрываемых двоичных данных. В качестве примера используют двоичную стегосистему, в которой требуется скрытно передать сообщение М, являющееся цифровым представлением речевого сигнала. Первые несколько отсчетов речевого сигнала в моменты времени дискретизации t1, t2, t3, t4 принимают десятичные значения M1, М2, М3, М4. В общем виде скрываемое сообщение может быть представлено в виде М=(M1, М2, М3, М4, …). Осуществляется преобразование двоичной последовательности М в двоичную последовательность Z с определенной погрешностью, то есть для формирования последовательности Z=(Z1, Z2, Z3, Z4, …) скрывающий информацию искажает, например, восьмую часть битов последовательности М. Для уменьшения погрешности скрываемого сообщения целесообразно искажать только младшие биты двоичной последовательности М. С помощью генератора псевдослучайных чисел формируется секретный ключ K=(K1, K2, K3, K4, …), после чего формируется стегограмма Х по правилу X=K⊕Z, где Х=(X1, Х2, Х3, Х4, …), а ⊕ - операция сложения по модулю 2. Стегограмма Х отправляется получателю, который осуществляет обратное преобразование при помощи аналогичного секретного ключа K восстанавливает исходное скрываемое сообщение М (см. Грибунин В.Г., Оков И.Н., Туринцев И.В. Цифровая стеганография. - М.: Солон-Пресс, 2002. - 265 с., раздел 3.4).
Признаки прототипа, совпадающие с существенными признаками заявляемого решения, внедряют скрываемые двоичные данные в потоковый контейнер в передатчике путем формирования открытых двоичных данных порциями по N бит и скрываемых двоичных данных необходимого размера, отбора из скрываемых двоичных данных порций двоичных данных по L бит, причем L меньше, чем N, шифрования скрываемых двоичных данных, встраивания отобранных зашифрованных скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, передачи по каналам связи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными; восстанавливают скрываемые двоичные данные из потока данных в приемнике путем приема по каналам связи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными, извлечения зашифрованных скрываемых двоичных данных порциями по L бит из N-битных порций открытых двоичных данных из соответствующих младших L бит N-битных порций, формирования зашифрованных скрываемых двоичных данных из порций по L бит, расшифрования скрываемых двоичных данных, формирования исходной последовательности скрываемых двоичных данных.
Недостатком известного способа, принятого за прототип, является уязвимость к статистическому анализу, что в итоге может привести к несанкционированному доступу к зашифрованной информации с вычислением или без вычисления секретного ключа.
Задачей изобретения является повышение стойкости к стегоанализу за счет невозможности определения факта передачи защищаемой информации, момента начала и завершения ее передачи.
Поставленная задача была решена за счет того, что в известном способе потоковой стеганографической передачи двоичных данных, при котором внедряют скрываемые двоичные данные в потоковый контейнер в передатчике путем формирования открытых двоичных данных порциями по N бит и скрываемых двоичных данных необходимого размера, отбора из скрываемых двоичных данных порций двоичных данных по L бит, причем L меньше, чем N, шифрования скрываемых двоичных данных, встраивания отобранных зашифрованных скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, передачи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными по каналам связи, восстанавливают скрываемые двоичные данные из потока данных в приемнике путем приема по каналам связи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными, извлечения зашифрованных скрываемых двоичных данных порциями по L бит из N-битных порций открытых двоичных данных из соответствующих младших L бит N-битных порций, формирования зашифрованных скрываемых двоичных данных из порций по L бит, расшифрования скрываемых двоичных данных и формирования исходной последовательности скрываемых двоичных данных, при формировании и шифровании скрываемых двоичных данных генерируют передатчиком заголовок пакета ZR, который формируют путем конкатенации предопределенного и известного приемнику и передатчику значения синхронизации Z и случайного числа R, вырабатываемого передатчиком, шифруют заголовок пакета ZR по алгоритму симметричного шифрования в режиме простой замены на предопределенном и известном приемнику и передатчику первичном (долгосрочном) ключе шифрования K, генерируют сессионный ключ шифрования Q, состоящий частично или полностью из случайного числа R, и начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на сессионном ключе шифрования Q, накладывают на скрываемые данные (тело пакета) побитно сгенерированную гамму путем сложения по модулю 2, генерируют завершающую часть пакета, состоящую из предопределенного и известного приемнику и передатчику значения, накладывают на завершающую часть пакета побитно последующие элементы гаммы, собирают полный пакет зашифрованных скрываемых двоичных данных, располагаемый в обратном порядке: завершающая часть пакета, тело пакета и заголовок пакета, из полного пакета отбор бит осуществляют со стороны младших бит; в приемнике при формировании зашифрованных скрываемых двоичных данных из порций по L бит, их расшифровании и формировании исходной последовательности скрываемых двоичных данных, в случае, если заголовок пакета еще не принят, накапливают извлеченные зашифрованные скрываемые двоичные данные порциями по L бит путем их добавления в старшие биты переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит, причем после очередного сдвига и добавления старших бит расшифровывают эту переменную по алгоритму симметричного шифрования в режиме простой замены на предопределенном и известном приемнику и передатчику первичном (долгосрочном) ключе шифрования и после каждого расшифрования ожидают появления расшифрованного значения заголовка пакета ZR, сравнивают старшую часть расшифрованного заголовка пакета с ожидаемым значением синхронизации Z, при их совпадении заголовок пакета считают успешно принятым, в противном случае действия по накоплению, расшифрованию и ожиданию расшифрованного значения заголовка пакета ZR повторяют до успешного приема заголовка пакета, после этого выделяют из младшей части расшифрованного заголовка пакета случайное число R, которое используют для генерации идентичного с передатчиком сессионного ключа шифрования Q, генерируют начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на сессионном ключе шифрования Q и производят очистку содержимого переменной-накопителя; в случае если заголовок пакета уже принят, отбирают из гаммы порциями по L бит следующие неиспользованные биты и расшифровывают извлеченные зашифрованные скрываемые двоичные данные порциями по L бит путем наложения на них отобранных элементов гаммы сложением по модулю 2, накапливают расшифрованные скрываемые двоичные данные порциями по L бит путем их добавления в старшие биты предопределенной переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит и после каждого очередного сдвига ожидают появления в старшей части переменной-накопителя значения завершающей части пакета, при появлении которого происходит отбрасывание старшей части переменной-накопителя для удаления значения завершающей части пакета, при этом значение завершающей части пакета считают успешно принятым; в противном случае действия по отбору, расшифрованию, накоплению и ожиданию появления в старшей части переменной-накопителя значения завершающей части пакета повторяют до успешного приема значения завершающей части пакета; по завершению формирования исходной последовательности скрываемых двоичных данных производят сброс значения переменной-накопителя.
Кроме того, при отсутствии скрываемых двоичных данных с момента начала работы передатчика генерируют случайный сессионный ключ шифрования и начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на случайном сессионном ключе шифрования, отбирают из элементов гаммы порции двоичных данных по L бит, отобранные элементы гаммы используют в качестве скрываемых двоичных данных при встраивании скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных.
По окончании посылки одного полного пакета и при отсутствии скрываемых двоичных данных до момента начала посылки следующего пакета продолжают генерировать передатчиком последующие элементы гаммы, отбирают из элементов гаммы порции двоичных данных по L бит, отобранные элементы гаммы используют в качестве скрываемых двоичных данных при встраивании скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных.
Признаки предлагаемого способа, отличительные от признаков способа по прототипу: при формировании и шифровании скрываемых двоичных данных генерируют передатчиком заголовок пакета ZR, который формируют путем конкатенации предопределенного и известного приемнику и передатчику значения синхронизации Z и случайного числа R, вырабатываемого передатчиком; шифруют заголовок пакета ZR по алгоритму симметричного шифрования в режиме простой замены на предопределенном и известном приемнику и передатчику первичном (долгосрочном) ключе шифрования K; генерируют сессионный ключ шифрования Q, состоящий частично или полностью из случайного числа R; генерируют начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на сессионном ключе шифрования Q; накладывают на скрываемые данные (тело пакета) побитно сгенерированную гамму путем сложения по модулю 2; генерируют завершающую часть пакета, состоящую из предопределенного и известного приемнику и передатчику значения; накладывают на завершающую часть пакета побитно последующие элементы гаммы; собирают полный пакет зашифрованных скрываемых двоичных данных, располагаемый в обратном порядке: завершающая часть пакета, тело пакета и заголовок пакета; осуществляют отбор бит из полного пакета со стороны младших бит; в приемнике при формировании зашифрованных скрываемых двоичных данных из порций по L бит, их расшифровании и формировании исходной последовательности скрываемых двоичных данных, в случае, если заголовок пакета еще не принят, накапливают извлеченные зашифрованные скрываемые двоичные данные порциями по L бит путем их добавления в старшие биты переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит; после очередного сдвига и добавления старших бит расшифровывают эту переменную по алгоритму симметричного шифрования в режиме простой замены на предопределенном и известном приемнику и передатчику первичном (долгосрочном) ключе шифрования и после каждого расшифрования ожидают появления расшифрованного значения заголовка пакета ZR; сравнивают старшую часть расшифрованного заголовка пакета с ожидаемым значением синхронизации Z, при их совпадении заголовок пакета считают успешно принятым, в противном случае действия по накоплению, расшифровыванию и ожиданию расшифрованного значения заголовка пакета ZR повторяют до успешного приема заголовка пакета; выделяют из младшей части расшифрованного заголовка пакета случайное число R, которое используют для генерации идентичного с передатчиком сессионного ключа шифрования Q; генерируют начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на сессионном ключе шифрования Q; производят очистку содержимого переменной-накопителя; в случае если заголовок пакета уже принят, отбирают из гаммы порциями по L бит следующие неиспользованные биты; расшифровывают извлеченные зашифрованные скрываемые двоичные данные порциями по L бит путем наложения на них отобранных элементов гаммы сложением по модулю 2; накапливают расшифрованные скрываемые двоичные данные порциями по L бит путем их добавления в старшие биты предопределенной переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит; после каждого очередного сдвига ожидают появления в старшей части переменной-накопителя значения завершающей части пакета, при появлении которого происходит отбрасывание старшей части переменной-накопителя для удаления значения завершающей части пакета, при этом значение завершающей части пакета считают успешно принятым; в противном случае действия по отбору, расшифровыванию, накоплению и ожиданию появления в старшей части переменной-накопителя значения завершающей части пакета повторяют до успешного приема значения завершающей части пакета; производят сброс значения переменной-накопителя по завершению формирования исходной последовательности скрываемых двоичных данных; генерируют случайный сессионный ключ шифрования при отсутствии скрываемых двоичных данных с момента начала работы передатчика; генерируют начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на случайном сессионном ключе шифрования; генерируют последующие элементы гаммы в возможные перерывы между окончанием посылки одного полного пакета и началом посылки следующего; отбирают из элементов гаммы порции двоичных данных по L бит; используют отобранные элементы гаммы в качестве скрываемых двоичных данных при встраивании скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных.
Отличительные признаки в совокупности с известными позволяют повысить стойкость к стегоанализу за счет невозможности определения факта передачи защищаемой информации, момента начала и завершения ее передачи.
Изобретение иллюстрируется чертежами и примером осуществления.
На фиг.1 показана блок-схема логики работы передатчика.
На фиг.2 показана блок-схема логики работы приемника.
На фиг.3 показана блок-схема способа стеганографической передачи двоичных данных.
Возможность осуществления заявляемого изобретения подтверждается следующим примером.
В качестве примера в передатчике и в приемнике используется алгоритм криптографического преобразования ГОСТ 28147-89 как в режиме простой замены, так и в режиме гаммирования без обратной связи. В качестве долгосрочных секретных ключей для режима простой замены используются предопределенные значения, идентичные в передатчике и в приемнике. Режим простой замены используется для шифрования сгенерированных передатчиком сессионных ключей и безопасной передачей их приемнику. Таблицы замен в передатчике и в приемнике - предопределенные. В передатчике и в приемнике устанавливается предопределенное значение используемых младших бит L.
Способ потоковой стеганографической передачи двоичных данных осуществляется следующим образом.
1. Для встраивания в поток стегосообщения в передатчике постоянно генерируется некоторая открытая информация, например, о каких-либо физических параметрах (уровень освещенности, скорость и т.п.) в виде двоичных данных порциями по N бит.
2. В определенный момент времени при возникновении необходимости передачи скрываемых двоичных данных начинается новая сессия (новый пакет) передачи скрываемых данных, для чего генерируется случайное число R, после чего генерируется заголовок пакета, который состоит из предопределенного значения Z, идентичного в приемнике и передатчике, и случайного числа R.
3. Заголовок пакета стегоданных шифруется в режиме простой замены с помощью долгосрочного ключа K, идентичного в приемнике и передатчике. Применение случайного числа R в составе заголовка пакета позволит, при использовании одного и того же долгосрочного ключа K, исключить повторяемость заголовка пакета в зашифрованном виде.
4. Происходит отбор порций зашифрованного заголовка пакета стегоданных порциями по L бит, причем L<N.
5. По завершении шифрования происходит генерация ключа Q, зависящего от случайного числа R.
6. В соответствии с ключом Q, используемого для режима гаммирования без обратной связи в качестве части сессионных секретных ключей и/или части синхропосылки, генерируется начальный элемент гаммы.
7. Начинают формироваться скрываемые двоичные данные.
8. Происходит отбор порций закрытых (защищаемых) двоичных данных порциями по L бит, причем L<N
9. На скрываемые двоичные данные (тело пакета), т.е. на их поток, накладывается побитно сгенерированная гамма путем сложения по модулю 2.
10. При необходимости во всех дальнейших операциях генерируются последующие элементы гаммы.
11. По завершении формирования скрываемых двоичных данных генерируется завершающая часть пакета, которая состоит из предопределенного значения.
12. Из завершающей части пакета происходит отбор порций двоичных данных порциями по L бит, причем L<N.
13. На порции завершающей части пакета накладывается побитно последующая гамма.
14. Собирается полный пакет стегоданных, располагаемый в обратном порядке: завершающая часть пакета, зашифрованный в режиме гаммирования, тело пакета, аналогично зашифрованное в режиме гаммирования, а также заголовок пакета, зашифрованный в режиме простой замены. Полный пакет побитно, в соответствии с установленным значением количества используемых младших бит, внедряется в младшие биты открытых значений путем замены младших бит контейнера. Отбор бит из полного пакета ведется со стороны младших бит. Производится передача в линию связи.
15. Для сохранения величины «шума» и для невозможности определения момента окончания одного полного пакета стегоданных и начала другого в возможные перерывы между окончанием посылки одного полного пакета стегоданных и началом посылки следующего необходимо продолжить шифрование тех же младших бит открытых значений с помощью последующих элементов гаммы. Эти значения игнорируются приемником. В случае если с момента инициализации передатчика генерация гаммы не происходила, необходимо сгенерировать фиктивную гамму, в качестве части секретных ключей и/или части синхропосылки в передатчике используется несколько случайных чисел.
Для восстановления из потока стегосообщения в приемнике осуществляются следующие действия:
1. Приемник постоянно принимает открытые значения потока (с внедренными младшими битами) из линии связи в виде двоичных данных порциями по N бит и передает принятые двоичные данные на следующие шаги.
2. Производится отбор младших бит из открытых двоичных значений в соответствии с установленным значением количества используемых младших бит L. Отобранные биты передаются на следующие шаги.
3. В случае, если флаг принятого заголовка пакета не установлен (заголовок пакета стегоданных еще не принят), то восстановленные биты накапливаются путем их добавления в старшие биты предопределенной переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит. На каждом этапе после очередного сдвига и добавления старших бит осуществляется попытка расшифровать эту переменную в режиме простой замены на идентичном с передатчиком долгосрочном ключе K. После каждого расшифрования ожидается появление заголовка пакета стегоданных, который состоит из предопределенного значения Z, идентичного в передатчике и приемнике, и случайного числа R. В случае если при сравнении старшей части расшифрованного заголовка пакета происходит совпадение с ожидаемым предопределенным значением Z, заголовок пакета считается успешно принятым и происходит установка флага принятого заголовка пакета. В противном случае, ожидаются следующие открытые данные и прием информации открытых значений потока (с внедренными младшими битами) из линии связи продолжается приемником до момента успешного приема заголовка пакета. После момента успешного приема заголовка пакета происходит выделение из младшей части расшифрованного заголовка пакета случайного числа R, которое используется для формирования ключа Q, используемого для режима гаммирования без обратной связи в качестве части сессионных секретных ключей и/или части синхропосылки. После чего происходит генерация первых (и последующих, при необходимости) элементов гаммы.
5. В случае если флаг принятого заголовка пакета установлен (заголовок пакета стегоданных уже принят), то из гаммы отбираются следующие неиспользованные биты в соответствии с установленным в приемнике значением количества используемых бит и происходит расшифрование восстановленных бит - наложение отобранных элементов гаммы сложением по модулю 2 на восстановленные биты. Расшифрованные восстановленные биты накапливаются путем их добавления в старшие биты предопределенной переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит. После каждого очередного сдвига ожидается появление в старшей части переменной-накопителя ожидаемого значения завершающей части пакета, в случае появления которого происходит сброс флага принятого заголовка пакета, происходит выделение исходной последовательности закрытых двоичных данных путем отбрасывания этой старшей части переменной-накопителя для удаления значения завершающей части пакета, исходная последовательность закрытых двоичных данных успешно принята. В противном случае приемником ожидаются следующие открытые данные и прием информации открытых значений потока (с внедренными младшими битами) из линии связи продолжается до момента успешного приема значения завершающей части пакета.
6. Приемник продолжает принимать открытые значения потока (с внедренными младшими битами) из линии связи в виде двоичных данных порциями по N бит и передает принятые двоичные данные на следующие шаги, где происходит повторение цикла ожидания начала следующего полного пакета (следующей стегосессии) и ее обработка.
Противник, не знающий секретного ключа, наблюдает в младших битах потока информацию, неотличимую для него от случайной. Он не может определить момент начала передачи стегоданных, их завершение и содержание стегосообщения.
Таким образом, предлагаемое техническое решение имеет высокую стойкость к стегоанализу за счет невозможности определения факта передачи защищаемой информации, момента начала и завершения ее передачи.
1. Способ потоковой стеганографической передачи двоичных данных, при котором внедряют скрываемые двоичные данные в потоковый контейнер в передатчике путем формирования открытых двоичных данных порциями по N бит и скрываемых двоичных данных необходимого размера, отбора из скрываемых двоичных данных порций двоичных данных по L бит, причем L меньше, чем N, шифрования скрываемых двоичных данных, встраивания отобранных зашифрованных скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных на место соответствующих младших L бит N-битных порций, передачи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными по каналам связи, восстанавливают скрываемые двоичные данные из потока данных в приемнике путем приема по каналам связи открытых двоичных данных порциями по N бит с внедренными скрываемыми двоичными данными, извлечения зашифрованных скрываемых двоичных данных порциями по L бит из N-битных порций открытых двоичных данных из соответствующих младших L бит N-битных порций, формирования зашифрованных скрываемых двоичных данных из порций по L бит, расшифрования скрываемых двоичных данных и формирования исходной последовательности скрываемых двоичных данных, отличающийся тем, что при формировании и шифровании скрываемых двоичных данных генерируют передатчиком заголовок пакета ZR, который формируют путем конкатенации предопределенного и известного приемнику и передатчику значения синхронизации Z и случайного числа R, вырабатываемого передатчиком, шифруют заголовок пакета ZR по алгоритму симметричного шифрования в режиме простой замены на предопределенном и известном приемнику и передатчику первичном (долгосрочном) ключе шифрования K, генерируют сессионный ключ шифрования Q, состоящий частично или полностью из случайного числа R, и начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на сессионном ключе шифрования Q, накладывают на скрываемые данные (тело пакета) побитно сгенерированную гамму путем сложения по модулю 2, генерируют завершающую часть пакета, состоящую из предопределенного и известного приемнику и передатчику значения, накладывают на завершающую часть пакета побитно последующие элементы гаммы, собирают полный пакет зашифрованных скрываемых двоичных данных, располагаемый в обратном порядке: завершающая часть пакета, тело пакета и заголовок пакета, из полного пакета отбор бит осуществляют со стороны младших бит; в приемнике при формировании зашифрованных скрываемых двоичных данных из порций по L бит, их расшифровании и формировании исходной последовательности скрываемых двоичных данных, в случае, если заголовок пакета еще не принят, накапливают извлеченные зашифрованные скрываемые двоичные данные порциями по L бит путем их добавления в старшие биты переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит, причем после очередного сдвига и добавления старших бит расшифровывают эту переменную по алгоритму симметричного шифрования в режиме простой замены на предопределенном и известном приемнику и передатчику первичном (долгосрочном) ключе шифрования и после каждого расшифрования ожидают появления расшифрованного значения заголовка пакета ZR, сравнивают старшую часть расшифрованного заголовка пакета с ожидаемым значением синхронизации Z, при их совпадении заголовок пакета считают успешно принятым, в противном случае действия по накоплению, расшифровыванию и ожиданию расшифрованного значения заголовка пакета ZR повторяют до успешного приема заголовка пакета, после этого выделяют из младшей части расшифрованного заголовка пакета случайное число R, которое используют для генерации идентичного с передатчиком сессионного ключа шифрования Q, генерируют начальный и последующие элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на сессионном ключе шифрования Q и производят очистку содержимого переменной-накопителя; в случае если заголовок пакета уже принят, отбирают из гаммы порциями по L бит следующие неиспользованные биты и расшифровывают извлеченные зашифрованные скрываемые двоичные данные порциями по L бит путем наложения на них отобранных элементов гаммы сложением по модулю 2, накапливают расшифрованные скрываемые двоичные данные порциями по L бит путем их добавления в старшие биты предопределенной переменной-накопителя необходимой размерности со сдвигом предыдущих накопленных значений в сторону младших бит и после каждого очередного сдвига ожидают появления в старшей части переменной-накопителя значения завершающей части пакета, при появлении которого происходит отбрасывание старшей части переменной-накопителя для удаления значения завершающей части пакета, при этом значение завершающей части пакета считают успешно принятым; в противном случае действия по отбору, расшифровыванию, накоплению и ожиданию появления в старшей части переменной-накопителя значения завершающей части пакета повторяют до успешного приема значения завершающей части пакета; по завершению формирования исходной последовательности скрываемых двоичных данных производят сброс значения переменной-накопителя.
2. Способ по п.1, отличающийся тем, что при отсутствии скрываемых двоичных данных с момента начала работы передатчика генерируют элементы гаммы с помощью алгоритма симметричного шифрования в режиме гаммирования на случайном сессионном ключе шифрования, отбирают из элементов гаммы порции двоичных данных по L бит, отобранные элементы гаммы используют в качестве скрываемых двоичных данных при встраивании скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных.
3. Способ по п.1, отличающийся тем, что по окончании посылки одного полного пакета и при отсутствии скрываемых двоичных данных до момента начала посылки следующего пакета продолжают генерировать передатчиком последующие элементы гаммы, отбирают из элементов гаммы порции двоичных данных по L бит, отобранные элементы гаммы используют в качестве скрываемых двоичных данных при встраивании скрываемых двоичных данных порциями по L бит в N-битные порции открытых двоичных данных.