Обучение с ошибками в кольце

From Wikipedia, the free encyclopedia

In post-quantum cryptography, ring learning with errors (RLWE) is a computational problem which serves as the foundation of new cryptographic algorithms, such as NewHope, designed to protect against cryptanalysis by quantum computers and also to provide the basis for homomorphic encryption. Public-key cryptography relies on construction of mathematical problems that are believed to be hard to solve if no further information is available, but are easy to solve if some information used in the problem construction is known. Some problems of this sort that are currently used in cryptography are at risk of attack if sufficiently large quantum computers can ever be built, so resistant problems are sought. Homomorphic encryption is a form of encryption that allows computation on ciphertext, such as arithmetic on numeric values stored in an encrypted database.

RLWE is more properly called learning with errors over rings and is simply the larger learning with errors (LWE) problem specialized to polynomial rings over finite fields.[1] Because of the presumed difficulty of solving the RLWE problem even on a quantum computer, RLWE based cryptography may form the fundamental base for public-key cryptography in the future just as the integer factorization and discrete logarithm problem have served as the base for public key cryptography since the early 1980s.[2] An important feature of basing cryptography on the ring learning with errors problem is the fact that the solution to the RLWE problem can be used to solve a version of the shortest vector problem (SVP) in a lattice (a polynomial-time reduction from this SVP problem to the RLWE problem has been presented[1]).

Background[edit]

The security of modern cryptography, in particular public-key cryptography, is based on the assumed intractability of solving certain computational problems if the size of the problem is large enough and the instance of the problem to be solved is chosen randomly. The classic example that has been used since the 1970s is the integer factorization problem. It is believed that it is computationally intractable to factor the product of two prime numbers if those prime numbers are large enough and chosen at random.[3] As of 2015 research has led to the factorization of the product of two 384-bit primes but not the product of two 512-bit primes. Integer factorization forms the basis of the widely used RSA cryptographic algorithm.

The ring learning with errors (RLWE) problem is built on the arithmetic of polynomials with coefficients from a finite field.[1] A typical polynomial {textstyle a(x)} is expressed as:

{displaystyle a(x)=a_{0}+a_{1}x+a_{2}x^{2}+ldots +a_{n-2}x^{n-2}+a_{n-1}x^{n-1}}

Polynomials can be added and multiplied in the usual fashion. In the RLWE context the coefficients of the polynomials and all operations involving those coefficients will be done in a finite field, typically the field {textstyle mathbf {Z} /qmathbf {Z} =mathbf {F} _{q}} for a prime integer {textstyle q}. The set of polynomials over a finite field with the operations of addition and multiplication forms an infinite polynomial ring ({textstyle mathbf {F} _{q}[x]}). The RLWE context works with a finite quotient ring of this infinite ring. The quotient ring is typically the finite quotient (factor) ring formed by reducing all of the polynomials in {textstyle mathbf {F} _{q}[x]} modulo an irreducible polynomial {textstyle Phi (x)}. This finite quotient ring can be written as {displaystyle mathbf {F} _{q}[x]/Phi (x)} though many authors write {displaystyle mathbf {Z} _{q}[x]/Phi (x)} .[1]

If the degree of the polynomial Phi (x) is {textstyle n}, the quotient ring becomes the ring of polynomials of degree less than n modulo Phi (x) with coefficients from F_q. The values {textstyle n}, {textstyle q}, together with the polynomial Phi (x) partially define the mathematical context for the RLWE problem.

Another concept necessary for the RLWE problem is the idea of «small» polynomials with respect to some norm. The typical norm used in the RLWE problem is known as the infinity norm (also called the uniform norm). The infinity norm of a polynomial is simply the largest coefficient of the polynomial when these coefficients are viewed as integers. Hence, ||a(x)||_{infty }=b states that the infinity norm of the polynomial a(x) is b. Thus b is the largest coefficient of a(x).

The final concept necessary to understand the RLWE problem is the generation of random polynomials in {displaystyle mathbf {F} _{q}[x]/Phi (x)} and the generation of «small» polynomials . A random polynomial is easily generated by simply randomly sampling the n coefficients of the polynomial from mathbf{F}_q, where mathbf{F}_q is typically represented as the set {displaystyle {-(q-1)/2,...,-1,0,1,...,(q-1)/2}}.

Randomly generating a «small» polynomial is done by generating the coefficients of the polynomial from mathbf{F}_q in a way that either guarantees or makes very likely small coefficients. When q is a prime integer, there are two common ways to do this:

  1. Using Uniform Sampling – The coefficients of the small polynomial are uniformly sampled from a set of small coefficients. Let {textstyle b} be an integer that is much less than {textstyle q}. If we randomly choose coefficients from the set: {textstyle {-b,-b+1,-b+2,ldots ,-2,-1,0,1,2,ldots ,b-2,b-1,b}} the polynomial will be small with respect to the bound ({textstyle b}).
  2. Using discrete Gaussian sampling – For an odd value for {textstyle q}, the coefficients of the polynomial are randomly chosen by sampling from the set {textstyle {-(q-1)/2,ldots ,(q-1)/2}} according to a discrete Gaussian distribution with mean {displaystyle 0} and distribution parameter {textstyle sigma }. The references describe in full detail how this can be accomplished. It is more complicated than uniform sampling but it allows for a proof of security of the algorithm. The paper «Sampling from Discrete Gaussians for Lattice-Based Cryptography on a Constrained Device» by Dwarakanath and Galbraith provide an overview of this problem.[4]

The RLWE Problem[edit]

The RLWE problem can be stated in two different ways: a «search» version and a «decision» version. Both begin with the same construction. Let

