Идеальная решётка

Материал из testwiki
Перейти к навигации Перейти к поиску

Идеальная решётка — определённая математическая структура, которая используется для уменьшения числа параметров, необходимых для описания решёток (представляющих собой свободные коммутативные группы конечного ранга). Данный вид решёток часто встречается во многих областях математики, в частности, в разделе теории чисел. Таким образом идеальные решётки более эффективны в применении, чем другие решётки, применяющихся в криптографии. Идеальные решётки используются в криптографических системах с открытым ключом NTRUEncrypt и NTRUSign для построения эффективных криптографических примитивов. Также идеальные решётки составляют фундаментальную основу квантовой криптографии, которая защищает от атак, связанных с квантовыми компьютерами.

Введение

Схемы RSA и ECC, основанные либо на сложности факторизации, либо на сложности проблемы дискретного логарифма, являются самыми популярными асимметричными криптосистемами, которые для шифрования информации и её последующего расшифровывания используют различные ключи. Несмотря на преобладание схем RSA и ECC, они, как известно, подвержены атакам с использованием квантовых компьютеров[1]. Кроме того, RSA и ECC довольно неэффективны на очень небольших и ограниченных устройствах, таких как 8-битные микроконтроллеры AVR, использующиеся по сей день в различных областях, таких как робототехника, энергетика, спутниковые системы связи и многие другие. Возможной альтернативой упомянутых схем являются асимметричные криптосистемы, основанные на жёстких задачах в идеальных решётках[2]. Специальная алгебраическая структура идеальных решёток позволяет значительно уменьшить размеры ключа и шифротекста, обеспечивая при этом эффективную арифметику с использованием теоретико-числового преобразования. Таким образом благодаря использованию идеальных решёток повышается степень защиты зашифрованной информации[3].

Базовые понятия

Решётка для двух разных норм квадратичной формы

Теория решёток может быть описана с помощью линейной алгебры. Решётка обычно рассматривается как любая равномерно распределённая сетка точек в n-мерном реальном линейном пространстве Rn со всеми координатами, являющимися целыми числами. Это множество образует группу при сложении по координатам и является дискретным, что означает, что для каждой точки в множестве есть открытый шар вокруг неё, который не содержит никакой другой точки множества, таким образом решёткой называется множество всех целочисленных линейных комбинаций заданного набора линейно независимых точек в Zn. Решётки — являются группами, а идеальные решётки идеалами[4].

Файл:Two-dimensional lattice with two bases.png
Двумерная решётка с двумя базисами

В частности, идеальные решётки соответствуют кольцам вида [x]/f для некоторого неприводимого многочлена f степени n[5]. Основная операция в идеальной решёточной криптографии — полиномиальное умножение.

Математическое определение идеальной решётки

Идеальная решётка — это целочисленная решётка (I)n такая, что для некоторого заданного базиса B(n,n) такого, что B= {(g mod  f):g[x]} и для некоторого приведённого многочлена f степени n существует идеал I[x]/f

Ограничения, накладываемые на f:

Лемма

Если f является нормированным неприводимым целочисленным многочленом степени n, то любой идеал есть изоморфная решётка полного ранга в n,то есть базис состоит из n линейно независимых векторов, координаты которых и являются коэффициентам многочлена f степени n Шаблон:Нет ссылок в разделе

Алгоритм идентификации идеальных решёток с базисами полного ранга

Алгоритм идентификации идеальных решёток с базисами полного

Пусть задан базис B(n,n)
Условие: если B охватывает идеальную решётку относительно параметра q, тогда правда, иначе ложь

  1. привести B к эрмитовой форме
  2. A=adj(B), то есть B — присоединённая матрица, d=det(B) — детерминант и z=B(n,n)
  3. P=AMBmod d
  4. если все столбцы P кроме последнего нулевые тогда
  5. положить в c=P(,n) ненулевой столбец (а именно, последний столбец P)
  6. иначе вернуть ложь
  7. если zci, то есть множество элементов z, удовлетворяющих ci для всех i=1,,n тогда
  8. применить китайскую теорему об остатках для нахождения q (c/z)mod (d/z) и q0mod z
  9. иначе вернуть ложь
  10. если Bq0mod (d/z) тогда
  11. вернуть правду, q=Bq/d
  12. иначе вернуть ложь

Дополнение: матрица M принимает вид

M=(0...0..In1.0)

Шаблон:Нет ссылок в разделе

Пример использования алгоритма идентификации идеальных решёток с базисами полного ранга

