Научная статья на тему 'Квантовый компьютер и криптографическая стойкость современных систем шифрования'

Квантовый компьютер и криптографическая стойкость современных систем шифрования Текст научной статьи по специальности «Математика»

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

Аннотация научной статьи по математике, автор научной работы — Ключарев П. Г.

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

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

Текст научной работы на тему «Квантовый компьютер и криптографическая стойкость современных систем шифрования»

УДК 004.27:004.056.55

П. Г. Ключарев

КВАНТОВЫЙ КОМПЬЮТЕР И КРИПТОГРАФИЧЕСКАЯ СТОЙКОСТЬ СОВРЕМЕННЫХ СИСТЕМ ШИФРОВАНИЯ

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

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

Современные криптоалгоритмы. Современные алгоритмы шифрования можно подразделить на симметричные и асимметричные (алгоритмы с открытым ключом). Симметричный алгоритм шифрования (например, AES, RC6 и др.) считается достаточно стойким, если не известны способы взлома этого криптоалгоритма, более быстрые, чем полный перебор. Сложность полного перебора (для атаки с известным шифротекстом) можно оценить как O(2k), где k — длина ключа в битах. Учитывая, что в 2002 г. с помощью любительской сети распределенных вычислений distributed.net была продемонстрирована возможность взлома 64-битного ключа методом грубой силы, сейчас нормой считается длина ключа 128 бит, а максимальная длина ключа, поддерживаемая большинством симметричных криптоалгоритмов, равна 256 битам.

Для асимметричных криптоалгоритмов известны способы криптоанализа, работающие значительно быстрее полного перебора. Из-за этого асимметричные криптографические алгоритмы имеют длину ключа, значительно большую, по сравнению с симметричными. Наиболее часто применяются алгоритм RSA, основанный на вычислительной сложности задачи о факторизации целых чисел, и алгоритм Эль-Гамаля, основанный на вычислительной сложности задачи дискретного логарифмирования. Причем используются версии алгоритма Эль-Гамаля для различных полей. В частности, большое значение имеет алгоритм Эль-Гамаля над группой точек эллиптической кривой [3] (табл. 1).

Квантовые вычисления. Квантовые компьютеры смогут решать задачи криптоанализа значительно эффективнее по сравнению с классическими. Кратко рассмотрим основные положения теории квантовых вычислений. Более обстоятельное введение можно найти, например, в работе [1].

Сопоставление длины ключей симметричных и асимметричных шифров при

одинаковой криптостойкости.

Длина ключа симметричного криптоалгоритма Длина ключа алгоритма RSA Длина ключа алгоритма Эль-Гамаля над группой точек эллиптической кривой

80 1024 163

112 2048 224

128 3072 283

192 7680 409

256 15360 571

Квантовые компьютеры основаны на квантовых регистрах, которые состоят из квантовых битов. Квантовый бит — это простейшая квантовая система, имеющая два выделенных состояния. Одно из его выделенных состояний будем обозначать |0), а другое |1). Состояние квантовой системы можно измерить. При этом квантовый бит может иметь такое состояние, что измерение может с некоторой вероятностью показать |0), а с некоторой другой показать |1). Будем описывать состояние такой системы как линейную комбинацию выделенных состояний: (а |0) + b |1)), где а и b — комплексные числа, такие что |a|2 + + |b|2=1. Тогда измерение состояния (а |0) + b |1)) с вероятностью |а|2 покажет состояние |0), а с вероятностью |b|2 покажет состояние |1).

Квантовый регистр, состоящий из n квантовых битов, имеет 2n выделенных состояний, соответствующих n разрядным двоичным числам от 100 ... 0) до 111... 1). Состояние квантового регистра записывается в виде линейной комбинации всех этих выделенных состояний:

2n-1

Е ах|x).

х=0

При этом выполняется условие нормировки

2n-1

E |а«|2 = 1.

i=0

Коэффициенты ах являются комплексными числами. Они называются амплитудами соответствующих состояний |x).

Состояние системы, состоящей из n квантовых битов, описывается вектором единичной длины в 2п-мерном комплексном унитарном пространстве (скалярное произведение состояний |а) = |а1... ап) и |b) = |b1... bn) обозначается как (a|b) и вводится обычным образом: ^|b) = а^*). Таким образом, квантовый регистр длины n может i

представлять различные значения n-битного слова одновременно.

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

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

Некоторые важнейшие элементарные преобразования (квантовые вентили) приведены в табл. 2

Криптоанализ симметричных шифров. Один из известных квантовых алгоритмов — алгоритм Гровера. Обычно его описывают как алгоритм поиска в неупорядоченном массиве. Однако небольшая модификация превращает его в алгоритм для восстановления ключа симметричного алгоритма шифрования по тексту сообщения и шифротек-сту. При использовании классического компьютера для этого требуется полный перебор, имеющий сложность 0(2т), где т — длина ключа. Для квантового компьютера эту сложность можно сильно уменьшить.