The Search version entails finding the unknown polynomial s(x) given the list of polynomial pairs (a_{i}(x),b_{i}(x)).

The Decision version of the problem can be stated as follows. Given a list of polynomial pairs (a_{i}(x),b_{i}(x)), determine whether the b_{i}(x) polynomials were constructed as b_{i}(x)=(a_{i}(x)cdot s(x))+e_{i}(x) or were generated randomly from {displaystyle mathbf {F} _{q}[x]/Phi (x)} with coefficients from all of mathbf{F}_q.

The difficulty of this problem is parameterized by the choice of the quotient polynomial (Phi (x)), its degree (n), the field (mathbf{F}_q), and the smallness bound (b). In many RLWE based public key algorithms the private key will be a pair of small polynomials s(x) and e(x). The corresponding public key will be a pair of polynomials a(x), selected randomly from {displaystyle mathbf {F} _{q}[x]/Phi (x)}, and the polynomial t(x)=(a(x)cdot s(x))+e(x). Given a(x) and t(x), it should be computationally infeasible to recover the polynomial s(x).

Security Reduction[edit]

In cases where the polynomial Phi (x) is a cyclotomic polynomial, the difficulty of solving the search version of RLWE problem is equivalent to finding a short vector (but not necessarily the shortest vector) in an ideal lattice formed from elements of {displaystyle mathbf {Z} [x]/Phi (x)} represented as integer vectors.[1] This problem is commonly known as the Approximate Shortest Vector Problem (α-SVP) and it is the problem of finding a vector shorter than α times the shortest vector. The authors of the proof for this equivalence write:

«… we give a quantum reduction from approximate SVP (in the worst case) on ideal lattices in mathbf {R} to the search version of ring-LWE, where the goal is to recover the secret {displaystyle sin mathbf {R} _{q}} (with high probability, for any s) from arbitrarily many noisy products.»[1]

In that quote, The ring mathbf {R} is {displaystyle mathbf {Z} [x]/Phi (x)} and the ring {displaystyle mathbf {R} _{q}} is {displaystyle mathbf {F} _{q}[x]/Phi (x)}.

The α-SVP in regular lattices is known to be NP-hard due to work by Daniele Micciancio in 2001, although not for values of α required for a reduction to general learning with errors problem.[5] However, there is not yet a proof to show that the difficulty of the α-SVP for ideal lattices is equivalent to the average α-SVP. Rather we have a proof that if there are any α-SVP instances that are hard to solve in ideal lattices then the RLWE Problem will be hard in random instances.[1]

Regarding the difficulty of Shortest Vector Problems in Ideal Lattices, researcher Michael Schneider writes, «So far there is no SVP algorithm making use of the special structure of ideal lattices. It is widely believed that solving SVP (and all other lattice problems) in ideal lattices is as hard as in regular lattices.»[6] The difficulty of these problems on regular lattices is provably NP-hard.[5] There are, however, a minority of researchers who do not believe that ideal lattices share the same security properties as regular lattices.[7]

Peikert believes that these security equivalences make the RLWE problem a good basis for future cryptography. He writes: «There is a mathematical proof that the only way to break the cryptosystem (within some formal attack model) on its random instances is by being able to solve the underlying lattice problem in the worst case» (emphasis in the original).[8]

RLWE Cryptography[edit]

A major advantage that RLWE based cryptography has over the original learning with errors (LWE) based cryptography is found in the size of the public and private keys. RLWE keys are roughly the square root of keys in LWE.[1] For 128 bits of security an RLWE cryptographic algorithm would use public keys around 7000 bits in length.[9] The corresponding LWE scheme would require public keys of 49 million bits for the same level of security.[1][failed verification] On the other hand, RLWE keys are larger than the keys sizes for currently used public key algorithms like RSA and Elliptic Curve Diffie-Hellman which require public key sizes of 3072 bits and 256 bits, respectively, to achieve a 128-bit level of security. From a computational standpoint, however, RLWE algorithms have been shown to be the equal of or better than existing public key systems.[10]

Three groups of RLWE cryptographic algorithms exist:

Ring learning with errors key exchanges (RLWE-KEX)[edit]

The fundamental idea of using LWE and Ring LWE for key exchange was proposed and filed at the University of Cincinnati in 2011 by Jintai Ding. The basic idea comes from the associativity of matrix multiplications, and the errors are used to provide the security. The paper[11] appeared in 2012 after a provisional patent application was filed in 2012.

In 2014, Peikert[12] presented a key transport scheme following the same basic idea of Ding’s, where the new idea of sending additional 1 bit signal for rounding in Ding’s construction is also utilized. An RLWE version of the classic MQV variant of a Diffie-Hellman key exchange was later published by Zhang et al.[13] The security of both key exchanges is directly related to the problem of finding approximate short vectors in an ideal lattice.

Ring learning with errors signature (RLWE-SIG)[edit]

A RLWE version of the classic Feige–Fiat–Shamir Identification protocol was created and converted to a digital signature in 2011 by Lyubashevsky.[14] The details of this signature were extended in 2012 by Gunesyu, Lyubashevsky, and Popplemann in 2012 and published in their paper «Practical Lattice Based Cryptography – A Signature Scheme for Embedded Systems.»[15] These papers laid the groundwork for a variety of recent signature algorithms some based directly on the ring learning with errors problem and some which are not tied to the same hard RLWE problems.[16]

Ring learning with errors homomorphic encryption (RLWE-HOM)[edit]

The purpose of homomorphic encryption is to allow the computations on sensitive data to occur on computing devices that should not be trusted with the data. These computing devices are allowed to process the ciphertext which is output from a homomorphic encryption. In 2011, Brakersky and Vaikuntanathan, published «Fully Homomorphic Encryption from Ring-LWE and Security for Key Dependent Messages» which builds a homomorphic encryption scheme directly on the RLWE problem.[17]

