Изобретение относится к области криптографии, а именно к формированию ключа шифрования/дешифрования (КлШД), и может быть использовано в качестве отдельного элемента при построении симметричных криптографических систем, предназначенных для передачи шифрованных речевых, звуковых, телевизионных и др. сообщений.
Предлагаемый способ формирования КлШД может использоваться в криптографических системах в случае отсутствия или потери криптосвязности (Криптосвязность - наличие у корреспондентов сети связи одинакового КлШД) между корреспондентами сети связи (СС), включающей трех корреспондентов, или установления криптосвязности между новыми корреспондентами СС в условиях ведения нарушителем перехвата информации, передаваемой по открытым каналам связи. Под термином «сеть связи» понимают множество узлов и линий, соединяющих их, причем для любых двух различных узлов существует, по крайней мере, один соединяющий их путь, как описано, например, в книге Д. Филлипс, А. Гарсиа-Диас, «Методы анализа сетей», М.: Мир, 1984, стр. 16.
Известен способ формирования КлШД, описанный в книге У. Диффи «Первые десять лет криптографии с открытым ключом», ТИИЭР, т.76, №5, с. 57-58. Известный способ заключается в предварительном распределении между сторонами направления связи (СПС) чисел α и β, где α - простое число и 1≤β≤(α-1). Под термином «направление связи» понимают совокупность линий передачи и узлов связи, обеспечивающую связь между двумя пунктами сети, как описано, например, в Национальном стандарте РФ, ГОСТ Р 53111-2008, «Устойчивость функционирования сети связи общего пользования», Москва: Стандартинформ, 2009, стр. 7. Передающая сторона направления связи (ПерСНС) и приемная сторона НС (ПрСНС), независимо друг от друга, выбирают случайные соответствующие числа ХА и ХВ, которые хранят в секрете и затем формируют числа на основе ХА, α, β на ПерСНС и ХВ, α, β на ПрСНС. СНС обмениваются полученными цифрами по каналам связи без ошибок. После получения чисел корреспондентов стороны преобразовывают полученные числа с использованием своих секретных чисел в единый КлШД. Способ позволяет шифровать информацию во время каждого сеанса связи на новых КлШД (т.е. исключает хранение ключевой информации на носителях) и сравнительно быстро сформировать КлШД при использовании одного незащищенного канала связи.
Однако известный способ обладает относительно низкой стойкостью КлШД к компрометации (Стойкость КлШД к компрометации - способность криптографической системы противостоять попыткам нарушителя получить КлШД, который сформирован и используется законными участниками обмена информацией, при использовании нарушителем информации о КлШД, полученной в результате перехвата, хищения, утраты, разглашения, анализа и т.д.), время действия КлШД ограничено продолжительностью одного сеанса связи или его части, некорректное распределение чисел α и β приводит к невозможности формирования КлШД.
Известен также способ формирования КлШД при использовании квантового канала связи [Патент US №5515438 H04L 9/00 от 07.05.96], который позволяет автоматически сформировать КлШД без дополнительных мер по рассылке (доставке) предварительной последовательности. Известный способ заключается в использовании принципа неопределенности квантовой физики и формирует КлШД, посредством передачи фотонов по квантовому каналу. Способ обеспечивает получение КлШД с высокой стойкостью к компрометации, осуществляет гарантированный контроль наличия и степени перехвата КлШД.
Однако реализация известного способа требует высокоточной аппаратуры, что обуславливает высокую стоимость его реализации. Кроме этого, КлШД по данному способу может быть сформирован при использовании волоконно-оптических линий связи ограниченной длины, что существенно ограничивает область применения его на практике.
Известен также способ формирования КлШД на основе информационного различия [Патент РФ №2180469 от 10.03.2002].
Данный способ включает формирование исходной последовательности (ИП) вторым корреспондентом направления связи (НС), кодирование ИП, выделение из кодированной ИП блока проверочных символов, передачу его по прямому каналу связи без ошибок первому корреспонденту НС, формирование декодированной последовательности (ДП) первым корреспондентом НС, формирование функции хеширования последовательностей первым корреспондентом НС, передачу ее по прямому каналу связи без ошибок второму корреспонденту НС и формирование ключей шифрования/дешифрования первым и вторым корреспондентами НС путем хеширования ИП и ДП по сформированной первым корреспондентом НС функции хеширования последовательностей.
Недостатком этого способа является невозможность одновременного формирования КлШД для корреспондентов сети связи (СС) и относительно большие временные затраты на последовательное формирование КлШД для СС из трех корреспондентов, так как необходимо последовательно формировать КлШД посредством вышеописанного способа для каждой пары корреспондентов СС, включающей первого корреспондента, затем выбирать один из сформированных КлШД в качестве КлШД для СС и обеспечивать его получение всеми корреспондентами СС.
Наиболее близким но технической сущности к заявляемому способу формирования КлШД является способ формирования КлШД [Патент РФ №2480923 от 27.04.2013].
Способ-прототип включает генерирование случайного двоичного символа на стороне первого корреспондента сети связи (КСС), формирование из случайного двоичного символа кодового слова, передачу кодового слова от первого корреспондента второму и третьему КСС по первому каналу связи с ошибками и второму каналу связи с ошибками, соответственно, формирование принятого двоичного символа на сторонах второго и третьего КСС, формирование двоичного символа подтверждения на сторонах второго и третьего КСС, одновременную передачу двоичного символа подтверждения от второго корреспондента первому и третьему КСС но первому обратному каналу связи без ошибок и по третьему прямому каналу связи без ошибок, соответственно, одновременную передачу двоичного символа подтверждения от третьего корреспондента первому и второму КСС по второму обратному каналу связи без ошибок и по третьему обратному каналу связи без ошибок, соответственно, формирование исходной последовательности (ИП) первым корреспондентом СС, первой предварительной последовательности (1ПРП) на стороне второго КСС и второй предварительной последовательности (2ПРП) на стороне третьего КСС, кодирование ИП на стороне первого КСС, выделение из кодированной ИП блока проверочных символов, передачу его от первого корреспондента второму и третьему КСС по первому прямому каналу связи без ошибок и по второму прямому каналу связи без ошибок, соответственно, формирование и запоминание первой декодированной последовательности на стороне второго КСС и второй декодированной последовательности на стороне третьего КСС, формирование функции хеширования на стороне первого КСС, передача функции хеширования от первого корреспондента второму и третьему КСС по первому прямому каналу связи без ошибок и по второму прямому каналу связи без ошибок, соответственно, после чего формирование ключа шифрования/дешифрования из исходной, первой и второй декодированных последовательностей на сторонах первого, второго и третьего КСС, соответственно.
Формирование ИП первым КСС заключается в генерировании Lраз, где L>104 - выбранная первичная длина ИП, случайного двоичного символа, формировании из пего кодового слова путем повторения сгенерированного случайного двоичного символа М раз, где М≥1, и передаче кодового слова по первому каналу связи с ошибками второму КСС и по второму каналу связи с ошибками третьему КСС, одновременном формировании вторым и третьим КСС из принятого кодового слова принятого двоичного символа и двоичных символов подтверждения F и F1, на сторонах второго и третьего КСС, соответственно, одновременной передаче двоичного символа подтверждения F от второго КСС по первому обратному каналу связи без ошибок первому КСС и по третьему прямому каналу связи без ошибок третьему КСС, одновременной передаче двоичного символа подтверждения F1 от третьего КСС по второму обратному каналу связи без ошибок первому КСС и по третьему обратному каналу связи без ошибок второму КСС, затем, при равенстве хотя бы одного из двоичных символов подтверждения F и F1 нулю осуществляется стирание сгенерированного случайного двоичного символа на стороне первого КСС, принятого двоичного символа на стороне второго КСС и принятого двоичного символа на стороне третьего КСС, в противном случае осуществляется запоминание сгенерированного случайного двоичного символа и принятых двоичных символов в качестве i-x элементов, где i=1, 2, 3, …, (L-U), ИП, 1ПРП и 2ПРП, на сторонах первого, второго и третьего КСС, соответственно, где U - количество стертых символов при формировании исходной и предварительных последовательностей КСС.
Кодирование ИП на стороне первого КСС осуществляется линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом, порождающая матрица которого имеет размерность K×N, причем N>K. Размеры К и N порождающей матрицы линейного блокового систематического двоичного помехоустойчивого (N, К) кода выбирают K=2m-1-m и N=2m-1, где m≥3. Для кодирования исходную последовательность предварительно разделяют на Y подблоков длиной К двоичных символов, где Y=(L-U)/K, затем последовательно начиная с 1-го до Y-го из каждого j-го подблока, где j=1, 2, 3,…,Y, формируют j-й кодовый блок длиной N двоичных символов перемножением j-го подблока на порождающую матрицу, затем из j-го кодового блока выделяют j-й подблок проверочных символов длиной (N-K) двоичных символов, который запоминают в качестве j-го подблока блока проверочных символов кодированной ИП.
Выделение блока проверочных символов ИП заключается в разбиении кодированной ИП на ИП и блок проверочных символов кодированной ИП осуществлением выделения последнего.
Передача блока проверочных символов кодированной ИП заключается в передаче последнего от первого КСС но первому прямому каналу связи без ошибок второму КСС и по второму прямому каналу связи без ошибок третьему КСС.
Одновременное формирование 1ДП на стороне второго КСС и 2ДП на стороне третьего КСС осуществляется следующим образом: первую предварительную последовательность второго КСС и вторую предварительную последовательность третьего КСС декодируют линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом, транспонированная проверочная матрица которого имеет размерность N×(N-K), причем N>K. Размеры К и N проверочной матрицы линейного блокового систематического двоичного помехоустойчивого (N, К) кода выбирают K=2m-1-m и N=2m-1, где m≥3. Для декодирования первую предварительную последовательность на стороне второго КСС и вторую предварительную последовательность на стороне третьего КСС, а также блок проверочных символов кодированной исходной последовательности разделяют на Y соответствующих пар декодируемых подблоков и подблоков проверочных символов, где Y=(L-U)/K, причем длины декодируемых подблоков и подблоков проверочных символов выбирают равными К и (N-K) двоичных символов, соответственно, затем формируют Y принятых кодовых блоков длиной N двоичных символов путем конкатенации справа к j-му декодируемому подблоку j-гo подблока проверочных символов, где j=1, 2, 3,…, Y, после чего последовательно, начиная с 1-го до Y-го, вычисляют j-й синдром длиной (N-K) двоичных символов перемножением j-го принятого кодового блока на транспонированную проверочную матрицу, а по полученному j-му синдрому исправляют ошибки в j-м декодируемом подблоке, который затем запоминают в качестве j-го подблока 1ДП на стороне второго КСС и 2ДП на стороне третьего КСС.
Формирование функции хеширования последовательностей первым КСС заключается в формировании двоичной матрицы G размерности (L-U)×T, где Т≥64 - длина формируемого ключа шифрования/дешифрования, причем каждый из элементов двоичной матрицы G генерируют случайным образом.
Передача функции хеширования последовательностей заключается в последовательной передаче, начиная с 1-й по (L-U)-ю строки двоичной матрицы G, от первого КСС по первому прямому каналу связи без ошибок второму КСС и по второму прямому каналу связи без ошибок третьему КСС.
Формирование КлШД первым, вторым и третьим КСС заключается в хешировании соответствующих исходной и декодированных последовательностей по сформированной первым КСС функции хеширования последовательностей. Для хеширования последовательностей предварительно на стороне первого корреспондента двоичную матрицу G и ИП, на стороне второго корреспондента двоичную матрицу G и 1ДП, а на стороне третьего корреспондента двоичную матрицу G и 2ДП разделяют на W соответствующих пар подматриц размерности Р×Т, где P=(L-U)/W, и соответствующих подблоков исходной и декодированных последовательностей длиной Р двоичных символов, затем, начиная с 1-го до W-го, вычисляют z-й первичный ключ длиной Т двоичных символов, где z=1, 2, 3,…, W, перемножением z-го подблока ИП на z-ю подматрицу Gz на стороне первого КСС, z-го подблока 1ДП на z-ю подматрицу G, на стороне второго КСС, z-го подблока 2ДП на z-ю подматрицу Gz на стороне третьего КСС, после чего формируют КлШД путем поразрядного суммирования по модулю 2 соответствующих W первичных ключей на сторонах первого, второго и третьего КСС.
Способ-прототип позволяет сформировать КлШД между КСС со сравнительно небольшими материальными затратами при большом пространственном разнесении самих корреспондентов сети связи.
Недостатком прототипа является относительно невысокая стойкость КлШД к компрометации, обусловленная достаточно большим количеством информации о КлШД, получаемой нарушителем в результате перехвата незашумленных кодовых слов кода с М-повторениями в процессе формирования корреспондентами сети связи ИП, 1ПРП и 2Т1РП как основы для формирования КлШД.
Целью заявленного технического решения является разработка способа формирования КлШД, обеспечивающего увеличение стойкости к компрометации КлШД со стороны нарушителя.
Поставленная цель достигается тем, что в известном способе формирования ключа шифрования/дешифрования, заключающемся в том, что генерируют случайный двоичный символ, формируют кодовое слово, формируют принятый двоичный символ, формируют двоичный символ подтверждения, передают двоичный символ подтверждения, формируют исходную последовательность на стороне второго КСС и первую предварительную последовательность на стороне первого КСС, формируют вторую предварительную последовательность на стороне третьего КСС, кодируют исходную последовательность, выделяют из кодированной исходной последовательности блок проверочных символов, передают блок проверочных символов по каналам связи без ошибок, формируют и запоминают первую и вторую декодированные последовательности, формируют функцию хеширования на стороне первого корреспондента, одновременно передают функцию хеширования последовательностей по первому прямому и второму прямому каналам связи без ошибок, соответственно второму и третьему корреспондентам сети связи, после чего формируют ключ шифрования/дешифрования из исходной, первой и второй декодированных последовательностей.
Для формирования исходной последовательности L раз, где L>104 - выбранная первичная длина исходной последовательности, на стороне первого КСС формируют зашумляющий блок двоичных символов, причем каждый р-й двоичный символ зашумляющего блока двоичных символов, где р=1, 2, 3,…, (М+1), генерируют случайным образом, где М≥1, одновременно передают его по первому и второму каналам связи с ошибками второму и третьему корреспондентам сети связи, соответственно, после чего зашумляющий блок двоичных символов одновременно принимают на стороне второго корреспондента сети связи в качестве принятого зашумляющего блока двоичных символов второго корреспондента сети связи, а на стороне третьего корреспондента сети связи в качестве принятого зашумляющего блока двоичных символов третьего корреспондента сети связи, затем на стороне второго корреспондента сети связи генерируют случайный двоичный символ, формируют из него кодовое слово, после чего формируют зашумленное кодовое слово путем поразрядного суммирования по модулю 2 принятого зашумляющего блока двоичных символов второго корреспондента сети связи и сформированного кодового слова, одновременно передают зашумленное кодовое слово по первому обратному и третьему прямому каналам связи без ошибок на сторону первого и третьего корреспондентов сети связи, соответственно, затем на стороне первого корреспондента сети связи формируют принятое слово первого корреспондента сети связи путем поразрядного суммирования но модулю 2 зашумляющего блока двоичных символов и зашумленного кодового слова, и одновременно на стороне третьего корреспондента сети связи формируют принятое слово третьего корреспондента сети связи путем поразрядного суммирования по модулю 2 принятого зашумляющего блока двоичных символов третьего корреспондента сети связи и зашумленного кодового слова, затем на стороне первого корреспондента сети связи из сформированного принятого слова первого КСС формируют принятый двоичный символ первого КСС и двоичный символ подтверждения F, и одновременно на стороне третьего корреспондента сети связи из соответствующего сформированного принятого слова третьего КСС формируют принятый двоичный символ третьего КСС и двоичный символ подтверждения F1, после чего одновременно передают сформированный первым корреспондентом сети связи двоичный символ подтверждения F по первому прямому и второму прямому каналам связи без ошибок соответственно второму и третьему корреспондентам сети связи, а сформированный третьим корреспондентом сети связи двоичный символ подтверждения F1 одновременно передают по второму обратному и третьему обратному каналам без ошибок первому и второму корреспондентам сети связи, соответственно, при равенстве нулю, по крайней мере, одного из полученных двоичных символов подтверждения сгенерированный случайный двоичный символ второго корреспондента сети связи и принятые двоичные символы первого и третьего корреспондентов сети связи стирают, в противном случае запоминают сгенерированный случайный двоичный символ второго корреспондента сети связи, принятый двоичный символ первого корреспондента сети связи, принятый двоичный символ третьего корреспондента сети связи, соответственно в качестве i-x двоичных символов, где i=T, 2, 3,…, (L-U), исходной последовательности второго КСС, первой предварительной последовательности первого КСС и второй предварительной последовательности третьего КСС, соответственно, где U - количество стертых двоичных символов при формировании исходной последовательности и предварительных последовательностей, затем, на стороне второго корреспондента сети связи кодируют исходную последовательность, выделяют из кодированной исходной последовательности блок проверочных символов, одновременно передают его по первому обратному и третьему прямому каналам связи без ошибок первому и третьему корреспондентам сети связи, соответственно, затем одновременно формируют первую декодированную последовательность на стороне первого КСС, вторую декодированную последовательность на стороне третьего КСС.
Для формирования кодового слова сгенерированный случайный двоичный символ повторяют М раз, где М≥1. Принятому двоичному символу любого корреспондента сети связи присваивают значение первого двоичного символа принятого кодового слова. Для независимого друг от друга и одновременного формирования двоичного символа подтверждения F первого корреспондента сети связи или двоичного символа подтверждения F1 третьего корреспондента сети связи соответственно первый двоичный символ принятого слова сравнивают с последующими М двоичными символами принятого слова, где М - число повторений сгенерированного случайного двоичного символа при формировании кодового слова, после чего при наличии М совпадений первого двоичного символа принятого слова с последующими М двоичными символами принятого слова двоичному символу подтверждения F первого корреспондента или двоичному символу подтверждения F1 третьего корреспондента присваивают значение единица, а при наличии хотя бы одного несовпадения первого двоичного символа принятого слова с последующими М двоичными символами принятого слова двоичному символу подтверждения F первого корреспондента или двоичному символу подтверждения F1 третьего корреспондента присваивают значение ноль. Исходную последовательность кодируют линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом, где К - длина блока информационных символов и N - длина кодового блока, порождающая матрица которого имеет размерность (K×N), причем N>K. При кодировании исходную последовательность предварительно разделяют на Y подблоков длиной К двоичных символов, где Y=(L-U)/K. Затем последовательно начиная с первого до Y-го из каждого j-го подблока, где j=1, 2, 3,…, Y, формируют j-й кодовый блок длиной N двоичных символов перемножением j-го подблока на порождающую матрицу. Из j-го кодового блока выделяют j-й подблок проверочных символов длиной (N-K) двоичных символов. Запоминают в качестве j-го подблока блока проверочных символов кодированной исходной последовательности. Размеры К и N порождающей матрицы линейного блокового систематического двоичного помехоустойчивого (N, К) кода выбирают K=2m-1-m и N=2m-1, где m≥3. Для формирования первой и второй декодированных последовательностей первую и вторую предварительные последовательности первого и третьего корреспондентов сети связи, соответственно, независимо и одновременно декодируют линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом, где К - длина блока информационных символов и N - длина кодового блока, транспонированная проверочная матрица которого имеет размерность N×(N-K), причем N>K. Для одновременного и независимого формирования декодированных последовательностей первого и третьего корреспондентов сети связи соответствующие предварительные последовательности первого и третьего корреспондентов сети связи и блоки проверочных символов кодированной исходной последовательности разделяют на Y соответствующих пар декодируемых подблоков и подблоков проверочных символов, где Y=(L-U)/K. Длины декодируемых подблоков и подблоков проверочных символов выбирают равными, соответственно, К и (N-K) двоичных символов. Затем формируют Y принятых кодовых блоков длиной N двоичных символов путем конкатенации справа к j-му декодируемому подблоку j-го подблока проверочных символов, где j=1, 2, 3,…, Y. Последовательно, начиная с 1-го до Y-го, вычисляют j-й синдром длиной (N-K) двоичных символов перемножением j-го принятого кодового блока на транспонированную проверочную матрицу. По полученному j-му синдрому исправляют ошибки в j-м декодируемом подблоке, который затем запоминают в качестве j-го подблока декодированных последовательностей.
Выбирают размеры К и N проверочной матрицы линейного блокового систематического двоичного помехоустойчивого (N, К) кода K=2m-1-m и N=2m-1, где m≥3.
Функцию хеширования последовательностей на стороне первого корреспондента сети связи формируют в виде двоичной матрицы G размерности (L-U)×T, где Т≥64 - длина формируемого ключа шифрования/дешифрования, причем каждый из элементов двоичной матрицы G генерируют случайным образом. Функцию хеширования последовательностей, сформированную первым корреспондентом сети связи, последовательно, начиная с первой по (L-U)-го строки двоичной матрицы G передают одновременно второму и третьему корреспондентам сети связи по первому прямому и второму прямому каналам связи без ошибок, соответственно. При одновременном формировании ключа шифрования/дешифрования предварительно двоичную матрицу G и исходную последовательность второго корреспондента сети связи, двоичную матрицу G и первую декодированную последовательность первого корреспондента сети связи, двоичную матрицу G и вторую декодированную последовательность третьего корреспондента сети связи разделяют на W соответствующих пар подматриц размерности Р×Т, где P=(L-U)/W, Т≥64 - длина формируемого ключа шифрования/дешифрования, и, соответственно, подблоков исходной последовательности, первой декодированной последовательности и второй декодированной последовательности длиной Р двоичных символов, соответственно. Затем одновременно начиная с первого до W-го, корреспонденты сети связи вычисляют z-й первичный ключ длиной Т двоичных символов, где z=1, 2, 3,…, W, перемножением z-го подблока исходной последовательности второго корреспондента сети связи на z-ю подматрицу Gz, z-го подблока первой декодированной последовательности первого корреспондента сечи связи на z-го подматрицу Gz, z-го подблока второй декодированной последовательности третьего корреспондента сети связи на z-ю подматрицу Gz. После чего одновременно формируют ключ шифрования/дешифрования путем поразрядного суммирования по модулю 2 всех W первичных ключей на сторонах всех корреспондентов сети связи.
Благодаря новой совокупности существенных признаков за счет зашумления передаваемого кодового слова кодом с М-повторениями в процессе одновременного формирования КлШД корреспондентами сети связи обеспечивается уменьшение количества информации о КлШД, полученной нарушителем в результате перехвата передаваемых ключевых слов, что позволяет повысить стойкость формируемого КлШД к компрометации по отношению к нарушителю.
Заявленный способ поясняется фигурами, на которых показаны:
• на фигуре 1 - обобщенная структурная схема сети связи, применяемой в заявленном способе;
• на фигуре 2 - временная диаграмма формирования зашумленного блока двоичных символов (ЗБДС) на стороне первого КСС;
• на фигуре 3 - временная диаграмма вектора ошибок в первом канале связи с ошибками;
• на фигуре 4 - временная диаграмма принятого ЗБДС второго КСС;
• на фигуре 5 - временная диаграмма генерирования случайного двоичного символа на стороне второго КСС;
• на фигуре 6 - временная диаграмма формирования кодового слова на стороне второго КСС;
• на фигуре 7 - временная диаграмма формирования зашумленного кодового слова вторым КСС;
• на фигуре 8 - временная диаграмма принятого первым КСС зашумленного кодового слова;
• на фигуре 9 - временная диаграмма сформированного первым КСС ЗБДС;
• на фигуре 10 - временная диаграмма формирования принятого слова первым КСС;
• на фигуре 11 - временная диаграмма формирования первым КСС двоичного символа подтверждения F;
• на фигуре 12 - временная диаграмма формирования первым КСС принятого двоичного символа;
• на фигуре 13 - временная диаграмма принятого вторым КСС от первого КСС двоичного символа подтверждения F;
• на фигуре 14 временная диаграмма принятого третьим КСС от первого КССдвоичного символа подтверждения F;
• на фигуре 15 - временная диаграмма сформированного первым КСС ЗБДС;
• на фигуре 16 - временная диаграмма вектора ошибок во втором канале связи с ошибками;
• на фигуре 17 - временная диаграмма принятого ЗБДС третьего КСС;
• па фигуре 18 временная диаграмма принятого третьим КСС зашумленного кодового слова;
• на фигуре 19 - временная диаграмма формирования принятого слова на стороне третьего КСС;
• на фигуре 20 - временная диаграмма формирования третьим КСС двоичного символа подтверждения F1;
• на фигуре 21 - временная диаграмма формирования третьим КСС принятого двоичного символа;
• на фигуре 22 - временная диаграмма принятого первым КСС от третьего КСС двоичного символа подтверждения F1;
• на фигуре 23 - временная диаграмма принятого вторым КСС от третьего КСС двоичного символа подтверждения F1;
• па фигуре 24 - временная диаграмма хранящегося i-го элемента исходной последовательности второго КСС;
• на фигуре 25 - временная диаграмма хранящегося i-го элемента первой предварительной последовательности первого КСС;
• на фигуре 26 - временная диаграмма хранящегося i-го элемента второй предварительной последовательности третьего КСС;
• на фигуре 27 - временная диаграмма сформированной первой предвари тельной последовательности первого КСС;
• на фигуре 28 - временная диаграмма сформированной второй предварительной последовательности третьего КСС;
• на фигуре 29 - временная диаграмма сформированной исходной последовательности второго КСС, разделенной на Y подблоков по К символов;
• на фигуре 30 - временная диаграмма выделенного j-го подблока исходной последовательности длиной К двоичных символов;
• на фигуре 31 - временная диаграмма формирования j-го кодового блока длиной N двоичных символов;
• на фигуре 32 - временная диаграмма выделения j-го подблока проверочных символов длиной (N-K) двоичных символов;
• на фигуре 33 - временная диаграмма формирования блока проверочных символов кодированной ИП из Y подблоков проверочных символов;
• на фигуре 34 - временная диаграмма блока проверочных символов кодированной исходной последовательности, принятого первым КСС и разделенного на Y подблоков проверочных символов длиной (N-K) двоичных символов, и выделение из нее j-го подблока проверочных символов;
• на фигуре 35 - временная диаграмма первой предварительной последовательности первого КСС, разделенной на Y декодируемых подблоков по К символов и выделение из нее j-го декодируемого подблока;
• на фигуре 36 - временная диаграмма формирования j-го кодового блока путем конкатенации справа j-го подблока проверочных символов к j-ому декодируемому подблоку;
• на фигуре 37 - временная диаграмма вычисления j-го синдрома S1, длиной (N-K) двоичных символов и определение отсутствия ошибки на стороне первого КСС;
• на фигуре 38 - временная диаграмма j-го декодируемого подблока по полученному j-му синдрому S1;
• на фигуре 39 временная диаграмма формирования первой декодированной последовательности первого КСС из Y подблоков;
• на фигуре 40 - временная диаграмма блока проверочных символов кодированной исходной последовательности, принятого третьим КСС и разделенного на Y подблоков проверочных символов длиной (N-K) двоичных символов и выделение из нее j-го подблока проверочных символов;
• на фигуре 41 - временная диаграмма второй предварительной последовательности третьего КСС, разделенной на Y декодируемых подблоков по К символов и выделение из нее j-го декодируемого подблока;
• на фигуре 42 временная диаграмма формирования j-го кодового блока путем конкатенации справа j-го подблока проверочных символов к j-ому декодируемому подблоку на стороне третьего КСС;
• на фигуре 43 - временная диаграмма вычисления j-го синдрома S2 длиной (N-K) двоичных символов;
• на фигуре 44 - временная диаграмма определения местоположения ошибки в j-м декодируемом подблоке по полученному j-му синдрому S2 на стороне третьего КСС;
• на фигуре 45 - временная диаграмма формирования второй декодированной последовательности третьего КСС из Y декодируемых подблоков;
• на фигуре 46 - вид сформированной на стороне первого КСС функции хеширования последовательностей;
• на фигуре 47 - временная диаграмма представления функции хеширования в виде последовательности двоичных символов, включающей с первой по (L-U)-ю строки длиной но Г двоичных символов;
• на фигуре 48 - временная диаграмма сформированных исходной последовательности второго КСС, первой декодированной последовательности первого КСС, второй декодированной последовательности третьего КСС;
• на фигуре 49 - временная диаграмма сформированного ключа шифрования/дешифрования второго первого и третьего корреспондентов сети связи;
• на фигуре 50 - временная диаграмма формирования КлШД.
На представленных фигурах символом «А» обозначены действия, происходящие на стороне первого КСС, символом «В1» - на стороне второго КСС, символом «В2» - на стороне третьего КСС. Символ «→» обозначает процесс передачи последовательностей двоичных символов по каналам связи между корреспондентами сети связи. На фигурах заштрихованный импульс представляет собой символ «1», а не заштрихованный символ «0». Знаки «+» и «×» обозначают соответственно сложение и умножение в поле Галуа GF(2). Верхние буквенные индексы обозначают длину последовательности (блока), нижние буквенные индексы обозначают номер элемента в последовательности (блоке). Символ «Е», обозначает уровень символа(сигнала) по оси ординат временной диаграммы.
Реализация заявленного способа заключается в следующем. Современные криптосистемы построены по принципу Керкхоффа, описанного, например, в книге Д. Месси, «Введение в современную криптологию», ТИИЭР т.76, №5, май 1988, с. 24, согласно которому полное знание нарушителя включает, кроме информации полученной с помощью перехвата, полную информацию о порядке взаимодействия корреспондентов сети связи и о процессе формирования КлШД. Формирование общего КлШД можно разделить на три основных этапа в рамках структурной схемы сети связи, приведенной на фигуре 1.
Первый этап одновременное формирование исходной (ИП) и предварительных (ПРИ) последовательностей. Обеспечение формирования ИП и ПРП производится путем одновременной передачи информации от первого КСС по первому и второму каналам связи с независимыми ошибками соответственно второму и третьему КСС, одновременной передачи дополнительной информации об ИП по первому обратному и третьему прямому каналам связи без ошибок соответственно первому и третьему КСС и се одновременной обработкой всеми КСС. Предполагается, что нарушитель знает порядок обработки информации об ИП и перехватывает свою версию информации об ИИ, передаваемой первым КСС, на выходе независимого канала перехвата (КН) с ошибками, перехватывает дополнительную информацию по каналам перехвата без ошибок и использует се для формирования своей версии ПРП. Увеличение стойкости к компрометации КлШД со стороны нарушителя достигается формированием ИП на стороне второго КСС посредством использования ЗБДС передаваемых первым КСС. В результате этого первоначальный канал перехвата (ПКП) нарушителя преобразуется к вторичному каналу перехвата (ВКП), представляющему собой составной канал, включающий ПКП и первый капал связи с ошибками. Качество ВКП ухудшается по сравнению с ПКП, что приводит к уменьшению количества информации о формируемом КлШД получаемой нарушителем на выходе ВКП.
Второй этап предназначен для обеспечения формирования КлШД с высокой надежностью. Формирование КлШД с высокой надежностью достигается устранением (исправлением) несовпадающих символов (ошибок) в предварительных последовательностях первого КСС и третьего КСС относительно исходной последовательности второго КСС, при использовании корреспондентами дополнительной информации о ИП, переданной но первому обратному и третьему прямому каналам связи без ошибок от второго корреспондента первому КСС и третьему КСС, соответственно. Предполагается, что нарушитель перехватывает дополнительную информацию по каналам перехвата без ошибок и использует ее для устранения несовпадений в своей версии ПРП относительно ИП второго КСС.
Третий этап - предназначен для формирования ключа заданной длины с малым количеством информации о ключе, получаемой нарушителем. Обеспечение формирования ключа корреспондентов СС с малым количеством информации о нем у нарушителя обеспечивается путем сжатия последовательностей корреспондентов сети связи, которые получены ими после второго этапа. Предполагается, что нарушителю известен алгоритм сжатия последовательностей.
В заявленном способе увеличение стойкости к компрометации КлШД со стороны нарушителя реализуется следующей последовательностью действий.
Предполагается, что нарушитель имеет канал перехвата, с помощью которого он получает информацию о сформированных случайным образом и переданных ЗБДС по каналам связи с ошибками для формирования ИП и ПРП корреспондентов сети связи. Однако, для получения информации о ИП (первой ПРП, второй ПРП) необходимы знания о передаваемых вторым КСС по каналам связи без ошибок кодовых словах. Второй КСС передает зашумленные кодовые слова (ЗКС). Предполагается, что нарушитель получает ЗКС па выходе своих каналов перехвата без ошибок (КПБО). В целях получения кодового слова нарушителю необходимо снять зашумлеиие с ЗКС путем поразрядного суммирования по модулю 2 версии ЗБДС нарушителя и ЗКС. Это определяет преобразование ПКП в ВКП. Нарушитель может только получать информацию и не может участвовать в информационном обмене. Для обеспечения повышения стойкости к компрометации КлШД со стороны нарушителя необходимо создание условий, при которых производится преобразование ПКП в ВКП.
Для создания вышесказанных условий на стороне первого КСС формируют ЗБДС (каждый р-й двоичный символ ЗБДС, где р=1, 2, 3…, (М+1), генерируют случайным образом, где М>1, чтобы обеспечить увеличение стойкости к компрометации КлШД со стороны нарушителя), одновременно передают его по первому и второму каналам связи с ошибками второму КСС и третьему КСС, соответственно. Второй КСС и третий КСС одновременно принимают каждый из зашумляющих блоков двоичных символов в качестве принятого зашумляющего блока двоичных символов второго КСС и принятого зашумляющего блока двоичных символов третьего КСС, соответственно. Затем, на стороне второго КСС генерируют случайный двоичный символ (каждый двоичный символ генерируют случайным образом, чтобы обеспечить повышение стойкости к компрометации КлШД со стороны нарушителя), формируют из него кодовое слово путем повторения М раз сгенерированного случайного двоичного символа и формируют зашумленное кодовое слово путем поразрядного суммирования по модулю 2 принятого зашумляющего блока двоичных символов второго КСС и сформированного кодового слова. Одновременно передают зашумленное кодовое слово по первому обратному и третьему прямому каналам связи без ошибок на сторону первого КСС и третьего КСС, соответственно. На стороне первого КСС формируют принятое слово первого КСС путем поразрядного суммирования по модулю 2 зашумляющего блока двоичных символов и зашумленного кодового слова, и одновременно на стороне третьего КСС формируют принятое слово третьего КСС путем поразрядного суммирования по модулю 2 принятого зашумляющего блока двоичных символов третьего КСС и зашумленного кодового слова. Затем на стороне первого КСС из сформированного принятого слова первого КСС формируют принятый двоичный символ первого КСС и двоичный символ подтверждения F, и одновременно, на стороне третьего КСС из соответствующего сформированного принятого слова третьего КСС формируют принятый двоичный символ третьего КСС и двоичный символ подтверждения F1. Для формирования принятого двоичного символа, ему присваивают значение первого двоичного символа принятого слова. Если все элементы принятого слова - это символы «1», или символы «0», тогда присваивают символу подтверждения значение «1» и выносят решение об информационном символе, соответствующем принятому слову. В противном случае стирают это принятое слово и присваивают символу подтверждения значение «0». Решение (символы подтверждения) о принятых (стертых) словах одновременно передают по каналам связи без ошибок всем другим корреспондентам сети связи. Корреспонденты сети связи одновременно сохраняют в исходной и предварительных последовательностях принятые символы, которые не были стерты. Нарушитель также может удалять символы, которые были стерты корреспондентами сети связи. Однако символы, сохраняемые нарушителем (т.е. которые соответствуют одновременно сохраненным символам корреспондентов сети связи), не достаточно надежны, потому что ошибки, возникающие в независимых каналах с ошибками корреспондентов сети связи и ошибки возникающие в канале перехвата являются независимыми ошибками. Вместо представленного декодирования принятых слов корреспонденты сети связи могут одновременно использовать пороговое декодирование. Основное различие при использовании порогового декодирования заключается в том, что корреспонденты сети связи одновременно принимают каждое из слов кода повторения, не только когда все его элементы или «1» или «0», но и когда число одинаковых двоичных символов в принятом слове не менее определенного числа (порога). Это приведет, с одной стороны, к уменьшению надежности каждого из одновременно сохраненных символов в предварительных последовательностях (ПРИ) на сторонах первого КСС и третьего КСС, с другой стороны корреспонденты сети связи буду т меньше стирать символов ИП (ПРП).
Создание условий, при которых обеспечивается повышение стойкости к компрометации КлШД со стороны нарушителя, реализуется в заявленном способе следующей последовательностью действий по одновременному формированию ИП второго КСС и предварительных последовательностей первого КСС и третьего КСС. Формирование исходной последовательности второго КСС заключается в следующем. L раз, где L>104 - выбранная первичная длина исходной последовательности, на стороне первого КСС формируют ЗБДС, причем каждый р-й двоичный символ ЗБДС, где р=1, 2, 3,…, (М+1), генерируют случайным образом, где М≥1 (см. фиг. 2, 15). Значение М определяется качеством каналов связи с ошибками (см. фиг. 2). Известные способы генерирования случайных чисел описаны, например, в книге Д. Кнут, «Искусство программирования для ЭВМ», М., Мир, 1977, т.2, стр. 22. Одновременно передают его по первому и второму каналам связи с независимыми ошибками второму КСС и третьему КСС, соответственно. Временные диаграммы векторов ошибок в каналах связи с независимыми ошибками показаны на фигурах 3 и 16. Под термином «вектор ошибок» понимают поразрядную разность между переданным и принятым словами, как описано, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк, «Теория передачи сигналов», М., Радио и связь, 1986, стр. 93. ЗБДС принимают на стороне второго КСС в качестве принятого зашумляющего блока двоичных символов второго КСС, а на стороне третьего КСС в качестве принятого зашумляющего блока двоичных символов третьего КСС. Принятый ЗБДС второго КСС и принятый ЗБДС третьего КСС показаны на фигурах 4 и 17, соответственно. Известные способы передачи последовательностей по каналам связи с ошибками описаны, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк, «Теория передачи сигналов», М., Радио и связь, 1986, стр. 11. На стороне второго КСС генерируют случайным образом двоичный символ (см. фиг. 5). Известные способы генерирования случайных чисел описаны, например, в книге Д. Кнут, «Искусство программирования для ЭВМ», М., Мир, 1977, т. 2, стр. 22. Формируют из случайного двоичного символа кодовое слово. Для формирования кодового слова сгенерированный случайный двоичный символ кодируют кодом с М-повторениями (см. фиг. 6). Известные способы кодирования кодом с повторениями описаны, например, в книге Э. Берлекэмп, «Алгебраическая теория кодирования», М., Мир, 1971, стр. 11. При одновременном декодировании кодового слова корреспондентами сети связи используются каналы связи без ошибок, что существенно влияет на увеличение надежности принятых символов. Формируют на стороне второго КСС зашумленное кодовое слово путем поразрядного суммирования по модулю 2 принятого ЗБДС второго КСС и сформированного кодового слова (см. фиг. 7).
Одновременно передают зашумленное кодовое слово по первому обратному и третьему прямому каналам связи без ошибок первому КСС и третьему КСС, соответственно. Принятые зашумленные кодовые слова показаны на фигурах 8 и 18. Па стороне первого КСС формируют принятое слово первого КСС путем поразрядного суммирования по модулю 2 зашумляющего блока двоичных символов и зашумленного кодового слова, одновременно на стороне третьего КСС формируют принятое слово третьего КСС путем поразрядного суммирования по модулю 2 принятого зашумляющего блока двоичных символов третьего КСС и зашумленного кодового слова. Временные диаграммы формирования принятых слов показаны на фигурах 8, 9, 10 для первого КСС и на фигурах 17, 18, 19 для третьего КСС, соответственно. На стороне первого КСС из сформированного принятого слова первого КСС формируют принятый двоичный символ первого КСС (см. фиг. 12) и двоичный символ подтверждения F (см. фиг 11), на стороне третьего КСС из соответствующего сформированного принятого слова третьего КСС формируют принятый двоичный символ третьего КСС (см. фиг. 21) и двоичный символ подтверждения F1 (см. фиг 20). Принятому двоичному символу на стороне первого КСС и третьего КСС одновременно присваивают значение первого двоичного символа принятых слов первого КСС (см. фиг. 10, 12) и третьего КСС (см. фиг. 19, 21), соответственно. На стороне первого КСС для формирования двоичного символа подтверждения F первый двоичный символ принятого слова сравнивают с последующими М двоичными символами принятого слова первого КСС. Одновременно, на стороне третьего КСС для формирования двоичного символа подтверждения F1 первый двоичный символ принятого слова сравнивают с последующими М двоичными символами принятого слова третьего КСС. При наличии хотя бы одного несовпадения первого двоичного символа принятого слова с последующими М двоичными символами принятого слова двоичному символу подтверждения присваивают значение «0». При наличии М совпадений первого двоичного символа принятого слова с последующими М двоичными символами принятого слова двоичному символу подтверждения присваивают значение «1», как показано на фигурах 10 и 11 для первого КСС и на фигурах 19, 20 для третьего КСС. Известные способы сравнения двоичных символов описаны, например, в книге П. Хоровец, У. Хил, «Искусство схемотехники», М., Мир, т.1, 1983, стр. 212. Одновременно передают сформированный первым КСС двоичный символ под тверждения F по первому и второму прямым каналам связи без ошибок соответственно второму КСС и третьему КСС (см. фиг. 13 и 14), передают сформированный третьим КСС двоичный символ подтверждения F1 по второму обратному и третьему обратному каналам связи без ошибок соответственно первому КСС и второму КСС (см. фиг. 22 и 23). Известные способы передачи двоичного символа по обратному каналу описаны, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк, «Теория передачи сигналов», М., Радио и связь, 1986, стр. 156. При равенстве нулю по крайней мере одного из полученных двоичных символов подтверждения (F, или (и) F1), сгенерированный случайный двоичный символ второго КСС и принятые двоичные символы первого КСС и третьего КСС одновременно стирают, в противном случае одновременно запоминают сгенерированный случайный двоичный символ второго КСС, принятый двоичный символ первого КСС, принятый двоичный символ третьего КСС, соответственно, в качестве i-x элементов, где i=1, 2, 3,…, (L-U), исходной последовательности, первой предварительной последовательности и второй предварительной последовательности, где U - количество одновременно стертых символов при формировании исходной последовательности второго КСС, первой ПРП первого КСС и второй ПРП третьего КСС. На фигуре 24 показан i-й элемент исходной последовательности второго КСС, на фигуре 25 - i-й элемент ПРП первого КСС, а i-й элемент второй ПРП третьего КСС показан на фигуре 26. Известные способы стирания двоичных символов описаны, например, в книге У. Питсрсон, Э. Уэлдон, «Коды исправляющие ошибки», М., Мир, 1976, стр. 17. Известные способы храпения двоичных символов описаны, например, в книге Л. Мальцев, Э. Фломберг, В. Ямнольский, «Основы цифровой техники», М., Радио и связь, 1986, стр. 79. Вид сформированной первой ПРП первого КСС показан на фигуре 27, вид сформированной второй ПРП третьего КСС показан на фигуре 28, а вид сформированной исходной последовательности второго КСС показан на фигуре 29.
Оценка вероятностей ошибок в ПРП корреспондентов сети связи приведена в Приложении 1.
После применения корреспондентами сети связи кода с повторениями в ИП второго КСС и предварительных последовательностях первого КСС и третьего КСС остаются несовпадающие символы, что не позволяет корреспондентам сети связи приступить к непосредственному формированию КлШД. Устранение этих несовпадений может быть реализовано на основе использования помехоустойчивого кодирования. Однако известные помехоустойчивые коды позволяют кодировать последовательности значительно меньшей длины, чем полученная длина ИП (ПРП) равная (L-U) двоичных символов. Для этого применяют последовательное кодирование, т.е. если длина ИП (ПРП) велика, например, 104÷106 двоичных символов, ее разделяют на Y подблоков длиной по К символов, где Y=(L-U)/K.
Каждый подблок длиной по К символов кодируется на стороне второго КСС линейным систематическим блоковым помехоустойчивым (N, К) двоичным кодом, где К длина блока информационных символов и N - длина кодового блока. Линейным двоичным кодом называется код, который построен на основе использования линейных операций в поле GY(2), как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 61. Под термином «блоковый код» понимают код, в котором действия производятся над блоками символов, как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 13. Систематическим называется код, в котором кодовое слово начинается с К информационных символов, оставшиеся (N-K) символы кодового слова являются проверочными символами к информационным символам, как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 66. Затем формируемые блоки проверочных символов длиной (N-K) двоичных символов объединяют в единый блок проверочных символов кодированной ИП длиной Y×(N-K) двоичных символов и одновременно передают его по первому обратному и третьему прямому каналам связи без ошибок, соответственно, первому КСС и третьему КСС. Первый КСС и третий КСС используют блок проверочных символов кодированной ИП для устранения несовпадений в своих предварительных последовательностях по отношению к ИП и в результате чего первый КСС и третий КСС формируют декодированные последовательности.
Оценка вероятностей ошибочного декодирования предварительных последовательностей корреспондентов сети связи приведена в Приложении 2.
В качестве помехоустойчивых кодов может использоваться широкий класс кодов Боуза-Чоудхури-Хоквингема, коды Хемминга, Рида-Малера, Рида-Соломона и другие линейные блоковые коды, характеризующиеся своими параметрами (N, К). В ходе применения корреспондентами сети связи помехоустойчивого кодирования, нарушитель получает дополнительную информацию о КлШД путем перехвата блока проверочных символов кодированной ИП второго КСС, переданного по первому обратному и третьему прямому каналам связи без ошибок соответственно первому КСС и третьему КСС. Используя его нарушитель, также, исправляет часть несовпадений в своей версии перехваченной ПРП относительно ИП второго КСС. Это обстоятельство корреспонденты учитывают при формировании из исходной и декодированных последовательностей КлШД для сети связи. Устранение несовпадений (ошибок) в предварительных последовательностях первого КСС и третьего КСС реализуется в заявленном способе следующей последовательностью действий. Кодирование исходной последовательности второго КСС заключается в следующем. Предварительно исходную последовательность разделяют на Yподблоков длиной К двоичных символов, где Y=(L-U)/K, как показано па фиг. 29. Известные способы разбиения последовательности на блоки фиксированной длины описаны, например, в книге В. Васильев, В. Свириденко, «Системы связи». М., Высшая школа, 1987, стр. 208. Последовательно, начиная с 1-го до Y-го, каждый j-й подблок, где j=1, 2, 3,…, Y, кодируют линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом (см. фиг. 30 и 31). Порождающая матрица кода имеет размерность K×N, причем N>K. Размеры К и N порождающей матрицы линейного блочного систематического двоичного помехоустойчивого (N, К) кода выбирают K=2m-1-m и N=2m-1. где m≥3, как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 71. Для кодирования ИИ каждый j-й подблок длиной К двоичных символов перемножают на порождающую матрицу кода и получают j-й кодовый блок длиной N двоичных символов, как показано на фигуре 31. Известные способы помехоустойчивого кодирования блоков символов описаны, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 63. Из j-го кодового блока выделяют j-й подблок проверочных символов длиной (N-K) двоичных символов (см. фиг. 32). Известные способы выделения блоков фиксированной длины описаны, например, в книге В.Васильев, В. Свириденко, «Системы связи», М., Высшая школа, 1987, стр. 208. Запоминают j-й подблок проверочных символов в качестве j-го подблока блока проверочных символов кодированной исходной последовательности. Временная диаграмма формирования блока проверочных символов кодированной ИП показана на фигуре 33. Известные способы хранения последовательности двоичных символов описаны, например, в книге Л. Мальцев, Э. Фломберг, В. Ямпольский, «Основы цифровой техники», М., Радио и связь, 1986, стр. 38. Одновременно передают блок проверочных символов кодированной ИП по первому обратному и третьему прямому канатам связи без ошибок, соответственно, первому КСС и третьему КСС. Известные способы передачи последовательностей по канатам связи описаны, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк, «Теория передачи сигначов», М., Радио и связь, 1986, стр. 11. Одновременное формирование декодированных последовательностей первым КСС и третьим КСС заключается в следующем. Первую ДП первого КСС и вторую ДП третьего КСС одновременно формируют из первой ПРП и второй ПРП, соответственно. Действия первого КСС и третьего КСС по формированию первой ДП и второй ДП одинаковы и выполняются одновременно. На стороне первого КСС первую ПРП и блок проверочных символов кодированной исходной последовательности, одновременно на стороне третьего КСС вторую ПРП и блок проверочных символов кодированной исходной последовательности разделяют на Y соответствующих пар декодируемых подблоков, как показано на фигурах 35 и 41, соответственно, и подблоков проверочных символов, как показано на фигурах 34 и 40, соответственно, где Y=(L-U)/K. Длины декодируемых подблоков и подблоков проверочных символов выбирают равными, соответственно, К и (N-K) двоичных символов. Известные способы разбиения последовательности на блоки фиксированной длины описаны, например, в книге В. Васильев, В. Свириденко, «Системы связи», М., Высшая школа, 1987, стр. 208. Первый КСС и третий КСС одновременно формируют Y принятых кодовых блоков длиной N двоичных символов путем конкатенации справа к j-му декодируемому подблоку j-го подблока проверочных символов, где j=1, 2, 3,…, Y, как показано на фигурах 36 и 42, соответственно. Y принятых кодовых блоков первого КСС и третьего КСС одновременно декодируют линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом (см. фиг. 36 и 42, соответственно). Проверочная матрица кода имеет размерность (N-K)xN, причем N>K. Выбирают размеры К и N проверочной матрицы линейного блокового систематического двоичного помехоустойчивого (N, К) кода K=2m-1-m и N=2m-1, где m≥3, как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 71. Последовательно, начиная с 1-го до Y-го, вычисляют j-й синдром длины (N-K) двоичных символов перемножением j-го принятого кодового блока на транспонированную проверочную матрицу. Временная диаграмма вычисления j-го синдрома S1 длиной (N-K) двоичных символов первого КСС показана на фигуре 37. Временная диаграмма вычисления j-го синдрома S2 длиной (N-K) двоичных символов третьего КСС показана на фигуре 43. Первый КСС и третий КСС по полученному j-му синдрому исправляют ошибки в j-м декодируемом подблоке (см. фиг. 38 и 44, соответственно). Известные способы синдромного декодирования блоков символов описаны, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 70. Затем первый КСС и третий КСС запоминают j-й декодируемый подблок в качестве j-го подблока первой декодированной последовательности и второй декодированной последовательности, соответственно, как показано нафигурах 39 и 45. Известные способы хранения последовательности двоичных символов описаны, например, в книге Л. Мальцев, Э. Фломберг, В. Ямпольский, «Основы цифровой техники», М., Радио и связь, 1986, стр. 38. Таким образом, первый КСС и третий КСС получают, соответственно первую и вторую декодированные последовательности.
После формирования корреспондентами сети связи тождественных ИП на стороне второго КСС и ДП на сторонах первого КСС и третьего КСС, корреспонденты сети связи должны сформировать КлШД с малым количеством информации нарушителя о КлШД. Для обеспечения малого количества информации нарушителя о КлШД корреспонденты сети связи используют метод «усиления секретности» последовательностей.
Оценка количества информации Шеннона, получаемого нарушителем о сформированном корреспондентами сети связи КлШД при использовании метода «усиления секретности» приведена в Приложении 3.
Для обеспечения малой величины информации нарушителя о КлШД в предлагаемом способе формирования КлШД реализуется следующая последовательность действий. Одновременное формирование из исходной последовательности и декодированных последовательностей КлШД заключается в следующем. Формируют на стороне первого КСС функцию хеширования последовательностей в виде двоичной матрицы G размерности (L-U)×T, где Т≥64 - требуемая длина формируемого КлШД. Каждый из элементов двоичной матрицы G генерируют случайным образом (см. фиг. 46). Известные способы генерирования случайных чисел описаны, например, в книге Д. Кнут, «Искусство программирования для ЭВМ», М., Мир, 1977, т.2, стр. 22. Функцию хеширования последовательностей одновременно передают по первому прямому и второму прямому каналам связи без ошибок соответственно второму КСС и третьему КСС, последовательно, начиная с 1-й по (L-U)-ю строки двоичной матрицы G, как показано на фигуре 47. Известные способы передачи последовательностей по каналам связи описаны, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк, «Теория передачи сигналов», М., Радио и связь, 1986, стр. 11. На сторонах второго КСС, первого КСС и третьего КСС одновременно формируют КлШД путем хеширования ИП, первой ДП и второй ДП, соответственно (см. фиг. 48) по сформированной на стороне первого КСС функции хеширования последовательностей, как показано на фигуре 49. При формировании КлШД предварительно двоичную матрицу G и ИП в второго КСС, двоичную матрицу G и первую ДП первого КСС, двоичную матрицу G и вторую ДП третьего КСС разделяют на W соответствующих пар подматриц размерности Р×Т, где Р=(L-U)/W, и подблоков исходной и декодированных последовательностей длиной Р двоичных символов, соответственно. Известные способы разбиения последовательности на блоки фиксированной длины описаны, например, в книге В. Васильев, В. Свириденко, «Системы связи», М., Высшая школа, 1987, стр. 208. Затем, начиная с первого до W-го, вычисляют z-й первичный ключ длиной Т двоичных символов, где z=1, 2, 3, W, перемножением z-го подблока ИП второго КСС на z-ю подматрицу Gz, z-го подблока первой ДП первого КСС на z-ю подматрицу Gz, z-го подблока в торой ДП третьего КСС на z-ю подматрицу Gz. После чего формируют КлШД путем поразрядного суммирования по модулю 2 всех W-x первичных ключей на сторонах всех корреспондентов сети связи, как показано на фигуре 50. Действия по передаче и приему последовательностей по каналам связи с ошибками, прямым и обратным каналам связи без ошибок засинхронизированы. Известные способы синхронизации описаны, например, в книге Е. Мартынов, «Синхронизация в системах передачи дискретных сообщений», М., Связь, 1972, стр. 186.
Для подтверждения возможности достижения сформулированного технического результата было проведено аналитическое моделирование, по результатам которого можно сделать вывод о том, что количество информации о КлШД получаемое нарушителем в результате перехвата предварительных последовательностей между корреспондентами сети связи в процессе формирования КлШД посредством предлагаемого способа может быть уменьшено в 11,08381 раз по сравнению с количеством информации нарушителя при формировании КлШД посредством способа-прототипа. Это непосредственно увеличивает стойкость к компрометации формируемого КлШД сети связи посредством предлагаемого способа по сравнению со способом-прототипом. Результаты оценки информации нарушителя в процессе формирования КлШД для сети связи, включающей трех корреспондентов, предлагаемого способа и способа-прототипа приведены в Приложении 4
Приложение 1
Оценка вероятностей ошибок (несовпадений) символов в первой предварительной последовательности первого корреспондента сети связи и во второй предварительной последовательности третьего корреспондента сети связи относительно исходной последовательности второго корреспондента сети связи (В Приложениях 1-4 используются все уловные сокращения, которые использовались в описании изобретения)
Пусть pml - вероятность ошибки на двоичный символ в первом канале связи с ошибками между первым и вторым корреспондентами СС и рm2 - вероятность ошибки на двоичный символ во втором канале связи с ошибками между первым и третьим корреспондентами СС (см. фиг. 1), то - вероятность ошибки (несовпадения) символов в первой предварительной последовательности первого корреспондента СС относительно исходной последовательности второго корреспондента СС может быть найдена из выражения:
Аналогично вероятность ошибки (несовпадения) символов во второй предварительной последовательности (ПРП) третьего корреспондента СС относительно исходной последовательности второго корреспондента СС определяется выражением:
где рас - вероятность, с которой одновременно принимается переданный вторым корреспондентом СС блок (длиной (М+1) двоичных символов) с М повторениями первым и третьим корреспондентами, которая определяется с помощью выражения:
где αij - совместная вероятность событий, возникновения ошибки i в первом канале связи с ошибками между первым и вторым корреспондентами СС (наличия ошибки (несовпадения) символов (i=1) или отсутствия ошибки (i=0), причем i∈{0,1}), и возникновения ошибки j в составном канале, включающем последовательное соединение первого и второго каналов связи с ошибками, между вторым и третьим корреспондентами СС (наличия ошибки (несовпадения) символов (j=1) или отсутствия ошибки (j=0), причем j∈{0,1}), при передаче любого случайного символа от второго корреспондента СС первому корреспонденту СС и третьему корреспонденту СС, соответственно, где:
Приложение 2
Оценка вероятностей ошибочного декодирования первой предварительной последовательности первого корреспондента сети связи и второй предварительной последовательности третьего корреспондента сети связи относительно исходной последовательности второго корреспондента сети связи
Вероятность ошибочного декодирования первой ПРП первого корреспондента СС может быть определена по формуле
где РE01 - вероятность ошибочного декодирования подблока длиной К двоичных символов из первой ПРП первого корреспондента СС, определяемая, как описано, например, в книге Ф. Мак-Вильямс, Н. Слоэн, «Теория кодов исправляющих ошибки», М, Связь, 1979, стр. 29,
где - вероятность ошибки в первой ПРП первого корреспондента СС, равная полученному значению вероятности ошибки из выражении (1.1) Приложения 1, а d - минимальное кодовое расстояние (N,K) кода, которое определяется, как минимальное число несовпадающих разрядов в двух любых кодовых словах (N,K) кода, как описано, например, в книге Ф. Мак-Вильямс, Н. Слоэн, «Теория кодов исправляющих ошибки», М., Связь, 1979, стр. 20.
Вероятность ошибочного декодирования второй ПРП третьего корреспондента СС может быть определена по формуле
где РE02 - вероятность ошибочного декодирования подблока длиной К двоичных символов из второй ПРП третьего корреспондента СС, определяется согласно выражения:
где - вероятность ошибки (несовпадения) символов во второй ПРП третьего корреспондента СС относительно исходной последовательности второго корреспондента СС, полученная из выражения (1.2) Приложения 1.
Приложение 3
Оценка количества информации Шеннона, получаемого нарушителем о сформированном корреспондентами сети связи ключе шифрования/дешифрования при использовании метода «усиления секретности»
Для обеспечения малого количества информации нарушителя о КлШД в предлагаемом способе формирования КлШД используют метод "усиления секретности" последовательностей, основанный на универсальном хешировании, как описано, например, в книге Bennett С., Brassard G., Crepeau С., Maurer U. "Generalized privacy amplification", IEEE Trans, on IT. vol. 41. no. 6. pp. 1915-1923, 1995, стр. 1920. Сущность метода «усиления секретности» заключается в следующем. На стороне первого корреспондента СС выбирают случайным образом функцию хеширования из универсального множества функций хеширования. Функцию хеширования передают по первому прямому и второму прямому каналам связи без ошибок соответственно второму и третьему корреспондентам СС. Затем хешируют первую декодированную последовательность (ДП) первого корреспондента СС, исходную последовательность второго корреспондента СС и вторую ДП третьего корреспондента СС. Результатом хеширования будет сформированный КлШД для сети связи из трех корреспондентов. С вероятностью сбоя Рε возможно событие, при котором информация нарушителя о КлШД будет более определенной малой величины Iо. Первая ДП длиной (L-U) двоичных символов отображается при хешировании в последовательность Ка длиной Т двоичных символов формируемого КлШД первого корреспондента СС, исходная последовательность длиной (L-U) двоичных символов отображается в последовательность Кb1 длиной Т двоичных символов формируемого КлШД второго корреспондента СС, вторая ДП длиной (L-U) двоичных символов отображается в последовательность Кb2 длиной Т двоичных символов формируемого КлШД третьего корреспондента СС. Предполагается, что нарушитель имеет полную информацию о функции хеширования последовательностей корреспондентов СС. Функция хеширования последовательностей должна удовлетворять ряду требований, как описано, например, в книге Ю. Романец, П. Тимофеев, В. Шаньгин, «Защита информации в компьютерных системах и сетях», М., Радио и связь, 1999, с. 156:
* функция хеширования должна быть чувствительна к всевозможным изменениям в последовательности, таким как. вставки, выбросы, перестановки и т.п.;
* функция хеширования должна обладать свойством необратимости, т.е. задача подбора другой последовательности, которая обладала требуемым значением функции хеширования должна быть вычислительно не разрешима;
* вероятность коллизии, т.е. вероятность события, при котором значения функции хеширования двух различных последовательностей совпадают, должна быть ничтожно мала.
Кроме этого, функция хеширования должна принадлежать универсальному множеству функций хеширования. Универсальное множество функций хеширования определяется следующим образом. Пусть n и r два положительных целых числа, причем n>r. Множество функций G2 отображающих множество двоичных последовательностей длиной n в множество двоичных последовательностей длиной r называется универсальным, если для любых различных последовательностей х1 и х2 из множества двоичных последовательностей длины n вероятность (коллизии) того, что значение функции хеширования от x1 равно значению функции хеширования от х2 (g(x1)=g(x2)), не превосходит 2-r, если функция хеширования g выбирается случайно, в соответствии с равновероятным распределением, из G2, как описано, например, в книге Carter J., Wegman М., "Universal classes of hash functions", Journal of Computer and System Sciences, 1979, Vol. 18, pp. 143-154, стр. 145. Все линейные функции, отображающие множество двоичных последовательностей длиной n в множество двоичных последовательностей длиной r, принадлежат универсальному множеству, как описано, например, в книге Carter J., Wegman M, "Universal classes of hash functions", Journal of Computer and System Sciences, 1979, Vol.18, pp.143-154, стр. 150. Линейные функции могут быть описаны двоичными матрицами размерности пхг.Хранение универсального множества G2 функций хеширования последовательностей для исходной последовательности (ИП), первой и второй ДП (число функций хеширования последовательностей принадлежащих универсальному множеству G2 велико и составляет величину равную 2T(L-U), причем для хранения каждая функция хеширования последовательностей требует T(L-U) ячеек памяти) труднореализуемо и нецелесообразно. Поэтому случайный равновероятный выбор функции хеширования последовательностей из универсального множества G2 функций хеширования последовательностей на стороне первого корреспондента СС заключается в генерировании случайным образом элементов двоичной матрицы размерности (L-U)T, которая описывает случайно выбранную функцию хеширования последовательностей из G2. После формирования корреспондентами СС КлШД путем хеширования ИП, первой и второй ДП по случайно выбранной из G2 функции хеширования последовательностей количество информации Шеннона, получаемое нарушителем о КлШД, сформированном корреспондентами СС с использованием предлагаемого способа не больше, чем
где IR - информация Реньи. Информация Реньи определяется через энтропию Репьи на символ в канале перехвата (КП) с вероятностью ошибки на двоичный символ pи, которая характеризует неопределенность нарушителя о КлШД, при знании нарушителем информации полученной с помощью перехвата, полной информации об алгоритме взаимодействия законных корреспондентов СС и процессе формирования ключа, как описано, например, в книге Bennett С., Brassard G., Crepeau С., Maurer U. "Generalized privacy amplification", IEEE Trans, on IT. vol. 41. no. 6. pp.1915-1923, 1995, стр. 1919. Энтропия Реньи равна
Тогда информация Реньи IR, полученная нарушителем при наблюдении
последовательности длиной (L-U) символов на выходе канала перехвата, определяется выражением
В предлагаемом способе при устранении несовпадений (ошибок) первой и второй ПРИ соответственно первого и третьего корреспондентов СС относительно ИП второго корреспондента СС, когда от второго корреспондента передают первому и третьему корреспондентам соответственно по первому обратному и третьему прямому каналам связи без ошибок блок проверочных символов кодированной ИП длиной Y(N-K) двоичных символов, нарушитель получает дополнительную информацию Реньи о КлШД. Дополнительная информация Реньи IRкод, полученная нарушителем за счет кодирования ИП равна IRкод=Y(N-K), как доказано, например, в лемме 5 работы Maurer U. "Linking Information Reconciliation and Privacy Amplification", J. Cryptology, 1997, no. 10, pp.97-110, стр. 105. Тогда общее количество информации Реньи, поступающее к нарушителю равно
В этом случае (3.1), принимает вид:
Количество информации Шеннона, получаемое нарушителем о сформированном корреспондентами СС КлШД с использованием предлагаемого способа, при использовании метода «усиления секретности», больше ограничения Iо (определенного в (3.5)) с малой вероятностью сбоя Pε. При использовании корреспонден тами кода с повторениями энтропия Реньи и вероятность Pε определяются более сложными соотношениями описанными, например, в журнале «Проблемы информационной безопасности. Компьютерные системы», СПб, Петровский фонд, №1, 2000 г., стр. 18 в статье В. Коржика, В. Яковлева, А. Синюка, «Протокол выработки ключа в канале с помехами», причем энтропия Реньи не зависит от выбранного нарушителем правила обработки перехваченных сообщений.
Определим порядок оценки информации Реньи и вероятности Рε с учетом особенностей формирования КлШД для СС предлагаемым способом. Рассмотрим все процедуры предлагаемого способа, связанные с передачей информации по каналам связи с ошибками, к которым относятся: генерирование и передача ИП второго корреспондента СС второму и третьему корреспондентам СС. Для этого каждый из символов исходной двоичной последовательности, случайно вырабатываемых на стороне второго корреспондента СС (каждый двоичный символ И11 генерируют случайным образом, чтобы обеспечить возможность формирования КлШД для трех корреспондентов СС и повышение стойкости его формирования), повторяют М раз и формируют кодовое слово (КС). Затем формируют зашумленное кодовое слово (ЗКС) путем поразрядного суммирования по модулю два кодовго слова и принятого зашумляющего блока двоичных символов (ЗБДС) второго корреспондента сети связи (КСС). Принятый ЗБДС второго КСС предварительно получен на выходе первого капала связи с ошибками при условии, что на его вход первый КСС подал свой случайно сгенерированный ЗБДС После этого второй КСС передает одновременно ЗКС первому и третьему корреспондентам сети связи по первому обратному каналу связи без ошибок и третьему прямому каналу связи без ошибок, соответственно. Первый и третий корреспонденты одновременно формируют свои принятые слова путем поразрядного суммирования по модулю два ЗКС и ЗБДС первого КСС, а на стороне третьего КСС суммированием ЗКС и принятого ЗБДС третьего КСС. Первый и третий корреспонденты принимают каждое из принятых слов, если все его символы «1» или «0» и выносят решение об информационном символе, соответствующем принятому слову. В противном случае КСС стирают эти кодовое и принятые слова, а также сгенерированный и принятые символы. Зачем для согласованности действий КСС первый и третий корреспонденты одновременно передают решение о принятых (стертых) кодовых словах по каналам связи без ошибок другим корреспондентам сети. Корреспонденты СС одновременно сохраняют в исходной и предварительных последовательностях символы, которые не были стерты. Нарушитель, также, может удалять символы, которые были стерты корреспондентами СС. Однако символы, сохраняемые нарушителем (т.е. которые одновременно сохранили корреспонденты СС), не достаточно надежны, потому, что ошибки, возникающие в каналах связи корреспондентов СС, и ошибки, возникающие в канале перехвата являются независимыми.
Оценка информации Реньи производится с учетом результатов оценок вероятностей ошибок (несовпадений) в первой ПРП первого корреспондента СС и второй ПРП третьего корреспондента СС относительно первой ИП второго корреспондента СС, приведенных в Приложении 1.
Перепишем выражение (1.3) с учетом (1.4), вынося общие множители за скобки, и получим:
Рассмотрим ситуацию у нарушителя, при наблюдении им зашумленной последовательности блоков длиной по (М+1) двоичных символов. Обозначим через ⎢z⎢ вес Хемминга(Вес Хемминга блока двоичных символов - число не нулевых разрядов в блоке двоичных символов) блока z длиной (М+1) двоичных символов, полученного нарушителем. Легко показать, что совместная вероятность события ⎢z⎢=d и события, что этот блок принят первым и третьим корреспондентами, при условии генерации вторым корреспондентом СС двоичного символа «0» равна
где γijk - совместная вероятность событий, при которых соответствующий двоичный символ х=0 из состава КС сформированного вторым корреспондентом СС после снятия зашумления принимается первым корреспондентом СС, как i, причем i∈{0,1}, и третьим корреспондентом СС, как j, причем j∈{0,1}, и нарушителем, как k, причем k∈{0,1}, где:
Аналогично, для случая когда х=1 определяем:
где
Заменяя (3.8) в (3.7) с учетом (3.6), после выноса общих множителей за скобки и выполнения сокращений, получаем вероятность приема нарушителем слова z с весом Хемминга |z|=d при условии, что на вход составного канала КП, включающею последовательное соединение первого канала связи с ошибками и канала перехвата, поступил символ х=0 и первый и третий корреспонденты СС приняли слово:
Аналогично, как для (3.11), получаем вероятность приема нарушителем слова г с весом Хемминга ⎢z⎢=d при условии, что на вход составного канала КП, включающего последовательное соединение первого канала связи с ошибками и канала перехвата, поступил символ х=1 и первый и третий корреспонденты СС приняли кодовое слово:
Используя теорему Байеса (как описано, например, в книге Феллер В., "Введение в теорию вероятности и ее приложения", М., Мир, 1967, 498 с. ] и учитывая равномерный закон распределения вероятностей формирования двоичных символов ИП второго корреспондента СС и независимость ошибок в первом и втором каналах связи с ошибками и канале перехвата, получаем следующие вероятности:
- вероятность приема нарушителем любого блока z веса Хемминга ⎢z⎢=d
- вероятность формирования вторым корреспондентом СС символа х=0, при совместном выполнении условий, что нарушитель принял блок ⎢z⎢=d, и первый и третий корреспонденты СС приняли кодовое слово длиной (М+1)
- вероятность формирования вторым корреспондентом СС символа х=1, при условии, что нарушитель принял блок ⎢z⎢=d, и первый и третий корреспонденты СС приняли кодовое слово длиной (М+1)
Относительное знание нарушителем ИП второго КСС длиной (L-U) представляется его знанием относительно весов Хемминга dl,d2,…d(L-U) соответствующих блоков кода с повторениями длиной (М+1) символов полученных на выходе составного канала связи включающего последовательное соединение первого канала связи с ошибками и канала перехвата. Для ПРП нарушителя энтропия Реньи R равна
Веса d1,d2,…,d(L-U) являются случайными величинами и энтропия Реньи, полученная нарушителем, также является случайной величиной. Вероятность Pε - вероятность того, что сумма случайных величин энтропии Реньи, наблюдаемых нарушителем символов ИП будет меньше значения (R0 - ε)(L - U), где R0 - средняя энтропия Реньи на принятый блок повторения длиной (М+1) на выходе составного канала связи, включающего последовательно соединенные первый канал связи с ошибками и канал перехвата, с малая величина, определяющая значение Рε (, где ). Используя границу Чернова [как описано, например, в книге Коржик В.И., Финк Л.М., Щелкунов К.Н. "Расчет помехоустойчивости систем передачи дискретных сообщений" - М: Радио и связь, 1981. - 231 с. ], Рε определяется из выражения
где - энтропия Реньи (см. выражение (3.2)) на принятый после снятия зашумления нарушителем блок кода с повторениями длиной (М+1) с весом Хемминга на выходе составного канала связи включающего последовательно соединенные первый канат связи с ошибками и канал перехвата; d; P(d) - определяемая из выражения (3.13) вероятность приема нарушителем на выходе составного канала связи, включающего последовательно соединенные первый канал связи с ошибками и канал перехвата, блока кода с повторениями длиной (М+1) и весом Хемминга d; R0 определяется из выражения
Оптимальный параметр σ может быть найден из решения уравнения
Тогда информация Реньи IR в выражении (3.3) при использовании корреспондентами СС для передачи информации кода с повторениями в предлагаемом способе, может быть определена из выражения:
Приложение 4
Расчет информации нарушителя о сформированном ключе шифрования/дешифрования для сети связи
Возможность повышения стойкости к компрометации по отношению к нарушителю сформированного КлШД определяется выбором корреспондентами СС ИП второго корреспондента СС в качестве его информационной основы и формирования кодированной ИП на стороне второго КСС. Подобный выбор определяет знания (информацию) нарушителя о ИП через составной канал связи, включающий последовательное соединение первого каната связи с ошибками от первого корреспондента СС ко второму корреспонденту СС и канала перехвата нарушителя с ошибками от первого корреспондента СС к нарушителю. Знание (информация) нарушителя об ИП в способе-прототипе определяется только через канал перехвата с ошибками от первого корреспондента СС к нарушителю, качество которого значительно выше качества составного канала в предлагаемом способе. Это обстоятельство обеспечивает повышение стойкости к компрометации по отношению к нарушителю формируемого КлШД посредством предлагаемого способа по сравнению со способом-прототипом.
В условиях минимизации информации нарушителя о формируемом КлШД, и с учетом особенностей его формирования по открытым каналам связи с ошибками к КлШД для СС целесообразно предъявить ряд требований.
Требования по достоверности формирования КлШД определяются вероятностью несовпадения сформированных корреспондентами СС КлШД - .
Требования по безопасности формирования КлШД определяются:
а) требуемой (минимально допустимой) длиной формируемого КлШД - ТТр [двоичных символов];
б) требуемым (максимально допустимым) количеством информации Шеннона, получаемым нарушителем о сформированном КлШД [бит];
в) вероятностью риска, что информация Шеннона о сформированном КлШД превысит .
Задача минимизации информации, нарушителя о формируемом КлШД для СС сводится к подбору параметров процесса формирования КлШД для СС таким образом, чтобы в условиях выполнения требований по достоверности и безопасности сформировать КлШД с минимальным количеством информации о сформированном КлШд.
Требования к КлШД для СС можно записать в виде
где Рнес - вероятность несовпадения сформированных корреспондентами СС КлШД, которая равна
где PЕ1 определяется из выражения (2.1), РЕ2 определяется из выражения (2.3) Приложения 2, Iо определено в (3.5), а Рε определена в (3.17) Приложения 3.
Для сравнения количества информации о сформированном КлШД предлагаемого способа и способа-прототипа зададим требования к КлШД для СС:
Определим общие исходные данные для фиг. 1:
1. Качество первого канала связи с ошибками - рm1=3,23⋅10-2;
2. Качество второго канала связи с ошибками - рm2=8⋅10-3;
3. Качество канала перехвата нарушителя - pw=3⋅10-2.
Проведение полноценного сравнения способа-прототипа и предлагаемого способа по оценке количества информации о сформированном КлШД СС предполагает использование одинаковых параметров: L [дв.с], [дв.с], U [дв.с.], N [дв.с.], К [дв.с], У [число].
Приведем результаты расчета одинаковых параметров и оценки выполнения требований для условий формирования КлШД для СС с использованием предлагаемого способа формирования КлШД для СС и способа прототипа.
Параметры:
L=43738 [дв.с.];
M+1=3 [дв.с];
U=5054 [дв.с.];
N=2047 [дв.с.];
K=2036 [дв.с.];
Y=19.
Оценка выполнения требований предлагаемого способа:
T=64 [дв.с.];
Pнес=9,97⋅10-2;
Pε=3,48⋅10-4, ε=4,88⋅10-4 [бит].
Оценка количества информации о сформированном КлШД предлагаемого способа:
I0=8,96⋅10-3 [бит].
Оценка выполнения требований способа-прототипа:
T1=64 [дв.с.];
Pнес=5,1⋅10-2;
Рε1=6⋅10-4, ε1=4,78⋅10-4 [бит].
Оценка количества информации нарушителя о сформированном КлШД для способа-прототипа:
I01=9,93⋅10-2 [бит].
Сравнение расчетных значений количества информации о сформированном КлШД СС предлагаемого способа - I0 и для способа прототипа - I01 при одинаковых требованиях: ТТр=64[дв.с], исходных данных: pm1=3,23⋅10-2; pm2=8⋅10-3; pи=3⋅10-2 и параметрах: L=43738 [дв.с.]; (М+1)=3 [дв.с.]; U=5054 [дв.с.]; N=2047 [дв.с.]; K=2036 [дв.с.]; Y=19 показывает, что I0 меньше I01 в абсолютном сравнении на величину 9,032⋅10-2 [бит] и в 1 1,08318 раз при относительном сравнении. Это подтверждает факт повышения стойкости по отношению к нарушителю сформированного КлШД для СС к компрометации для предлагаемого способа по сравнению со способом-прототипом.
название | год | авторы | номер документа |
---|---|---|---|
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ / ДЕШИФРОВАНИЯ | 2021 |
|
RU2774103C1 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2016 |
|
RU2613845C1 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧЕЙ ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2023 |
|
RU2796051C1 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2012 |
|
RU2480923C1 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2000 |
|
RU2180469C2 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2005 |
|
RU2295199C1 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2000 |
|
RU2183051C2 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2000 |
|
RU2180770C2 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ / ДЕШИФРОВАНИЯ | 2020 |
|
RU2749016C1 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2019 |
|
RU2713694C1 |
Изобретение относится к области криптографии. Технический результат заключается в повышении стойкости к компрометации ключа шифрования/дешифрования со стороны нарушителя. Технический результат достигается за счет того, что генерируют случайный двоичный символ, формируют кодовое слово, принятый двоичный символ, двоичный символ подтверждения, передают двоичный символ подтверждения, формируют исходную последовательность на стороне второго корреспондента сети связи (КСС) и первую предварительную последовательность на стороне первого КСС, формируют вторую предварительную последовательность на стороне третьего КСС, кодируют исходную последовательность, выделяют из кодированной исходной последовательности блок проверочных символов, передают блок проверочных символов по каналам связи без ошибок, формируют и запоминают первую и вторую декодированные последовательности, формируют функцию хеширования на стороне первого корреспондента, одновременно передают функцию хеширования последовательностей по первому прямому и второму прямому каналам связи без ошибок, соответственно второму и третьему корреспондентам сети связи, после чего формируют ключ шифрования/дешифрования из исходной, первой и второй декодированных последовательностей. 10 з.п. ф-лы, 50 ил.
1. Способ формирования ключа шифрования/дешифрования, заключающийся в том, что генерируют случайный двоичный символ, формируют кодовое слово, формируют принятый двоичный символ, формируют двоичный символ подтверждения, передают двоичный символ подтверждения, формируют исходную и первую предварительную последовательности, формируют вторую предварительную последовательность на стороне третьего корреспондента сети связи, кодируют исходную последовательность, выделяют из кодированной исходной последовательности блок проверочных символов, передают блок проверочных символов по каналам связи без ошибок, формируют и запоминают первую и вторую декодированные последовательности, формируют функцию хеширования на стороне первого корреспондента, одновременно передают функцию хеширования последовательностей по первому прямому и второму прямому каналам связи без ошибок соответственно второму и третьему корреспондентам сети связи, после чего формируют ключ шифрования/дешифрования из исходной, первой и второй декодированных последовательностей, отличающийся тем, что для формирования исходной последовательности L раз, где L>104 - выбранная первичная длина исходной последовательности, на стороне первого корреспондента сети связи формируют зашумляющий блок двоичных символов, причем каждый р-й двоичный символ зашумляющего блока двоичных символов, где р=1, 2, 3, …, (М+1), генерируют случайным образом, где М≥1, одновременно передают его по первому и второму каналам связи с ошибками второму и третьему корреспондентам сети связи, соответственно, после чего зашумляющий блок двоичных символов одновременно принимают на стороне второго корреспондента сети связи в качестве принятого зашумляющего блока двоичных символов второго корреспондента сети связи, а на стороне третьего корреспондента сети связи в качестве принятого зашумляющего блока двоичных символов третьего корреспондента сети связи, затем на стороне второго корреспондента сети связи генерируют случайный двоичный символ, формируют из него кодовое слово, после чего формируют зашумленное кодовое слово путем поразрядного суммирования по модулю два принятого зашумляющего блока двоичных символов второго корреспондента сети связи и сформированного кодового слова, затем одновременно передают зашумленное кодовое слово по первому обратному и третьему прямому каналам связи без ошибок на сторону первого и третьего корреспондентов сети связи, соответственно, затем на стороне первого корреспондента сети связи формируют принятое слово первого корреспондента сети связи путем поразрядного суммирования по модулю два зашумляющего блока двоичных символов и зашумленного кодового слова, и одновременно на стороне третьего корреспондента сети связи формируют принятое слово третьего корреспондента сети связи путем поразрядного суммирования по модулю два принятого зашумляющего блока двоичных символов третьего корреспондента сети связи и зашумленного кодового слова, затем на стороне первого корреспондента сети связи из принятого слова первого корреспондента сети связи формируют принятый двоичный символ первого корреспондента сети связи и двоичный символ подтверждения F, и одновременно на стороне третьего корреспондента сети связи из принятого слова третьего корреспондента сети связи формируют принятый двоичный символ третьего корреспондента сети связи и двоичный символ подтверждения F1, после чего одновременно передают сформированный первым корреспондентом сети связи двоичный символ подтверждения F по первому прямому и второму прямому каналам связи без ошибок соответственно второму и третьему корреспондентам сети связи, а сформированный третьим корреспондентом сети связи двоичный символ подтверждения F1 одновременно передают по второму обратному и третьему обратному каналам без ошибок первому и второму корреспондентам сети связи, соответственно, при равенстве нулю по крайней мере одного из полученных двоичных символов подтверждения сгенерированный случайный двоичный символ второго корреспондента сети связи и принятые двоичные символы первого и третьего корреспондентов сети связи стирают, в противном случае запоминают сгенерированный случайный двоичный символ второго корреспондента сети связи, принятый двоичный символ первого корреспондента сети связи, принятый двоичный символ третьего корреспондента сети связи соответственно в качестве i-х двоичных символов, где i=1, 2, 3, …, (L-U), исходной последовательности второго корреспондента сети связи, первой предварительной последовательности первого корреспондента сети связи и второй предварительной последовательности третьего корреспондента сети связи, соответственно, где U - количество стертых двоичных символов при формировании исходной последовательности и предварительных последовательностей, затем на стороне второго корреспондента сети связи кодируют исходную последовательность, выделяют из кодированной исходной последовательности блок проверочных символов, одновременно передают его по первому обратному и третьему прямому каналам связи без ошибок первому и третьему корреспондентам сети связи, соответственно, затем одновременно формируют первую декодированную последовательность на стороне первого корреспондента сети связи, а вторую декодированную последовательность на стороне третьего корреспондента сети связи.
2. Способ по п. 1, отличающийся тем, что для формирования кодового слова сгенерированный случайный двоичный символ повторяют М раз, где М≥1.
3. Способ по п. 1, отличающийся тем, что принятому двоичному символу присваивают значение первого двоичного символа принятого слова.
4. Способ по п. 1, отличающийся тем, что для независимого друг от друга и одновременного формирования двоичного символа подтверждения F первого корреспондента сети связи или двоичного символа подтверждения F1 третьего корреспондента сети связи соответственно первый двоичный символ принятого слова сравнивают с последующими М двоичными символами принятого слова, где М≥1 - число повторений сгенерированного случайного двоичного символа при формировании кодового слова, после чего при наличии М совпадений первого двоичного символа принятого слова с последующими М двоичными символами принятого слова двоичному символу подтверждения F первого корреспондента или двоичному символу подтверждения F1 третьего корреспондента присваивают значение единица, а при наличии хотя бы одного несовпадения первого двоичного символа принятого слова с последующими М двоичными символами принятого слова двоичному символу подтверждения F первого корреспондента или двоичному символу подтверждения F1 третьего корреспондента присваивают значение ноль.
5. Способ по п. 1, отличающийся тем, что исходную последовательность кодируют линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом, где К - длина блока информационных символов и N - длина кодового блока, порождающая матрица которого имеет размерность K×N, причем N>K, для чего предварительно исходную последовательность разделяют на Y подблоков длиной К двоичных символов, где Y=(L-U)/K, затем последовательно, начиная с первого до Y-го из каждого j-го подблока, где j=1, 2, 3, Y, формируют j-й кодовый блок длиной N двоичных символов перемножением j-го подблока на порождающую матрицу, затем из j-го кодового блока выделяют j-й подблок проверочных символов длиной (N-K) двоичных символов, который запоминают в качестве j-го подблока блока проверочных символов кодированной исходной последовательности.
6. Способ по п. 5, отличающийся тем, что размеры К и N порождающей матрицы линейного блокового систематического двоичного помехоустойчивого (N, К) кода выбирают К=2m-1-m и N=2m-1, где m≥3.
7. Способ по п. 1, отличающийся тем, что для формирования первой и второй декодированных последовательностей первую и вторую предварительные последовательности первого и третьего корреспондентов сети связи, соответственно, независимо и одновременно декодируют линейным блоковым систематическим двоичным помехоустойчивым (N, К) кодом, где К - длина блока информационных символов и N - длина кодового блока, транспонированная проверочная матрица которого имеет размерность N×(N-K), причем N>K, для чего соответствующие предварительные последовательности и блоки проверочных символов кодированной исходной последовательности разделяют на Y соответствующих пар декодируемых подблоков и подблоков проверочных символов, где Y=(L-U)/K, причем длины декодируемых подблоков и подблоков проверочных символов выбирают равными соответственно К и (N-K) двоичных символов, затем формируют Y принятых кодовых блоков длиной N двоичных символов путем конкатенации справа к j-му декодируемому подблоку j-го подблока проверочных символов, где j=1, 2, 3, Y, затем последовательно, начиная с 1-го до К-го, вычисляют j-й синдром длиной (N-K) двоичных символов перемножением j-го принятого кодового блока на транспонированную проверочную матрицу, а по полученному j-му синдрому исправляют ошибки в j-м декодируемом подблоке, который затем запоминают в качестве j-го подблока декодированных последовательностей.
8. Способ по п. 7, отличающийся тем, что выбирают размеры К и N проверочной матрицы линейного блокового систематического двоичного помехоустойчивого (N, К) кода К=2m-1-m и N=2m-1, где m≥3.
9. Способ по п. 1, отличающийся тем, что функцию хеширования последовательностей на стороне первого корреспондента сети связи формируют в виде двоичной матрицы G размерности (L-U)×T, где Т≥64 - длина формируемого ключа шифрования/дешифрования, причем каждый из элементов двоичной матрицы G генерируют случайным образом.
10. Способ по любому из пп. 1, 9, отличающийся тем, что функцию хеширования последовательностей передают последовательно, начиная с первой по (L-U)-ю строки двоичной матрицы G.
11. Способ по любому из пп. 1, 9, 10, отличающийся тем, при одновременном формировании ключа шифрования/дешифрования предварительно двоичную матрицу G и исходную последовательность второго корреспондента сети связи, двоичную матрицу G и первую декодированную последовательность первого корреспондента сети связи, двоичную матрицу G и вторую декодированную последовательность третьего корреспондента сети связи разделяют на W соответствующих пар подматриц размерности Р×Т, где Р=(L-U)/W, где Т≥64 - длина формируемого ключа шифрования/дешифрования, и соответственно подблоков исходной последовательности, первой декодированной последовательности и второй декодированной последовательности длиной Р двоичных символов соответственно, затем одновременно начиная с первого до W-го, вычисляют z-й первичный ключ длины Т двоичных символов, где z=1, 2, 3, …, W, перемножением z-го подблока исходной последовательности второго корреспондента сети связи на z-го подматрицу Gz, z-го подблока первой декодированной последовательности первого корреспондента сети связи на z-ю подматрицу Gz, z-го подблока второй декодированной последовательности третьего корреспондента сети связи на z-ю подматрицу Gz, после чего одновременно формируют ключ шифрования/дешифрования путем поразрядного суммирования по модулю два всех W первичных ключей на сторонах всех корреспондентов сети связи.
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2012 |
|
RU2480923C1 |
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2005 |
|
RU2295199C1 |
US 5515438 A1, 07.05.1996 | |||
СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ/ДЕШИФРОВАНИЯ | 2000 |
|
RU2180469C2 |
WO 1995028784 A1, 26.10.1995. |
Авторы
Даты
2022-03-15—Публикация
2021-03-24—Подача