Будем рассматривать функцию у = с(к,х). Эта функция шифрует сообщение х на ключе к; х и у — целые числа в диапазоне х,у € [0, 2П — 1], где п — длина блока. Пусть нам известна пара сообщение-шифротекст: XI, уь Рассмотрим функцию f (к), которая принимает значение единицы, если с(к,х1) = у1, и нуля в противном случае. Требуется найти значение аргумента, при котором функция равна единице.

Рассмотрим следующий квантовый алгоритм:

1 2т — 1

приводим квантовый регистр в состояние ._ У' ;

\/2™ ¿=0 1 2т —1

вычисляем функцию f от этого регистра —= ^ |^^ | ^^(¿)).

V2™ х=0

Повторяем -^/2'm раз процедуру увеличения амплитуды всех

для которых f (¿¿) = 1 (эта процедура описывается далее).

Измеряем состояние регистра. Результат будет равным искомому ключу с вероятностью около 2-п. Если результат все-таки оказался неверным (это легко проверить), весь алгоритм следует выполнить заново.

Процедура увеличения амплитуды состоит из двух этапов: 1) изменение амплитуды с а на —а^ для всех таких, что f (¿¿) = 1. Эта операция представляет собой преобразование Z над последним

Преобразования квантовых вентилей

Название, обозначение и краткое описание квантового вентиля

Действие на базовые состояния

Матрица

Тождественное преобразование I

|0> ^ |0> |1М|1>

'1 о1 о 1,

Отрицание X

|0> ^ |1> |1> ^ |0>

01 10

Фазовый сдвиг Z

0> ^ |0> 1M-|1>

10 01

Фазовый сдвиг с отрицанием Y

0М-|1> 1> ^ |0>

01 10

Controlled-NOT CNOT

Прибавляет ко второму биту первый по модулю 2

| 00> 00> 1 0 0 0

|01> 01> 0 1 0 0

|10> 11> 0 0 0 1

|11> 10> 0 0 1 0

| 000> 000> 1 0 0 0 0 0 0 0^

|001> 001> 0 1 0 0 0 0 0 0

|010> 010> 0 0 1 0 0 0 0 0

|011> 011> 0 0 0 1 0 0 0 0

| 100> 100> 0 0 0 0 1 0 0 0

|101> 101> 0 0 0 0 0 1 0 0

|110> 111> 0 0 0 0 0 0 0 1

|111> 110> 0 0 0 0 0 0 1 0

-^(|0> +11>) 1 л 1 ^

^(|0>-|1>) У2 11 11

Controlled-Controlled NOT (Вентиль Тофолли) Прибавляет к третьему биту произведение двух первых (по модулю два).

Преобразование

Адамара

H:

квантовым битом регистра; 2) инверсия относительно среднего. Это преобразование можно записать следующим образом:

Е |ti> (2аср - a) |ti>,

где аср — средняя амплитуда.

Инверсию относительно среднего можно записать в виде матрицы

( 1- 1 1

N N

D =

2

N

2

N

2 -1

N

2

N

2 \

N

2

N

2 1 N - 1 /

Как показал Л. Гровер в работе [2], это преобразование может быть эффективно реализовано на квантовом компьютере, а сложность всего алгоритма оценивается как O (2n/2).

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

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

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

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

Поставим задачу следующим образом: по натуральному числу N, имеющему ровно два простых делителя, найти эти делители. Заметим, что для некоторого числа a его порядок по модулю N (т.е. минимальное число r такое, что ar = 1 (mod N)) четен. Тогда мы можем выражение ar = 1 (mod N) записать в виде

(a2 - 1) (a2 + 1) =0 (modN).

То есть, зная r, мы можем эффективно найти делители числа N. Заметим, что порядок r фактически является периодом функции ax

(mod N).

Для нахождения периода функции существует следующий квантовый алгоритм.

Пусть у нас есть периодическая функция f (x). Область определения и область значений этой функции — множество целых чисел, причем 0 ^ x ^ 2n — 1 и 0 ^ f (x) ^ 2m — 1. Для того, чтобы найти период этой функции, нам нужен квантовый регистр, состоящий из n + m квантовых битов. Приведем его в состояние

1 2n-1 Tin £ |x>

VZ x=0

Теперь вычислим от него функцию f, так чтобы у нас получилось состояние

1 2n-1 Tin £|xf (x)).

x=0

Затем проведем измерение последних m квантовых битов (т.е. квантовых битов, относящихся к f(x)). После него наш квантовый регистр перейдет в состояние

£ |x,u).

x:f (x)=u

Теперь проведем квантовое преобразование Фурье (алгоритм которого приведен ниже), в результате чего мы получим состояние

j-

где еj равны нулю при всех j, не кратных 2п/г. Если период г не делит 2П, преобразование выполняется не точно, причем большая амплитуда сосредоточена вблизи целых значений, кратных [2п/г].

Наконец, измерим полученное состояние. Измерение даст число V.

Если период равняется степени двойки, то V = j — .А поскольку в большинстве случаев j и г взаимно просты, то сокращение дроби

— даст дробь, знаменатель которой и есть период. В общем слу-

2п

