Научная статья на тему 'ОБОБЩЕННЫЙ СПОСОБ ПРИМЕНЕНИЯ ХЭШ-ФУНКЦИИ ДЛЯ КОНТРОЛЯ ЦЕЛОСТНОСТИ ДАННЫХ'

ОБОБЩЕННЫЙ СПОСОБ ПРИМЕНЕНИЯ ХЭШ-ФУНКЦИИ ДЛЯ КОНТРОЛЯ ЦЕЛОСТНОСТИ ДАННЫХ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
269
41
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИСТЕМА ХРАНЕНИЯ ДАННЫХ / КОНТРОЛЬ ЦЕЛОСТНОСТИ ДАННЫХ / КРИПТОГРАФИЧЕСКИЕ МЕТОДЫ / ХЭШ-ФУНКЦИЯ / СНИЖЕНИЕ ВВОДИМОЙ ИЗБЫТОЧНОСТИ / DATA STORAGE SYSTEM / DATA INTEGRITY CONTROL / CRYPTOGRAPHIC METHODS / HASH FUNCTION / REDUCTION OF INTRODUCED REDUNDANCY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Диченко Сергей Александрович, Финько Олег Анатольевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Диченко Сергей Александрович, Финько Олег Анатольевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

GENERALIZED METHOD OF APPLYING HASH FUNCTIONS FOR DATA INTEGRITY CONTROL

Data storage systems designed for storing large multidimensional arrays of information, functioning in conditions of destructive influences of an attacker and the environment, are considered. One of the most urgent tasks for such systems is the organization of secure data storage, and taking into account such operating conditions - ensuring their integrity. Ensuring data integrity is a difficult task, due to its complexity, as it includes both recovery and data integrity control. One of the well-known and widely used methods of data integrity control is the use of cryptographic methods, in particular, the hashing function. However, despite the widespread use of hash functions, they have been very little researched, and practical proposals for their use are very few and are characterized by a number of disadvantages associated with the need to introduce a high redundancy of control information. In the context of limitations on the existing resource of data storage systems, this can lead to a decrease in the probability of completing the task of their functioning, or even to its failure. A generalized method is proposed, the use of which will reduce the amount of introduced redundancy when monitoring the integrity of information in data storage systems, based on the use of cryptographic hash functions, a distinctive feature of which is the use of rules for constructing error-resistant codes. In addition, the developed method provides the data integrity control procedure with a new property: the ability to control the integrity of not only the data to be protected, but also the reference hash codes themselves. Calculated data of the required volume of the introduced redundancy are obtained when monitoring the data integrity in existing storage systems using the developed method.

Текст научной работы на тему «ОБОБЩЕННЫЙ СПОСОБ ПРИМЕНЕНИЯ ХЭШ-ФУНКЦИИ ДЛЯ КОНТРОЛЯ ЦЕЛОСТНОСТИ ДАННЫХ»

doi: 10.36724/2409-5419-2020-12-6-48-59

обобщенный способ применения хэш-функции

для контроля целостности данных

ДИЧЕНКО

Сергей Александрович1 ФИНЬКО

Олег Анатольевич2

Сведения об авторах:

к.т.н., докторант Краснодарского высшего военного училища имени генерала армии С.М. Штеменко, г. Краснодар, Россия, dlchenko.sa@yandex.ru

2д.т.н., профессор, профессор Краснодарского высшего военного училища имени генерала армии С.М. Штеменко; профессор СевероКавказского федерального университета; академический советник Российской академии ракетных и артиллерийских наук (РАРАН), г. Краснодар, Россия, ofinko@yandex.ru; www.mathnet.ru/person40004

АННОТАЦИЯ

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

КЛЮЧЕВЫЕ СЛОВА: система хранения данных; контроль целостности данных; криптографические методы; хэш-функция; снижение вводимой избыточности.

Для цитирования: Диченко С.А., Финько О.А. Обобщенный способ применения хэш-функции для контроля целостности данных // Наукоемкие технологии в космических исследованиях Земли. 2020. Т. 12. №6. С. 48-59. doi: 10.36724/2409-5419-2020-12-6-48-59

Введение

Системы хранения данных (СХД) являются одним из основных сегментов информационных систем (ИС) различного назначения. В современных условиях увеличения объема и ценности обрабатываемой информации при проектировании и разработке новых СХД возникает задача нахождения оптимального решения для контроля и восстановления целостности хранящейся в них информации [1, 2].