Используя данный алгоритм[6], можно убедиться в том, что немногие решётки являются идеальными решётками[6].
Рассмотрим пример: Пусть n=2 и k{0,±1}, тогда

B1=(k001)

является идеальной, в отличие от

B2=(100k)

B2 с k=2 пример, придуманным Любашевским В. и Миссиансио Д.[7]

Для использования данного алгоритма, матрица B обязана являться эрмитовой нормальной формой, таким образом первый шаг алгоритма обязателен к выполнению. Детерминант равенd=2, а присоединённая матрица

A=(2001)
M=(0010)

и наконец, произведение матриц P=AMBmodd есть

P=(0010).

На этом этапе алгоритм останавливается, потому что все столбцы P кроме последнего, должны быть равны нулю, если B является идеальной решёткой.

Распространённые задачи теории решёток

Шаблон:Основная статья

  • поиск кратчайшего вектора — поиск кратчайшего ненулевого вектора, по представленной произвольными базисными векторами решётке. В действительности, обычно рассматривается приближённый вариант задачи поиска кратчайшего вектора, целью которой — получение вектора в решётке, длина которого не превосходит длину кратчайшего ненулевого вектора в μ(n)-раз, где μ(n)- коэффициент приближения, а n- размерность решётки.[8]
  • поиск ближайшего вектора — обобщение задачи поиска кратчайшего вектора[9]
  • поиск кратчайших независимых векторов[10].

Применение идеальных решёток

Хэш-функции, устойчивые к коллизиям

Устойчивая к коллизиям хеш-функция — это функция заданная отображением hk:DR так, что мощность множества (области некоторого числового пространства) D больше мощности множества R, |R||D|, тем самым затрудняя нахождение коллизии, то есть пару x1,x2D,h(x1)=h(x2). Таким образом, по случайно выбранному k ни один злоумышленник не сможет эффективно (за разумное время) найти коллизии в hk, даже несмотря на тот факт, что коллизии присутствуют[11]. Основное использование идеальных решёток в криптографии связано с тем, что достаточно эффективные и практичные коллизионные хэш-функции могут быть построены на основе твёрдости нахождения приближённого кратчайшего вектора в таких решётках[5]. Группы учёных, изучающие идеальные криптографические решётки, исследовали коллизионные устойчивые хэш-функции, построенные на основе идеальных решёток, а именно Пейкрет К. и Розен С.[12]. Эти результаты проложили путь для других эффективных криптографических конструкций, включая схемы идентификации и подписи.

Лобашевский В. и Миссиансио Д.[7] предложили конструкции эффективных и устойчивых к коллизиям хэш-функций, которые могут быть доказаны на основе наихудшей жёсткости задачи о кратчайшем векторе для идеальных решёток. Тем самым были определены рассматриваемые семейства хэш-функции для элементов:

h(b)=i=1mαibi, где m есть выборка случайных элементов из a1,,amR=p[x]/f, b=(b1,...,bm)Dm .

В данном случае размер ключа, то есть хэш-функции определяется как O(mnlogp)=O(nlogn)[13], используя алгоритм быстрого преобразования Фурье, для подходящего f, операция αibi может быть выполнена за время O(nlognloglogn). Поскольку m есть константой, то для хеширования требуется конечное время O(nlognloglogn).

Цифровые подписи

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

Прямое построение цифровых подписей основано на сложности аппроксимации кратчайшего вектора в идеальных решётках.[15] Схема Любашёвского В. и Миссиансио Д.[15], основанная на идеальных решётках, имеет гарантии безопасности даже в худшем случае и является наиболее асимптотически эффективной конструкцией, известной на сегодняшний день, также позволяющей генерировать сигнатуры и проверять алгоритмы, работающие за почти линейное время[16].

Одна из главных открытых проблем, которые были подняты в описанных выше работах, заключается в создании одноразовой подписи с аналогичной эффективностью, но основанной на более слабом допущении твёрдости. Например, было бы здорово обеспечить однократную подпись с защитой, основанную на сложности аппроксимации задачи кротчайшего вектора (SVP) (в идеальных решётках) с точностью до O~(n).[17]

Построение таких цифровых подписей основано на стандартном преобразовании одноразовых подписей (то есть подписей, которые позволяют надёжно подписывать одно сообщение) в общие схемы подписи вместе с новой конструкцией одноразовой подписи на основе решётки, безопасность которой, в конечном счёте, основана на наихудшей жёсткости аппроксимации кратчайшего вектора во всех решётках, соответствующий идеалам в кольце [x]/f для любого неприводимого многочлена f[16].