References[edit]

  1. ^ a b c d e f g h i Lyubashevsky, Vadim; Peikert, Chris; Regev, Oded (2012). «On Ideal Lattices and Learning with Errors Over Rings». Cryptology ePrint Archive.
  2. ^ Peikert, Chris (2014). «Lattice Cryptography for the Internet». In Mosca, Michele (ed.). Post-Quantum Cryptography. Lecture Notes in Computer Science. Vol. 8772. Springer International Publishing. pp. 197–219. CiteSeerX 10.1.1.800.4743. doi:10.1007/978-3-319-11659-4_12. ISBN 978-3-319-11658-7. S2CID 8123895.
  3. ^ Shor, Peter (20 November 1994). Algorithms for quantum computation: discrete logarithms and factoring. 35th Annual Symposium on Foundations of Computer Science. Santa Fe: IEEE. doi:10.1109/SFCS.1994.365700. ISBN 0-8186-6580-7. This paper gives Las Vegas algorithms for finding discrete logarithms and factoring integers on a quantum computer that take a number of steps which is polynomial in the input size, e.g., the number of digits of the integer to be factored. These two problems are generally considered hard on a classical computer and have been used as the basis of several proposed cryptosystems.
  4. ^ Dwarakanath, Nagarjun C.; Galbraith, Steven D. (2014-03-18). «Sampling from discrete Gaussians for lattice-based cryptography on a constrained device». Applicable Algebra in Engineering, Communication and Computing. 25 (3): 159–180. doi:10.1007/s00200-014-0218-3. ISSN 0938-1279. S2CID 13718364.
  5. ^ a b Micciancio, D. (January 1, 2001). «The Shortest Vector in a Lattice is Hard to Approximate to within Some Constant». SIAM Journal on Computing. 30 (6): 2008–2035. CiteSeerX 10.1.1.93.6646. doi:10.1137/S0097539700373039. ISSN 0097-5397.
  6. ^ Schneider, Michael (2011). «Sieving for Shortest Vectors in Ideal Lattices». Cryptology ePrint Archive.
  7. ^ «cr.yp.to: 2014.02.13: A subfield-logarithm attack against ideal lattices». blog.cr.yp.to. Retrieved 2015-07-03.
  8. ^ «What does GCHQ’s «cautionary tale» mean for lattice cryptography?». www.eecs.umich.edu. Archived from the original on 2016-03-17. Retrieved 2016-01-05.
  9. ^ Singh, Vikram (2015). «A Practical Key Exchange for the Internet using Lattice Cryptography». Cryptology ePrint Archive.
  10. ^ Verbauwhede, Ruan de Clercq, Sujoy Sinha Roy, Frederik Vercauteren, Ingrid (2014). «Efficient Software Implementation of Ring-LWE Encryption». Cryptology ePrint Archive.
  11. ^ Ding, Jintai; Xie, Xiang; Lin, Xiaodong (2012-01-01). «A Simple Provably Secure Key Exchange Scheme Based on the Learning with Errors Problem». Cryptology ePrint Archive.
  12. ^ Peikert, Chris (2014-01-01). «Lattice Cryptography for the Internet». Cryptology ePrint Archive.
  13. ^ Zhang, Jiang; Zhang, Zhenfeng; Ding, Jintai; Snook, Michael; Dagdelen, Özgür (2014). «Authenticated Key Exchange from Ideal Lattices». Cryptology ePrint Archive.
  14. ^ Lyubashevsky, Vadim (2011). «Lattice Signatures Without Trapdoors». Cryptology ePrint Archive.
  15. ^ Güneysu, Tim; Lyubashevsky, Vadim; Pöppelmann, Thomas (2012). Prouff, Emmanuel; Schaumont, Patrick (eds.). Practical Lattice-Based Cryptography: A Signature Scheme for Embedded Systems. Lecture Notes in Computer Science. Springer Berlin Heidelberg. pp. 530–547. doi:10.1007/978-3-642-33027-8_31. ISBN 978-3-642-33026-1.
  16. ^ «BLISS Signature Scheme». bliss.di.ens.fr. Retrieved 2015-07-04.
  17. ^ Brakerski, Zvika; Vaikuntanathan, Vinod (2011). Rogaway, Phillip (ed.). Fully Homomorphic Encryption from Ring-LWE and Security for Key Dependent Messages. Lecture Notes in Computer Science. Springer Berlin Heidelberg. pp. 505–524. doi:10.1007/978-3-642-22792-9_29. ISBN 978-3-642-22791-2.

Обучение с ошибками в кольце

  • Обучение с ошибками в кольце (англ. Ring learning with errors, RLWE)— это вычислительная задача, которая была сформулирована как вариант более общей задачи обучения с ошибками (с англ. LWE), с целью использовать преимущество дополнительной алгебраической структуры (т.е. кольца многочленов) из теории решеток, что дало возможность повысить и расширить возможности шифрования тех криптографических приложений, которые ранее основывались на LWE. Задача RLWE стала основой новых криптографических алгоритмов, предназначенных для защиты данных от криптоанализа квантовыми компьютерами, а также важным применением для построения схем гомоморфного шифрования. По причине того, что предполагаемая трудность решения задачи RLWE очень высока даже на квантовом компьютере, криптография на ее основе может стать основополагающей криптографией с открытым ключом в будущем, так же как и задачи целочисленной факторизации и дискретного логарифмирования послужили основой для криптографии с открытым ключом в начале 1980-х годов. Следует отметить, что RLWE может быть аппроксимирована задачей нахождения кратчайшего вектора на идеальных решетках, которые представляют собой математически структурированные решетки, соответствующие идеалам в кольце.