Особую актуальность разработка СХД с оптимальными решениями для контроля и восстановления целостности данных приобретает при ограничениях на их ресурсы. В этом случае объем вводимой для контроля и восстановления целостности данных избыточности будет иметь большое значение при обеспечении устойчивости ИС в процессе их целевого функционирования. Многократное резервирование данных и вычисление эталонной контрольной информации при контроле целостности данных после каждого восстановления, может привести к полному израсходованию ресурсов СХД, наступление которого приведет к снижению вероятности выполнения задачи их функционирования или вообще к ее невыполнению1 [3].

Актуальность исследований в области снижения вводимой избыточности при контроле и восстановлении целостности информации в современных СХД подтверждается Стратегией развития отрасли информационных технологий в Российской Федерации на 2014-2020 годы и на перспективу до 2025 года2, где одной из основных задач государства по развитию отрасли информационных техно-

логий в этом направлении является развитие центров обработки и хранения информации как материальной основы для обработки и хранения больших массивов данных.

Анализ существующих способов контроля

целостности данных

Известны различные способы применения хэш-функции для контроля целостности данных, подлежащих защите3. На рис. 1 представлена классификация способов применения хэш-функции к данным, выполненная в зависимости от состава и порядка вычисления эталонных хэш-кодов.

1. Способ применения хэш-функции h для к блоков данных, представленных двоичными векторами М, = 1,2,..., k), с вычислением одного общего хэш-кода Н:

h (М), м......мк ) = н

поясняется на рис. 2.

Достоинство: низкая избыточность.

Недостатки:

- отсутствие возможности локализации блока данных, представленного двоичным вектором Мг-, при контроле целостности данных;

- малая вероятность обнаружения ошибки (определения факта нарушения целостности данных) при пропуске ошибки (ложном сигнале об ошибке) средствами контроля.

'Петухов Г.Б., Якунин В.И. Методологические основы внешнего проектирования целенаправленных процессов и целеустремленных систем. М.: АСТ, 2006. 504 с.

2Стратегией развития отрасли информационных технологий в Российской

Федерации на 2014-2020 годы и на перспективу до 2025 года (утв. распоряжением Правительства РФ от 1 ноября 2013 г N 2036-р).

3Schneier B. Applied Cryptography Second Edition: protocols, algorithms and source code in C. John Wiley & Sons, Inc. 2016. 653 p.

Способы применения хэш-функции к данным, подлежащим защите

Способ применения хэш-функции для к блоков данных с вычислением одного общего хэш-кода Способ применения хэш-функции для к блоков данных с вычислением п хэш-кодов (при к > п)

|

Способ применения хэш-функцни (при к > п) Способ применения хэш-функции (при к = п)

|

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

Рис. 1. Классификация способов применения хэш-функции к данным Рис. 2. Способ применения хэш-функции

для к блоков с вычислением общего хэш-кода

2. Способы применения хэш-функции для к блоков данных с вычислением п хэш-кодов (при k > п) подразделяются на:

2.1. Способы применения хэш-функции (при k = п), которые в свою очередь можно разделить на:

а) способ применения хэш-функции, при котором от каждого из блоков данных, представленных двоичными векторами Мг-, вычисляется свой хэш-код Иг-;

б) способ применения полносвязной сети хэширования, при котором каждый хэш-код Иг- вычисляется от всей совокупности данных, представленных двоичными векторами Мг-;

2.2. Способы применения хэш-функции (при k > п).

Способ применения хэш-функции h, при котором от

каждого из блоков данных, представленных двоичными векторами Мг-, вычисляется хэш-код Иг-:

и (м,. ) = н,.

поясняется на рис. 3.

Способ применения полносвязной сети хэширования, при котором каждый хэш-код Иг- вычисляется от всей совокупности данных, представленных двоичными векторами Мг-:

к (м 71||М 72||^||М л ) = н,

поясняется на рис. 4.

м, м2 М*

д( II Мл 11-1|Мд)

Н, н2 Н,

Рис. 4. Способ применения полносвязной сети хэширования

м, м2 М,

А(М,)

й(М2)

Мм,

Н, н2

Рис. 3. Способ применения хэш-функции, при которой от каждого из блоков данных вычисляется хэш-код

В этом случае, количество вычисленных хэш-кодов Иг- будет равняться количеству двоичных векторов Мг-.

Достоинства:

- простота реализации;

- возможность локализации блока данных, представленного двоичным вектором М;, при контроле целостности данных.

Недостатки:

- высокая избыточность при контроле целостности блоков данных, представленных двоичными векторами небольшой размерности;

