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

I ПРОВЕРКА ГИПОТЕЗЫ О РАВНОМЕРНОМ РАСПРЕДЕЛЕНИИ ЗНАЧЕНИЙ ХЭШ-ФУНКЦИИ

Лебеденко Е.В.1, Рябоконь В.В.2

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

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

Введение

Метод независимых перестановок (англ. min-wise independent permutations), применяемый для получения оценки сходства массивов бинарных данных, основан на использовании набора независимых хэш-функций и получения минимальных хэш-значений [1]. При этом получаемая оценка сходства подчиняется биномиальному распределению в случае, когда служащие для перестановок хэш-функции помимо независимости обладают свойством равномерного распределения результатов по всем возможным значениям [2].

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

- быть достаточно быстрой;

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

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

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

Хэш-функция

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

hfsj)=

где s.- байт данных, seed[i\ - коэффициент хэш-функции, m - значение модуля.

Данный выбор обусловлен низкой вычислительной сложностью (1 умножение, 1 сложение, 1 взятие по модулю), а также возможностью получения набора хэш-функций для независимых пере-станквок с помощью различных значений коэффициента функции seed[u\.

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

Определим хэш-функцию как отображение:

hm:S^{deN, 0 < d <m- \,meN}.

При использовании 4 байт для хранения значения хэш-функции модуль может принимать значения m < 232. С учетом требований к линейному конгруэнтному методу целесообразно в качестве моду-ля принять наиболее близкое к максимальному значению п ростое число m = 4 294 967 291.

1 Лебеденко Евгений Викторович, кандидат технических науч, Акидемия ФСО России, г. Окее, 1еЬейецко_еидепе@пнаИш

2 Рябоконь Владимир Владимирович, Академия ФСО Роесии, г Орёл, mimicria@mail.ru

Проверка гипотезы о равномерном распределении значений кэш-функции

Очев идно, что при заданных раз мерах входн ых и выходных данных хэш-функцря Н( не рудет нвлять-ся совершенной [4], поскмльку она не инъективна на Э^Б [5]. Таким образом, согласно принципу Дирихле, неизбежао нализие коллизиН хэш-функции. Однакн с учетом аек рсртогр а фичесаого применении хэш-функиеи сля нехависимых перс-становок вопросы стойкости к коллизиям и нсоб-ратемонти нях рассматриваются ЕОЕЗидуг отсутствия злоумышленнике - возмхжяоати дискдедитадин ииф-хяцяг^ании.

РсамоН праостой постанов-с сыполиенинтяебо-вания -о равномерности распределении я зсазений хэш-функции можно проеерить, неребряе все возможные блоки на входе хэш-функции и-меожестяа £и построить рядчастот хэш-значений. При иден-тифяяации массивов бииарных данныд для при--я<хра ГГудет сцндльзовaтсся рооаггрпер) блоке да= 32 (батпО, таксм обЗр-азогм, £ = [8иЫ, 0 < 5 < 22256}. Очевидни, «-ото такое количестн- варикнтов на нходе хнш-функции (глиигко-я селиио для полного перебора, а составление словарей из имеющейся выборка массивов (бинарных данных представля-атся рецелесоо0цазнып.

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

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

шроверка рзвномерности распределения

Наиболее распространенным критерием в зада чах математичесзой статистики является кри -терий Пирсона (х2 - Хи-квадрат) [6]. Пусть результаты испытания таковы, что все они могут быть

раздмлены на TV категорий. Пвоводмтся l незави-сммых испытаний, т. е. таких, на исход каждого из которые не влинют резулететым любого из осталь-нынх испытаний.

При проверке рассч итыэвается

i=i мг-

гды п,- о n - эмоимнмескии и теоретические частоты вепсдения соответствующих i-х значений.

Считиется, »что гипотеза о равномероости распределение принимается с вероятностью не менее 95 %, евио рассчитанное инсчение х2 ои -pp ^ы>1сило инитечеймoгo зоичения х2крит для довери-телиной вероятности 0,95 о ko = N - 2 - 1 (к - число втепеней свебодт1,о - число параметров, по которому оценииичтся равномерное распределение, 1 - конотанта в крите^и Пидсона) [7].

Условием использования критерия Пирсона являетси доститочно большое количество испытаний И Кроме иого, статестические свойства притерев типа х2 зависят как от того, каким образом область значений случайной величины: разбивается на интервалы, так и от выбора чссла интервалом груипирования N [8]. Рекомендуемое в |зазлиывы:х источниках количество интврвазов группиросчнвя, используемое при проверке статистических гипотез с помощью критерия Пирсона, колеблется в очень широких пределаз.

Поскольку проверяется гипотеза о равномер-чом диспределении значений хэш-функции, множество возможные хэш-значений D разбивается на равныое интервалы!. При этом количество интервалов можно определить исходя из минимизации ошибки разбиемем и > -, иеизбежно возникающей в случае простогн значения модуля т. Возможные значения количества интервалов для минимальной ошибки 8 =1 представлены в таблице 1.

Таблица 1

Разбиение области хэш-значений на интервалы

Количестзо ичтерваеов Размер интервала Количество испытаний

2 2 147 483 645 4

5 858 993 458 25

10 429 496 729 100

19 226 050 910 361

38 113 025 455 1444

95 45 210 182 9025

190 22 605 091 36 100

Таблица 2

Результаты расчетов по критерию х2

И1 80,4 102,9 98,1 96,5 107,9

Ь2 75,7 98,4 71,5 93,5 78,5

Ьз 105,5 89,6 103,5 81,4 74,6

И4 96,7 91,9 101,9 96,2 98,2

Ьт 97,7 102,2 85,5 101,3 70,3

Рис. 1. Пример программы расчета критерия х2

Рис. 2. Распределение каждого байта хэш-значений

5353484823485353482353232332232323535353532323535348232323

06270532051803168119110637931292106376319028091108

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

При этом количество испытаний определялось с использованием выражения [9]:

I = N2 .

Испытания количеством I = 9025 проводились не менее пяти раз для каждой хэш-функции ^ из набора, I = 1.. .100, результаты представлены в таблице 2, пример программы расчета показан на рисунке 1.

Для количества интервалов N = 95 критическое значение х2крит = 115,3898, таким образом, гипотеза о равномерности распределения принимается с доверительной вероятностью 0,95.

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

Таким образом, для метода независимых перестановок можно использовать как полное 4-байт-

ное значение хэш-функции, так и значения каждого байта в отдельности.

Заключение

Результаты показывают, что при достаточно большом количестве статистических испытаний I хеш-функция вида (1) обладает высокой равномерностью хеширования. Таким образом, набор хэш-функций, формируемый с помощью различных значений коэффициента, может быть использован для идентификации массивов бинарных данных с помощью метода независимых перестановок. Направлением дальнейших исследований в этой области являются оценка случайности получаемых хэш-значений и доказательство независимости полученного набора хэш-функций [10].

Рецензент: Баранов Владимир Александрович, доктор технических наук, доцент, сотрудник Академии ФСО России, baranov.va@mail.ru

Литература:

1. Broder A., Charikar M., Frieze A., Mitzenmacher M. Min-Wise Independent Permutations. - URL: http://www.cs.princeton.edu/ courses/archive/spring04/cos598B/bib/BroderCFM-minwise.pdf (дата обращения: 1.05.2016).

2. Рябоконь В.В. Моделирование идентификации массивов бинарных данных // Системы управления и информационные технологии. 2015. Т. 61. № 3-1. С. 172-178.

3. Partow A. General Purpose Hash Function Algorithms. - URL: http://www.partow.net/programming/hashfunctions/ (дата обращения: 1.05.2016).

4. Pescio C. Minimal perfect hashing. Dr. Dobb's Journal. 1996. № 249.

5. Верещагин Н.К., Шень А. Лекции по математической логике и теории алгоритмов. Ч. 1. Начала теории множеств. - 2-е изд., испр. - М.: МЦНМО, 2002. - С. 128.

6. Акимова Г.П., Пашкина Е.В., Соловьев А.В. Методологический подход к оценке качества случайных чисел и последовательностей // Труды Института системного анализа Российской академии наук. 2008. Т. 38. С. 156-167.

7. Виноградов И.М. Математическая энциклопедия. - М.: Сов. Энциклопедия, 1984. - С. 1216.

8. Лемешко Б.Ю., Чимитова Е.В. О выборе числа интервалов в критериях согласия типа х2 // Заводская лаборатория. Диагностика материалов. 2003. Т. 69. № 1. С. 61-67.

9. Heinhold I., Gaede K.W. Ingeniur statistic. - München; Wien, Springler Verlag. - 1964. - S. 352.

10. Поляков Д.В., Попов А.И. Генератор монотонных хеш-функций для ассоциативного массива // Труды НГТУ им. Р.Е. Алексеева. 2015. № 2 (109). С. 70-81.

HYPOTHESIS VERIFICATION ABOUT THE UNIFORM DISTRIBUTION OF HASH VALUES

Lebedenko E.V.3, Ryabokon V.V.4

The article discusses the selection and evaluation of hash function properties used to identify binary data arrays with the method of independent permutations. Requirements for hash functions used for the method

3 Eugene Lebedenko, Ph.D., The Academy of Federal Security Guard Service of the Russian Federation, Orel, lebedenko_eugene@mail.ru

4 Vladimir Ryabokon, The Academy of Federal Security Guard Service of the Russian Federation, Orel, mimicria@mail.ru

of independent permutations are shown. The necessity of checking the uniformity of the distribution of hash values is considered. According to the analysis of non-cryptographic hash functions algorithms selected hash function based on the linear congruential method as the base for the method of independent permutations. Variants of uniformity checking are considered and proposed an approach using the method of statistical tests and goodness-of-fit Pearson. The experimental verification confirmed the hypothesis about uniform distribution of selected hash values is shown.

Keywords: independent permutations, binary data arrays, hash functions, uniform distribution, the Pearson criterion.

References:

1. Broder A., Charikar M., Frieze A., Mitzenmacher M. Min-Wise Independent Permutations. - URL: http://www.cs.princeton.edu/ courses/archive/spring04/cos598B/bib/BroderCFM-minwise.pdf.

2. Ryabokon' V.V. Modelirovanie identifikatsii massivov binarnykh dannykh, Sistemy upravleniya i informatsionnye tekhnologii. 2015. T. 61. No 3-1, pp. 172-178.

3. Partow A. General Purpose Hash Function Algorithms. - URL: http://www.partow.net/programming/hashfunctions/.

4. Pescio C. Minimal perfect hashing. - Dr. Dobb's Journal. - No 249, 1996.

5. Vereshchagin N.K., Shen' A. Lektsii po matematicheskoy logike i teorii algoritmov. Ch. 1. Nachala teorii mnozhestv. - 2-e izd., ispr. - M. : MTsNMO, 2002. - P. 128.

6. Akimova G.P., Pashkina E.V., Solov'yev A.V. Metodologicheskiy podkhod k otsenke kachestva sluchaynykh chisel i posledovatel'nostey, Trudy Instituta sistemnogo analiza Rossiyskoy akademii nauk. 2008. V. 38, pp. 156-167.

7. Vinogradov I.M. Matematicheskaya entsiklopediya. - M. : Sov. Entsiklopediya, 1984. - P. 1216.

8. Lemeshko B.Yu., Chimitova E.V. O vybore chisla intervalov v kriteriyakh soglasiya tipa X2, Zavodskaya laboratoriya. Diagnostika materialov. 2003. T. 69. No 1, pp. 61-67.

9. Heinhold I., Gaede K.W. Ingeniur statistic. - München; Wien, Springler Verlag. - 1964. - P. 352.

10. Polyakov D.V., Popov A.I. Generator monotonnykh khesh-funktsiy dlya assotsiativnogo massiva, Trudy NGTU im. R.E. Alekseeva. 2015. No 2 (109), pp. 70-81.