Источник: Википедия

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

Обучение с ошибками (англ. Learning with errors) — это концепция машинного обучения, суть которой заключается в том, что в простые вычислительные задачи (например, системы линейных уравнений) намеренно вносится ошибка, делая их решение известными методами неосуществимым за приемлемое время.

Криптосистема Уильямса (Williams System) — система шифрования с открытым ключом, созданная Хью Коуи Уильямсом (Hugh Cowie Williams) в 1984 году.

Криптосистема Накаша — Штерна (англ. Naccache — Stern cryptosystem)— криптографический алгоритм с открытым ключом, основывающийся на вычислительной сложности задачи дискретного логарифмирования. В отличии от RSA, гомоморфен по сложению и вычитанию, а не по умножению…

Схема шифрования GGH (англ. Goldreich–Goldwasser–Halevi) — асимметричная криптографическая система, основанная на решётках. Также существует схема подписи GGH.

Алгоритм Гельфонда — Шенкса (англ. Baby-step giant-step; также называемый алгоритмом больших и малых шагов) — в теории групп детерминированный алгоритм дискретного логарифмирования в мульпликативной группе кольца вычетов по модулю простого числа. Был предложен советским математиком Александром Гельфондом в 1962 году и Дэниэлем Шенксом в 1972 году.

Постквантовая криптография — часть криптографии, которая остаётся актуальной и при появлении квантовых компьютеров и квантовых атак. Так как по скорости вычисления традиционных криптографических алгоритмов квантовые компьютеры значительно превосходят классические компьютерные архитектуры, современные криптографические системы становятся потенциально уязвимыми к криптографическим атакам. Большинство традиционных криптосистем опирается на проблемы факторизации целых чисел или задачи дискретного логарифмирования…

Разделение секрета (англ. Secret sharing) — термин в криптографии, под которым понимают любой из способов распределения секрета среди группы участников, каждому из которых достаётся своя некая доля. Секрет может воссоздать только коалиция участников из первоначальной группы, причём входить в коалицию должно не менее некоторого изначально известного их числа.

Односторонняя функция — математическая функция, которая легко вычисляется для любого входного значения, но трудно найти аргумент по заданному значению функции. Здесь «легко» и «трудно» должны пониматься с точки зрения теории сложности вычислений. Разрыв между сложностью прямого и обратного преобразований определяет криптографическую эффективность односторонней функции. Неинъективность функции не является достаточным условием для того, чтобы называть её односторонней. Односторонние функции могут называться…

Некоммутативная криптография — область криптологии, в которой шифровальные примитивы, методы и системы основаны на некоммутативных алгебраических структурах.

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

Ранцевая криптосистема Меркла-Хеллмана, основанная на «задаче о рюкзаке», была разработана Ральфом Мерклем и Мартином Хеллманом в 1978 году. Это была одна из первых криптосистем с открытым ключом, но она оказалась криптографически нестойкой и, как следствие, не приобрела популярности.

Вычисления с оракулом — вычисление с помощью машины Тьюринга, дополненной оракулом с неизвестным внутренним устройством.

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

Сдвиговая атака (англ. slide attack) – криптографическая атака, являющаяся, в общем случае, атакой на основе подобранного открытого текста, позволяющая проводить криптоанализ блоковых многораундовых шифров независимо от количества используемых раундов. Предложена Алексом Бирюковым и Дэвидом Вагнером в 1999 году.

Криптосистема Нидеррайтера — криптосистема с открытыми ключами, основанная на теории алгебраического кодирования, разработанная в 1986 году Харальдом Нидеррайтером. В отличие от криптосистемы McEliece, в криптосистеме Нидеррайтера используется проверочная матрица кода. Криптосистема Нидеррайтера позволяет создавать цифровые подписи и является кандидатом для постквантовой криптографии, поскольку устойчива к атаке с использованием алгоритма Шора.

Схема Эль-Гамаля (Elgamal) — криптосистема с открытым ключом, основанная на трудности вычисления дискретных логарифмов в конечном поле. Криптосистема включает в себя алгоритм шифрования и алгоритм цифровой подписи. Схема Эль-Гамаля лежит в основе бывших стандартов электронной цифровой подписи в США (DSA) и России (ГОСТ Р 34.10-94).

Факторизация целых чисел для больших чисел является задачей большой сложности. Не существует никакого известного способа, чтобы решить эту задачу быстро. Её сложность лежит в основе некоторых алгоритмов шифрования с открытым ключом, таких как RSA.

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

Криптосистема Гольдвассер — Микали (GM) — криптографическая система с открытым ключом, разработанная Шафи Гольдвассер и Сильвио Микали в 1982 году. GM является первой схемой вероятностного шифрования с открытым ключом, доказуемо стойкая при стандартных криптографических предположениях. Однако, криптосистема GM является неэффективной, так как шифртекст может быть в сотни раз длиннее, чем шифруемое сообщение. Для доказательства свойств стойкости криптосистемы Голдвассер и Микали ввели широко используемое…

Алгоритм Берлекэмпа — Мэсси — алгоритм поиска кратчайшего регистра сдвига с линейной обратной связью для поданной на вход бинарной последовательности. Также алгоритм позволяет найти минимальный многочлен поданной на вход линейной рекуррентной последовательности над произвольным полем.

Универса́льное хеши́рование (англ. Universal hashing) — это вид хеширования, при котором используется не одна конкретная хеш-функция, а происходит выбор из заданного семейства по случайному алгоритму. Такой подход обеспечивает равномерное хеширование: для очередного ключа вероятности помещения его в любую ячейку совпадают. Известно несколько семейств универсальных хеш-функций, которые имеют многочисленные применения в информатике, в частности в хеш-таблицах, вероятностных алгоритмах и криптографии…