чае либо придется прогнать весь алгоритм несколько раз, пока мы не получим правильное значение периода (ему соответствует максимальная амплитуда, а следовательно, максимальная вероятность), либо воспользоваться известным из теории чисел разложением в бесконечную дробь [6].

Квантовое преобразование Фурье определяется так:

QFT

1

2m-1

V Л 2nicx

e 2"

|c>.

c=0

Как показал П. Шор в работе [6], такое преобразование можно построить с использованием только ш(ш +1)/2 квантовых вентилей двух типов. Один из них представляет собой преобразование Адамара, примененное к j-му квантовому биту (обозначим его Hj). Другой вентиль реализует двухбитное преобразование вида

Sj,k —

/ 1 0 0 0 \

0 10 0

0 0 1 0

V 0 0 0 ег2F7 )

Согласно работе [6], квантовое преобразование Фурье можно задать следующим образом:

но5од ... ,т— 1Н1 . . . Нт—3$т-3,т-2$т-3,т- 1Нт-2$т-2,т- 1Нт-1

т— 1 т— 1

П нкП Sk,t. (1)

k=0

t=k+1

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

2

n

j

Г

Рассмотренный квантовый алгоритм факторизации имеет сложность O(n3). В то же время, лучший классический алгоритм факторизации — алгоритм решета числового поля [4] — имеет сложность

O(exp(c(logn)1/3(loglogn)1/3)), где c = \ 64.

v 9

Криптостойкость системы Эль-Гамаля. Система Эль-Гамаля основана на трудности вычисления дискретного логарифма, т.е., если g — образующий элемент конечной группы G, то зная a £ G, надо найти r £ G такой, что a = gr. Наиболее часто эта схема применяется для группы Zp и для группы точек эллиптической кривой.

Существует квантовый алгоритм Шора для вычисления дискретного логарифма. Приведем здесь его оригинальную версию, которая предназначена для группы Zp (где p — простое).

Сначала найдем q — степень двойки, чтобы p < q < 2p. Приведем квантовый регистр в состояние

i p-2 p-2

— E E К b, gax-b (modp)). (2)

P a=0 b=0

Применим теперь преобразование Фурье к первой и второй частям регистра, в результате чего регистр перейдет в состояние

1 q-1 q-1

1 EE e^(ac+bd) |c,d,gax-b (modp)). (3)

q(p -1) c=0 d=0

Теперь измеряем состояние квантового регистра. В результате измерения с вероятностью не менее мы получим c и d такие, что

1 , d + ( С(Р - 1) -{С(Р - Щд \ ^ 1( di)

— ^ ^ - + r -;-т^- ^ тг"(modi), (4)

2q q V (Р — 1)q ) 2q( ), W

где {x}, — число, удовлетворяющее соотношениям {x}, = x (modq)

и — 2 < {x}, i 2.

d

Для того чтобы получить кандидата на r, надо округлить - до бли-

1 3 л жайшего числа, кратного --, затем разделить по модулю p — 1 на

(Р — 1)c — {(Р — 1)С}?

-q. В работе .[6] сложность этого алгоритма оценивается как O(n3). В то же время, лучший классический алгоритм для дискретного логарифма имеет сверхполиномиальную сложность.

Несмотря на то, что долгое время считалось, что алгоритм Шора не подходит для вычисления дискретного логарифма в группе точек эллиптической кривой, в работе [5] приводится вариант алгоритма Шора

для группы точек эллиптической кривой над полем GF(p), обладающий сложностью O(n3), а также высказывается гипотеза, что аналогичный алгоритм существует также и для эллиптических кривых над другими полями.

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

СПИСОК ЛИТЕРАТУРЫ

1. Ключарев П. Г. Основы квантовых вычислений и квантовой криптографии // Вестник МГТУ им. Н.Э. Баумана. Серия "Приборостроение". - 2006. - № 2. -C. 36-46.

2. G r o v e г L. K. Quantum Mechanics Help in Searching for a Needle in a Haystack. / Phys. Rev. Lett. - 1997. -V. 78(2). - P. 325-328.

3. Hankerson D. R., Vanstone S. A. & Menezes A. J. Guide to elliptic curve cryptography. - New York: Springer, 2003. - XX. - 311 p.

4. Pomerance C. A Tale of Two Sieves. / Not. Amer. Math. Soc., 1996. - P. 43.

5. P r o o s J. A. Shor's discrete logarithm quantum algorithm for elliptic curves. Waterloo, Ont.: Faculty of Mathematics University of Waterloo. 2003. - P. 35.

6. S h o r 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.

Статья поступила в редакцию 27.12.2006

Петр Георгиевич Ключарев родился в 1980 г., окончил МГТУ им. Н.Э. Баумана в 2004 г. Аспирант кафедры "Информационная безопасность". Автор шести научных работ в области информационной безопасности.

P.G. Klyucharyov (b. 1980) graduated from the Bauman Moscow State Technical University in 2004. Post-graduate of "Information Security" department of the Bauman Moscow State Technical University. Author of 6 publications in the field of information security.

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