УДК 519.7
В. И. ДУЛЬКЕЙТ Р. Т. ФАЙЗУЛЛИН
И. Г. хныкин
Омский государственный университет им. Ф. М. Достоевского
Омский государственный технический университет
МЕТОД РЕШЕНИЯ
ЗАДАЧИ «ВЫПОЛНИМОСТЬ»
И ЕГО ПРИМЕНЕНИЕ
ДЛЯ КРИПТОГРАФИЧЕСКОГО
АНАЛИЗА АСИММЕТРИЧНЫХ
ШИФРОВ_
Одной из наиболее интересных задач дискретной математики является задача поиска решающего набора в задаче «ВЫПОЛНИМОСТЬ» [1]. Перспективным направлением в построении методов решения представляется сведение задачи к непрерывному поиску точек глобального минимума ассоциированного с конъюнктивной нормальной формой (КНФ) функционала. В данной работе обосновывается выбор функционала специального вида и предлагается применить к решению системы нелинейных алгебраических уравнений, определяющих стационарные точки функционала, модифицированный метод последовательных приближений. В работе показано, что метод поддается распараллеливанию. Рассматривается схема применения метода к важным задачам криптографического анализа несимметричных шифров, в том числе для определения некоторых бит двоичного представления неизвестных сомножителей в задачах факторизации больших размерностей.
Ключевые слова: КНФ, ВЫПОЛНИМОСТЬ, резолюция, минимизация, криптография, факторизация.
Введение
Область науки, носящая имя «криптографический анализ» в настоящее время имеет громадное практическое значение, так как гарантированно стойкие алгоритмы шифрования являются основой надежности современных сис тем телекоммуникаций и систем финансовых взаиморасчетов. С теоретической стороны, прогресс в области криптографического анализа сопровождается бурным развитием смежных областей математики: алгебры, теории чисел, дис-к репIой математи к и.
Основным подходом проверки криптографической стойкости асимметричных шифров в настоящее время являются алгоритмы числового решета в поле чисел общего вида |2| и различные модификации алгоритмов р- и Х- Лолларда, основывающиеся на детерминированном случайном блуждании по группе [3|. Сообщения, появляющиеся время от времени, лишь подтверждают стойкость известных алгоритмов. Например, для факторизации чисел «рабочих» размерностей (-1 ООО бит) требуется задействовать на несколько месяцев вычислительные мощности кластеров из самых верхних позиций спискаТоп-500. Т.е. увеличение длины ключа в полтора или два раза решает вопрос о криптостойкости принципиально.
Совершенно новой альтерна тивой алгебраическому подходу является гак называемый логический криптоанализ, когда криптографический алгоритм рассматривается, как программа для машины Тьюринга и подстановка открытого и шифрованного текстов в эту программу естественным образом приводи ! к задаче «ВЫПОЛНИМОСТЬ» для КНФ. Часть выполняющего набора является ключом алгоритма. Идея такого подхода была впервые предложена в работе |4|, при поиске сложных задач для тестирования решателей КНФ. Как показал опыт, применение переборных алгоритмов, с част ью из которых можно ознакомиться в обзоре |5|, сталкивается с принципиальными трудностями, связанными с размерностями задач. Естест венно, возникает идея перехода к непрерывным моделям, когда поиск выполнимого набора для КНФ осуществляется как поиск минимума ассоциированного с КНФ функционала. Впервые эта идея была реализована в работах |6,7| Были предприняты попытки связать задачу минимизации с некой физической моделью. Так, в работе |8| была предложена модель химической кинетики, а в работе |9| — гравитационная аналогия. Обратим внимание на то, что имеется принципиальное отличие непрерывных методов от переборных алгори тмов локального поиска, — сдвиг по антиградиенту происходи т по всем перемен-
ным сразу. Также априори известно, что глобальный минимум функционала единственен и в случае, когда локальных минимумов и других особых точек нет, минимизация происходит эффективно. С другой стороны, нет необходимости в том, чтобы «точно» определить все биты ключа. Достаточно той информации, что набор бит, или ключа, или множества бит, однозначно определяющего ключ, совпадаете точным решением с вероятностью значимо большей, чем 0.5. Л в результате применения итерационных методов можно надеяться на то, что мы сможем «подобраться» к такой окрестности достаточно близко. Таким образом, проверка известных в настоящее время алгоритмов на стойкость к поиску глобального экстремума является новым и необходимым тестом.
Можно надеяться, что привлечение богатого арсенала вычислительной математики к данному классу задач и синтез с методами, присущими для дискретного подхода, позволит получить новые результаты и уточнит пределы применимости существующих в настоящее время крип тог рафических алгоритмов.
Переход от КНФ к ассоциированным функционалам
Пусть дана KI1Ф на множестве булевых переменных у е ßN{0,l} :
Цу)-*с,(у).
W с,(у) = V' 1(У,). Здесь Цу,) = у, или у,.
Введем вещественные переменные xeR" 10,1/ такие, что * соответствует булевой переменной у, а (\- х)г соответствует ее отрицанию.
Рассмотрим переход от задачи «ВЫПОЛНИМОСТЬ» (SAT) к задаче поиска глобального минимума функционала вида (1):
min F(x) = £C,(x/,
|«й /0.1/ ш
VA^C,(X) = Y\04(XI),
1-1
■АО О, ,(Х,) =
если у ес,(х)
х'
1, иначе
(1)
где •/ =
х„ если у, ее,(у) (1-х,), еслиу,ес,(у)'
(2)
3 = & / е 4; х, е с,(х)\, Л = /' € \: х, е с,(х))
Как показано в 110], применение метода Ныотона к решению данного уравнения неэффективно, т.к. решение принадлежит ядру производного оператора. Как альтернатива был предложен метод последовательных приближений с «инерцией»:
tZaAtt-pfxjt-kf
/..о
Xk(t + l) =
= )xUt)-Ax,(t+\)=B
t.A
(3)
£«„ = 1, a„6Ä|0,l]
Суммирование ведется по всем Л1 конъюнктам ДНФ, эквивалентной исходной КНФ. Переходотбу-левой формуле к вещественной основан на использовании соответствия:
-> x,+x/f у,лу( ->x,2xj, у, ->(1-х,/},
где {у, е В,х, е R}.
Легко заметить, что min Fix 1 = 0 соответст-
вуетдостижению значения «ИСТИНА» на исходной КНФ.
Дифференцируя функционал по всем переменным х,, получим систему уравнений:
«•г ;«л
Имеется в виду то, что итерации происходя ! для вещественных чисел, а итоговый или промежуточный вектор проектируется на В" {0,1}, и уже на булевом векторе проверяется SAT. Ниже описаны различные модификации метода последовательных приближений с «инерцией» и показаны способы повышения эффективности алгоритма.
Гибридизация алгоритма
Исходная КНФ преобразуется методом резолюции 111), это позволяет получить формулу с меньшим количеством дизъюнктов и литералов, эквивалентную исходной.
Основная процедура состоит из последовательных итераций, которые совмещают метод последовательных приближений и сдвиг по антиградиенту, т.к. правая часть (2) хотя и градиент исходного функционала, но решения (2) всего лишь стационарные точки функционала. Например, если генерировать КНФ по заданной строке би т, случайно строя скобки так, чтобы строка бит была решающим набором итоговой КНФ, то представительство литералов и их отрицаний будет одинаковым. Это означает, что ассоциированный функционал имеет «квазистационарную» точку с координатами 0.5для каждой переменной, т.к. Д - 2Вг В случае же когда представительство литералов неравное, то подобные «квазистационарные» точки могут быть произвольными. Например, генерируя случайную систему уравнений и сводя задачу к поиску решающего набора КНФ, мы получаем уже существенно неравное представительство литералов. В этом случае квазистационарным точкам будут соответствовать решения неопределенных систем, получаемые из исходной системы исключением всего нескольких уравнений. Число таких точек растет экспоненциально с ростом размерности системы, и итерационная процедура поиска стационарной точки интересующей нас, как отвечающей точке минимума, практически перестает схо-диться, что и подтверждается экспериментально.
Итерация состоит из двух блоков. Первый блок определяется формулой (3), используется схема Зей-деля. Второй блок - реализация сдвига по антигради-енту: x(t + \) = 2 x(t)-B/A |10|.
При приближении к решению скорость сходимости может сильно уменьшаться, одна из возможных причин этого в том, что траектория, образованная последовательными приближениями, «зацикливается» в областях локальных минимумов функционала. Методсмены траектории позволяет выйти из локального минимума с помощью формирования нового вектора приближения, который бы обладал свойствами не худшими, чем текущий вектор приближения, но позволял бы продолжить поиск решения (10).
Распараллеливание алгоритма
Гибридный алгоритм допускает целый набор способом распараллеливания, приведем один из них.
ДНФ. эквивалентная исходной КНФ, делится на две части (подформулы). Векторы решений для подформул определяют точки в n-мерном пространстве. Между полученными точками проводится отрезок прямой. «Двигаясь» но этой прямой с некоторым шагом /, вычисляются вектора {х,} по формуле
Вектор {х(}, при котором значение функционала (1) минимально становится новым начальным набором приближений для итерационной процедуры, которая запускается для функционала, ассоциированного со всей формулой.
Конечно, есть примеры, для которых данный метод не вычисляет точного набора значений. Но описанная процедура позволяет максимально приблизиться к решению. В формуле остаётся до 2% дизъюнктов невыполнимыми. При этом около 2.5% переменных остаются неопределенными, то есть независимо от того, какое значение они будут принимать, выполнимые скобки будут по-прежнему принимать значение «ИСТИНА».
При тестировании разработанного алгоритма использовалось несколько типов примеров: тесты с соревнований решателей SAT 2005 года [12]. тесты библиотеки SATLib 113], тесты, сформированные для задачи факторизации, тесты больших размерностей, сформированные случайным образом.
Результаты
Результаты Фестироиания однопроцессорной реализации алгоритма для тестовых задач различных серий из библиотеки SATLib представлены в табл. 1
Результаты тестирования параллельной версии алгоритма на задачах из библиотеки SATLib и задачах, представленных на соревнованиях решателей SAT2005 года, приведены в табл. 2.
Применение метода к криптографическому анализу асимметричных шифров, сводка результатов, выводы
Была исследована схема применения метода для решения задач криптографического анализа. Конъюнктивные нормальные формы, ассоциированные с задачами факторизации, дискретного логарифмировании и дискретного логарифмирования на эллиптической кривой, рассматриваются в работах |14|. Оценка роста числа дизъюнктов и скобок в зависимости от размерности задачи (N) дает нам величину CN', С «10 для задачи факторизации и C,N',CVN', С, * 100, Сг *> 1000 для задач дискретного логарифмирования и дискретного логарифмирования на эллиптической кривой. Метод резолюций в применении к КНФ для факторизации уменьшает число дизъюнктов более чем в 2 раза, а в применении к задаче дискретного логарифмировании позволяет уменьшить число переменных на два порядка, что приводит к относительно приемлемым цифрам для массива данных.
Для задачи факторизации получен, как представляется нам, важный результат. Уже после нескольких итераций при решении системы нелиней-
Таблнца1
>вания алгоритма
Нлимеиоплиие теста Количество литералов(N) Количество дизъюнктов (М) Число тестов % решенных тестов Максимальное число итераций
Backbone-minimal Sub-Instances (формулы с минимальным хребтом), 3-SAT
RTI ВМ.Ч 100 too •129 <429 500 500 98.6 79,8 19988 29831
Controlled Backbone Size Instance» (формулы с хребтом фнксиропанного размера. Ь), З-.ЧЛ'Г
CBS_blO CBS_bl0 CBS Ь90 Iii 403 449 449 1000 1000 1000 100 100 98 38972 38880 29738
Uniform Random 3-SAT (UF)
UF20-9I UF250-1065 20 250 91 1065 1000 100 100 98 448 9731
Задачи, ассоциированные с оптимизационным иарнлитом задачи «раскраска графа»
PLAT30-G0 90 300 100 100 4317
Таблица 2
Результаты тестирования параллельного алгоритма
Наименование теста Количество Количество % решенных Число итераций Число итераций
литералов(N) дизъюнктов (М| тестов (часть формулы) (вся формула)
RTI 100 429 100 10 14
BMS 100 <429 100 7 14
«Л105-1663 2000 8400 99 20 200
MI05-I676 40(H) 16800 99 20 200
satOS-1656 12000 50400 99 20 200
UF20-9I 20 91 100 10 14
UF250I065 250 1065 100 20 21
Риыгршкть нда'Ш фоноримши. бит
Рис. I. Максимальный и средний процент совпадающих (верных) бит вектора приближения и вектора решения для задачи факторизации в зависимости от размерности задачи
.............______________пшшпимшиничнпчимшмшщиншшиппмннш,
888888888888888 ; ; I г 8 р г г $ о 2 1 * ; й
Ншф икрацнн
Рис.2. Средний процент совпадающих (верных) бит вектора приближения и вектора решения для задачи факторизации в зависимости от итерации (произвольный случай)
a а
Таблица 3
Результаты численных экспериментов по определению наиболее вероятных бит в сомножителях
Число совпадений с точным решением в 20 тостах Частота совпадения в процентах. % Количество совпавших бит Доля совпавших бит в процентах от общего числа неизвестных бит (от 512 бит сомножителей)
20 100 3 0.6
17 85 1 0.2
16 80 7 1,4
15 75 20 3.9
14 70 50 9.8
13 65 83 16.2
12 60 110 21,5
мых уравнений (2) метод позволяет находить более 67% неизвестных. Причем следует отметить, что найденные переменные являются ключевыми для решения задачи, т.е. после подстановки их верных значений в исходную КНФ формула оказывается легко разрешимой относительно оставшихся переменных. Отметим, что переменными являются, биты переносов и би ты, получающиеся в матрице умножения сложением строк (умножение «столбиком»). На рис. I показаны результаты роста среднего и максимального числа верно определенных бит при увеличении длины ключа. На рис.2 показаны результаты роста бит для трех примеров с различной (большой) длиной ключа. Результаты представлены для специально отобранных «наихудших» примеров.
Специально разработанная система тестов позволяет с высокой степенью вероятности определять биты непосредственно сомножителей. Например, таким тестом может служить проверка очевидного обстоятельства кластеризации ненулевых строк в матрице умножения при умножении в двоичной системе счисления числа р на бит числа <7. Т.е. результатом будет или нулевая строка, или строка, состоящая из бит числа р. Аналогично, столбец матрицы умножения будет или нулевым столбцом, или столбцом, в котором записано число q. Отметим, что так как неизвестными являются биты ключа, биты сумм двух произвольно выбранных строк в матрице умножения и биты переноса для этих сумм, то это позволяет построить еще несколько тестов для опре-
деления бит ключа. В табл.3 показана вероятность верного определения для 20 примеров после применения нескольких подобных тестов (при размерности чисел сомножителей 256 бит). Таким образом, для задачи факторизации числа длиной 512 битс вероятностью большей или равной 0.8 определяются биты 13, 46, 73, 86, 101,142, 217, 255 каждого из сомножителей.
Полученные результаты ставят под сомнение криптографическую стойкость алгоритма RSA, т.к. распараллеливание по вариан там и выбор тех вариантов расстановки нулей и единиц в позиции 13, 46,.., при которых значение функционала минимально, позволяет практически точно определять биты сомножителей с номерами 13,46.....
Библиографический список
1. Cook S.A. The complexity ol theorem proving procedures // Proceedings of the Third Annual ACM Symposium on Theory of Computing. - 1971. - P. 151-158.
2. Lenstra A.. Lenslra H. The Development of the Number Field Sleve.Sprlnger — Verlag, 1993.
3. Koblltz N.. MenezesA., VanstoneS. The state of elliptic curve cryptography. Designs Codes and Cryptography. 19, 173- 193,2000
■1. Cook S.A., Mltchel D C. Finding hard Instances for the satisfiability problem: A survey. DIMACS series in discrete mathematics and theoretical computer science. V. 5. 1997.
5. Gu J.. Purdom PW.,Franco J.. Wah B.W Algorithms for the satisfiability (sat) problem / Eds. Ding -Zhu Du Jun Gu and Panos
Pardillos. - Satisfiability Problem. Theory and Applications. P. 19-152. DIMACS Series in Discrete Mathematics and Theoretical Computer Science. - AMS, 1997.
6. Маслов С. Ю. Итеративные методы в переборной модели, как модель интуитивных //Тезисы IX Всесоюзной конференции по кибернетике. - Сухуми, 1981. - С. 26-28.
7. Крейнович В.Я. Семантика итеративного метода С.Ю. Маслова //Вопросы кибернетики Проблемы сокращении перебора - М. : АН. СССР, 1987. -С. 30-62
8. Матиисевич B IO. Возможные нетрадиционные методы установлении выполнимости пропозицональных формул// Вопросы кибернетики. Проблемы сокращении перебора. — М .: АН СССР, 1987 - С. 87-90.
9. Опарин Г. А., 11овопашин А.П. Непрерывные модели решении систем булевых уравнений. // Вестник Томского государственного университета. — 2004. - Ne9(l). - С. 20-25.
10. Дулькейт В.И., Файзуллин Р.Т., Хмыкни И Г Минимизации функционалов, ассоциированных с задачами криптографического анализа // Дифференциальные уравнении Функциональные пространства. Теории приближений / Междунар. конф., посвящ. 100-летию со дни рождении С.Д. Соболева : тез. докл. - Новосибирск : Ин-т математики СО РАН, 2008. — С. 484-485.
11. Хныкин И Г. Модификации КНФ, эквивалентным з-лдачам криптоанализа асимметричных шифров методом резо-
люции // Информационные технологии моделировании и управлении. - 2007. N«2. - С. 328-337.
12. www.lrl.fr/-slmon/
13. www.satllve.org
14. Дулькейт В.И., Файзуллин Р.Т., Хныкин И.Г. Сведение задач криптоанализа асимметричных шифров к решению ассоциированных задач «ВЫПОЛНИМОСТЬ» // Сборннкдоклалов XIII Всероссийской конференции «Математические методы распознавании образов». - М.: МАКС Пресс. 2007 - С. 249-251.
ДУЛЬКЕЙТ Владимир Игоревич, аспирант кафедры комплексных систем защиты информации Омского государственного университета им. Ф. М. Достоевского.
ФАЙЗУЛЛИН Рашит Тагнрович, доктор технических наук, профессор кафедры средств связи и информационной безопасности Омского государственно го те х 11 и ч ее ко го у 11 и во р с итета. ХНЫКИН Иван Геннадьевич, инженер Центра телекоммуникаций и вычислительной техники Омского государственного технического университе та.
Статья поступила в редакцию 24.12.08 г. ® В. И. Дулькейт, Р. Т. Файзуллин, И. Г. Хныкин
Книжная полка
Галушкина, IO. И. Конспект лекций но дискретной математике [Текст]: с упражнениями и контрол. работами / Ю. И. Галушкина, А. Н. Марьямов. - М.: Айрис Пресс, 2007. - 173, [1) с.: рис. - (Высшее образование).-Библиогр.: с. 174. - ISBN 978-5-8112-2599-6.
В книге в доступной форме изложены разделы, традиционно изучаемые в курсе дискретной математики. Книга рассчитана на студентов нематема тических вузов, желающих ознакомиться с методами дискретной математики. Математическая подготовка, необходимая для чтения этой книги, ограничивается программой математики средней школы,
Содержание разделов книги взаимно связано друг с другом и включает: элементы математической логики, теории множеств, предикатов, графов, элементы комбинаторики, кодирования и теории конечных автоматов, а также введение в теории алгоритмов.
Все разделы снабжены большим количеством примеров и решенных задач, помогающих усвоить и закрепить изучаемый материал.
Кузнецов, Л. А. Сборник заданий по высшей математике. Типовые расчеты [Текст): учеб. пособие для вузов / Л. А. Кузнецов. - 9-е изд., стер. - СПб. [и др.]: Лань, 2007. - 238, [ 1 ] с.: табл. - (Учебники для вузов. Специальная литература). - ISBN 978-5-8114-0574-9.
Пособие содержи т индивидуальные задания для студентов технических вузов по курсу высшей матема тики (но 31 варианту в каждой задаче) и предназначено для обеспечения самостоятельной работы по освоению курса. Каждое задание содержит теоретические вопросы, теоретические упражнения и расчетную часть. Книга содержит раздел, посвященный уравнениям математической физики.
Курс высшей математики [Текст]. Интегральное исчисление. Функции нескольких переменных. Дифференциальные уравнения: лекции и практикум: учеб. пособие для вузов по направлениям «Технические науки», «Техника и технологии» / под ред. И. М. Петрушко. - 2-е изд., стер. - СПб. [и др.]: Лань, 2008. - 603 с. - (Учебники для вузов. Специальная литература). - Библиогр.: с. 595. -ISBN 978-5-8114-0633-3.
Учебное пособие соответствует стандартной программе и содержит конспект 24 лекций, разработки 24 практических заня тий с подробным решением типовых примеров и задач для самостоятельного решения, контрольные вопросы по всем темам, варианты контрольных работ и программы экзамена с образцами экзаменационных билетов.
Книга отличается от существующих учебных пособий тем, что объединяет в себе функции учебника, сборника задач и репетитора-тренажера и может быть использована как при очной, так и при дистанционной форме обучения.