Задача о рюкзаке (или Задача о ранце) в криптографии (англ. Knapsack problem) — это задача, на основе которой американские криптографы Ральф Меркл и Мартин Хеллман разработали первый алгоритм шифрования с открытым ключом. Он носит название криптосистема Меркла-Хеллмана. Для шифрования сообщений использовалось решение задачи о рюкзаке, как известно, являющейся NP-сложной. Потому, как считалось, она могла обеспечивать криптостойкость системы. На данный момент создано множество рюкзачных криптосистем…

Интегральный криптоанализ — метод криптоанализа, объединяющий ряд атак на симметричные блочные криптографические алгоритмы. В отличие от дифференциального криптоанализа, который рассматривает воздействие алгоритма на пару открытых текстов, интегральный криптоанализ подразумевает исследование отображения в шифротекст множества открытых текстов. Впервые применен в 1997 Ларсом Кнудсеном.

Лемма разветвления (англ. Forking lemma) — лемма в области криптографических исследований.

Разделяй и властвуй (англ. divide and conquer) в информатике — важная парадигма разработки алгоритмов, заключающаяся в рекурсивном разбиении решаемой задачи на две или более подзадачи того же типа, но меньшего размера, и комбинировании их решений для получения ответа к исходной задаче; разбиения выполняются до тех пор, пока все подзадачи не окажутся элементарными.

Полностью гомоморфное шифрование — шифрование, позволяющее для данного шифротекста π1,…,πt любому (не только держателю ключа) получить шифротекст любой желаемой функции f(π1,…,πt), до тех пор, пока данная функция может быть эффективно вычислена.

Криптосистема Джентри (от фамилии создателя Крейга Джентри) — первая возможная конструкция для полностью гомоморфной криптосистемы, основанная на криптографии на решетках. Впервые была предложена Крейгом Джентри в 2009 году и являлась темой его докторской диссертации. Схема Джентри поддерживает операции сложения и умножения над шифротекстом, что позволяет построить кольца для реализации любых произвольных вычислений. Впоследствии имела множество доработок и модификаций с целью улучшения её производительности…

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

Вычисли́тельная сло́жность — понятие в информатике и теории алгоритмов, обозначающее функцию зависимости объёма работы, которая выполняется некоторым алгоритмом, от размера входных данных. Раздел, изучающий вычислительную сложность, называется теорией сложности вычислений. Объём работы обычно измеряется абстрактными понятиями времени и пространства, называемыми вычислительными ресурсами. Время определяется количеством элементарных шагов, необходимых для решения задачи, тогда как пространство определяется…

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

В теории вычислительной сложности сложность алгоритма в среднем — это количество неких вычислительных ресурсов (обычно — время), требуемое для работы алгоритма, усреднённое по всем возможным входным данным. Понятие часто противопоставляется сложности в худшем случае, где рассматривается максимальная сложность алгоритма по всем входным данным.

Быстрая цифровая подпись – вариант цифровой подписи, использующий алгоритм с гораздо меньшим (в десятки раз) числом вычислений модульной арифметики по сравнению с традиционными схемами ЭЦП. Схема быстрой электронной подписи, как и обычная, включает в себя алгоритм генерации ключевых пар пользователя, функцию вычисления подписи и функцию проверки подписи.

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

Техники спектральной кластеризации используют спектр (собственные значения) матрицы сходства данных для осуществления понижения размерности перед кластеризацией в пространствах меньших размерностей. Матрица сходства подаётся в качестве входа и состоит из количественных оценок относительной схожести каждой пары точек в данных.

Подробнее: Спектральная кластеризация

Компромисс времени и памяти (англ. Space-time trade-off, «выбор оптимального соотношения „место-время“» (англ. space-time trade-off), или, иначе, «выбор оптимального соотношения „время-память“» (англ. time-memory trade-off)) — компромиссный подход к решению ряда задач в информатике, при котором используется обратное соотношение требуемого объёма памяти и скорости выполнения программы: время вычислений может быть увеличено за счёт уменьшения используемой памяти или, наоборот, снижено за счёт увеличения…

Семплирование по Гиббсу — алгоритм для генерации выборки совместного распределения множества случайных величин. Он используется для оценки совместного распределения и для вычисления интегралов методом Монте-Карло. Этот алгоритм является частным случаем алгоритма Метрополиса-Гастингса и назван в честь физика Джозайи Гиббса.

Неразличимость шифротекста — это свойство многих систем шифрования. Интуитивно понятно, что если система обладает свойством неразличимости, то злоумышленник не сможет отличить пары шифротекстов, основываясь на открытых текстах, которые они шифруют. Свойство неразличимости для атак на основе подобранного открытого текста рассматривается как основное требование для доказуемо наиболее безопасных криптосистем с открытым ключом, хотя некоторые системы шифрования также обладают свойством неразличимости…

Полуопределённое программирование (en: Semidefinite programming, SDP) — это подраздел выпуклого программирования, которое занимается оптимизацией линейной целевой функции (целевая функция — это заданная пользователем функция, значение которой пользователь хочет минимизировать или максимизировать) на пересечении конусов положительно полуопределённых матриц с аффинным пространством.

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

Алгоритм Блюма — Микали (англ. Blum-Micali algorithm) — это криптографически стойкий алогоритм генерации псевдослучайных последовательностей, с использованием зерна (Random seed). Идеи алгоритма были изложены Блюмом и Микали в 1984 году. Алгоритм был разработан на основе алгоритма генератора Шамира, предложенного Ади Шамиром годом ранее. Алгоритм отличается от предшественника более сильными требованиями к сложности вычисления выходной последовательности. В отличие от генератора Шамира выходом данного…

