Scientific journal
Modern high technologies
ISSN 1812-7320
"Перечень" ВАК
ИФ РИНЦ = 0,940

DEVELOPMENT OF AN ERROR CORRECTION ALGORITHM TO IMPROVE THE FAULT TOLERANCE OF THE IDENTIFICATION-FRIEND-OR-FOE

Kalmykov I.A. 1 Stepanova E.P. 1 Kalmykova N.I. 1 Pavlyuk D.N. 1
1 North-Caucasian Federal University
As one of the ways to increase the information secrecy of a low-orbit satellite communication system, we can single out the «friend-foe» identification system. The use of such a system allows you to authenticate the spacecraft before the start of the satellite-Earth session. If the satellite status turns out to be «own», the identification system provides a communication session. In order to reduce the time for authentication, a number of papers suggest switching to the use of polynomial modular code (PMC). This code is a set of residuals that are obtained by dividing the original number by the selected irreducible polynomials that are the bases of the PMK. As a result, the addition, subtraction, and multiplication operations can be replaced with the corresponding operations on the remainder. As a result of the fact that the remainder has a small bit depth, and the operations noted above are performed in parallel, the use of polynomial modular codes allows you to increase the speed of calculations. Thus, the use of parallel PMC reduces the time to calculate the answers to the requester’s question. As a result, the time required to identify the satellite is reduced. However, if you enter redundancy in this code, it will be able to search for and correct the error. As a result of the use of excessive PMC, the fault tolerance of the identification system increases. The purpose of this work is to develop an error correction algorithm for polynomial modular codes, which will improve the fault tolerance of the identification-friend-or-foe.
identification-friend-or-foe
satellite authentication protocol
polynomial modular codes
error search and correction algorithm
error syndrome

В последнее десятилетие наблюдается тенденция по расширению сферы применения низкоорбитальных систем спутниковой связи (НССС). Невозможно представить себе без НССС развитие Северного морского пути, развертывание подразделений Вооруженных сил Российской Федерации, обеспечивающих безопасность страны в Арктике, а также создание глобальной многофункциональной инфокоммуникационной спутниковой системы [1; 2]. Очевидно, что современные НССС должны обладать высокой информационной скрытностью. В работах [3; 4] для достижения данной цели предлагается использовать систему опознавания «свой-чужой». С целью повышения скорости опознавания спутников НССС в работе [5] предлагается использовать полиномиальные модулярные коды (ПМК), которые обеспечивают параллельную реализацию протокола аутентификации. Однако при введении избыточности полиномиальные модулярные коды могут осуществлять поиск и коррекцию ошибок, что позволит повысить отказоустойчивость системы опознавания «свой-чужой». Поэтому разработка алгоритма коррекции результатов вычислений с помощью ПМК является актуальной задачей.

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

Материалы и методы исследования

Чтобы получить полиномиальный модулярный код, выбирают кортеж неприводимых полиномов kalmikov01.wmf [6; 7]. Их произведение дает рабочий диапазон

kalmikov02.wmf (1)

Тогда полином Y(x) можно однозначно описать комбинацией ПМК

kalmikov03.wmf (2)

где kalmikov04.wmf; kalmikov05.wmf; kalmikov06.wmf – степень полинома Y(x).

При этом для арифметических операций, выполняемых в ПМК, справедливо

kalmikov07.wmf (3)

kalmikov08.wmf (4)

где kalmikov09.wmf; i = 1, 2, ..., k; kalmikov10.wmf.

В работе [5] представлен протокол аутентификации спутника, реализованный в ПМК. Выбираем параметры, удовлетворяющие условию

kalmikov11.wmf (5)

где U – секретный ключ спутника, S(j) и T(j) – сеансовый ключ и число, позволяющее определить повторное использование данного ключа.

Представляем их kalmikov12.wmf, kalmikov13.wmf, kalmikov14.wmf, где kalmikov15.wmf, kalmikov16.wmf; kalmikov17.wmf; i = 1, 2, ..., k.

1. Перед j-м сеансом связи ответчик определяет истинный статус спутника в ПМК

kalmikov18.wmf (6)

где kalmikov19.wmf; kalmikov20.wmf; i = 1, 2, ..., k.

2. Затем производится изменение секретных параметров

kalmikov21.wmf kalmikov22.wmf kalmikov23.wmf (7)

где kalmikov24.wmf – случайные числа; kalmikov25.wmf; i = 1, 2, ..., k.

3. После вычисляется зашумленный статус спутника, используя ПМК

kalmikov26.wmf (8)

где kalmikov27.wmf.

4. Для опознавания запросчик задает вопрос kalmikov28.wmf, где kalmikov29.wmf.

5. Ответчик, находящийся на спутнике, отвечает на вопрос kalmikov30.wmf

kalmikov31.wmf kalmikov32.wmf kalmikov33.wmf (9)

6. Ответчик осуществляет передачу запросчику следующих данных

kalmikov34.wmf

7. Запросчик осуществляет проверку статуса спутника

kalmikov35.wmf (10)

Статус «свой» будет только при выполнении условия

kalmikov36.wmf (11)

Анализ выражений (5)–(11) показывает, что применение ПМК позволило сократить время опознавания. При этом ПМК способны осуществлять поиск и исправление ошибок [7]. Так, для исправления однократной ошибки необходимо два основания, так чтобы