- малая вероятность обнаружения ошибки (определения факта нарушения целостности данных) при пропуске ошибки (ложном сигнале об ошибке) средствами контроля.

В данном способе большое значение имеет последовательность блоков данных, представленных двоичными векторами Мг-, участвующих в конкатенации (объединении). Здесь первым объединяется блок данных, представленный двоичными векторами Мг-, номер которого соответствует номеру вычисляемого хэш-кода Иг- (за счет этого их значения будут отличаться между собой).

Например,

- при i = 1: Н1 = h(М1 || М2 ||... || Мк);

- при i = 2: Н 2 = h (М 2 || М1 || М3 || ... || М к);

- при I = к: Нп = h (М И||.||М „_! || М Й+1||...||М*),

где — операция конкатенации.

Достоинство: повышение вероятности обнаружения ошибки (определения факта нарушения целостности данных) при пропуске ошибки (ложном сигнале об ошибке) средствами контроля.

Недостатки:

- высокая избыточность при контроле целостности блоков данных, представленных двоичными векторами небольшой размерности;

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

Однако, частные случаи способа применения функции хэширования (рис. 4) позволяют локализовать блок данных с нарушением целостности с одновременным снижением вводимой избыточности, в отличие от способов, представленных на рис. 2 и 3.

В свою очередь, при контроле целостности данных наибольший интерес представляют способы применения хэш-функции (при k> п). В [4, 5] представлено решение, позволяющее обеспечить локализацию искаженных или утраченных блоков данных, подлежащих защите, с одновременным снижением избыточности контрольной информации при осуществлении контроля целостности данных в автоматизированных системах, где с помощью математического аппарата теории систем векторов выполнено обоснование и разработка алгоритма построения линейных систем хэш-кодов, правила (принципы) построения которых аналогичны правилам построения линейных избыточных кодов, в частности, кодов Хемминга.

Известны другие способы применения хэш-функции, позволяющие локализовать блоки данных, с нарушенной целостностью с одновременным снижением вводимой избыточности4 [6-8]. Главными недостатками представленных способов являются: отсутствие возможности определения факта нарушения целостности данных в условиях искажения или уничтожения самой контрольной информации, что может привести к пропуску ошибки или ложном сигнале об ошибке; а также они не учитывают структуру многомерного представления информации в современных СХД.

Разработка способа

Способ снижения вводимой избыточности при контроле целостности данных, представленных в СХД в виде упорядоченных многомерных массивов (гиперкубов), основан на правилах построения помехоустойчивых кодов.