Полный перебор (или метод «грубой силы», англ. brute force) — метод решения математических задач. Относится к классу методов поиска решения исчерпыванием всевозможных вариантов. Сложность полного перебора зависит от количества всех возможных решений задачи. Если пространство решений очень велико, то полный перебор может не дать результатов в течение нескольких лет или даже столетий.

Основная теорема о рекуррентных соотношениях (англ. Master theorem) используется в анализе алгоритмов для получения асимптотической оценки рекурсивных соотношений (рекуррентных уравнений), часто возникающих при анализе алгоритмов типа «разделяй и властвуй» (divide and conquer), например, при оценке времени их выполнения. Теорема была популяризована в книге Алгоритмы: построение и анализ (Томас Кормен, Чарльз Лейзерстон, Рональд Ривест, Клиффорд Штайн), в которой она была введена и доказана.

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

Детерминированный алгоритм — алгоритмический процесс, который выдаёт уникальный и предопределённый результат для заданных входных данных.

Поиск с возвратом, бэктрекинг (англ. backtracking) — общий метод нахождения решений задачи, в которой требуется полный перебор всех возможных вариантов в некотором множестве М. Как правило позволяет решать задачи, в которых ставятся вопросы типа: «Перечислите все возможные варианты …», «Сколько существует способов …», «Есть ли способ …», «Существует ли объект…» и т. п.

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

RLWE более правильно называть обучением с ошибками над кольцами и представляет собой просто большую проблему обучения с ошибками (LWE), специализированную для полиномиальных колец над конечными полями. Из-за предполагаемой сложности решения проблемы RLWE даже на квантовом компьютере криптография на основе RLWE может сформировать фундаментальную основу для криптографии с открытым ключом в будущем, так же как проблема целочисленной факторизации и дискретного логарифмирования послужила основой для криптографии с открытым ключом. с начала 1980-х гг. Важной особенностью криптографии, основанной на проблеме кольцевого обучения с ошибками, является тот факт, что решение проблемы RLWE может быть использовано для решения NP-жесткой задачи кратчайшего вектора (SVP) в решетке (сокращение за полиномиальное время от SVP проблема к проблеме RLWE).

Фон

Безопасность современной криптографии, в частности криптографии с открытым ключом , основана на предполагаемой неразрешимости решения определенных вычислительных проблем, если размер проблемы достаточно велик, а экземпляр решаемой проблемы выбирается случайным образом. Классическим примером, который используется с 1970-х годов, является проблема целочисленной факторизации . Считается, что с вычислительной точки зрения сложно разложить на множители произведение двух простых чисел, если эти простые числа достаточно велики и выбраны случайным образом. По состоянию на 2015 год исследования привели к факторизации произведения двух 384-битных простых чисел, но не произведения двух 512-битных простых чисел. Целочисленная факторизация составляет основу широко используемого криптографического алгоритма RSA .

Задача кольцевого обучения с ошибками (RLWE) построена на арифметике многочленов с коэффициентами из конечного поля . Типичный полином выражается как:
{textstyle a(x)}

{displaystyle a(x)=a_{0}+a_{1}x+a_{2}x^{2}+ldots +a_{n-2}x^{n-2}+a_{n-1}x^{n-1}}

Многочлены можно складывать и умножать обычным способом. В контексте RLWE коэффициенты многочленов и все операции с этими коэффициентами будут выполняться в конечном поле, обычно поле для простого целого числа . Набор многочленов над конечным полем с операциями сложения и умножения образует бесконечное кольцо многочленов ( ). Контекст RLWE работает с конечным кольцом частных этого бесконечного кольца. Фактор-кольцо обычно представляет собой конечное фактор-кольцо (фактор-кольцо), образованное сокращением всех многочленов по модулю неприводимого многочлена . Это конечное кольцо частных можно записать так, как будто пишут многие авторы .
{textstyle mathbf {Z} /qmathbf {Z} =mathbf {F} _{q}}{textstyle q}{textstyle mathbf {F} _{q}[x]}{textstyle mathbf {F} _{q}[x]} {textstyle Phi (x)}{displaystyle mathbf {F} _{q}[x]/Phi (x)}{displaystyle mathbf {Z} _{q}[x]/Phi (x)}

Если степень полинома равна , подкольцо становится кольцом многочленов степени меньше, чем по модулю, с коэффициентами из . Значения , вместе с полиномом частично определить математический контекст проблемы RLWE.
Phi (x){textstyle n}nPhi (x)F_q{textstyle n}{textstyle q}Phi (x)

Другая концепция, необходимая для задачи RLWE, — это идея «малых» многочленов относительно некоторой нормы. Типичная норма, используемая в задаче RLWE, известна как норма бесконечности (также называемая равномерной нормой ). Бесконечная норма многочлена — это просто наибольший коэффициент многочлена, когда эти коэффициенты рассматриваются как целые числа. Следовательно, утверждает, что бесконечная норма многочлена равна . Таким образом, это наибольший коэффициент .
||a(x)||_{infty }=ba(x)bba(x)

Последняя концепция, необходимая для понимания проблемы RLWE, — это генерация случайных полиномов от и генерация «малых» полиномов. Случайный полином легко сгенерировать путем простой случайной выборки коэффициентов полинома из , где обычно представлен как набор .
{displaystyle mathbf {F} _{q}[x]/Phi (x)}nmathbf{F}_qmathbf{F}_q{displaystyle {-(q-1)/2,...,-1,0,1,...,(q-1)/2}}

