Обучение с ошибками

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

Обучение с ошибками (Шаблон:Lang-en) — задача нахождения многочлена с коэффициентами из определённого кольца вычетов, для которого дана система линейных уравнений, в которой есть ошибки (что делает простую вычислительную задачу сложной).

Представленная[1] Одедом Регевым в 2005 году LWE оказалась удивительно универсальной основой для криптографических конструкций, в частности, для создания постквантовых криптографических алгоритмов[1][2].

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

Определение

Зафиксируем параметр n⩾1, модуль q⩾2 и распределение вероятности «ошибки» χ на Zq. Пусть A𝐬,χ — распределение вероятности на ℤqn×ℤq, полученное выбором вектора 𝐚∈ℤqn равномерно случайно, выбором ошибки 𝐞∈ℤq в соответствии с χ и полученным выражением (𝐚,⟨𝐚,𝐬⟩+e), где ⟨𝐚,𝐬⟩=∑i=1naisi и сложение производится по модулю q.

Говорят[3], что алгоритм решает задачу LWEq,χ, если для любого 𝐬∈ℤqn, имея произвольное полиномиальное число независимых соотношений из A𝐬,χ он с высокой вероятностью выдаст s.

История появления

Возникновение концепции LWE отслеживается в работах Шаблон:Iw и Синтии Дворк[4]. Они описали первую криптосистему на открытых ключах, использующую криптографию на решётках, и последующие её улучшения и модификации[5]. LWE не была в явном виде представлена в этих работах, однако тщательное исследование конструкции Айтаи—Дворк, упрощённой в работе Регева[6], показывает[3], что идеи LWE неявно возникают в этой работе.

Стоит отметить, что ранние исследования в этой области[4][6] опирались на недостаточно хорошо изученную задачу нахождения уникального кратчайшего вектора. Долгое время было непонятно, можно ли заменить её более стандартными задачами на решётках. Позднее Крис Пейкерт[7] и Вадим Любашевский с Даниэле Миччанчо выяснили[8], что задача нахождения уникального кратчайшего вектора на самом деле является эквивалентом стандартной задачи на решетках GapSVP, что привело к более ясной картине в данной области.

Пример задачи

Рассмотрим типичную задачу LWE[3]: необходимо восстановить вектор x∈ℤqn, имея последовательность приближенных линейных уравнений по x. Например:

{14x1+15x2+5x3+2x4=8(mod17)13x1+14x2+14x3+6x4=16(mod17)…6x1+7x2+16x3+2x4=3(mod17),

где каждое соотношение верно с некоторой маленькой дополнительной ошибкой, скажем, ±1, и наша цель восстановить x(в данном примере x=(0,13,9,11)). Без ошибки найти x было бы просто: например, за полиномиальное время, используя метод Гаусса. Учёт же ошибки делает задачу значительно более трудной, поскольку с каждой итерацией ошибка возрастает и в конечном итоге достигает неуправляемых значений[3].

Криптографические приложения

Диапазон криптографических приложений LWE становится в последнее время достаточно широким. Кроме приведенного ниже примера криптосистемы, существуют и более эффективные схемы[2][9]. Более того, использование Ring-LWE может сделать систему реально применимой[10].

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

Система на открытых ключах

Рассмотрим простой пример криптосистемы на открытых ключах, предложенной Регевом[1]. Она опирается на сложность решения задачи LWE. Система описывается следующими числами: n-секретный параметр, m-размерность, q-модуль и распределением вероятностиχ∈ℤq. Для гарантии безопасности и корректности системы следует выбрать следующие параметры:

  • q≥2, простое число между n2 и 2n2
  • m=(1+ϵ)(n+1)log⁡q для произвольной константы ϵ
  • α(n)=1/nlog2n

Тогда криптосистемы определяется следующим образом:

  • Секретный ключ: Секретный ключ это 𝐬∈ℤqn выбранный произвольно.
  • Открытый ключ: Выберем m векторов a1,…,am∈ℤqn произвольно и независимо. Выберем допустимые ошибки e1,…,em∈ℤq независимо в соответствии с распределением χ. Открытый ключ состоит из (ai,bi=⟨ai,𝐬⟩/q+ei)i=1m
  • Шифрование: Шифрование бита x∈{0,1} производится так: выбирается случайное подмножество S из [m] и определяется шифр Enc(x) как (∑i∈Sai,x/2+∑i∈Sbi)
  • Расшифрование: Расшифровка (a,b) это 0 в случае если b−⟨a,𝐬⟩/q ближе к 0, чем 12, и 1 в противном случае.

В своих работах[1][3] Одед Регев доказал корректность и защищенность данной криптосистемы при соответствующем выборе параметров.

Примечания

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

Литература

См. также

  1. ↑ 1,0 1,1 1,2 1,3 Oded Regev «On lattices, learning with errors, random linear codes, and cryptography», in Proceedings of the thirty-seventh annual ACM symposium on Theory of computing (Baltimore, MD, USA: ACM, 2005), 84-93, http://portal.acm.org/citation.cfm?id=1060590.1060603.
  2. ↑ 2,0 2,1 D. Micciancio and O. Regev. Lattice-based cryptography. In D. J.Bernstein and J. Buch-mann, editors,Post-quantum Cryprography. Springer, 2008
  3. ↑ 3,0 3,1 3,2 3,3 3,4 Oded Regev, «The Learning with Errors Problem» http://www.cims.nyu.edu/~regev/papers/lwesurvey.pdf Шаблон:Wayback
  4. ↑ 4,0 4,1 M. Ajtai and C. Dwork. A public-key cryptosystem with worst-case/average-case equivalence. In Proc. 29th Annual ACM Symp. on Theory of Computing (STOC), pages 284—293. 1997
  5. ↑ M. Ajtai and C. Dwork. The first and fourth public-key cryptosystems with worst-case/average-case equivalence, 2007. Available from ECCC at http://www.uni-trier.de/eccc/Шаблон:Недоступная ссылка
  6. ↑ 6,0 6,1 O. Regev. New lattice-based cryptographic constructions. Journal of the ACM, 51(6):899-942, 2004. Preliminary version in STOC’03
  7. ↑ C. Peikert. Public-key cryptosystems from the worst-case shortest vector problem. In Proc. 41st ACM Symp. on Theory of Computing (STOC), pages 333—342. 2009
  8. ↑ V. Lyubashevsky and D. Micciancio. On bounded distance decoding, unique shortest vectors, and the minimum distance problem. In CRYPTO, pages 577—594. 2009.
  9. ↑ C. Peikert, V. Vaikuntanathan, and B. Waters. A framework for efficient and compos-able oblivious transfer. In CRYPTO, pages 554—571. 2008
  10. ↑ V. Lyubashevsky, C. Peikert, and O. Regev. On ideal lattices and learning with errors over rings. In EUROCRYPT. 2010.
  11. ↑ Шаблон:Cite web