СПОСОБ ФОРМИРОВАНИЯ КЛЮЧА ШИФРОВАНИЯ / ДЕШИФРОВАНИЯ
METHOD FOR FORMING ENCRYPTION/DECRYPTION KEY

Изобретение относится к области криптографии, а именно к формированию ключа шифрования/дешифрования (КлШД) и может быть использовано в качестве отдельного элемента при построении симметричных криптографических систем, предназначенных для передачи шифрованных речевых, звуковых, телевизионных и др. сообщений.
1
1
Предлагаемый способ формирования КлШД может использоваться в криптографических системах в случае отсутствия или потери криптосвязности ( Криптосвязность - наличие у корреспондентов сети связи одинакового КлШД.) между корреспондентами сети связи (СС), включающей трех корреспондентов, или установления криптосвязности между новыми корреспондентами СС в условиях ведения нарушителем перехвата информации, передаваемой по открытым каналам связи. Под термином «сеть связи» понимают множество узлов и линий, соединяющих их, причем для любых двух различных узлов существует по крайней мере один соединяющий их путь, как описано, например, в книге Д. Филлипс, А. Гарсиа-Диас, «Методы анализа сетей», М.: Мир, 1984, стр. 16.
A
B
A
B
Известен способ формирования КлШД, описанный в книге У. Диффи «Первые десять лет криптографии с открытым ключом», ТИИЭР, т. 76, №5, с. 57-58. Известный способ заключается в предварительном распределении между сторонами направления связи (СНС) чисел α и β, где α - простое число и 1≤β≤α-1. Под термином «направление связи» понимают совокупность линий передачи и узлов связи, обеспечивающая связь между двумя пунктами сети, как описано, например, в Национальном стандарте РФ, ГОСТ Р 53111-2008, «Устойчивость функционирования сети связи общего пользования», Москва: Стандартинформ, 2009, стр. 7. Передающая сторона направления связи (ПерСНС) и приемная сторона НС (ПрСНС), независимо друг от друга, выбирают случайные соответствующие числа X и X, которые хранят в секрете и затем формируют числа на основе X, α, β на ПерСНС и X, α, β на ПрСНС. СНС обмениваются полученными цифрами по каналам связи без ошибок. После получения чисел корреспондентов стороны преобразовывают полученные числа с использованием своих секретных чисел в единый КлШД. Способ позволяет шифровать информацию во время каждого сеанса связи на новых КлШД (т.е. исключает хранение ключевой информации на носителях) и сравнительно быстро сформировать КлШД при использовании одного незащищенного канала связи.
2
Однако известный способ обладает относительно низкой стойкостью КлШД к компрометации (2 Стойкость КлШД к компрометации - способность криптографической системы противостоять попыткам нарушителя получить КлШД, который сформирован и используется законными участниками обмена информацией, при использовании нарушителем информации о КлШД, полученной в результате перехвата, хищения, утраты, разглашения, анализа и т.д.), время действия КлШД ограничено продолжительностью одного сеанса связи или его части, некорректное распределение чисел α и β приводит к невозможности формирования КлШД.
Известен также способ формирования КлШД при использовании квантового канала связи [Патент US №5515438 H04L 9/00 от 07.05.96], который позволяет автоматически сформировать КлШД без дополнительных мер по рассылке (доставке) предварительной последовательности. Известный способ заключается в использовании принципа неопределенности квантовой физики и формирует КлШД, посредством передачи фотонов по квантовому каналу. Способ обеспечивает получение КлШД с высокой стойкостью к компрометации, осуществляет гарантированный контроль наличия и степени перехвата КлШД.
Однако реализация известного способа требует высокоточной аппаратуры, что обуславливает высокую стоимость его реализации. Кроме этого, КлШД по данному способу может быть сформирован при использовании волоконно-оптических линий связи ограниченной длины, что существенно ограничивает область применение его на практике.
Известен также способ формирования КлШД на основе информационного различия [Патент РФ №2180770 от 20.03.2002].
Данный способ включает формирование исходной последовательности (ИП) на ПрСНС, кодирование ИП, выделение из кодированной ИП блока проверочных символов, передачу его по обратному каналу связи без ошибок на ПерСНС, формирование декодированной последовательности (ДП) на ПерСНС, формирование функции хеширования последовательностей на ПерСНС, передачу ее по прямому каналу связи без ошибок на ПрСНС и формирование ключей шифрования / дешифрования на ПрСНС и на ПерСНС путем хеширования ИП и ДП по сформированной на ПерСНС функции хеширования последовательностей.
Недостатком этого способа является относительно большие временные затраты на формирование КлШД для СС из трех корреспондентов, так как необходимо последовательно формировать КлШД посредством способа для каждой пары корреспондентов СС, включающей первого корреспондента, затем выбирать один из сформированных КлШД в качестве КлШД для СС и обеспечивать его получение всеми корреспондентами СС.
Наиболее близким по технической сущности к заявляемому способу формирования КлШД является способ формирования КлШД [Патент РФ №2480923 от 27.04.2013].
Способ-прототип включает генерирование случайного двоичного символа на стороне первого корреспондента сети связи (КСС), формирование из случайного двоичного символа кодового слова, передачу кодового слова от первого корреспондента второму и третьему КСС, формирование принятого двоичного символа на сторонах второго и третьего КСС, формирование двоичного символа подтверждения на сторонах второго и третьего КСС, одновременную передачу двоичного символа подтверждения от второго корреспондента первому и третьему КСС, одновременную передачу двоичного символа подтверждения от третьего корреспондента первому и второму КСС, формирование исходной последовательности (ИП) первым корреспондентом СС, первой предварительной последовательности (1ПРП) на стороне второго и второй предварительной последовательности (2ПРП) на стороне третьего КСС, кодирование ИП, выделение из кодированной ИП блока проверочных символов, передачу его от первого корреспондента второму и третьему КСС, формирование и запоминание первой декодированной последовательности (1ДП) на стороне второго КСС и второй декодированной последовательности (2ДП) на стороне третьего КСС, формирование функции хеширования на стороне первого корреспондента, передаче функции хеширования от первого корреспондента второму и третьему КСС, после чего формирование ключа шифрования/дешифрования из исходной, первой и второй декодированных последовательностей на сторонах первого, второго и третьего КСС, соответственно.
3
Формирование ИП первым КСС заключается в генерировании L раз, где L>10 - выбранная первичная длина ИП, случайного двоичного символа, формировании из него кодового слова путем повторения сгенерированного случайного двоичного символа М раз, где М≥1, и передаче кодового слова по каналам связи с ошибками второму и третьему КСС, одновременном формировании из принятого слова принятого двоичного символа и двоичного символа подтверждения на сторонах второго и третьего КСС, одновременной передаче двоичного символа подтверждения F от второго КСС по первому обратному каналу без ошибок первому корреспонденту КСС и третьему прямому каналу без ошибок третьему корреспонденту КСС, одновременной передаче двоичного символа подтверждения F1 от третьего КСС по второму обратному каналу без ошибок первому корреспонденту КСС и третьему обратному каналу без ошибок второму корреспонденту КСС, причем при равенстве хотя бы одного из двоичных символов подтверждения F и F1 нулю соответствующие КСС осуществляют стирание сгенерированного случайного двоичного символа и принятых двоичных символов, а при одновременном равенстве двоичных символов подтверждения F и F1 единице осуществляется запоминание сгенерированного случайного двоичного символа и принятых двоичных символов соответственно первым, вторым и третьим КСС в качестве i-x элементов ИП, 1ПРП и 2ПРП, где i=1, 2, 3, …, L-U, соответственно, на сторонах первого, второго и третьего КСС, где U - количество стертых символов при формировании исходной и предварительных последовательностей.
m
m
Кодирование ИП осуществляется линейным блоковым систематическим двоичным помехоустойчивым (N, K) кодом, порождающая матрица которого имеет размерность K×N, причем N>K. Размеры K и N порождающей матрицы линейного блокового систематического двоичного помехоустойчивого (N, K) кода выбирают K=2-1-m и N=2-1, где m≥3. Для этого ИП предварительно разделяют на Y подблоков длиной по K двоичных символов, где Y=(L-U)/K, затем последовательно начиная с 1-го до Y-го из каждого j-го подблока, где j=1, 2, 3, …, Y, формируют j-й кодовый блок длиной N двоичных символов перемножением j-го подблока на порождающую матрицу, затем из j-го кодового блока выделяют j-й подблок проверочных символов длиной N-K двоичных символов, который запоминают в качестве j-го подблока блока проверочных символов кодированной ИП.
Выделение блока проверочных символов ИП заключается в разбиении кодированной ИП на ИП и блок проверочных символов кодированной ИП и выделении последнего.
Передача блока проверочных символов кодированной ИП заключается в передаче его от первого КСС по первому прямому каналу связи без ошибок второму КСС и по второму прямому каналу связи без ошибок третьему КСС.
m
m
Формирование 1ДП вторым КСС и 2ДП третьим КСС осуществляется следующим образом, 1ПРП второго КСС и одновременно 2ПРП третьего КСС декодируют линейным блоковым систематическим двоичным помехоустойчивым (N, K) кодом, транспонированная проверочная матрица которого имеет размерность N×(N-K), причем N>K. Размеры K и N проверочной матрицы линейного блокового систематического двоичного помехоустойчивого (N, K) кода выбирают K=2-1-m и N=2-1, где m≥3. Для этого соответствующую предварительную последовательность на сторонах 2КСС и 3КСС и блок проверочных символов кодированной исходной кодированной последовательности разделяют на Y соответствующих пар декодируемых подблоков и подблоков проверочных символов, где Y=(L-U)/K, причем длины декодируемых подблоков и подблоков проверочных символов выбирают равными соответственно K и N-K двоичных символов, затем формируют Y принятых кодовых блоков длиной N двоичных символов путем конкатенации справа к j-му декодируемому подблоку j-го подблока проверочных символов, где j=1, 2, 3, …, Y, после чего последовательно, начиная с 1-го до Y-го, вычисляют j-й синдром S длиной N-K двоичных символов перемножением j-го принятого кодового блока на транспонированную проверочную матрицу, а по полученному j-му синдрому S исправляют ошибки в j-м декодируемом подблоке, который затем запоминают в качестве соответствующего j-го подблока декодированной последовательности.
Формирование функции хеширования последовательностей первым КСС заключается в формировании двоичной матрицы G размерности (L-U)×T, где Т≥64 - длина формируемого ключа шифрования/дешифрования, причем каждый из элементов двоичной матрицы G генерируют случайным образом.
Передача функции хеширования последовательностей заключается в последовательной передаче, начиная с 1-й по (L-U)-ю строки двоичной матрицы G, от первого КСС по первому прямому каналу связи без ошибок второму КСС и по второму прямому каналу связи без ошибок третьему КСС.
z
z
z
Формирование КлШД первым, вторым и третьим КСС заключается в хешировании исходной и декодированной последовательностей по сформированной первым КСС функции хеширования последовательностей. Для хеширования последовательностей предварительно на стороне первого КСС двоичную матрицу G и ИП, на стороне второго КСС двоичную матрицу G и 1ДП, а на стороне третьего КСС двоичную матрицу G и 2ДП разделяют на W соответствующих пар подматриц размерности Р×Т, где P=(L-U)/W, и подблоков исходной и декодированных последовательностей длиной Р двоичных символов, затем начиная с 1-го до W-й, вычисляют z-й первичный ключ длиной Т двоичных символов, где z=1, 2, 3, …, W, перемножением z-го подблока ИП на z-ю подматрицу G на стороне первого КСС, z-го подблока 1ДП на z-ю подматрицу G на стороне второго КСС, z-го подблока 2ДП на z-ю подматрицу G на стороне третьего КСС, после чего формируют КлШД путем поразрядного суммирования по модулю два всех W первичных ключей на сторонах первого, второго и третьего КСС.
Способ-прототип позволяет сформировать КлШД между КСС со сравнительно небольшими материальными затратами при большом пространственном разнесении корреспондентов.
Недостатком прототипа является относительно невысокая стойкость КлШД к компрометации, обусловленная достаточно большим количеством информации о КлШД, получаемой нарушителем в результате перехвата незащищенных информационных кодовых слов кода с М-повторениями в процессе формирования КСС ИП, 1ПРП и 2ПРП, как основы формирования КлШД, а также сохранением возможности для нарушителя получить доступ к промежуточным последовательностям КСС при формировании КлШД.
Целью заявленного технического решения является разработка способа формирования КлШД, обеспечивающего увеличение стойкости к компрометации КлШД со стороны нарушителя.
4
Поставленная цель достигается тем, что в предлагаемом способе формирования ключа шифрования/дешифрования, заключающемся в том, что генерируют L раз случайный двоичный символ на стороне первого КСС, где L>10 - выбранная начальная длина первичной случайной последовательности, формируют из случайного двоичного символа кодовое слово, одновременно передают кодовое слово от первого КСС второму и третьему КСС по первому и второму каналам связи с ошибками, соответственно, формируют принятые двоичные символы на сторонах второго и третьего КСС, формируют двоичные символы подтверждения на сторонах второго и третьего КСС, передают двоичный символ подтверждения F1 от второго КСС первому КСС по первому обратному каналу связи без ошибок и третьему КСС по третьему прямому каналу связи без ошибок, передают двоичный символ подтверждения F2 от третьего КСС первому КСС по второму обратному каналу связи без ошибок и второму КСС по третьему обратному каналу связи без ошибок, формируют исходную и предварительные последовательности, кодируют исходную последовательность, выделяют из кодированной исходной последовательности блок проверочных символов, передают его по каналам связи без ошибок корреспондентам сети связи, формируют и запоминают декодированные последовательности, формируют функцию хеширования на стороне первого КСС, передают функцию хеширования от первого КСС второму КСС по первому прямому каналу связи без ошибок и третьему КСС по второму прямому каналу связи без ошибок, после чего корреспонденты сети связи формируют ключ шифрования/дешифрования из исходной и декодированных последовательностей.
Для формирования исходной, первой и второй предварительных последовательностей сгенерированный случайный двоичный символ первого КСС и принятые двоичные символы второго и третьего КСС стирают, при равенстве нулю, по крайней мере, одного из полученных двоичных символов подтверждения F1 или F2, в противном случае запоминают сгенерированный случайный двоичный символ первого КСС, принятый двоичный символ второго КСС, принятый двоичный символ третьего КСС соответственно в качестве i-x элементов, где i=1, 2, 3, …, (L-U), первой случайной, первой принятой и второй принятой случайных последовательностей соответственно на сторонах первого, второго и третьего корреспондентов сети связи, где U - количество стертых символов при формировании первой случайной, первой и второй принятых случайных последовательностей, затем на стороне второго КСС формируют и запоминают исходную последовательность, причем каждый ν-й двоичный символ исходной последовательности, где ν=1, 2, 3, …, (L-U), генерируют случайным образом (L-U) раз, формируют зашумленную исходную последовательность длиной (L-U) двоичных Символов путем поразрядного суммирования по модулю два исходной и первой принятой случайной последовательностей, одновременно передают зашумленную исходную последовательность по первому обратному каналу связи без ошибок на сторону первого КСС, и по третьему прямому каналу связи без ошибок на сторону третьего КСС, затем на стороне первого КСС формируют и запоминают первую предварительную последовательность длиной (L-U) двоичных символов путем поразрядного суммирования зашумленной исходной и первой случайной последовательностей и, одновременно, на стороне третьего КСС формируют и запоминают вторую предварительную последовательность длиной (L-U) двоичных символов путем поразрядного суммирования зашумленной исходной и второй принятой случайной последовательностей, после этого, для формирования декодированных последовательностей первого и третьего КСС на стороне второго КСС исходную последовательность кодируют, выделяют из кодированной исходной последовательности блок проверочных символов, одновременно передают блок проверочных символов кодированной исходной последовательности по первому обратному и третьему прямому каналам связи без ошибок на сторону первого и третьего КСС, соответственно, после чего, независимо и одновременно на сторонах первого и третьего КСС, соответственно, декодируют первую и вторую предварительные последовательности и формируют первую декодированную последовательность первого КСС и вторую декодированную последовательность третьего КСС.
Для формирования кодового слова сгенерированный случайный двоичный символ повторяют М раз, где М≥1. Принятому двоичному символу на сторонах второго КСС и третьего КСС присваивают значение первого двоичного символа соответствующего принятого слова. Для независимого и одновременного формирования двоичного символа подтверждения F1 второго КСС или двоичного символа подтверждения F2 третьего КСС первый двоичный символ принятого слова сравнивают с последующими М двоичными символами принятого слова, где М≥1 - число повторений сгенерированного случайного двоичного символа при формирования кодового слова, после чего при наличии М совпадений первого двоичного символа принятого слова с М двоичными символами принятого слова двоичному символу подтверждения F1 второго КСС или двоичному символу подтверждения F2 третьего КСС присваивают значение единица, а при наличии хотя бы одного несовпадения первого двоичного символа принятого слова с М двоичными символами принятого слова двоичному символу подтверждения F1 второго КСС или двоичному символу подтверждения F2 третьего КСС присваивают значение ноль.
m
m
Исходную последовательность на стороне второго КСС кодируют линейным блоковым систематическим двоичным помехоустойчивым (N, K) кодом, где K - длина блока информационных символов и 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-го подблока блока проверочных символов кодированной исходной последовательности. Размеры K и N порождающей матрицы линейного блокового систематического двоичного помехоустойчивого (N, K) кода выбирают K=2-1-m и N=2-1, где m≥3.
m
m
Для одновременного и независимого формирования первой и второй декодированных последовательностей первую и вторую предварительные последовательности первого и третьего КСС, соответственно, независимо и одновременно декодируют линейным блоковым систематическим двоичным помехоустойчивым (N, K) кодом, где K - длина блока информационных символов и N - длина кодового блока, транспонированная проверочная матрица которого имеет размерность N×(N-K), причем N>K, для чего соответствующие для КСС предварительные последовательности и блоки проверочных символов кодированной исходной последовательности разделяют на Y соответствующих пар декодируемых подблоков и подблоков блока проверочных символов кодированной ИП, где Y=(L-U)/K, причем длины декодируемых подблоков и подблоков блока проверочных символов кодированной ИП выбирают равными, соответственно, K и (N-K) двоичных символов, затем формируют Y принятых блоков длиной N двоичных символов путем конкатенации справа к j-му декодируемому подблоку j-го подблока блока проверочных символов кодированной ИП, где j=1, 2, 3, …, Y, затем последовательно, начиная с 1-го до Y-го, вычисляют j-й синдром длиной N-K двоичных символов перемножением j-го принятого блока на транспонированную проверочную матрицу, а по полученному j-му синдрому исправляют ошибки в соответствующем для КСС j-м декодируемом подблоке, который затем запоминают в качестве j-го подблока первой декодированной последовательности на стороне первого КСС и второй декодированной последовательности на стороне 3 КСС. Выбирают размеры K и N проверочной матрицы линейного блокового систематического двоичного помехоустойчивого (N, K) кода K=2-1-m и N=2-1, где m≥3.
Функцию хеширования последовательностей на стороне первого корреспондента сети связи формируют в виде двоичной матрицы G размерности (L-U)×T, где Т≥64 - длина формируемого ключа шифрования/дешифрования, причем каждый из элементов двоичной матрицы G генерируют случайным образом. Функцию хеширования последовательностей, сформированную первым корреспондентом сети связи, одновременно передают последовательно, начиная с первой по (L-U)-ю строки двоичной матрицы G второму и третьему корреспондентам сети связи по первому прямому и второму прямому каналам связи без ошибок, соответственно.
z
z
z
При одновременном формировании ключа шифрования/дешифрования предварительно двоичную матрицу G и исходную последовательность второго КСС, двоичную матрицу G и первую декодированную последовательность первого КСС, двоичную матрицу G и вторую декодированную последовательность третьего КСС разделяют на W соответствующих пар подматриц размерности Р×Т, где P=(L-U)/W, и подблоков исходной последовательности, первой декодированной последовательности и второй декодированной последовательности длиной по Р двоичных символов соответственно, затем одновременно начиная с первого до W-й, вычисляют z-й первичный ключ длиной Т двоичных символов, где z=1, 2, 3, …, W, перемножением z-го подблока исходной последовательности второго КСС на z-ю подматрицу G, z-го подблока 1ДП 1КСС на z-ю подматрицу G, z-го подблока второй декодированной последовательности третьего КСС на z-ю подматрицу G, после чего одновременно формируют ключ шифрования/дешифрования путем поразрядного суммирования по модулю два W первичных ключей на сторонах корреспондентов сети связи. Стирают первичную случайную последовательность, первую случайную, первую предварительную, первую декодированную последовательности на стороне первого КСС, первую принятую случайную, исходную последовательности на стороне второго КСС, вторую принятую случайную, вторую предварительную и вторую декодированную последовательности на стороне третьего КСС.
Благодаря новой совокупности существенных признаков за счет передачи по каналу связи с ошибками кодового слова кода с М-повторениями, несущего информацию об зашумлении, а не непосредственно информацию о КлШД в процессе его формирования корреспондентами сети связи обеспечивается уменьшение общего количества информации о КлШД, полученной нарушителем в результате перехвата им всей информации, передаваемой по каналам связи с ошибками и каналам связи без ошибок.
Уничтожение (стирание) после формирования КлШД всех промежуточных последовательностей сохраненных КСС для формирования КлШД исключает возможность получения нарушителем дополнительной информации о КлШД. Вышеописанная новая совокупность существенных признаков в предлагаемом способе позволяют повысить стойкость формируемого КлШД к компрометации по отношению к нарушителю.
Заявленный способ поясняется фигурами, на которых показаны:
• на фигуре 1 - обобщенная структурная схема сети связи, применяемая в заявленном способе;
• на фигуре 2 - временная диаграмма генерирования случайного двоичного символа на стороне первого КСС;
• на фигуре 3 - временная диаграмма формирования кодового слова на стороне первого КСС;
• на фигуре 4 - временная диаграмма вектора ошибок в первом канале связи с ошибками между первым и вторым КСС;
• на фигуре 5 - временная диаграмма принятого вторым КСС принятого слова;
• на фигуре 6 - временная диаграмма формирования вторым КСС двоичного символа подтверждения F1;
• на фигуре 7 - временная диаграмма формирования вторым КСС принятого двоичного символа;
• на фигуре 8 - временная диаграмма принятого первым КСС от второго КСС двоичного символа подтверждения F1;
• на фигуре 9 - временная диаграмма принятого третьим КСС от второго КСС двоичного символа подтверждения F1;
• на фигуре 10 - временная диаграмма формирования кодового слова на стороне первого КСС;
• на фигуре 11 - временная диаграмма вектора ошибок во втором канале связи с ошибками между первым и третьим КСС;
• на фигуре 12 - временная диаграмма принятого слова третьего КСС;
• на фигуре 13 - временная диаграмма формирования третьим КСС двоичного символа подтверждения F2;
• на фигуре 14 - временная диаграмма формирования принятого двоичного символа третьим КСС;
• на фигуре 15 - временная диаграмма принятого первым КСС от третьего КСС двоичного символа подтверждения F2;
• на фигуре 16 - временная диаграмма принятого вторым КСС от третьего КСС двоичного символа подтверждения F2;
• на фигуре 17 - временная диаграмма хранящегося i-го элемента первой случайной последовательности первого КСС;
• на фигуре 18 - временная диаграмма хранящегося i-го элемента второй принятой случайной последовательности третьего КСС;
• на фигуре 19 - временная диаграмма хранящегося i-го элемента первой принятой случайной последовательности второго КСС;
• на фигуре 20 - временная диаграмма сформированной исходной последовательности второго КСС;
• на фигуре 21 - временная диаграмма сформированной первой принятой случайной последовательности второго КСС;
• на фигуре 22 - временная диаграмма формирования зашумленной исходной последовательности второго КСС;
• на фигуре 23 - временная диаграмма принятой первым КСС зашумленной исходной последовательности;
• на фигуре 24 - временная диаграмма сформированной первой случайной последовательности первого КСС;
• на фигуре 25 - временная диаграмма формирования первой предварительной последовательности первого КСС;
• на фигуре 26 - временная диаграмма принятой зашумленной исходной последовательности на стороне третьего КСС;
• на фигуре 27 - временная диаграмма второй принятой случайной последовательности на стороне третьего КСС;
• на фигуре 28 - временная диаграмма формирования второй предварительной последовательности третьего КСС;
• на фигуре 29 - временная диаграмма сформированной исходной последовательности второго КСС, разделенной на Y подблоков по K символов;
• на фигуре 30 - временная диаграмма выделенного j-го подблока исходной последовательности длиной К двоичных символов;
• на фигуре 31 - временная диаграмма формирования j-го кодового блока длиной N двоичных символов;
• на фигуре 32 - временная диаграмма выделения j-го подблока проверочных символов длиной по (N-K) двоичных символов;
• на фигуре 33 - временная диаграмма формирования блока проверочных символов кодированной ИП из Y подблоков проверочных символов;
• на фигуре 34 - временная диаграмма блока проверочных символов кодированной исходной последовательности, переданного первому и третьему КСС и разделенного на Y подблоков проверочных символов длиной по (N-K) двоичных символов, и выделение из нее j-го подблока проверочных символов;
• на фигуре 35 - временная диаграмма второй предварительной последовательности третьего КСС, разделенной на Y декодируемых подблоков по K символов и выделение из нее j-го декодируемого подблока;
• на фигуре 36 - временная диаграмма формирования j-го кодового блока путем конкатенации справа j-го подблока проверочных символов к j-му декодируемому подблоку;
• на фигуре 37 - временная диаграмма вычисления j-го синдрома S2 длиной по (N-K) двоичных символов и определение местоположения ошибки;
• на фигуре 38 - временная диаграмма исправления ошибки в j-ом декодируемом подблоке по полученному j-му синдрому S2;
• на фигуре 39 - временная диаграмма формирования второй декодированной последовательности третьего КСС из Y декодируемых подблоков с исправленными ошибками;
• на фигуре 40 - временная диаграмма блока проверочных символов кодированной исходной последовательности, переданного первому и третьему КСС и разделенного на Y подблоков проверочных символов длиной по (N-K) двоичных символов и выделение из нее j-го подблока проверочных символов;
• на фигуре 41 - временная диаграмма первой предварительной последовательности первого КСС, разделенной на Y декодируемых подблоков по K символов и выделение из нее j-го декодируемого подблока;
• на фигуре 42 - временная диаграмма формирования j-го кодового блока путем конкатенации справа j-го подблока проверочных символов к j-му декодируемому подблоку;
• на фигуре 43 - временная диаграмма вычисления j-го синдрома S1 длиной (N-K) двоичных символов;
• на фигуре 44 - временная диаграмма проверки на предмет отсутствия/присутствия ошибок в j-ом декодируемом подблоке по полученному j-му синдрому S1;
• на фигуре 45 - временная диаграмма формирования первой декодированной последовательности первого КСС из Y декодируемых подблоков с исправленными ошибками на стороне 1 КСС;
• на фигуре 46 - вид сформированной функции хеширования последовательностей;
• на фигуре 47 - временная диаграмма представления функции хеширования в виде последовательности двоичных символов, включающей с первой по (L-U)-io строки длиной по Т двоичных символов;
• на фигуре 48 - временная диаграмма сформированных исходной последовательности второго корреспондента, первой декодированной последовательности первого корреспондента, второй декодированной последовательности третьего корреспондента сети связи;
• на фигуре 49 - временная диаграмма сформированного ключа шифрования/дешифрования первого, второго и третьего КСС;
• на фигуре 50 - временная диаграмма формирования КлШД.
На представленных фигурах символом «А» обозначены действия, происходящие на стороне первого корреспондента сети связи, символами «В1» - на стороне второго корреспондента сети связи, символами «В2» - на стороне третьего корреспондента сети связи, символами «Е» обозначен уровень сигнала(символа) по оси ординат временной диаграммы. Символ «→» обозначает процесс передачи последовательностей двоичных символов по каналам связи между корреспондентами сети связи. На фигурах заштрихованный импульс представляет собой символ «1», а не заштрихованный - символ «0». Знаки «+» и «×» обозначают соответственно сложение и умножение в поле Галуа GF(2). Верхние буквенные индексы обозначают длину последовательности (блока), нижние буквенные индексы обозначают номер элемента в последовательности (блоке). Символы подчеркнутые (прямой или пунктирной) линией обозначают последовательности, без подчеркивания обозначаются отдельные символы.
Реализация заявленного способа заключается в следующем. Современные криптосистемы построены по принципу Керкгоффса, описанного, например, в книге Д. Месси, «Введение в современную криптологию», ТИИЭР т. 76, №5, май 1988, с. 24, согласно которому полное знание нарушителя включает, кроме информации полученной с помощью перехвата, полную информацию об порядке взаимодействия корреспондентов СС и процессе формирования КлШД. Формирование общего КлШД можно разделить на три основных этапа в рамках структурной схемы (см. фиг. 1).
Первый этап - одновременное формирование исходной (ИП) и предварительных (ПРП) последовательностей. Обеспечение формирования ИП и ПРП производится путем одновременной передачи информации от первого КСС по первому и второму каналам связи с независимыми ошибками соответственно второму и третьему КСС, одновременной передачи дополнительной информации об ИП по первому обратному и третьему прямому каналам связи без ошибок соответственно первому и третьему КСС и ее одновременной обработкой всеми КСС. Предполагается, что нарушитель знает порядок обработки информации об ИП и перехватывает свою версию информации о первой случайной последовательности 1КСС, передаваемой первым КСС, на выходе независимого канала перехвата (КП) с ошибками, перехватывает дополнительную информацию по каналам перехвата без ошибок (КПБО) и использует ее для формирования своей версии ПРП. Увеличение стойкости к компрометации КлШД со стороны нарушителя достигается не передачей открыто ИП 1КСС, а формированием ИП на стороне второго КСС посредством передачи кодовых слов первичной случайной последовательности, используемых для зашумления передаваемой ИП первым КСС. В результате этого первоначальный канал перехвата (ПКП) нарушителя преобразуется к вторичному каналу перехвата (ВКП), представляющему собой составной канал, включающий в себя ПКП и первый канал связи с ошибками. Качество ВКП ухудшается по сравнению с ПКП, что приводит к уменьшению количества информации о формируемом КлШД, получаемой нарушителем на выходе ВКП.
Второй этап предназначен для обеспечения формирования КлШД с высокой надежностью. Формирование КлШД с высокой надежностью достигается устранением (исправлением) несовпадающих символов (ошибок) в предварительных последовательностях первого КСС и третьего КСС относительно исходной последовательности второго КСС, при использовании корреспондентами дополнительной информации о ИП, переданной по первому обратному и третьему прямому каналам связи без ошибок (см. фиг. 1) от второго КСС первому КСС и третьему КСС, соответственно. Предполагается, что нарушитель перехватывает дополнительную информацию по каналам перехвата без ошибок и использует ее для устранения несовпадений в своей версии ПРП относительно ИП второго КСС.
Третий этап предназначен для формирования ключа заданной длины с малым количеством информации о ключе, получаемой нарушителем. Обеспечение формирования ключа корреспондентов СС с малым количеством информации о нем у нарушителя обеспечивается путем сжатия последовательностей корреспондентов сети связи, которые получены ими после второго этапа. Предполагается, что нарушителю известен алгоритм сжатия последовательностей. Увеличение стойкости КлШД к компрометации со стороны нарушителя дополнительно усиливается уничтожением корреспондентами сети связи промежуточных последовательностей, используемых для формирования КлШД.
В заявленном способе увеличение стойкости к компрометации КлШД со стороны нарушителя реализуется следующей последовательностью действий.
Предполагается, что нарушитель имеет канал перехвата с ошибками, с помощью которого он получает информацию о сформированных случайным образом, переданных кодовых и принятых кодовых словах по каналам связи с ошибками для формирования ИП и ПРП корреспондентов сети связи. Однако, для получения информации о ИП (первой ПРП, второй ПРП) необходимы знания о передаваемых вторым КСС по каналам связи без ошибок символах ИП. Второй КСС передает не открытую, а зашумленную ИП (ЗИП). Предполагается, что нарушитель получает ЗИП на выходе своих КПБО. В целях получения каждого символа ИП нарушителю необходимо снять зашумление с ЗИП путем поразрядного суммирования по модулю два версии принятой случайной последовательности нарушителя и ЗИП. Это определяет преобразование ПКП в ВКП. Нарушитель может только получать информацию и не может участвовать в информационном обмене. Для обеспечения повышения стойкости к компрометации КлШД со стороны нарушителя необходимо создание условий, при которых производится преобразование ПКП в ВКП.
Для создания вышеуказанных условий на стороне первого КСС случайный двоичный символ генерируют случайным образом, чтобы обеспечить увеличение стойкости к компрометации КлШД со стороны нарушителя, формируют из него кодовое слово длиной (М+1) двоичных символов, путем повторения М раз сгенерированного случайного двоичного символа и одновременно передают его по первому и второму каналам связи с ошибками второму КСС и третьему КСС, соответственно. Второй КСС и третий КСС одновременно принимают или стирают каждое из принятых слов двоичных символов следующим образом. На стороне второго КСС из принятого слова второго КСС формируют принятый двоичный символ второго КСС и двоичный символ подтверждения F1, и одновременно, на стороне третьего КСС из сформированного принятого слова третьего КСС формируют принятый двоичный символ третьего КСС и двоичный символ подтверждения F2. Для формирования принятого двоичного символа, ему присваивают значение первого двоичного символа принятого слова. Если все элементы принятого слова - это символы «1» или символы «О», тогда присваивают символу подтверждения значение «1» и выносят решение об информационном символе, соответствующем принятому слову. В противном случае стирают принятое слово и присваивают символу подтверждения значение «О». Решение (символы подтверждения) о принятых (стертых) словах одновременно передают по каналам связи без ошибок всем другим корреспондентам сети связи. Корреспонденты СС, первый КСС, второй КСС и третий КСС, соответственно, одновременно сохраняют в первой случайной последовательности, первой принятой случайной последовательности, второй принятой случайной последовательности принятые символы, которые не были стерты. Нарушитель, также, может удалять символы, которые были стерты корреспондентами СС. Однако символы, сохраняемые нарушителем (т.е. которые соответствуют одновременно сохраненным символам корреспондентов СС), недостаточно надежны, потому что ошибки, возникающие в каналах с ошибками корреспондентов СС и ошибки, возникающие в канале перехвата, являются независимыми. Вместо представленного декодирования принятых слов корреспонденты СС могут одновременно использовать пороговое декодирование. Основное различие при использовании порогового декодирования заключается в том, что корреспонденты СС одновременно принимают каждое из слов кода повторения, не только когда все его элементы или «1» или «0», но и когда число одинаковых двоичных символов в принятом слове не менее определенного числа (порога). Это приведет, с одной стороны, к уменьшению надежности каждого из одновременно сохраненных символов в первой принятой случайной последовательности (ПСП) и второй ПСП на сторонах второго КСС и третьего КСС, с другой стороны корреспонденты СС будут меньше стирать символов первичной случайной последовательности. Затем, на стороне второго КСС генерируют случайным образом ИП (каждый двоичный символ генерируют случайным образом, чтобы обеспечить повышение стойкости формируемого КлШД к компрометации со стороны нарушителя) и формируют ЗИП путем поразрядного суммирования по модулю два первой ПСП второго КСС и сформированной ИП. Одновременно передают зашумленную ИП по первому обратному и третьему прямому каналам связи без ошибок на сторону первого КСС и третьего КСС, соответственно. На стороне первого КСС формируют первую ПРП первого КСС путем поразрядного суммирования по модулю два зашумленной ИП первой ПСП, и одновременно на стороне третьего КСС формируют вторую ПРП третьего КСС путем поразрядного суммирования по модулю два второй ПСП третьего КСС и зашумленной ИП.
3
Создание условий, при которых обеспечивается повышение стойкости к компрометации КлШД со стороны нарушителя, реализуется в заявленном способе следующей последовательностью действий по одновременному формированию ИП второго КСС и предварительных последовательностей первого КСС и третьего КСС.Формирование исходной последовательности второго КСС заключается в следующем. L раз, где L>10 - выбранная начальная длина первичной случайной последовательности, на стороне 1КСС генерируют случайный двоичный символ (см. фиг. 2). Известные способы генерирования случайных чисел описаны, например, в книге Д. Кнут, «Искусство программирования для ЭВМ», М, Мир, 1977, т. 2, стр. 22, Формируют из случайного двоичного символа кодовое слово. Для формирования кодового слова сгенерированный случайный двоичный символ кодируют кодом с М-повторениями (см. фиг. 3, 10), где М≥1. Число М определяется качеством каналов связи с ошибками. Известные способы кодирования кодом с повторениями описаны, например, в книге Э. Берлекэмп, «Алгебраическая теория кодирования», М., Мир, 1971, стр. 11, однако при одновременном декодировании принятого слова корреспондентами СС используются каналы связи без ошибок, что существенно влияет на увеличение надежности принятых символов. Одновременно передают от 1 КСС кодовое слово по первому и второму каналам связи с независимыми ошибками второму и третьему корреспондентам СС соответственно. Временные диаграммы векторов ошибок в каналах связи с независимыми ошибками показаны на фигурах 4, 11. Под термином «вектор ошибок» понимают поразрядную разность между переданным кодовым словом и принятым словом, как описано, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк, «Теория передачи сигналов», М., Радио и связь, 1986, стр. 93. Принятые слова показаны на фигурах 5, 12. Известные способы передачи последовательностей по каналам связи с ошибками описаны, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк «Теория передачи сигналов», М., Радио и связь, 1986, стр. 11. Второй и третий КСС из соответствующего принятого слова одновременно формируют принятые двоичные символы и двоичные символы подтверждения F1, F2, соответственно. Принятому двоичному символу на стороне второго КСС и третьего КСС одновременно присваивают значение первого двоичного символа принятого слова (см. фиг. 7, 14). Для формирования двоичного символа подтверждения первый двоичный символ принятого слова одновременно сравнивают с последующими М двоичными символами принятого слова. При наличии хотя бы одного несовпадения первого двоичного символа принятого слова с М двоичными символами принятого слова двоичному символу подтверждения присваивают значение «О». При наличии М совпадений первого двоичного символа принятого слова с М двоичными символами принятого слова двоичному символу подтверждения присваивают значение «1» (см. фиг. 6, 13). Известные способы сравнения двоичных символов описаны, например, в книге П. Хоровец, У. Хил, «Искусство схемотехники», М., Мир, т. 1, 1983, стр. 212. Передают сформированный вторым корреспондентом сети связи двоичный символ подтверждения F1 по первому обратному и третьему прямому каналам связи без ошибок соответственно первому и третьему корреспондентам сети связи, передают сформированный третьим корреспондентом сети связи двоичный символ подтверждения F2 по второму обратному и третьему обратному каналам связи без ошибок соответственно первому и второму корреспондентам сети связи (см. фиг. 8, 9, 15, 16). Известные способы передачи двоичного символа по обратному каналу описаны, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк «Теория передачи сигналов», М., Радио и связь, 1986, стр. 156. При равенстве нулю по крайней мере одного из полученных двоичных символов подтверждения (F1, F2) сгенерированный случайный двоичный символ первого корреспондента сети связи и принятые двоичные символы второго и третьего корреспондентов сети связи одновременно стирают, в противном случае одновременно запоминают сгенерированный случайный двоичный символ первого корреспондента сети связи, принятый двоичный символ второго корреспондента сети связи, принятый двоичный символ третьего корреспондента сети связи соответственно в качестве i-x элементов, где i=1, 2, 3, …, (L-U), первой случайной, 1ПСП и 2ПСП, где U - количество одновременно стертых символов при формировании первой случайной последовательности первого, 1ПСП второго и 2 ПСП третьего корреспондентов сети связи. На фигуре 17 показан i-й элемент первой случайной последовательности первого КСС, на фигуре 18 - i-й элемент второй принятой случайной последовательности третьего КСС, а i-й элемент первой принятой случайной последовательности второго КСС показан на фигуре 19. Известные способы стирания двоичных символов описаны, например, в книге У. Питерсон, Э. Уэлдон «Коды исправляющие ошибки», М, Мир, 1976, стр. 17. Известные способы хранения двоичных символов описаны, например, в книге Л. Мальцев, Э. Фломберг, В. Ямпольский, «Основы цифровой техники», М., Радио и связь, 1986, стр. 79. Вид сформированной первой принятой случайной последовательности показан на фигуре 21.
На стороне второго корреспондента сети связи формируют и запоминают исходную последовательность, причем каждый i-й бит исходной последовательности, генерируют случайным образом (L-U) раз, как показано на фигуре 20.
На стороне второго корреспондента сети связи формируют зашумленную исходную последовательность длиной (L-U) двоичных символов путем поразрядного суммирования по модулю два ИП и 1ПСП, как показано на фигуре 22. Известные способы суммирования двоичных символов по модулю два описаны, например, в книге В.А. Филимонов, О.А. Остроумов, А.Д. Синюк «Теория электрической связи», СПб, ВАС, 2017, стр. 121.
Одновременно передают зашумленную исходную последовательность по первому обратному каналу связи без ошибок на сторону первого корреспондента сети связи, и по третьему прямому каналу связи без ошибок на сторону третьего корреспондента сети связи (см. фиг. 23, 26). На стороне первого корреспондента сети связи формируют и запоминают первую предварительную последовательность длиной (L-U) двоичных символов (см. фиг. 25) путем поразрядного суммирования зашумленной исходной и первой случайной последовательностей (см. фиг. 24).
Одновременно, на стороне третьего корреспондента сети связи формируют и запоминают вторую предварительную последовательность длиной (L-U) двоичных символов (см. фиг. 28) путем поразрядного суммирования зашумленной исходной и второй принятой случайной последовательностей (см. фиг. 27).
Оценка вероятностей ошибок в предварительных последовательностях (ПРП) корреспондентов СС приведена в Приложении 1.
3
5
После применения корреспондентами СС кода с повторениями относительно первой случайной последовательности первого КСС в принятых случайных последовательностях второго КСС и третьего КСС остаются ошибки (несовпадающие символы), эти же несовпадения остаются в первой ПРП и второй ПРП относительно ИП, что не позволяет корреспондентам СС приступить к непосредственному формированию КлШД. Устранение несовпадений может быть реализовано на основе использования помехоустойчивого кодирования. Однако известные помехоустойчивые коды позволяют кодировать последовательности значительно меньшей длины, чем полученная длина ИП (ПРП) равная (L-U) двоичных символов. Для этого применяют последовательное кодирование, т.е. в случае, если длина ИП (ПРП) велика (например, 10÷10 двоичных символов), ее разделяют на Y подблоков длиной по K символов, где Y=(L-U)/K. Каждый подблок длиной по K символов кодируется на стороне второго КСС линейным блоковым систематическим двоичным помехоустойчивым (N, K) кодом, где K - длина блока информационных символов и N - длина кодового блока. Линейным двоичным кодом называется код, который построен на основе использования линейных операций в поле GF(2), как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 61. Под термином «блоковый код» понимают код, в котором действия производятся над блоками символов, как описано, например, в книге Р. Блейхут «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 13. Систематическим называется код, в котором кодовое слово начинается с информационных символов, оставшиеся символы кодового слова являются проверочными символами к информационным символам, как описано, например, в книге Р. Блейхут «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 66. Из каждого сформированного кодового блока выделяют подблок проверочных символов длиной (N-K) символов. Затем выделенные блоки проверочных символов длиной (N-K) двоичных символов объединяют в единый блок проверочных символов кодированной ИП длиной Y⋅(N-K) двоичных символов и одновременно передают его по первому обратному и третьему прямому каналам связи без ошибок соответственно первому и третьему корреспондентам СС. Первый и третий корреспонденты СС используют блок проверочных символов кодированной ИП для устранения несовпадений в Соответствующих предварительных последовательностях по отношению к ИП и в результате формируют соответствующие декодированные последовательности.
Оценка вероятностей ошибочного декодирования предварительных последовательностей корреспондентов сети связи приведена в Приложении 2.
m
m
В качестве помехоустойчивых кодов могут использоваться широкий класс кодов Боуза-Чоудхури-Хоквингема, коды Хемминга, Рида-Малера, Рида-Соломона и другие линейные блоковые коды, характеризующиеся своими параметрами N,K. В ходе применения корреспондентами СС помехоустойчивого кодирования, нарушитель получает дополнительную информацию о КлШД путем перехвата блока проверочных символов кодированной ИП второго корреспондента СС, переданного по первому обратному и третьему прямому каналам связи без ошибок соответственно первому и третьему корреспондентам СС. Используя его нарушитель, также, исправляет часть несовпадений в своей версии перехваченной ПРП относительно ИП второго корреспондента СС. Это обстоятельство корреспонденты учитывают при формировании КлШД из исходной и декодированных последовательностей. Устранение несовпадений (ошибок) в предварительных последовательностях первого и третьего корреспондентов СС реализуется в заявленном способе следующей последовательностью действий. Кодирование исходной последовательности заключается в следующем. Предварительно исходную последовательность разделяют на Y подблоков длиной K двоичных символов, где Y=(L-U)/K, как показано на фиг. 29. Известные способы разбиения последовательности на блоки фиксированной длины описаны, например, в книге В. Васильев, В. Свириденко, «Системы связи», М., Высшая школа, 1987, стр. 208. Последовательно, начиная с 1-го до Y-го, каждый j-й подблок, где j=1, 2, 3, …, Y, кодируют линейным блоковым систематическим двоичным помехоустойчивым (N, K) кодом (см. фиг. 30). Порождающая матрица кода имеет размерность K×N, причем N>K. Размеры K и N порождающей матрицы линейного блочного систематического двоичного помехоустойчивого (N, K) кода выбирают K=2-1-m и N=2-1, где m≥3, как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 71. Для кодирования ИП каждый j-й подблок длиной K двоичных символов перемножают на порождающую матрицу кода и получают j-й кодовый блок длиной N двоичных символов, как показано на фиг. 31. Известные способы помехоустойчивого кодирования блоков символов описаны, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М., Мир, 1986, стр. 63. Из j-го кодового блока выделяют j-й подблок проверочных символов длиной (N-K) двоичных символов (см. фиг. 32). Известные способы выделения блоков фиксированной длины описаны, например, в книге В. Васильев, В. Свириденко, «Системы связи», М., Высшая школа, 1987, стр. 208. Запоминают j-й подблок проверочных символов в качестве j-го подблока блока проверочных символов кодированной исходной последовательности. Временная диаграмма формирования блока проверочных символов кодированной ИП показана на фигуре 33. Известные способы хранения последовательности двоичных символов описаны, например, в книге Л. Мальцев, Э. Фломберг, В. Ямпольский, «Основы цифровой техники», М., Радио и связь, 1986, стр. 38. Одновременно передают блок проверочных символов кодированной ИП по первому обратному и третьему прямому каналам связи без ошибок соответственно первому и третьему корреспондентам СС. Известные способы передачи последовательностей по каналам связи описаны, например, в книге А. Зюко, Д. Кловский, М. Назаров, Л. Финк, «Теория передачи сигналов», М, Радио и связь, 1986, стр. 11.
m
m
Одновременное формирование декодированных последовательностей первым и третьим корреспондентами СС заключается в следующем. Первую ДП первого корреспондента СС и вторую ДП третьего корреспондента СС одновременно формируют из первой и второй ПРП соответственно. Действия второго и третьего корреспондентов СС по формированию первой и второй ДП соответственно аналогичны и выполняются одновременно и независимо. ПРП и блок проверочных символов кодированной исходной последовательности одновременно разделяют на Y соответствующих пар декодируемых подблоков (см. фиг. 35, 41) и подблоков проверочных символов (см. фиг. 34, 40), где Y=(L-U)/K. Длины декодируемых подблоков и подблоков блока проверочных символов кодированной ИП выбирают равными соответственно K и (N-K) двоичных символов. Известные способы разбиения последовательности на блоки фиксированной длины описаны, например, в книге В. Васильев, В. Свириденко, «Системы связи», М., Высшая школа, 1987, стр. 208. Одновременно формируют Y принятых блоков длиной N двоичных символов путем конкатенации справа к j-му декодируемому подблоку j-го подблока проверочных символов, где j=1, 2, 3, …, Y, как показано на фиг. 36 и 42. Принятые блоки одновременно декодируют линейным блоковым систематическим двоичным помехоустойчивым (N, K) кодом (см. фиг. 36, 37, 38 и 42, 43, 44). Проверочная матрица кода имеет размерность (N-K)×N, причем N>K. Выбирают размеры K и N проверочной матрицы линейного блокового систематического двоичного помехоустойчивого (N, K) кода K=2-1-m и N=2-1, где m≥3, как описано, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М, Мир, 1986, стр. 71. Последовательно, начиная с 1-го до Y-го, вычисляют j-й синдром (S1 для 1 КСС и S2 для 2КСС) длиной (N-K) двоичных символов перемножением j-го принятого блока на транспонированную проверочную матрицу. Временная диаграмма вычисления j-го синдрома длиной (N-K) двоичных символов показана на фигурах 37 и 43. По полученному j-му синдрому исправляют ошибки в j-м декодируемом подблоке (см. фиг. 38, 44). Известные способы синдромного декодирования блоков символов описаны, например, в книге Р. Блейхут, «Теория и практика кодов контролирующих ошибки», М, Мир, 1986, стр. 70. Затем j-й декодируемый подблок запоминают в качестве j-го подблока декодированной последовательности (2ДП для 3КСС и 1ДП для 1КСС), как показано на фиг. 39 и 45. Известные способы хранения последовательности двоичных символов описаны, например, в книге Л. Мальцев, Э. Фломберг, В. Ямпольский, «Основы цифровой техники», М., Радио и связь, 1986, стр. 38. И получают, таким образом, декодированные последовательности.
После формирования тождественных ИП и ДП, корреспонденты СС должны сформировать КлШД с малым количеством информации нарушителя о КлШД. Для обеспечения получения малого количества информации нарушителем о КлШД корреспонденты СС используют метод "усиления секретности" последовательностей.
Оценка количества информации Шеннона нарушителя о сформированном корреспондентами СС КлШД при использовании метода "усиления секретности" приведено в Приложении 3.
z
z
z
Для обеспечения получения малого количества информации нарушителем о КлШД в предлагаемом способе формирования КлШД реализуется следующая последовательность действий. Одновременное формирование КСС из ИП и декодированных последовательностей КлШД заключается в следующем. На стороне первого корреспондента СС формируют функцию хеширования последовательностей в виде двоичной матрицы 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, и соответствующих подблоков 1ДП, ИП и 2ДП длиной Р двоичных символов. Известные способы разбиения последовательности на блоки фиксированной длины описаны, например, в книге В. Васильев, В. Свириденко, «Системы связи», М., Высшая школа, 1987, стр. 208. Затем начиная с первого до W-й, вычисляют z-й первичный ключ длиной Т двоичных символов, где z=1, 2, 3, …, W, перемножением z-го подблока первой ДП 1КСС на z-ю подматрицу G, z-го подблока ИП 2КСС на z-ю подматрицу G, z-го подблока второй ДП 3КСС на z-ю подматрицу G. После чего формируют КлШД путем поразрядного суммирования по модулю 2 всех W первичных ключей на сторонах всех корреспондентов СС, как показано на фиг. 50. В целях дополнительного увеличения стойкости предлагаемого способа, все промежуточные последовательности корреспондентов сети связи стирают, чем обеспечивается исключение возможности компрометации КлШД нарушителем из стираемых последовательностей. Действия по передаче и приему последовательностей по каналам связи с ошибками, прямым и обратным каналам связи без ошибок засинхронизированы. Известные способы синхронизации описаны, например, в книге Е. Мартынов, «Синхронизация в системах передачи дискретных сообщений», М., Связь, 1972, стр. 186.
Количество информации о КлШД получаемое нарушителем в результате перехвата случайной последовательности зашумленной ИП посредством предлагаемого способа более чем в 11 раз может быть уменьшено по сравнению с количеством информации о КлШД нарушителя при использовании способа прототипа. Это непосредственно увеличивает стойкость к компрометации формируемого КлШД сети связи посредством предлагаемого способа по сравнению со способом прототипом. Результаты расчета информации нарушителя о сформированном КлШД сети связи, включающей трех корреспондентов, приведены в Приложении 4.