Случайная генерация «малого» полинома выполняется путем генерации коэффициентов полинома таким способом, который либо гарантирует, либо делает очень вероятные малые коэффициенты. Это можно сделать двумя распространенными способами:
mathbf{F}_q

  1. Использование равномерной выборки — коэффициенты малого полинома равномерно выбираются из набора малых коэффициентов. Позвольте быть целым числом, которое намного меньше, чем . Если случайным образом выбрать коэффициенты из набора: многочлен будет мал по отношению к границе ( ).{textstyle b}{textstyle q}{textstyle {-b,-b+1,-b+2,ldots ,-2,-1,0,1,2,ldots ,b-2,b-1,b}}{textstyle b}
  2. Использование дискретной гауссовой выборки — для нечетного значения коэффициенты полинома выбираются случайным образом путем выборки из набора в соответствии с дискретным гауссовым распределением со средним значением и параметром распределения . Ссылки подробно описывают, как это можно сделать. Это сложнее, чем единообразная выборка, но позволяет подтвердить безопасность алгоритма. В статье Двараканата и Гэлбрейта «Выборка из дискретных гауссианов для криптографии на основе решеток на устройстве с ограничениями» представлен обзор этой проблемы.{textstyle q}{textstyle {-(q-1)/2,ldots ,(q-1)/2}}{displaystyle 0}{textstyle sigma }

Проблема RLWE

Проблема RLWE может быть сформулирована двумя разными способами: «поисковая» версия и «решающая» версия. Оба начинаются с одной и той же конструкции. Позволять

Версия поиска влечет за собой поиск неизвестного многочлена по списку пар многочленов .
s(x)(a_{i}(x),b_{i}(x))

Вариант решения задачи можно сформулировать следующим образом. Учитывая список пар полиномов , определите, были ли полиномы построены как или были сгенерированы случайным образом с коэффициентами из всех .
(a_{i}(x),b_{i}(x))b_{i}(x)b_{i}(x)=(a_{i}(x)cdot s(x))+e_{i}(x){displaystyle mathbf {F} _{q}[x]/Phi (x)}mathbf{F}_q

Сложность этой задачи параметризуется выбором факторного полинома ( ), его степени ( ), поля ( ) и границы малости ( ). Во многих основанных на RLWE алгоритмах с открытым ключом закрытый ключ будет представлять собой пару небольших многочленов и . Соответствующий открытый ключ будет парой многочленов , выбранных случайным образом , и многочленом . Учитывая и , восстановление полинома должно быть вычислительно невыполнимым .
Phi (x)nmathbf{F}_qbs(x)e(x)a(x){displaystyle mathbf {F} _{q}[x]/Phi (x)}t(x)=(a(x)cdot s(x))+e(x)a(x)t(x)s(x)

Снижение безопасности

В случаях, когда многочлен является циклотомическим многочленом , сложность решения поисковой версии задачи RLWE эквивалентна нахождению короткого вектора (но не обязательно кратчайшего вектора) в идеальной решетке, сформированной из элементов, представленных в виде целочисленных векторов. Эта проблема широко известна как проблема приближенного кратчайшего вектора (α-SVP), и это проблема поиска вектора короче, чем α, умноженный на кратчайший вектор. Авторы доказательства этой эквивалентности пишут:
Phi (x){displaystyle mathbf {Z} [x]/Phi (x)}

«… мы даем квантовую редукцию от приближенного SVP (в худшем случае) на идеальных решетках в поисковую версию ring-LWE, где цель — восстановить секрет (с большой вероятностью, для любого ) из произвольного множества шумные продукты «.mathbf {R} {displaystyle sin mathbf {R} _{q}}s

В этой цитате кольцо есть, а кольцо есть .
mathbf {R} {displaystyle mathbf {Z} [x]/Phi (x)}{displaystyle mathbf {R} _{q}}{displaystyle mathbf {F} _{q}[x]/Phi (x)}

Известно, что α-SVP в регулярных решетках является NP-трудным из-за работы Даниэле Миччансио в 2001 году, хотя и не для значений α, необходимых для сведения к общей проблеме обучения с ошибками. Однако пока нет доказательства того, что сложность α-SVP для идеальных решеток эквивалентна средней сложности α-SVP. Скорее у нас есть доказательство того, что если есть какие- либо экземпляры α-SVP, которые трудно решить в идеальных решетках, то проблема RLWE будет сложной в случайных случаях.

Что касается сложности задачи кратчайшего вектора в идеальных решетках, исследователь Майкл Шнайдер пишет: «Пока нет алгоритма SVP, использующего особую структуру идеальных решеток. Широко распространено мнение, что решение SVP (и всех других задач решетки) в идеале решетки такие же жесткие, как и в обычных решетках «. Сложность этих задач на регулярных решетках доказуемо NP-трудна . Однако есть меньшинство исследователей, которые не верят, что идеальные решетки обладают теми же свойствами безопасности, что и обычные решетки.

Пайкерт считает, что эти эквиваленты безопасности делают проблему RLWE хорошей основой для будущей криптографии. Он пишет: «Существует математическое доказательство того, что единственный способ взломать криптосистему (в рамках некоторой формальной модели атаки) на ее случайных экземплярах — это решить основную проблему решетки в худшем случае» (курсив в оригинале).

RLWE Криптография

Основное преимущество криптографии на основе RLWE по сравнению с исходной криптографией на основе обучения с ошибками (LWE) заключается в размере открытого и закрытого ключей. Ключи RLWE — это примерно квадратный корень ключей в LWE. Для 128- битной защиты криптографический алгоритм RLWE будет использовать открытые ключи длиной около 7000 бит. Соответствующая схема LWE потребует открытых ключей размером 49 миллионов бит для того же уровня безопасности. С другой стороны, ключи RLWE больше, чем размеры ключей для используемых в настоящее время алгоритмов открытых ключей, таких как RSA и Elliptic Curve Diffie-Hellman, которые требуют размеров открытого ключа 3072 бит и 256 бит, соответственно, для достижения 128-битного уровня безопасности. . Однако с вычислительной точки зрения алгоритмы RLWE оказались равными или лучше существующих систем с открытым ключом.