Путем фиксации одного из измерений гиперкуба данных сформируем матрицу W, на строках и столбцах которой располагаются подблоки данных М(у , подлежащие защите [9-11]:

W =

Mjj M-

M21 M.

12

22

M M

1k

2k

M„1 M

n2

M

nk

.(1)

При этом строки матрицы (1) образуют блоки данных

M = (MJ м,

Min}, где i=1,2, ..., к; а столбцы матри-

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

цы (1) образуют блоки данных M j = (Mj j

где j = 1,2, ..., n.

M

2 j\

M kj }

Для контроля целостности подблоков данных М(у применим хэш-функцию по правилам построения прямоугольных, квадратных, треугольных, кубических кодов5.

Использование полученных конструкций при контроле целостности данных позволит снизить избыточность контрольной информации. При этом оценивание количества вводимой избыточности (контрольной информации) будет производиться в соответствии с выражением:

V = P,

(2)

где V— объем вводимой избыточности, d — количество подблоков данных, подлежащих защите, р — количество вычисляемых хэш-кодов.

Контроль целостности данных на основе

правил построения прямоугольных кодов

Контроль целостности данных, основанный на правилах построения прямоугольных кодов, содержит (Ъп) блоков данных (здесь и далее символический смысл к, п переопределен), представленных двоичными векторами Му (г = 1,..., п ; у = 1,..., k), которые представляются в прямоугольнике размером к на п (распределяются по к столбцам и п строкам прямоугольника).

По правилам построения к каждой строке и столбцу прямоугольника добавляются хэш-коды И; к+1, Ип+1, к , ко -торые вычисляется от совокупности блоков данных, представленных двоичными векторами М(у, расположенных на соответствующей строке и столбце прямоугольника, как представлено на рис. 5.

M„ ► M 12 -> MI3 -----►

1 r i 1

M21 M 22 M23 -----> Щ >

Т

т ±

M ril мй3 -----> Мм

1 r i г

Hjffi.i

11

нЛ+1

Рис. 5. Общий вид прямоугольной системы хэш-кодов

Knuth D.E. The Art of Computer Programming: Volume 3: Sorting and Searching. 2nd

edn. 2018. 803 p.

Hamming R. Coding and Information Theory. Prentice-Hall, 2008. 259 p.

При этом матрица (1) примет следующую форму:

¥

М„ м.

21

мг м

22

Мм.

1Ат

М „

М „

м

пк

Н1, к+1 н

2,к+1

Н п

к+1

Н п+1,1 Нп

Н

п+1, к

Определение 1. Первоначальный прямоугольник размером к на п подблока данных преобразуется в массив размером ((к+1) • (п+1) -1), который будет называться прямоугольной системой хэш-кодов.

Для контроля целостности (к * п) блоков данных в прямоугольной системе хэш-кодов требуется вычислить (к*п) хэш-кодов.

В соответствии с (2) объем вводимой избыточности вычисляется по формуле:

V = -

к ■ п

(3)

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

Сеть хэширования для прямоугольной системы хэш-кодов, представленной на рис. 6.

Пример 1. Сеть хэширования для прямоугольной системы хэш-кодов с размером прямоугольника (к = 3, п = 2) представлена на рис. 7.

На основе сети хэширования (рис. 7) составляется табл. 1, где «[•]» обозначает локализованный проверяемый хэш-код Н¡,к+1 или Нп+1к , а также при нарушении целостности данных проверяемый блок данных М; ^

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

Рис. 6. Общий вид сети хэширования для прямоугольной системы хэш-кодов

Рис. 7. Сеть хэширования для прямоугольной системы хэш-кодов, где к=3, п=2

Таблица 1

Синдромы для прямоугольной системы хэш-кодов, где k = 3, п = 2

Синдром Локализация ошибки

H33 H32 H31 H 24 H14 Результат

0 0 0 0 0 Нет ошибки

0 0 0 0 1 [Й14 ] , Н 24, Нз!, Н32, Н33, Mn,..., M23

0 0 0 1 0 H14, ГН24 1 , H31,H32, H33, M11, —,M23

0 0 1 0 0 H14, H24, [H31 ] , H32, H33, M11, —, M23

0 1 0 0 0 H14, H24, H31, [H32 ] , H33, M11, —,M23

1 0 0 0 0 H32'[H33 ] ,M11,.",M23

0 0 1 0 1 H14„.„нзз,[Mn ] , M12>_,M23

0 1 0 0 1 HM,..„H33,Mn, [Mn ] , MB,..„M23

1 0 0 0 1 HM,..„ H33, M„, M12, [MM !3 ] , M21, M 22, M 23

0 0 1 1 0 HM,..., H33, M„, M12, MB, [M 21 ] , M 22, M 23

0 1 0 1 0 HM,...,H33,Mn,..„M21,[M22] ,M23

1 0 0 1 0 H14,..., H33, Mn>_,M 22, [M 23 ]

При этом существует возможность осуществления

контроля целостности самих эталонных хэш-кодов. Для этого необходимо в соответствии со следующим выраже- щ -н м!2 - > м 13 ----->. -> ни+]

нием вычислить хэш-код Н(1+1| : \ 1 1 г 1 Г 1 г 1 г

н„+и+1 = й д-+1,..., н,а+1, н)1+и,..., Нн+1 к), -> м„ м 23 -----> м3, ->

расположенный в прямоугольной системе хэш-кодов, как представлено на рис. 8.

При этом матрица (1) примет следующую форму:

¥

M-

11

M12 ••• M1k

M 21 M 2

M

2k

M «1 M n 2 ••• Mnk

H1, k+1 H

2,k+1

H

n,k+1

H n+1,1 Hn

••• Hn+1k H

n+1, k "-n+1, k+1

T

Щя i М„2 щ ----->

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1 Г 1 г

^lH-1,1 Hfc -> ----->

Ж,

Рис. 8. Прямоугольная система с контролем эталонных хэш-кодов

Определение 2. Хэш-коды, предназначенные для контроля целостности эталонных хэш-кодов, изначально вычисленных для осуществления контроля целостности данных, будут называться эталонными хэш-кодами второго порядка.

Контроль целостности данных на основе правил построения квадратных кодов

Квадратная система хэш-кодов является частным случаем прямоугольной системы хэш-кодов (рис. 9). Известно, что при заданном размере ((к+1) • (п+1) -1) избыточность тем меньше, чем ближе прямоугольник к квадрату6.

Пример 2. При фиксированном числе подблоков данных, подлежащих защите, к примеру, 144, объем вводимой избыточности в квадратной системе хэш-кодов, где к = 12, в соответствии с (4) составит V ~ 16,7%, а в прямоугольной системе, где к = 16, п = 9, в соответствии с (3) составит V ~ 17,4%.

Выигрыш при использовании квадратной системы хэш-кодов по сравнению с прямоугольной при количестве подблоков данных равном 144 составит ~ 4,2%.

Для контроля целостности эталонных хэш-кодов необходимо по аналогии с контролем целостности данных на основе схемы построения прямоугольных кодов вычислить эталонный хэш-код второго порядка.

Рис. 9. Общий вид квадратной системы хэш-кодов При этом матрица (1) примет следующую форму:

¥

M11 M12 M

M

21

1k

M22 ^ M 2k

M k1 Mk 2 ^ Mkk

Hk+1,1 Hk+1,2 — H k+1, k

1,k+1

2,k+1

H

k ,k+1

Определение 3. Квадратной системой хэш-кодов будет называться система хэш-кодов размером (^ + 1)2 - 1), из которых к2 блоков данных, подлежащих защите, и 2к хэш-кодов, расположенных вдоль сторон квадрата.

