Rublev Dmitry Pavlovich
Taganrog Institute of Technology - Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”.
E-mail: [email protected].
2, Chekhova Street, Taganrog, 347928, Russia.
Phone: +78634371905.
The Department of Security in Data Processing Technologies; Associate Professor.
Makarevich Oleg Borisovich
E-mail: [email protected].
Phone: +78634312018.
The Department of Security in Data Processing Technologies; Head of the Department.
Fedorov Vladimir Mikhailovich
E-mail: [email protected].
Phone: +78634371905.
The Department of Security in Data Processing Technologies; Associate Professor.
Panchenko Eugene Mikhailovich
Institute of Physics, Southern Federal University.
E-mail: [email protected].
194, Pr. Strikes, Rostov-on-Don, 344090, Russia.
Phone: +78632905121.
The Deputy Director on Scientific Work
УДК 681.3
И.А. Калмыков, О.И. Дагаева
РАЗРАБОТКА ПСЕВДОСЛУЧАЙНОЙ ФУНКЦИИ ПОВЫШЕННОЙ
ЭФФЕКТИВНОСТИ
Рассмотрены вопросы синтеза псевдослучайной функции повышенной эффектнейо-
. ,
. , псевдослучайная функция обладает стойкостью к атакующим алгоритмам не хуже, чем у ранее известных реализаций таких функций, при меньшей размерности секретного ключа.
Псевдослучайные функции; параллельная стойкость; каскадная конструкция; l-DDH предположение.
I.A. Kalmikov, O.I. Dagaeva
DESIGN OF ALGEBRAIC PSEUDORANDOM FUNCTIONS WITH IMPROVED EFFICIENCY
There is considered issues related with constructing an algebraic pseudorandom function with improved efficiency. It is proved that the pseudorandom function can be based on a cascade construction. Our pseudorandom function is secure to attacking algorithms not less then counterparts and it uses shorter private keys.
Pseudorandom functions; parallel security; cascade construction; l-DDH assumption.
Введение. В настоящее время псевдослучайные функции (ПСФ) нашли широкое применение в различных сферах. Современная информатика широко использует псевдослучайные числа в самых разных приложениях - от метода Монте-Карло и имитационного моделирования до криптографии. При этом от качества используемых ПСФ напрямую зависит качество получаемых результатов. Поэтому вопросам разработки алгоритмов вычисления псевдослучайных функций повышенной эффективности уделяется значительное внимание.
1. Постановка задачи исследования. Псевдослучайные функции стали неотъемлемым элементом любой компьютерной системы (КС), независимо от ее сложности и назначения. Как правило, для их реализации используются программные и программно-аппаратные средства генерации. Можно выделить следующие задачи, для решения которых используются генераторы ПСП:
♦ техническое диагностирование компонентов КС (в том числе встроенное диагностирование);
♦ контроль хода выполнения програм м с использованием сторожевых про-
;
♦ помехоустойчи вое кодирование;
♦ защита и нформации.
Во всех вышеперечисленных случаях ПСФ используются либо непосредственно, либо на их основе строятся алгоритмы хеширования информации. В последних двух случаях качество операций генерации псевдослучайных функций и хеширования определяется в первую очередь эффективностью ПСФ. Таким образом, именно от свойств псевдослучайных функций ПСП, особенно в тех случаях, когда необходимо обеспечить устойчивую работу КС при наличии случайных и умышленных деструктивных воздействий, в значительной степени зависит надежность процессов сбора, обработки, хранения и передачи информации. Поэтому задача разработки высокоэффективных ПСФ является актуальной.
Псевдослучайные функции впервые были определены Голдрайхом (Oded Goldreich), Голдвассером (Shafi Goldwasser) и Микали (Silvio Micali) в 1986 г. и с тех пор являются фундаментальным строительным блоком в современной криптографии, имея множество различных применений [1]. На сегодняшний день ПСФ широко используются в следующих областях криптографии:
♦ в шифровании;
♦ в системах электронных платежей;
♦ для обеспечения целостности передаваемого сообщения;
♦ в механизмах электронно-цифровых подписей;
♦ для генерации ключей из некоторого секретного значения (например, мастер-ключа);
♦ для аутентификации пользователей.
В настоящее время известно несколько алгоритмов, позволяющих получать довольно хорошие псевдослучайные функции. Так в работе [2] была представлена - ,
проблемы принятия решения Диффи-Хеллмана (DDH). Алгоритм вычисления та: m - -
ка b = bi,..., bm e{0,1}m и секретный ключ (, Xb..., xm ), результатом работы является
m
Fnr ((h,(,...,Xm),((,...,bm)):= hw, где w:=Пxb. (1)
i=1
m -1 -
ножений для вычисления w и одно заключительное возведение в степень.
Однако алгебраическая конструкция ПСФ Наора-Рейнголда, несмотря на то, что она лежит в основе многих криптографических схем и даже таких алгебраиче-, , -, , -
шой размер секретного ключа и довольно низкое быстродействие ее технической
реализации [1-3].
С целью устранения данных недостатков была разработана алгебраическая ПСФ, имеющая точно такой же размер области определения, как ПСФ Наора-Рейнголда и Бонеха-Монтгомери-Рагунатана (БМР ПСФ) [3], но использующая более короткий секретный ключ по сравнению с ПСФ Наора-Рейнголда. Рассмотрим особенности построения такой псевдослучайной функции.
Для некоторых параметров I и п разработанная ПСФ на вход принимает
входную последовательность (хь..., хпЖП вместе с ключом (/,5!,...,5п ) и на выход выдаёт
Для области определения размером 2т значение п = т/log21, вследствие чего при вычислении данной функции требуется в 1og2 ^ раз меньше умножений, но на т/1og2£ больше возведений в степень по сравнению с (1) для вычисления значения w. В общей сумме нам необходимо 2т — 1 — т/log2i, умножений для
вычисления значения w. Основным преимуществом данной ПСФ является использование меньшего объема памяти для вычисления значения функции, так как она использует ключ в 1^2£ раз меньший размером по сравнения с ПСФ Наора-.
£-ББН проблемы. Взаимосвязь между стойкостью функции и значением I следующая: чем больше £, тем более строгим становится это предположение, и тем менее стойкой становится функция. Таким образом, необходимо выдерживать небольшое значение I. В качестве примера можно использовать значения I в пределах от 16 или 256.
Для доказательства стойкости получившейся ПСФ предлагается использование определенной в [5] конструкции расширенного каскада, позволяющего конструировать ПСФ с большой областью определения из ПСФ с малой областью определения. Интересным свойством рассматриваемого расширенного каскада является отсутствие взаимосвязи между его стойкостью и стойкостью, лежащей в его основе ПСФ. В работе [4] сформулировано достаточное условие параллельной , , -кость расширенного каскада.
С использованием теоремы о стойкости расширенного каскада была построена новая ПСФ с большой областью определения введением в расширенней каскад ПСФ в малой областью определения. Исходная функция получает в качестве входных данных т-битную строку х £ [£] и секретный ключ (/, 5) и выдает значение
Для определения стойкости разработанной функции необходимо доказать,
(3) -
, .
С этой целью необходимо первоначально выбрать ПСФ с малой областью , , на основе конструкции расширенного каскада. Стойкость новой функции определяется утверждением о том, что достаточным условием стойкости расширенного каскада является удовлетворение лежащей в его основе функции свойству парал-
П
Б ((/г, лі,..., Лп), (хь..., хп )):= ) ,где w :=^ ^. (2)
і=1
(3)
.
^(д ) (3) и доказывается ее стойкость.
Если С - группа простого порядка р, тогда исходная функция представляет отображение / : (р хС)х[£] , где (р хС) - ключевое пространство,
[£] = {0,1,...,^ —1] - область определения и С - область значения, и определяется как
/ ((5, к), х ):= к5. (4)
(4) -
чить ПСФ с экспоненциальной областью определения [£ ]п следую щего вида:
* П*‘х‘
^ := /*п ((,... 5п,к),(хь...Хп)):= к‘= . (5)
(1) - -(5) , -
следнего алгоритма является повышенный размер области определения.
Приведенная ниже теорема определяет стойкость новой ПСФ путем сведения задачи взлома ПСФ к решению одной из существующих тяжелоразрешимых тео-ретико-сложностных проблем.
Теорема 1. Псевдослучайная функция, определенная выражением (5), является стойкой при условии неразрешимости £-ОБН проблемы в группе С.
Для доказательства теоремы воспользуемся леммами.
При оценке стойкости новой ПСФ достаточно показать то, что лежащая в основе расширенного каскада функция, определенная в (4), удовлетворяет свойству
д-парадлельной стойкости. Для этого необходимо определить функцию /(д), эмулирующую д копий функции (4) и доказать ее стойкость.
Пусть функция /(д) :(рхСд)х((]х[д])^С определяется как
/(д)((5,(,...,кд),(х,г)):= ) , (6)
где 5 £ Ж р, к1,..., кд £ С д, Х £ [£], г£ [д] . Докажем, что она является стойкой ПСФ для всех полиномиальных значений д.
Лемма 1. Если функция /, определяемая как (4), является стойкой ПСФ и
проблема ББН является тяжелоразрешимой в С, то функция / является д-параллельно стойкой для любого полинома д в параметре безопасности.
,
1 2, -
ное времени выполнения А вплоть до полиномиального множителя, что
1 Л,/(д)] < РЯР'Ь [Д,/] + д • ййИ^ [,С]. (7)
Так как предположение о сложности решения к-ББН-проблемы подразумевает сложность решения ББН проблемы (при к = 1 к-ББН-предположение является просто ББН-предположением), необходимость в дополнительном доказательстве сложности решения ББН-проблемы в С отпадает.
, :
,
ББН в С. Следующая лемма ограничи вает условия стойкости ПСФ /, определенной в (4).
Лемма 2. Если £-ББН-проблема является трудноразрешимой для группы С, /, (4), -
мером области определения I в качестве параметра безопасности.
, , , атакующий алгоритм В с приблизительно таким же временем выполнения, что и , :
/, (4), -
, / собой выходную последовательность криптографически сильного (стойкого) псев-
( ). , сводится к доказательству того, что выходная последовательность
является выходной последовательностью криптографически стойкого ПСГ при условии существования £-ББН-предположения в С.
Для определения псевдослучайного генератора необходимо ввести понятие вычислительной неразличимости двух распределений. Формально, два распределения Т>1, Т>2 называются вычислительно неразличимыми, если для любого полиномиального вероятностного алгоритма А
Неформально можно представить задачу следующим образом. Пусть X и У -такие множества, что по выбранному случайным образом элементу х£ X возможно с помощью некой специальной функции О(х) породить якобы случайный У. У -
много большей мощности множества X, иначе задача существенно упрощается. Например, рассмотрим случай, когда X = {0...1000}, У = {0...100}. Тогда, выбрав случайный х£ X , можно легко вычислить у = х (Ну 10, который, очевидно, будет У х.
, У -
ства X, функция О: X —* У называется псевдослучайным генератором, если ОЩ.х)
и ЫУ вычислительно неразличимы (Цх ,ЫУ- равномерные распределения).
Известно, что £-ББН-строка имеет вид (Vх,<(х2,...,дх 1). Если рассматривать х = 5,д = к5, то отсюда обратный элемент определяется как
,
ином виде £-ББН строкой.
(8)
в(5,к) := Н,к5,к52,...,к5“.
(9)
Ргх^[Л (х) = 1] - Ртх^г[Л (х) = 1]| = у(\х |). (Ю)
Лемма 3. Если £-ББН-предположение существует для группы С, то элемент к является неотличимым от случайно выбранного элемента ДР°№(5^). Более точ-
,
□йН^ [,с]:= РгГд),к) = Л - РгГд ((<>/),и) = Л = пе§1,, (11)
где u, h —
\p , pow (sj) = (, S,S2,..., / 1 )
Для доказательства леммы 3 воспользуемся гибридным аргументом.
Пусть имеется следующая последовательность f+1 гибридных экспериментов между запросчиком и атакующим алгоритмом А. Пусть А - алгоритм, умеющий различать псевдослучайную последовательность, выработанную ПСГ G от случайной входной последовательности, от настоящей случайной последовательности. В гибридном эксперименте i запросчик заменяет первые i выходных элемента ПСГ настоящими случайными числами, в то время ка к последние l-i элементов являются выработанными ПСГ.
Более точно, при i = 0,...^ поведение запросчика в гибридном эксперименте Expi определяется следу ющим алгоритмом:
ВВОД: ключи S Er Zp и h Er G :
ЕСЛИ i Ф 0 TO
ЦИКЛ ДЛЯ j ОТ 1 ДО n [ШАГ 1]:
Uj ——r G
КЦ
ИНАЧЕ
ЦИКЛ ДЛЯ j ОТ i+1 ДО £ [ШАГ 1]: flj+i := f ((s,h), j):= hs .
Для i = 1,...,/? определим Wi как вероятность совпадения битов b и b', т.е. правильного распознавания алгоритмом А последовательности в гибридном эксперименте i. Следует отметить, что в гибридном эксперименте Expo противник А получает для анализа псевдослучайную последовательность, выданную ПСГ, в то время как в гибридном эксперименте Exp, противник полу чает не что иное, как совершенно случайную последовательность. Отсюда
PRGadv [, f ] = \We - Wo|. (12)
Из техники гибридного аргумента следует, что существует такое значение
t Е [1,/? ], ЧТО
PRGadv [A, f ] = £ • |Wt-1 - Wt |. (13)
Другими словами, в гибридных экспериментах Expt и Expt+i получаемые
противником последовательности вычислительно неразличимы:
Ht =c Ht+1: (Ux.Ut,h,hs,...,hs
U1, —,ut+1,h ,.,h
(14)
Для сведения решения проблемы различения абсолютно случайной и псевдослучайной последовательностей к теоретико-сложностному предположению конструируем такой атакующий алгоритм В, умеющий решать £-ББН-проблему, что
ОйН^ [В, С] = \Щ-1 - Wt |. (15)
Комбинирование (14) и (15) доказывает Лемму 2.
В гибридных экспериментах Ехр( и Ехр1+1 атакующий алгоритм В, с одной стороны, взаимодействует с £-ББН запросчиком, а с другой стороны, параллельно эмулирует запросчика ПСГ для атакующего алгоритма А.
На этапе инициализации £-ББН-запросчик выбирает случайным образом и,,кеС, ^ еЪр И бит Ь е {0,1}. В случае, если Ь = 0, запросчик выдает алгоритму В £-ББН-строку (и,к,к2,...,к(-1, а если Ь = 1, то запросчик выдают последовательность случайных элементов (к,к,к2,.к1 -).
Атакующий алгоритм В осуществляет свои действия в следующем порядке. На этапе инициализации случайным образом выбираются элементы и1,..., и,, к е С, £ е Zр. Затем алгоритм В получает от своего £-ББН-запросчика
некоторую последовательность (у, (!, к 2^.., к-1 ^ может быть у = и (т.е.
у - случайно выбранный элемент из множества С) или у = к . Затем алгоритм В к , случайным элементам присоединяет полученную от своего запросчика строку и отправляет результирующую последовательность (ь..., щ -1, у, к, к2к--1)
атакующему алгоритму А. Наконец, атакующий алгоритм А выдает бит Ь'е {0,1} ( . . ),
поводу принятой им последовательности. Атакующий алгоритм В, в завершение всего гибридного эксперимента, просто пересылает тот же самый бит своему запросчику в качестве ответа на то, случайной или £-ОБН-стройкой была принятая .
В случае если £-ББН-запросчик алгоритма В выбирает элемент у = и , выдаваемая им строка является случайной, и таким образом алгоритм В эмулирует эксперимент Ехр1+1 между ПСГ -запросчиком и атакующим его алгоритмом А.
В случае если £-ББН-запросчик алгоритма В’$ выбирает элемент у = к, выдаваемая им строка представляет собой £-ББН-строку, и таким образом алгоритм В эмулирует эксперимент Ехр( между запросчиком и атакующим его А.
, , -вательности ПСГ от последовательности случайных чисел сводится к решению £-ОБН-проблемы и поэтому может считаться вычислимо неразрешимой задачей. Как и требуется, равенство (8) выполняется, что завершает доказательство леммы 2.
Доказательство леммы 1. Для доказательства леммы необходимо продемонстрировать явным образом, что функция /(ц), определенная в (11), является
. , -
мери и Рагунатаном в [5] схему доказательства.
Доказательство стойкости представляется в виде последовательности трех
игр между запросчиком и атакующим функцию /(ц) алгоритмом А. Для Г = 0,1, 2 обозначение ^ определяет вероятность выигрыша атакующего алгоритма А, т.е. вероятность того, что бит Ь в Г-й игре угадан алгоритмом правильно
(Ь' = Ь).
Игра № 0. В этой игре запросчик играет роль обычного запросчика для функции / (ц), предоставляя атакующему алгоритму А доступ к оракулу функции
/(ц), используемому случайный ключ.
Игра № 1. В данном случае запросчик выбирает случайную функцию вида и : [1]^ С и случайным образом генерирует значения г1,...,гц е Жр . Затем на
запрос (х,Г) е |/]х[ц] от атакующего алгоритма возвращает вычисленное значение и (х) .
Очевидно, что игры 0 и 1 неотличимы друг от друга в том случае, если функция /- стойкая ПСФ. В частности, существует такой атакующий алгоритм В1, время выполнения которого приблизительно равно времени выполнения атакующего
,
|Жз -ж| = [,/]. (16)
Атакующий алгоритм В1 взаимодействует с запросчиком, предоставляющим доступ к оракулу функции / либо оракулу случайной функции и : [^]^ С с од, -
А, предоставляя доступ к оракулу функции /(ц) либо случай ному оракулу.
Атакующий алгоритм В1 работает описанным ниже образом. На этапе инициализации случайным образом выбираются значения 71,..., Гц е X р . После этого
атакующий алгоритм В1 готов обрабатывать запросы алгоритма А в качестве запросчика и переходит в режим ожидания. Каждый раз, получая запрос от атакующего алгоритма А вида (х, Г) е [£]х[д], атакующий алгоритм В1 обращается к своему запросчику с вопросом х , на что последний возвращает некоторое значение у. Затем
Гг
атакующий алгоритм В1 вычисляет значение у и отправляет результат в качестве
ответа на запрос атакующему алгоритму А После выполнения алгоритмом А ц-запросов он принимает решение о том, с оракулом какой функции он имел дело, и в
1 Ь. -
шается пересылкой принятого алгоритмом В1 бита своему запросчику в качестве решения о том, ответы какого оракула атакующий алгоритм В1 получал.
Когда запросчик атакующего алгоритма В1 эмулирует доступ к оракулу функции f со случайным образом выбранным ключом (s, h), то он на запрос x атакующего алгоритма В1 отвечает результатом вычисления значения ПСФ y = hs . Если для i = 1,..., q определить hi = hr, то можно считать, что атакующий алгоритм А на запрос (x, i) алгоритма А выдает значение h , которое как раз является результатом вычисления псевдослучайной функции which is precisely f q. Следовательно, в этом случае атакующий алгоритм В1 эмулирует игру Game 0 запросчика с атакующим алгоритмом А.
Когда запросчик атакующего алгоритма В1 эмулирует доступ к случайному оракулу, то есть к случайной функции вида u: [£]^G, то ответом запросчика
( 1)
(X, i) атакующего алгоритма А является просто некоторое значение u (x)Г, кото-
1.
, -
верждение (14).
Игра № 2. Запросчик предоставляет атакующему алгоритму А доступ к случайному оракулу, т.е. оракулу случайной функции w: [£]х [q ] ^G.
Свидетельством неразличимости игр № 1 и № 2 при условии тяжелоразре-шимости проблемы DDH для группы О может служить лемма 1. Применительно к нашему случаю, в частности, существует такой атакующий DDH проблему алго-
2,
Пусть (x1,^),...,(xq,iq) - запросы атакующего алгоритма А к своему за. , Game 1
атакующего алгоритма А с использованием случайной функции u : [^]^ G с
выбранными случайным образом значениями A},..., rq £ Z p . Пусть A £ Zpxq -матрица вида A £ (r-s-) . -Ясно, что A имеет ранг 1.
V i 1 /]<>, i<q
По окончании процедуры выдачи запросов и получения ответа в игре 1 ата-
щий алгоритм А получает ц случайных элементов, принадлежащих множеству С, которые мы можем рассматривать в виде ц записей в случайной матрице над С
размерац Xц. Согласно лемме 1, существует атакующий алгоритм В2, который,
, (17).
(16) (17),
(17)
кующий алгоритм А имеет д записей в матрице дА е ^рХц. В игре № 2 атакую-
PRFadv Г A, f (?П = |W0 — W2I < |W0 — WI, — |Wl — W2I < PRFadv [, f ] + q • DDHadv [[2,
что и завершает доказательство теоремы 1.
В результате доказательства теоремы 1 было установлено, что для вычисления разработанной ПСФ требуется 2т -1 - m/log2£ умножений при возведении
в степень методом «возведения в квадрат и умножения».
.
сложность вычисления ПСФ по сравнению с ранее известными алгоритмами.
, -го ключа в log2 £ раз, что приводит к уменьшению затрат на память. При этом
для сокращения временных затрат, необходимых на вычисление синтезированной , .
,
ниже, чем сложность вычисления функции для каждого входного значения. Если рассматривать ПСФ с точки зрения аппаратной реализации, то каскадная структура позволяет осуществлять конвейерные вычисления, повышая быстродействие.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Goldreich Oded, Goldwasser Shafi, Micali Silvio. How to construct random functions // JACM. - 1986. - Vol. 33, № 4. http://www.wisdom.weizmann.ac.il/~oded/ggm.html.
2. Naor Moni, Reingold Omer. Number-theoretic constructions of efficient pseudo-random functions // In FOCS’97. - 1997. - P. 458-467. http://www.wisdom.weizmann.ac.il/~naor/ PAPERS/gdh_abs.html.
3. Bellare Mihir, Canetti Ran, Krawczyk Hugo. Pseudorandom functions revisited: The cascade construction and its concrete security. In FOCS’96, 1996. http://cseweb.ucsd.edu/~mihir/ papers/ cascade.html.
4. Dan Boneh, Shai Halevi, Michael Hamburg, and Rafail Ostrovsky. Circular-secure encryption from decision Diffie-Hellman. In CRYPTO’08, 2008. - P. 108-125. http://crypto.stanford.edu/ ~dabo/abstracts/circular.html.
5. Boneh Dan, Montgomery Hart, Raghunathan Ananth. Algebraic pseudorandom functions with improved efficiency from the augmented cascade. In ACM Conference on Computer and Communications Security - CCS 2010 (to appear), 2010. http://crypto.stanford.edu/ ~dabo/pubs/ abstracts/algebprf.html.
Статью рекомендовал к опубликованию д.т.н., профессор В.В. Копытов.
Калмыков Игорь Анатольевич
Северо-Кавказский государственный технический университет.
E-mail: [email protected].
355000, . , . , 2.
Тел.: +79034163533.
Д.т.н., профессор; профессор кафедры защиты информации.
Дагаева Ольга Игоревна
Аспирант кафедры защиты информации.
Kalmykov Igor Anatol’evich
North-Caucasus State Technical University, Stavropol.
E-mail: [email protected].
2, Kulakova Pr., Stavropol, 355000, Russia.
Phone: +79034163533.
Dr. of Eng. Sc., Professor; professor of Chair for Information Security.
Dagaeva Olga Igorevna
Postgraduate Student of Chair for Information Security.