УДК 003.26:530.145:004.27:004.056.55
КРИПТОАНАЛИТИЧЕСКИЕ ВОЗМОЖНОСТИ КВАНТОВОГО КОМПЬЮТЕРА П. Г. Ключарев
В статье проанализирован ряд квантовых алгоритмов криптоанализа. Проведено сравнение их вычислительной сложности с вычислительной сложностью аналогичных классических алгоритмов. Сделан вывод, что в случае появления практических образцов квантового компьютера современные асимметричные системы шифрования станут некриптостойкими, а эффективная длина ключа симметричных систем шифрования уменьшится в 2 раза.
Шифрование имеет большое значение в задачах обеспечения информационной безопасности. Стойкость многих современных криптоалгоритмов в настоящее время считается более чем достаточной. Однако положение серьезнейшим образом изменится после разработки практических образцов квантовых компьютеров.
Современные алгоритмы шифрования
Современные криптоалгоритмы можно подразделить на симметричные и асимметричные (алгоритмы с открытым ключом). Симметричный алгоритм шифрования (например, AES, RC6 и др.) считается достаточно стойким, если для него не известны способы взлома более быстрые, чем полный перебор. Сложность полного перебора (для атаки с известным шифротекстом) можно оценить как 0(2к), где к - длина ключа в битах. Учитывая, что еще в
2002 г. с помощью любительской сети распределенных вычислений distributed.net была продемонстрирована возможность взлома 64-битного ключа методом грубой силы, сейчас нормой считается длина ключа 128 бит, а максимальная длина ключа, поддерживаемая большинством симметричных криптоалгоритмов, равна 256 бит.
Для асимметричных криптоалгоритмов известны способы криптоанализа, работающие значительно быстрее полного перебора. Из-за этого асимметричные криптографические алгоритмы имеют длину ключа значительно большую по сравнению с симметричными. Чаще всего применяются алгоритм RSA, основанный на вычислительной сложности задачи о факторизации целых чисел, и алгоритм Эль-Гамаля, основанный на вычислительной сложности задачи дискретного логарифмирования. Причем используются версии алгоритма Эль-Гамаля для различных полей. В частности, большое значение имеет алгоритм Эль-Гамаля над группой точек эллиптической кривой1.
Таблица 1
Сопоставление длины ключей симметричных и асимметричных шифров
при одинаковой криптостойкости
Длина ключа симметричного криптоалгоритма Длина ключа алгоритма RSA Длина ключа алгоритма Эль-Гамаля над группой точек эллиптической кривой
80 1024 163
112 2048 224
128 3072 283
192 7680 409
256 15360 571
Квантовые вычисления Квантовые компьютеры смогут решать задачи криптоанализа значительно эффективнее по сравнению с классическими. Кратко рассмотрим основные положения теории квантовых вычислений. Более обстоятельное введение можно найти, например, в работе2.
Квантовые компьютеры основаны на квантовых регистрах, которые состоят из квантовых битов. Квантовый бит - это простейшая квантовая система, имеющая два выделенных
состояния. Одно из его выделенных состояний будем обозначать 10^, а другое |1^ . Состояние квантовой системы можно измерить. При этом квантовый бит может иметь такое состояние, что измерение может с некоторой вероятностью показать 10^, а с некоторой другой
показать 11^ . Будем описывать состояние такой системы как линейную комбинацию выделенных состояний: + Л11)), где а иЬ - комплексные числа, такие, что |а|2+|6|2=1. Тогда
измерение состояния (а|0^ + б|1^ с вероятностью \а\2 покажет состояние 10^. а с вероятностью \Ь\2 покажет состояние |1^ .
Квантовый регистр, состоящий из п квантовых битов, имеет 2” выделенных состояний, соответствующих п разрядным двоичным числам от |00К 0^ до |11К 1^ . Состояние
квантового регистра записывается в виде линейной комбинации всех этих выделенных состояний:
2й-1
2X1*)-
х=0
При этом выполняется условие нормировки:
2й-1
I I2 1 \ал =1.
2=0
Коэффициенты ах являются комплексными числами. Они называются амплитудами соответствующих состояний .
Состояние системы, состоящей из п квантовых битов, описывается вектором единичной длины в 2” мерном комплексном унитарном пространстве (скалярное произведение
состояний = |б/| К О п^ и |/)^ = |/)| К обозначается как (а\Ь^ и вводится обычным
образом: (у | = ’^а.Ь * )• Таким образом, квантовый регистр длины п, может представлять
различные значения «-битного слова одновременно.
Чтобы извлечь из квантового регистра информацию, надо провести измерение. При этом измерить можно любой набор квантовых битов. Кроме того, поскольку квантовые состояния образуют евклидово пространство, измерения можно проводить в различных базисах. Однако проведение измерения приводит к переходу системы в базисное состояние, соответствующее результатам измерения.
Квантовый компьютер может осуществлять преобразования над квантовым регистром. Квантовым преобразованием будем называть отображение унитарного пространства, образуемого квантовой системой, в себя. С квантовыми системами можно производить только линейные унитарные преобразования, причем любое линейное унитарное преобразование допустимо. В силу линейности квантовые преобразования полностью определяются их действием на базисные векторы.
Приведем некоторые важнейшие элементарные преобразования (назовем их квантовыми вентилями).
Таблица 2
Квантовые вентили
Название, обозначение и краткое описание квантового вентиля
Действие на базовые состояния
Матрица
Тождественное преобразование I
(1 (Л
О 1
Отрицание X
'О 1'
Фазовый сдвиг Z
°Н0>
1)-Н1)
(\ 0^ 0 -1
Фазовый сдвиг с отрицанием У
0>-Ч‘>
1)->|0)
(о О -1 о
У
Сотго11сс1-ЫОТ
СКОТ
Прибавляет ко второму биту первый по модулю 2
00)->|00) 01)->|01) 10)->|іі) 11)->|10)
(1 0 О 0^ 0 10 0 0 0 0 1 0 0 10
Соп1то11ес1-Соп1:го11ес1 КОТ
(Вентиль Тофолли)
Прибавляет к третьему биту произведение двух первых (по модулю два)
000)^|000) 001) —»|001) ою)-»|ою) 011) —»|011) юо)-»|юо) 10і)-»|і0і) 110) —»|111) 111)—»|110)
(1 0 0 0 0 0 0 0)
0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 1
ч0 0 0 0 0 0 1 0у
Преобразование Адамара Н:
>12
ч1 ~Ь
Криптоанализ симметричных шифров Один из известных квантовых алгоритмов - алгоритм Гровера. Обычно его описывают как алгоритм поиска в неупорядоченном массиве. Однако небольшая модификация превращает его в алгоритм для восстановления ключа симметричного алгоритма шифрования по тексту сообщения и шифротексту. При использовании классического компьютера для
этого требуется полный перебор, имеющий сложность 0(2™), где т - длина ключа. Для квантового компьютера эту сложность можно сильно уменьшить.
Будем рассматривать функцию у — с(к,х) . Эта функция шифрует сообщение х на
ключе к; где х, уе Z2„ . Пусть нам известна пара сообщение - шифротекст: хь у |. Рассмот-
рим функцию f (А;)
I-
если
с(к,х1) = у1
[О, если с(к,х1)Фу1
котором эта функция равна 1.
Рассмотрим следующий квантовый алгоритм.
1. Приведение квантового регистра в состояние:
. Требуется найти значение аргумента, при
4т і
2. Вычисление функции/от этого регистра:
і 2т-1 2»1ло)
О
г*т
V1 Х=1
3. Повторение ^л/2" раз процедуры увеличения амплитуды всех для которых
/(/,) = 1. (Эта процедура описывается ниже.)
4. Измерение состояние регистра. Результат будет равным искомому ключу с веро-
/-Ч-И
ятностью ОКОЛО А
5. Проверка результата. В случае его недостоверности весь алгоритм следует выполнить заново.
Процедура увеличения амплитуды состоит из двух этапов.
1. Изменение амплитуды с йГ на — йГ для всех таких, что /(/,) = 1. Эта операция
представляет собой преобразование Z над последним квантовым битом регистра.
2. Инверсия относительно среднего. Это преобразование можно записать следующим образом:
где аср - средняя амплитуда.
2 К 2 '
ж N N
2 Ь 2
N N N
Ь Ь ь Ь
2 2 ь
N N
Инверсию относительно среднего можно записать в виде матрицы:
£> =
Как показал Л. Гровер3, это преобразование может быть эффективно реализовано на квантовом компьютере, а сложность всего алгоритма оценивается как О (2."12 ) .
Таким образом, появление квантовых компьютеров приведет к снижению эффективной длины ключа в два раза. Это говорит о том, что уже сейчас следует использовать симметричные шифры с длиной ключа не менее 256 бит.
Кроме того, аналогичный алгоритм может быть использован для взлома хэш-функций, в связи с чем следует использовать хэш-функции с длиной блока не менее 256 бит.
Криптостойкость системы ИБА
Стойкость системы асимметричного шифрования Я8А основывается на сверхполи-номиальной вычислительной сложности факторизации натуральных чисел. Однако существует квантовый алгоритм, сложность которого полиномиальна.
Поставим задачу следующим образом: по натуральному числу -/V, имеющему ровно два простых делителя, найти эти делители. Заметим, что для некоторого числа а его порядок
по модулю N (т.е. минимальное число г), таков, что аг= 1 (тос! Л') четен. Тогда мы можем выражение аг= 1 (тос1 А') записать в виде:
^ г г Л
а2 -1
а2 +1
= (^modA/-)
Таким образом, зная г, мы можем эффективно найти делители числа Ж Заметим, что порядок г фактически является периодом функции ах (mod N).
Для нахождения периода функции существует следующий квантовый алгоритм. Рассмотрим периодическую функцию fix). Область определения и область значений
этой функции - множества целых чисел, причем 0 < X < 2” — 1 и О < f{x)<2m-\. Для
того, чтобы найти период этой функции, требуется квантовый регистр, состоящий из п + т квантовых битов. Приведем его в состояние:
1 2й-1
т/тгЕМ)
\ 2 х=о
Теперь вычислим от него функцию /так, чтобы у нас получилось состояние:
2й-1
г— XIх’Д*))
у] 2 х=о
Теперь проведем измерение последних т квантовых битов, т.е. квантовых битов, относящихся кfix). После него наш квантовый регистр перейдет в состояние:
X \х>и)
х:/(х)=и
Теперь проведем квантовое преобразование Фурье (алгоритм которого приведен ниже), в результате чего мы получим состояние:
Т
J г
7
где с; равны нулю при всех у, не кратных 2”/г. Если период г не делит 2”, преобразование выполняется неточно, причем большая амплитуда сосредоточена вблизи целых значений, кратных [2”/г].
Измерим полученное состояние. Измерение даст число V.
Оп
Если период равняется степени ДВОЙКИ, ТО v- j_. А поскольку в большинстве слу-
г
чаев у и г - взаимно просты, то сокращение дроби — даст дробь, знаменатель которой и есть
период. В общем случае либо придется прогнать весь алгоритм несколько раз, пока мы не получим правильное значение периода (ему соответствует максимальная амплитуда, а следовательно, максимальная вероятность), либо воспользоваться известным из теории чисел разложением в бесконечную дробь4.
Квантовое преобразование Фурье определяется так:
1 2т-1
идРТ{|х)) = _/=Хе 2 Iе)
l^m
V 2 с=О
Как показал П. Шор, такое преобразование можно построить с использованием только т(т+1)/2 квантовых вентилей двух типов. Один из них представляет собой преобразование Адамара, примененное к /-му квантовому биту (обозначим его //,). Другой вентиль реализует двухбитное преобразование вида:
(1 0 0 0 л
0 1 0 0
0 0 1 0
^0 0 0 к 1—,— е 21,
=
При этом, квантовое преобразование Фурье можно задать следующим образом:
т— 1 т— 1
ЯД,,К£п ДКЯ Д , ,Я Д , ,Я (!)
О ОД 0,/и—1 1 т— 3 т—3,т—2 т—3,т—1 т—2 т—2,т—1 т— 1 к
£=0 /=£+1
После этого преобразования следует изменить порядок битов на противоположный. Это можно сделать либо соответствующей квантовой схемой, либо, если сразу после квантового преобразования Фурье происходит измерение, классическим способом.
Рассмотренный квантовый алгоритм факторизации имеет сложность О (и ^ ) . В то же
время лучший классический алгоритм факторизации - алгоритм решета числового поля5
имеет сложность 0(ехр(с(1о§я)1/3(1о§1о§я)1/3)), где с = ■ Другими словами, алгоритм
Шора имеет полиномиальную сложность, а лучший классический алгоритм имеет сверхпо-линомиальную сложность.
Криптостойкость системы Эль-Гамаля Система Эль-Гамаля основана на трудности вычисления дискретного логарифма, т.е. если g - образующий элемент конечной группы в, то, зная С/ (г. надо найти Г £ Ст такой,
что й — ^г. Чаще всего эта система применяется для группы Z/^ и для группы точек эллиптической кривой.
Существует квантовый алгоритм Шора для вычисления дискретного логарифма. Приведем здесь его оригинальную версию, которая предназначена для группы (где р -простое).
Сначала найдем q - степень двойки, чтобы р <. С] <2 р. Приведем квантовый ре-
гистр в состояние:
1 Р-2 Р-2
Р 1 а=0 6=0
\а,Ь^ах ь (тосір)^
(1)
Применим теперь преобразование Фурье к первой и второй частям регистра, в результате чего регистр перейдет в состояние:
д-1 д-1 ас+ЬсI)
с^^ах~ъ [то&р)}
1 9-і 9-і
q{p-\)tt>Jkъ
Теперь измеряем состояние квантового регистра. В результате измерения с вероят
(2)
ностью не менее-------мы получим с и а такие, что:
480 ^
1 й?
<-------------1-г
2 q q
c{p-\)-{c{p-\)}q Ср-1)?
<—(тосії), 2 q
где - ЧИСЛО, удовлетворяющее соотношениям |х] = х(тосід) и —< |х| < —.
Для того чтобы получить кандидата на г, надо округлить до ближайшего числа,
Ч
1 (р-1)с-{(р-1)с)
кратного ----, затем разделить по модулю р — 1 на ________________{±. Сложность этого
Р~1 д
алгоритма оценивается как 0(п3). В то же время лучший классический алгоритм для дискретного логарифма имеет сверхполиномиальную сложность.
Заметим также, что существует6 вариант алгоритма Шора для группы точек эллиптической кривой над полем 0¥{р). обладающий сложностью 0(п3), а также высказывается
гипотеза, что аналогичный алгоритм существует и для эллиптических кривых над другими полями.
Несмотря на большие успехи, которых достигла криптология, необходимо отметить, что появление действующих образцов квантовых компьютеров приведет к тому, что многие криптосистемы, прежде всего асимметричные, станут нестойкими, что приведет к невозможности использования асимметричных криптосистем и, следовательно, к невозможности безопасного предоставления многих услуг, в том числе интернет-банкинга и электронной торговли. Перестанут быть безопасными электронные подписи и схемы распределения ключей. Из этого следует, что уже сейчас необходимо разрабатывать новые асимметричные криптоалгоритмы.
Симметричные алгоритмы шифрования останутся стойкими, но эффективная длина ключа таких алгоритмов уменьшится в 2 раза. Этот эффект следует учитывать при построении систем обработки информации уже сейчас.
1 Hankerson D.R., Vanstone S.A. и Menezes A.J. Guide to elliptic curve cryptography. New York: Springer, 2003. Vol. XX.
2 Ключарев П.Г. Основы квантовых вычислений и квантовой криптографии // Вестник МГТУ им. Н.Э. Баумана. 2006. № 2. С. 36-46. (Сер. Приборостроение).
3 Grover L.K. Quantum Mechanics Help in Searching for a Needle in a Hay-stack // Phys. Rev. Lett. 1997. № 78 (2). C. 325-328.
4 Shor P. Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer // Proceedings of the 35th Annual Symposium on Foundations of Computer Science, 1994.
5 Pomerance C. A Tale of Two Sieves //Not. Amer. Math. Soc. 1996. № 43.
6 Proos J.A. Shor's discrete logarithm quantum algorithm for elliptic curves. Waterloo: Faculty of Mathematics University of Waterloo, 2003.
УДК 004.056.53
ВОПРОСЫ ЗАЩИТЫ ИНФОРМАЦИИ В СЕТИ Н.Д. Хынг, А. В. Кизим
Безопасность передачи информации в сети является одной из важных задач современной и будущей информационной технологии. В статье авторы предложши метод шифрования данных, способ передачи мультимедиа-информации в сети с обеспечением безопасности, а также алгоритм повышения надежности обмена информацией.
В связи с все возрастающим влиянием Интернета проблема защиты информации с каждым годом становится актуальнее. Вопросами защиты информации являются: предот-