kalmikov37.wmf (12)

В результате этого получаем полный диапазон избыточного ПМК

kalmikov38.wmf (13)

Комбинация kalmikov39.wmf не содержит ошибки, если

kalmikov40.wmf (14)

Однократная ошибка изменяет значение j-го остатка согласно

kalmikov41.wmf (15)

где kalmikov42.wmf – искаженный остаток ПМК; kalmikov43.wmf – глубина однократной ошибки.

В результате нарушается условие (14), так как имеем

kalmikov44.wmf (16)

где Bi(x) – ортогональные базисы ПМК; kalmikov45.wmf; kalmikov46.wmf.

Для поиска и коррекции ошибок в полиномиальных модулярных кодах в работе [7] рекомендуется вычислять позиционную характеристику – интервал ПМК

kalmikov47.wmf (17)

где kalmikov48.wmf; kalmikov49.wmf и kalmikov50.wmf – ортогональный базис и ранг кортежа информационных оснований ПМК.

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

kalmikov51.wmf, (18)

где kalmikov52.wmf – модульная свертка; λj(x) – константа свертки; s = 1,2.

Для вычисления констант модульной свертки воспользуемся китайской теоремой об остатках (КТО) для безызбыточной системы полиномиального модулярного кода, то есть

kalmikov53.wmf (19)

Известно, что ортогональный базис определяется

kalmikov54.wmf (20)

где kalmikov55.wmf – вес ортогонального базиса.

Чтобы определить константу свертки kalmikov56.wmf, где j = 1, 2, ..., k, необходимо найти kalmikov57.wmf, при этом kalmikov58.wmf В этом случае при реализации (19) можно отказаться от вычисления ранга, то есть имеем

kalmikov59.wmf (21)

Тогда kalmikov60.wmf, где j = 1, 2, ..., k, s = 1, 2., определяется

kalmikov61.wmf (22)

Значит, модульная свертка позволяет корректировать ошибку в ПМК, используя

kalmikov62.wmf (23)

Если свертка kalmikov63.wmf совпадает с контрольным основанием, то комбинация ПМК не содержит ошибки. В противном случае – комбинация ПМК ошибочная.

Результаты исследования и их обсуждение

В качестве информационных оснований ПМК выбираем kalmikov64.wmf, kalmikov65.wmf, kalmikov66.wmf. Согласно (1) рабочий диапазон kalmikov67.wmf. Согласно (12) контрольными основаниями ПМК будут kalmikov68.wmf и kalmikov69.wmf. Используя (21), определим

kalmikov70.wmf

Для выполнения алгоритма поиска и коррекции ошибки вычислим константы

kalmikov71.wmf

Для второго контрольного основания kalmikov72.wmf имеем константы

kalmikov73.wmf

Выбираем kalmikov74.wmf. Вычислим произведение kalmikov75.wmf, где j = 1, 2, 3. Тогда

kalmikov76.wmf

Воспользуемся модульной сверткой и вычислим контрольные остатки

kalmikov77.wmf

Тогда согласно (18) получаем, что комбинация не содержит ошибки, так как

kalmikov78.wmf

Введем ошибку, равную kalmikov79.wmf. Тогда kalmikov80.wmf, а комбинация ПМК примет вид kalmikov81.wmf. Вычислим остатки по контрольным основаниям

kalmikov82.wmf.

Воспользуемся модульной сверткой и вычислим контрольные остатки

kalmikov83.wmf

Тогда согласно (18) получаем, что комбинация содержит ошибки, так как

kalmikov84.wmf

На основании результата выбираем вектор ошибки kalmikov85.wmf. Тогда

kalmikov86.wmf.

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

– три LUT-таблицы, реализующие вычисление kalmikov87.wmf;

– три LUT-таблицы, реализующие вычисление kalmikov88.wmf;

– две LUT-таблицы, реализующие вычисление модульной свертки.

Значит, на устройство поиска и коррекции ошибки, использующее модульную свертку, необходимо 16 LUT-таблиц.

В этом случае устройство, реализующее алгоритм поиска и коррекции ошибок, определяемый (14), также содержит два тракта, в каждом из которых:

– пять LUT-таблиц, реализующих вычисление kalmikov89.wmf;

– четыре LUT-таблицы, реализующие вычисление ранга ПМК;

– три LUT-таблицы, реализующие вычисление kalmikov90.wmf.

Значит, на устройство поиска и коррекции ошибки, построенное на основе алгоритма [7], необходимо 22 LUT-таблицы. Таким образом, разработанный алгоритм позволяет сократить аппаратные затраты в 1,375 раза по сравнению с использованием алгоритма вычисления интервала ПМК.

Заключение

С целью сокращения времени, необходимого на определение статуса космического аппарата, был предложен протокол аутентификации, реализованный в ПМК. При этом полиномиальные модулярные коды позволяют обнаруживать и исправлять ошибки, которые возникают в процессе функционирования системы опознавания, что позволит повысить ее отказоустойчивость. В работе показан алгоритм поиска и коррекции ошибок в полиномиальных кодах, который базируется на использовании модульной свертки. Проведенные исследования показали, что при использовании полиномов пятой степени разработанный алгоритм требует в 1,375 раза меньше аппаратных затрат по сравнению с алгоритмом вычисления интервала ПМК, приведенным в работе [7].

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 18-07-01020.