Существуют три группы криптографических алгоритмов RLWE:

Кольцевое обучение с ошибками обмена ключами (RLWE-KEX)

Фундаментальная идея использования LWE и Ring LWE для обмена ключами была предложена и подана в Университет Цинциннати в 2011 году Джинтаем Дингом. Основная идея исходит из ассоциативности умножения матриц, а ошибки используются для обеспечения безопасности. Статья появилась в 2012 году после подачи предварительной заявки на патент в 2012 году.

В 2014 году Пайкерт представил ключевую транспортную схему, следуя той же базовой идее Динга, где также используется новая идея отправки дополнительного 1-битного сигнала для округления в конструкции Динга. RLWE-версия классического варианта MQV обмена ключами Диффи-Хеллмана была позже опубликована Zhang et al. Безопасность обоих обменов ключами напрямую связана с проблемой поиска приближенных коротких векторов в идеальной решетке.

Кольцевое обучение с сигнатурой ошибок (RLWE-SIG)

RLWE-версия классического протокола идентификации Фейге – Фиат – Шамира была создана и преобразована в цифровую подпись в 2011 году Любашевским. Детали этой подписи были расширены в 2012 году Гунесю, Любашевским и Попплеманом в 2012 году и опубликованы в их статье «Практическая криптография на основе решеток — схема подписи для встроенных систем». Эти документы заложили основу для множества недавних алгоритмов подписи, некоторые из которых основаны непосредственно на проблеме кольцевого обучения с ошибками, а некоторые не связаны с теми же сложными проблемами RLWE.

Кольцевое обучение с ошибками гомоморфного шифрования (RLWE-HOM)

Цель гомоморфного шифрования — позволить вычислениям над конфиденциальными данными выполняться на вычислительных устройствах, которым нельзя доверять данные. Этим вычислительным устройствам разрешено обрабатывать зашифрованный текст, который выводится в результате гомоморфного шифрования. В 2011 году Бракерский и Вайкунтанатан опубликовали «Полностью гомоморфное шифрование с помощью Ring-LWE и безопасность для ключевых зависимых сообщений», в котором построена гомоморфная схема шифрования непосредственно на проблеме RLWE.

использованная литература

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

RLWE более правильно называть обучением с ошибками по кольцам и представляет собой просто большую проблему обучения с ошибками (LWE), специализированную для полиномиальных колец над конечными полями. [1] Из-за предполагаемой сложности решения проблемы RLWE даже на квантовом компьютере, криптография на основе RLWE может сформировать фундаментальную основу для криптографии с открытым ключом в будущем, так же как проблема целочисленной факторизации и дискретного логарифмирования послужила основой для криптография с открытым ключом с начала 1980-х годов. [2] Важной особенностью криптографии, основанной на проблеме кольцевого обучения с ошибками, является тот факт, что решение проблемы RLWE можно использовать для решения NP-жесткой задачи кратчайшего вектора (SVP) в решетке (сокращение за полиномиальное время от SVP проблема к проблеме RLWE была представлена [1] ).

Безопасность современной криптографии, в частности криптографии с открытым ключом , основана на предполагаемой неразрешимости решения определенных вычислительных проблем, если размер проблемы достаточно велик, а экземпляр решаемой проблемы выбирается случайным образом. Классическим примером, который используется с 1970-х годов, является проблема целочисленной факторизации . Считается, что с вычислительной точки зрения трудно разложить на множители произведение двух простых чисел, если эти простые числа достаточно велики и выбраны случайным образом. [3] По состоянию на 2015 год исследования привели к факторизации произведения двух 384-битных простых чисел, но не произведения двух 512-битных простых чисел. Целочисленная факторизация составляет основу широко используемого RSA. криптографический алгоритм.

Задача кольцевого обучения с ошибками (RLWE) построена на арифметике многочленов с коэффициентами из конечного поля . [1] Типичный многочлен выражается как:


Обучение с ошибками в кольце (англ. Ring learning with errors, RLWE)— это вычислительная задача, которая была сформулирована как вариант более общей задачи обучения с ошибками (с англ. LWE), с целью использовать преимущество дополнительной алгебраической структуры (т.е. кольца многочленов) из теории решеток, что дало возможность повысить и расширить возможности шифрования тех криптографических приложений, которые ранее основывались на LWE. Задача RLWE стала основой новых криптографических алгоритмов, предназначенных для защиты данных от криптоанализа квантовыми компьютерами, а также важным применением для построения схем гомоморфного шифрования. По причине того, что предполагаемая трудность решения задачи RLWE очень высока даже на квантовом компьютере, криптография на ее основе может стать основополагающей криптографией с открытым ключом в будущем, так же как и задачи целочисленной факторизации и дискретного логарифмирования послужили основой для криптографии с открытым ключом в начале 1980-х годов. Следует отметить, что RLWE может быть аппроксимирована задачей нахождения кратчайшего вектора на идеальных решетках, которые представляют собой математически структурированные решетки, соответствующие идеалам в кольце.

Источник: Wikipedia.org

Понравилась статья? Поделить с друзьями:
  • Обучение прыжка в длину с места ошибки
  • Обучение основанное на коррекции ошибок
  • Обучение нейросети методом обратного распространения ошибки
  • Обучение методом проб и ошибок это
  • Обучение методом проб и ошибок предполагает