Хэш-функция SWIFT

Хэш-функция достаточно эффективна и может быть вычислена асимптотически за O~(m) время с использованием быстрого преобразования Фурье по комплексным числам. Однако на практике это несёт значительные накладные расходы. Набор криптографических хеш-функций с доказанной стойкостью SWIFFT, определённый Миссиансио Д. и Регевом[16], по сути, высоко оптимизированный вариант хэш-функции, описанной выше с использованием быстрого преобразования Фурье в q. Вектор f определён в (1,0,,0)n для n равного степени 2, так что соответствующий полином xn+1 является неприводимым многочленом. Обнаружение коллизий функций SWIFFT равносильно нахождению коллизиций в базовой функции идеальной решёткиfA. Заявленное свойство коллизий SWIFFT[18] поддерживается при наихудшем случае в задачах на идеальных решётках.

Алгоритм хэш-функции SWIFFT :

  • Параметры: Натуральные числа n,m,q,d такие, что n степень двойки, q простое, 2n(q1) и nm.
  • Ключ: m/n векторы a~1,...,a~m/n выбраны независимо и случайным образом в qn.
  • Вход: m/n вектора y(1),,y(m/n){0,,d1}n.
  • Выход: вектор i=1m/na~(i)(Wy(i))qn, где  — компонентное векторное произведение, а Wqn×n — обратимой матрицей над q

См. также

Примечания

Шаблон:Примечания

Литература

Ссылки

  1. Шаблон:Cite web
  2. Nicolas Gama, Phong Q. Nguyen Lattice-Based Identification Schemes Secure Under Active Attacks Шаблон:Wayback. Predicting Lattice Reduction, 1995.
  3. Daniele Micciancio,Oded Regev Lattice-based Cryptography Шаблон:Wayback, 2008.
  4. Vadim Lyubashevsky, Chris Peikert,Oded Regev On Ideal Lattices and Learning with Errors Over Rings Шаблон:Wayback, 2013.
  5. 5,0 5,1 Vadim Lyubashevsky. Lattice-Based Identification Schemes Secure Under Active Attacks Шаблон:Wayback. In Proceedings of the Practice and theory in public key cryptography , 11th international conference on Public key cryptography, 2008.
  6. 6,0 6,1 Jintai Ding and Richard Lindner. Identifying Ideal Lattices Шаблон:Wayback. In Cryptology ePrint Archive, Report 2007/322, 2007.
  7. 7,0 7,1 Lyubashevsky, V., Micciancio, D. Generalized compact knapsacks are collision resistant. Шаблон:Wayback. In CBugliesi, M., Preneel, B., Sassone, V., Wegener, I. (eds.) ICALP 2006. LNCS, vol. 4052, pp. 144—155. Springer, Heidelberg (2006).
  8. Lenstra A., Lenstra H., Lovasz L. Factoring polynomials with rational coefficients Шаблон:Wayback, 1982.
  9. V.Lyubashevsky, Daniele Micciancio Generalized compact knapsacks are collision resistant. In International colloquium on automata, languages and programming, 2008.
  10. Шаблон:Citation Шаблон:Cite web
  11. O. Goldreich, S. Goldwasser, S. Halevi. Collision-Free Hashing from Lattice Problems Шаблон:Wayback, 1996.
  12. Vadim Lyubashevsky, Chris Peikert and Oded Regev. On Ideal Lattices and Learning with Errors over RingsШаблон:Недоступная ссылка. In Eurocrypt 2010, Lecture Notes in Computer Science, 2010.
  13. Mikl´os Ajtai Representing Hard Lattices with O(n log n) Bits Шаблон:Wayback, 2005.
  14. Шаблон:Статья
  15. 15,0 15,1 Ошибка цитирования Неверный тег <ref>; для сносок MicLyubAsympt2008 не указан текст
  16. 16,0 16,1 16,2 Daniele Micciancio, Oded Regev Lattice-based Cryptography Шаблон:Wayback. In POST-QUANTUM CRYPTOGRAPHY, 2009.
  17. Vadim Lyubashevsky, Daniele Micciancio. Asymptotically efficient lattice-based digital signatures Шаблон:Wayback. In Proceedings of the 5th conference on Theory of cryptography, 2008.
  18. Vadim Lyubashevsky, Daniele Micciancio, Chris Peikert,Alon Rosen [https://link.springer.com/chapter/10.1007%2F978-3-540-71039-4_4 Шаблон:Wayback: A Modest Proposal for FFT Hashing, 2008.