Для контроля целостности к2 блоков данных в квадратной системе хэш-кодов требуется вычислить 2к хэш-кодов, в соответствии с (2) объем вводимой избыточности вычисляется по формуле:

v = 2. k

(4)

4Hamming R. Coding and Information Theory. Prentice-Hall, 2008. 259 p.

Контроль целостности данных на основе правил построения треугольных кодов

Определение 4. Треугольной системой хэш-кодов будет называться система хэш-кодов размером ( к (к +1) ^

2

- + к +1

где для к подблоков данных, подлежащих

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

м„

1 г

м 31

[ i

м *(

г

Н, +1.1

т

т ±-

Н,-,.<-:

HiJ

Рис. 10. Общий вид треугольной системы хэш-кодов

При этом матрица (1) примет форму полураспавшейся (клеточно-треугольной) матрицы:

¥

M11 M12 M 21 ^ M k-1, k-1

M

1k

M

k1

H

1, k+1

Hk-1

-1,k

Hk+1,1 — Hk ,k-1

Понятие «полураспавшаяся» («клеточно-тре-угольная») приведены по аналогии, представленной

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

к (к +1)

Для контроля целостности —- блоков данных

в треугольной системой хэш-кодов требуется вычислить (к + 1) хэш-кодов, в соответствии с (2) объем вводимой избыточности вычисляется по формуле:

v = 2. k

(5)

Для контроля целостности эталонных хэш-кодов необходимо вычислить эталонный хэш-код второго порядка Н

k+1,k+1

Нк+1,к+1 = к (Н1,к+1' • ■ ■' Нк-1,к,Нк+1,1,• ■ ■, Нк,к-1)'

как представлено на рис. 11.

Для осуществления контроля целостности строится сеть хэширования.

Пример 3. Сеть хэширования для треугольной системы хэш-кодов (к = 3) представлена на рис. 12.

На основе сети хэширования (рис. 12) составляется табл. 2.

Мальцев А.И. Основы линейной алгебры. М.: Государственное издательство технико-теоретической литературы, 1956. 340 с.

Рис. 11. Контроль эталонных хэш-кодов в треугольной системе

Рис. 12. Сеть хэширования для треугольной системы хэш-кодов, где к = 3

Таблица 2

Синдромы для треугольной системы хэш-кодов, где k = 3

Синдром Локализация ошибки

Н 41 Н32 Н23 Н14 Результат

0 0 0 0 Нет ошибки

0 0 0 1 Н14 , H23, H32, H41, M31

0 0 1 0 H14, H23 , H32, H41, M31

0 1 0 0 H14,H 23, [H32 ] , H 41, МП>---> M31

1 0 0 0 H14,H23,H32,[1141 ] ,Mn>-">M31

1 0 0 1 HM,.„, H41,[MM 11 ] ,M12,...,M31

0 1 0 1 hm,...,H41,M11,[MM 12] ,mb,...,M31

0 0 1 1 HM,.„, H41, M11, M12, [M13 ] , M21, M 22, M31

1 0 1 0 HM,..., H41,M11,Mi2,M13, [MM2i ] ,M22,M31

0 1 1 0 HM,„., H41,Mn,„.,M21,[MM22 ] ,M31

1 1 0 0 HM,„., H 41, M11,..., M 22, [MM 31 _

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

Контроль целостности данных на основе

правил построения кубических кодов

Схема применения хэш-функции к блокам данных, построенная по правилам, аналогичным правилам построения многомерных структурах, в частности, для трехмерной структуры (куба) содержит к^ + 1)2 подблоков данных Шд , подлежащих защите (/' = 1,..., k + 1;] = 1,..., к(к + 1)2), которые представляются в кубе размером ^ + 1)3.

Для контроля целостности к^ + 1)2 блоков данных в трехмерной системе хэш-кодов требуется вычислить (к + 1)2 хэш-кодов, в соответствии с (2) объем вводимой избыточности вычисляется по формуле:

К = 1. к

(6)

Определение 5. Трехмерной системой хэш-кодов будет называться система хэш-кодов размером ^ + 1)3, где для подблоков данных на соответствующей плоскости вычисляются хэш-коды, как представлено на рис. 13 (частный случай: при k = 2).

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

Оценивание разработанного способа

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Объем вводимой избыточности контрольной информации для контроля целостности данных при использовании разработанного способа в соответствии с выражениями (3)-(6) сокращается со 100% (при использовании существующих решений) до -8% в зависимости от количества подблоков данных, подлежащих защите. Снижение

Рис. 13. Общий вид трехмерной системы хэш-кодов, где k = 2

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

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

Пример 4. При k = 3 в треугольной системе хэш-кодов количество подблоков данных, подлежащих защите, будет равняться 6, в квадратной системе хэш-кодов — 9, в трехмерной (куб) — 48.

Для оценивания разработанных систем хэш-кодов рассмотрим несколько вариантов их построения (табл. 4),

Таблица 3

Характеристики разработанных систем хэш-кодов

№ Наименование Размер системы хэш-кодов Характеристики системы хэш-кодов

п/п системы хэш-кодов Количество подблоков блока данных Количество хэш-кодов

1.1 8 о и & ш Прямоугольные системы хэш-кодов (( +1).(, +1)-1) к • t к +1

1.2 8 " ^ а ш щ ч: й я ^ Квадратные системы хэш-кодов ((к +1)2 -1) к 2 2к

1.3 3 о 8 ^ ^ к н Е о Я О Треугольные системы хэш-кодов (к (к +1) ^ ^ к+1 1 2 У к (к +1) 2 к +1

2. Системы в и-мерном пространстве (кубические системы хэш-кодов) (к +1)3 к (к +1)2 (к +1)2

Таблица 4

Объемы вводимой избыточности для вариантов построения разработанных систем хэш-кодов

№ п/п Наименование систем хэш-кодов Характеристики Варианты построения разработанных систем

1 вариант 2 вариант 3 вариант 4 вариант 5 вариант 6 вариант 7 вариант 8 вариант 9 вариант

1. Системы в двумерном пространстве Прямоугольные системы хэш-кодов Количество подблоков данных 6 12 20 54 120 144 176 216 280

Количество хэш-кодов 5 7 9 15 22 25 27 30 34

Объем избыточности -83% -58% 45% -28% -18% -17% -15% -14% -12%

2. Квадратные системы хэш-кодов Количество подблоков данных 9 16 25 64 121 144 196 225 289

Количество хэш-кодов 6 8 10 16 22 24 28 30 34

Объем избыточности -67% 50% 25% 25% -18% -17% -14% -13% -12%

3. Треугольные системы хэш-кодов Количество подблоков данных 6 21 55 120 171 210 231 253 276

Количество хэш-кодов 4 7 11 16 19 21 22 23 24

Объем избыточности -67% -33% 20% -13% -11% 10% -10% -9% -8%

4. Системы в я-мерном пространстве (кубические системы хэш-кодов) Количество подблоков данных 18 48 100 180 294 - - - -

Количество хэш-кодов 9 16 25 36 49 - - - -

Объем избыточности 50% -33% 25% 20% -17% - - - -

отличающиеся количеством подблоков данных, подлежащих защите, и вычислим соответствующие им объемы вводимой избыточности.

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

затем квадратные, прямоугольные, а потом кубические системы хэш-кодов.

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

Рис. 14. График со сравнительной оценкой разработанных систем хэш-кодов

ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И УПРАВЛЕНИЕ

Заключение

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

Предложенный подход позволяет осуществить контроль целостности не только данных, подлежащих защите, но и самих эталонных хэш-кодов.

Литература

1. Tchernykh A., Babenko M., Chervyakov N. and etc. AC-RRNS: Anti-Collusion Secured Data Sharing Scheme for Cloud Storage // International Journal of Approximate Reasoning. Special Issue on Uncertainty in Cloud Computing: Concepts, Challenges and Current Solutions. 2018. Vol. 102. Pp. 60-73.

2. Samoylenko D. V., Eremeev M.A., Finko O. A. A method of providing the integrity of information in the group of robotic engineering complexes based on cryptcode constructions // Automatic Control and Computer Sciences. 2017. № 51:8. Pp. 965-971.

3. Пойманова Е. Д., Татарникова Т.М. Управление пространственными ресурсами систем хранения данных // Сборник трудов X международной научно-практической конференции «Программная инженерия и компьютерная техника (Майоровские чтения)». Санкт-Петербург, 2018. С. 85-88.

4. Савин С. В., Финько О. А. Обеспечение целостности данных в автоматизированных системах на основе линейных систем хэш-кодов // Научный журнал КубГАУ № 114(10). 2015. URL: http://ej.kubagro.ru/2015/10/pdf/60.pdf (дата обращения 05.08.2020).

5. Диченко С. А. Контроль и обеспечение целостности информации в системах хранения данных // Наукоемкие технологии в космических исследованиях Земли. 2019. Т. 11. № 1. С. 49-57.

6. Biham E., Dunkelman O. A framework for iterative hash functions — HAIFA // Cryptology ePrint Archive. Report 2007/278. 2007. Pp. 1-20. URL: https://eprint.iacr.org/2007/278 (дата обращения 05.08.2020).

7. Wang X., Yu H. How to break MD5 and Other Hash Function // Advances in Cryptology — EUROCRYPT 2005. Lecture Notes in Computer Science. Springer-Verlag, 2005. Vol. 3494. Pp. 19-35.

8. Bellare M. New Proofs for NMAC and HMAC: Security without Collision-Resistance // Advances in Cryptology — CRYPTO 2006 Lecture Notes in Computer Science. Vol. 4117. Springer, Berlin, Heidelberg, 2006. Vol. 4117. Pp. 1-1.

9. Финько О.А, Диченко С. А. Гибридный крипто-кодовый метод контроля и восстановления целостности данных для за-щищённых информационно-аналитических систем // Вопросы кибербезопасности. 2019. № 6(34). С. 17-36.

10. Finko O. A., Dichenko S. A. Two-dimensional control and assurance of data integrity in information systems based on residue number system codes and cryptographic hash functions // Proceedings of the 2018 Multidisciplinary Symposium on Computer Science and ICT, Stavropol, Russia, October 15. 2018. 2254. CEUR Workshop Proceedings. 2018. Pp. 139-146.

11. Диченко С. А. Разработка алгоритма контроля и обеспечения целостности данных при их хранении в центрах обработки данных // Информационный бюллетень Омского научно-образовательного центра ОмГТУ и ИМ СО РАН в области математики и информатики Материалы VIII Международной молодежной научно-практической конференции с элементами научной школы. 2018. С. 110-113.

GENERALIZED METHOD OF APPLYING HASH FUNCTIONS FOR DATA INTEGRITY CONTROL

SERGEY A. DICHENKO

Krasnodar, Russia, dichenko.sa@yandex.ru

OLEG A. FINKO

Krasnodar, Russia, ofinko@yandex.ru, www.mathnet.ru/eng/person40004

KEYWORDS: data storage system; data integrity control; cryptographic methods; hash function; reduction of introduced redundancy.

ABSTRACT

Data storage systems designed for storing large multidimensional arrays of information, functioning in conditions of destructive influences of an attacker and the environment, are considered. One of the most urgent tasks for such systems is the organization of secure data storage, and taking into account such operating conditions - ensuring their integrity. Ensuring data integrity is a difficult task,

due to its complexity, as it includes both recovery and data integrity control. One of the well-known and widely used methods of data integrity control is the use of cryptographic methods, in particular, the hashing function. However, despite the widespread use of hash functions, they have been very little researched, and practical proposals for their use are very few and are characterized by a number

of disadvantages associated with the need to introduce a high redundancy of control information. In the context of limitations on the existing resource of data storage systems, this can lead to a decrease in the probability of completing the task of their functioning, or even to its failure. A generalized method is proposed, the use of which will reduce the amount of introduced redundancy when monitoring the integrity of information in data storage systems, based on the use of cryptographic hash functions, a distinctive feature of which is the use of rules for constructing error-resistant codes. In addition, the developed method provides the data integrity control procedure with a new property: the ability to control the integrity of not only the data to be protected, but also the reference hash codes themselves. Calculated data of the required volume of the introduced redundancy are obtained when monitoring the data integrity in existing storage systems using the developed method.

REFERENCES

1. Tchernykh A., Babenko M., Chervyakov N. and etc. AC-RRNS: AntiCollusion Secured Data Sharing Scheme for Cloud Storage. International Journal of Approximate Reasoning. Special Issue on Uncertainty in Cloud Computing: Concepts, Challenges and Current Solutions. 2018. Vol. 102. Pp. 60-73.

2. Samoylenko D. V., Eremeev M. A., Finko O. A. A method of providing the integrity of information in the group of robotic engineering complexes based on cryptcode constructions. Automatic Control and Computer Sciences. 2017. № 51:8. Pp. 965-971.

3. Poimanova E. D., Tatarnikova T. M. Upravlenie prostranstvenny-mi resursami sistem hranenija danny [Management of spatial resources of data storage systems]. Sbornik trudov X mezhdunarod-noj nauchno-prakticheskoj konferencii "Programmnaja inzhenerija i komp'juternaja tehnika (Majorovskie chtenija)" [Proceedings of the X International Scientific and Practical Conference "Software Engineering and Computer Engineering (Major Readings)"]. St. Petersburg, 2018. Pp. 85-88. (In Rus)

4. Savin S. V., Finko O. A. Obespechenie celostnosti dannyh v avtom-atizirovannyh sistemah na osnove linejnyh sistem hjesh-kodov [Ensuring data integrity in automated systems based on linear systems of hash codes]. Nauchnyj zhurnal KubGAU [Scientific journal KubGAU]. URL: http://ej.kubagro.ru/2015/10/pdf/60.pdf (date of access 10.12.2018). (In Rus)

5. Dichenko S. A. Control and security of information integrity in data

storage systems. H&ES Research. 2019. Vol. 11. No 1. Pp. 49-57. (In Rus)

6. Biham E., Dunkelman O. A framework for iterative hash functions - HAIFA. Cryptology ePrint Archive. Report 2007/278. 2007. Pp. 1-20. URL: https://eprint.iacr.org/2007/278 (дата обращения 05.08.2020).

7. Wang X., Yu H. How to break MD5 and Other Hash Function. Advances in Cryptology - EUROCRYPT2005. Lecture Notes in Computer Science. Springer-Verlag, 2005. Vol. 3494. Pp. 19-35.

8. Bellare M. New Proofs for NMAC and HMAC: Security without Collision-Resistance. Advances in Cryptology - CRYPTO 2006 Lecture Notes in Computer Science. Vol. 4117. Springer, Berlin, Heidelberg, 2006. Vol. 4117. Pp. 1-1.

9. Finko O. A., Dichenko S. A. Hybrid crypto-code method for monitoring and restoring data integrity for secure information and analytical systems. Voprosy kiberbezopasnosti [Cybersecurity Issues] 2019. No. 6(34). Pp. 17-36. (In Rus)

10. Finko O. A., Dichenko S. A. Two-dimensional control and assurance of data integrity in information systems based on residue number system codes and cryptographic hash functions. Proceedings of the 2018 Multidisciplinary Symposium on Computer Science and ICT, Stavropol, Russia, October 15. 2018. 2254. CEUR Workshop Proceedings. 2018. Pp. 139-146.

11. Dichenko S. A. Razrabotka algoritma kontrolja i obespechenija celostnosti dannyh pri ih hranenii v centrah obrabotki dannyh [Development of an algorithm for monitoring and ensuring the integrity of data during their storage in data processing centers]. Infor-macionnyj bjulleten' Omskogo nauchno-obrazovatel'nogo centra OmGTU i IM SO RAN v oblasti matematiki i informatiki Materialy VIII Mezhdunarodnoj molodezhnoj nauchno-prakticheskoj konferencii s jelementami nauchnoj shkoly [Newsletter of the Omsk Scientific and Educational Center of OmSTU and IM SB RAS in the field of mathematics and computer science Materials of the VIII International Youth Scientific and Practical Conference with elements of a scientific school]. 2018. Pp. 110-113. (In Rus)

INFORMATION ABOUT AUTHORS:

Dichenko S.A., PhD, Doctoral Candidate of the Krasnodar Higher Military School named after S.M.Shtemenko;

Finko O.A., PhD, Full Professor, Professor at the Department of the Krasnodar Higher Military School named after S.M.Shtemenko.

For citation: Dichenko S.A., Finko O.A. Generalized method of applying hash functions for data integrity control. H&ES Research. 2020. Vol. 12. No. 6. Pp. 48-59. doi: 10.36724/2409-5419-2020-12-6-48-59 (In Rus)

i Надоели баннеры? Вы всегда можете отключить рекламу.