Користувач:Anna Chopuk/Чернетка

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Задачі теорії решіток — це клас задач оптимізації на ґратах (тобто дискретних адитивних підгрупах, заданих на множині ) .Гіпотетична погана можливість розв'язання таких задач є центральним місцем для побудови стійких криптосистем на ґратах. Для додатків в таких криптосистемах зазвичай розглядаються решітки на векторних просторах (часто ) або вільних модулях (часто ).

Для всіх задач нижче припустимо, що нам дано (крім інших більш конкретних вхідних даних) базис для векторного простору V і норма N. Для норм зазвичай розглядається L2. Однак інші норми, такі як Lp), також розглядаються і з'являються в різних результатах . Нижче в статті означає довжину найкоротшого вектора в решітці L, тобто :

Задачі знаходження найкоротшого вектора (ЗНВ)[ред. | ред. код]

Ілюстрація задачі знаходження найкоротшого вектора (основні(базові) вектори — синій колір, коротший вектор — червоний колір).

У ЗНВ (англ. Shortest vector problem, SVP), для решітки L дані базис векторного простору V і норма N (часто L2) і потрібно знайти ненульовий вектор мінімальної довжини в V за нормою N в решітці L. Іншими словами, виходом алгоритму повинен бути ненульовий вектор v, такий, що  .

В -наближеній версії ЗНВγ потрібно найти ненульовий вектор решітки довжини, що не перевищує .

Труднощі[ред. | ред. код]

Тільки точна версія завдання, як відомо, є NP-важкою для рандомізованого відомості [1] [2].

Для контрасту, відомо, що еквівалентна задача для рівномірних норм, є NP-важкою [3].


Алгоритми для евклідових норм[ред. | ред. код]

Для вирішення точної версії ЗНВ для евклідової норми відомі кілька різних підходів, які можна розбити на два класи — алгоритми, що вимагають суперекспоненціального часу () і пам'яті, і алгоритми, що вимагають експоненціального часу і пам'яті (), від розмірності решітки(). У першому класі алгоритмів найбільш значимі алгоритми перерахування решітки [4] [5] [6] і алгоритми скорочення випадкових вибірок [7] [8], в той час як другий клас включає ґраткову просіювання [9] [10] [11], обчислення осередків Вороного на решітці [12] [13] і дискретні гаусові розподілу [14]. Відкритою проблемою є, чи існують алгоритми, вирішальні точну ЗНВ за звичайне експоненціальне час () і вимагають пам'яті, полІномІально залежить від розмірності решітки [15].


Для вирішення -наближеною версії ЗНВγ для для евклідової норми кращий відомий підхід базується на використанні редукції базису решітки. Для великих алгоритм Ленстра — Ленстра — Ловаш редукції базису решітки може знайти рішення за полІномІальний час від розмірності решітки. Для малих значень зазвичай використовується блоковий алгоритм Коркіна — Золотарьова (БКЗ, англ. Block Korkine-Zolotarev algorithm, BKZ)[16][17][18], де вхід алгоритму (розмір блоку ) визначає часову складність і якість виходу — для великих аппроксимаціонних коефіцієнтам достатній малий розмір блоку і алгоритм завершується швидко. Для малих вимагається більший , щоб знайти досить короткі вектора решітки, і алгоритм працює довше. БКЗ-алгоритм всередині використовує алгоритм точного ЗНВ як підпрограми (працює на решітці розмірності, не перевершує ), і загальна складність тісно пов'язана з вартістю цих викликів ЗНВ в розмірності .


GapSVP[ред. | ред. код]

Завдання полягає в розрізненні між варіантами ЗНВ, в яких відповідь не перевищує 1 або більше може бути фіксованою функцією від розмірності решітки . Якщо заданий базис решітки, алгоритм повинен вирішити, буде або . Подібно до інших завданням з передумовою, алгоритму дозволені помилки у всіх інших випадках.

Іншою версією завдання є для деяких функцій . Входом алгоритму є базис і число . Алгоритм забезпечує, щоб всі вектора в ортогоналізації Грама — Шмідта мали довжину, не меншу 1, щоб і щоб , де  — розмірність. Алгоритм повинен прийняти, якщо і відкинути, якщо . Для великих () завдання еквівалентна, оскільки [19] препроцесорну крок за допомогою алгоритма ЛЛЛ робить друга умова (а отже, ) зайвим.


Завдання знаходження найближчого вектору (ЗБВ)[ред. | ред. код]

Ілюстрація завдання знаходження найближчого вектору (базисні вектору показані синім кольором, найближчий вектор показаний червоним, зовнішній вектор показаний зеленим).

У ЗБВ (англ. Closest vector problem, CVP) для ґрат L дані бaзис векторного простору V і метрика M (часто L2), а також вектор v в V, але не обов'язково в L. Вимагається знайти вектор в L, найбільш близький до v (у міру M). У -приближеній версії ЗБВγ, треба знайти вектор ґрат на відстані, що не перевершує .

Зв'язок із ЗНВ[ред. | ред. код]

Завдання знаходження найближчого вектору є узагальненням завдання знаходження найкоротшого вектору. Легко показати, що якщо заданий провісник для ЗБВγ (визначений нижче)можна вирішити ЗНВγ шляхом деяких запитів провісникові[20]. Природний метод пошуку найкоротшого вектору шляхом запитів до провісника ЗБВγ, щоб знайти найближчий вектор, не працює, оскільки 0 є вектором ґрат і алгоритм, потенційно, може повернути 0.

Зведення від ЗНВγ до ЗБВγ наступне: Припустимо, що входом завдання ЗНВγ являється базис ґрат . Розглянемо базис буде вектором, який повернув алгоритм ЗБВ. Стверджується, що найкоротший вектор в множині являється найкоротшим вектором в даній решітці.

Труднощі[ред. | ред. код]

Голдрайх, Миссиансио, Сафра і Seifert показали, що з будь-якої складності ЗНВ витікає така ж складність для ЗБВ[21]. Використовуючи засоби Арора, Babai, що перевіряється, Stern, Sweedyk показали, що ЗБВ важка для апроксимації до множника , якщо тільки не [22]. Динур, Киндлер, Сафра посилили це, вказавши NP- трудність з для [23].

Сферичне декодування[ред. | ред. код]

Алгоритм для ЗБВ, особливо варіант Фінці і Поста[24] використовується, наприклад, для виявлення даних у безпровідних системах зв'язку з багатоканальним входом/багатоканальним виходом (MIMO) (для кодованих і розкодованих сигналів) [25][26]. У цьому контексті він називається сферичним декодуванням[27].

Алгоритм був застосований в області цілочисельного дозволу неоднозначності фази такою, що несе GNSS (GPS)[28]. У цій області це називається LAMBDA- методом.

GapSVP[ред. | ред. код]

Це завдання подібне до завдання GapSVP. Для , входом є базис ґрат і вектор , а алгоритм повинен відповісти, яка з умов виконується * існує вектор ґрат, такий, що відстань між ним і не перевершує 1. * будь-який вектор ґрат знаходиться від на відстані, більшому .

Відомі результати[ред. | ред. код]

Завдання тривіально міститься в класі NP для будь-якого коефіцієнта апроксимації.

Клаус Шнорр[en] в 1987 показав, що алгоритми з детермінованим поліноміальним часом можуть вирішити завдання [29].Айтаі, Кумар, Сивакумар показали, що імовірнісні алгоритми можуть отримати злегка більше кращий коефіцієнт апроксимації [30].


У 1993 Банашчик показав, що міститься в [31]. У 2000 Голдрайх і Голдвассер показали, що поміщає завдання в класи як NP, так і coAM[32]. У 2005 Ааронов і Реджев показали, що для деякої константи завдання з входить в [33].

Завдання про найкоротші незалежні вектори[ред. | ред. код]

Якщо дані ґрати L розмірності n, алгоритм повинен видати n лінійно незалежних векторів , таких, що , де права частина складається з усіх базисів ґрати.

У -приближенній версії, якщо дані ґрати L розмірності n, алгоритм знаходить n лінійно незалежних векторів довжини , де являється -м подальшим мінімумом .

Декодування з обмеженою відстанню[ред. | ред. код]

Це завдання подібне ЗБВ. Якщо даний вектор, такий, що його відстань від ґрат не перевершує , алгоритм повинен видати найближчий вектор ґрат.

Завдання покриття ґрат радіусами[ред. | ред. код]

Якщо даний базис для ґрат, алгоритм повинен знайти найбільшу відстань (чи, в деяких версіях, його апроксимацію) від будь-якого вектору до ґрат.

Завдання пошуку найкоротшого базису[ред. | ред. код]

Багато завдань стають простіші, якщо вхідний базис складається з коротких векторів. Алгоритм, який вирішує задачу пошуку найкоротшого базису (ПКБ), повинен по заданому базису ґрат дати еквівалентний базис , такий, що довжина щонайдовшого вектору в настільки коротка, наскільки можливо.

Апроксимована версія завдання ПКБγ полягає в пошуку базису, щонайдовший вектор якого не перевершує по довжині в раз щонайдовшого вектору в найкоротшому базисі.

Використання в криптографії[ред. | ред. код]

Трудність середнього випадку завдань утворює базис для доказу стійкості більшості криптографічних схем. Проте експериментальні дані наштовхують на припущення, що для більшості NP- важких завдань ця властивість відсутня — вони лише важкі у гіршому разі. Для багатьох завдань теорії ґрат припустило або доведено, що вони важкі в середньому, що робить їх привабливими для криптографічних схем. Проте трудність у гіршому разі деяких завдань теорії ґрат використовується для створення схем стійкої криптографії. Використання трудності у гіршому разі в таких схемах поміщає їх в клас дуже небагатьох схем, які, з великою часткою вірогідності, стійкі навіть для квантових комп'ютерів.

Наведені вище завдання теорії ґрат легко вирішуються, якщо даний «хороший» базис. Мету алгоритмів редукції базису по цьому базису ґрат видати новий базис, що полягає їх відносно коротких майже ортогональних векторів. Алгоритм Ленстри — Ленстри — Ловаша редукції базису ґрат був раннім ефективним алгоритмом для цього завдання, який може видати зредукований базис ґрат за поліноміальний час [34] Цей алгоритм і його подальші поліпшення були використані для злому деяких криптографічних схем, що сформувало його статус як дуже важливий засіб в криптографії. Успіх ЛЛЛ на експериментальних даних привів до віри, що редукція базису ґрат на практиці може бути простим завданням. Проте ця віра була зруйнована, коли у кінці 1990s-х були отримані нові результати про трудність завдань теорії ґрат, починаючи з результатівАйтаі[35]. У своїй засадничій роботіАйтаі показав, що ЗНВ був NP- важким і виявив деякі зв'язки між складністю у гіршому разі і складністю в середньому деяких завдань теорії ґрат[36]. Грунтуючись на цих результатах, Айтаі і Дворк створили криптосистему з відкритим ключем, секретність якої може бути доведена, використовуючи лише гірший випадок трудності певної версії ЗНВ[37], що було першим результатом по створенню захищених систем з використанням трудності у гіршому разі[38].

См також[ред. | ред. код]

Примітки[ред. | ред. код]

Література[ред. | ред. код]

  • Subhash Khot. Hardness of approximating the shortest vector problem in lattices // J. ACM. — 2005. — Т. 52, вип. 5. — DOI:10.1145/1089023.1089027.
  • Chris Peikert. Public - key cryptosystems from the worst - case shortest vector problem: extended abstract // Proceedings of the 41st annual ACM symposium on Theory of Computing. — Bethesda, MD, USA : ACM, 2009.
  • Daniele Micciancio, Shafi Goldwasser. Complexity of Lattice Problems : A Cryptographic Perspective. — 2002. — Т. 671. — (Kluwer International Series in Engineering and Computer Science) — ISBN 0792376889.
  • Daniele Micciancio, Shafi Goldwasser. Complexity of Lattice Problems : A Cryptographic Perspective. — Springer US, 2011. — (The Springer International Series in Engineering and Computer Science) — ISBN 9781461508984.
  • Goldreich O., Micciancio D., Safra S., Seifert J. - p. Approximating shortest lattice vectors is not harder than approximating closest lattice vectors // Inf. Process. Lett.. — 1999. — Т. 71, вип. 2. — DOI:10.1016/S0020 - 0190 (99) 00083-6.
  • Oded Goldreich, Shafi Goldwasser. On the limits of non - approximability of lattice problems // Proceedings of the thirtieth annual ACM symposium on Theory of computing. — Dallas, Texas, United States : ACM, 1998.
  • Sanjeev Arora, László Babai, Jacques Stern, Z. Sweedyk. The hardness of approximate optima in lattices, codes, and systems of linear equations // J. Comput. Syst. Sci.. — 1997. — Т. 54, вип. 2. — DOI:10.1109/SFCS.1993.366815.
  • Dinur I., Kindler G., Safra S. Approximating CVP to Within Almost - Polynomial Factors is NP - Hard // Combinatorica. — 2003. — Т. 23, вип. 2. — DOI:10.1007/s00493 - 003-0019 - y.
  • Dinur I., Kindler G., Safra S. Approximating - CVP to within Almost - Polynomial Factors is NP - Hard // Proceedings of the 39th Annual Symposium on Foundations of Computer Science. — IEEE Computer Society, 1998. — ISBN 0-8186-9172-7.
  • Fincke U., Pohst M. Improved Methods for Calculating Vectors of Short Length in a Lattice, Including a Complexity Analysis // Math. Comp.. — 1985. — Т. 44, вип. 170. — DOI:10.1090/S0025 - 5718-1985-0777278-8.
  • Biglieri E., Calderbank R., Constantinides A., Goldsmith A., Paulraj A., Poor H. V. MIMO Wireless Communications. — Cambridge : Cambridge U. P, 2007.
  • Ping Wang, Tho Le - Ngoc. A List Sphere Decoding Algorithm with Improved Radius Setting Strategies // Wireless Personal Communications. — 2011. — Т. 61, вип. 1. — DOI:10.1007/s11277 - 010-0018-4.
  • Hassibi A., Boyd S. Integer Parameter Estimation in Linear Models with Applications to GPS // IEEE Trans. Sig. Proc.. — 1998. — Т. 46, вип. 11. — DOI:10.1109/78.726808.
  • Miklós Ajtai, Ravi Kumar, D. Sivakumar. A sieve algorithm for the shortest lattice vector problem // Proceedings of the thirty - third annual ACM symposium on Theory of computing. — Hersonissos, Greece : ACM, 2001.
  • Banaszczyk W. New bounds in some transference theorems in the geometry of numbers // Math. Ann.. — 1993. — Т. 296, вип. 1. — DOI:10.1007/BF01445125.
  • Dorit Aharonov, Oded Regev. Lattice problems in NP coNP // J. ACM. — 2005. — Т. 52, вип. 5. — DOI:10.1145/1089023.1089025.
  • Ajtai M. Generating hard instances of lattice problems // Proceedings of the twenty - eighth annual ACM symposium on Theory of computing. — Philadelphia, Pennsylvania, United States : ACM, 1996.
  • Miklós Ajtai, Cynthia Dwork. A public - key cryptosystem with worst - case/average - case equivalence // Proceedings of the twenty - ninth annual ACM symposium on Theory of computing. — El Paso, Texas, United States : ACM, 1997.
  • Jin - Yi Cai. The Complexity of Some Lattice Problems // Algorithmic Number Theory. — 2000. — Т. 1838. — DOI:10.1007/10722028 1.
  • Lenstra A. K., Lenstra H. W., Lovász L. Factoring polynomials with rational coefficients // Math. Ann.. — 1982. — Т. 261, вип. 4. — DOI:10.1007/BF01457454.
  • Daniele Micciancio, Panagiotis Voulgaris. Faster Exponential Time Algorithms for the Shortest Vector Problem // Proceedings of the Twenty - first Annual ACM - SIAM Symposium on Discrete Algorithms. — Philadelphia, PA, USA : Society for Industrial and Applied Mathematics, 2010. — С. 1468-1480. — (SODA '10) — ISBN 9780898716986.
  • Daniele Micciancio, Panagiotis Voulgaris. A Deterministic Single Exponential Time Algorithm for Most Lattice Problems Based on Voronoi Cell Computations // Proceedings of the Forty - second ACM Symposium on Theory of Computing. — New York, NY, USA : ACM, 2010a. — ISBN 9781450300506. — DOI:10.1145/1806689.1806739.
  • Becker A., Ducas L., Gama N., Laarhoven T. Proceedings of the Twenty - Seventh Annual ACM - SIAM Symposium on Discrete Algorithms. — Society for Industrial and Applied Mathematics, 2015. — С. 10-24. — (Proceedings) — DOI:10.1137/1.9781611974331.ch2.
  • Divesh Aggarwal, Daniel Dadush, Oded Regev, Noah Stephens - Davidowitz. Solving the Shortest Vector Problem in 2n Time Using Discrete Gaussian Sampling : Extended Abstract // Proceedings of the Forty - seventh Annual ACM Symposium on Theory of Computing. — New York, NY, USA : ACM, 2015. — (STOC) — ISBN 9781450335362. — DOI:10.1145/2746539.2746606.
  • Daniele Micciancio. Lattice Cryptography - Shortest Vector Problem. — 2017.
  • Schnorr C. P. A hierarchy of polynomial time lattice basis reduction algorithms // Theoretical Computer Science. — 1987. — Т. 53, вип. 2. — DOI:10.1016/0304-3975 (87) 90064-8.
  • Schnorr C. P., Euchner M. [https ://link.springer.com/article/10.1007/BF01581144 Lattice basis reduction: Improved practical algorithms and solving subset sum problems] // Mathematical Programming. — 1994. — Т. 66, вип. 1-3. — ISSN 0025-5610. — DOI:10.1007/bf01581144.
  • Claus Peter Schnorr. Lattice Reduction by Random Sampling and Birthday Methods // [https ://link.springer.com/chapter/10.1007/3-540-36494-3 14 STACS]. — Springer, Berlin, Heidelberg, 2003. — ISBN 3540364943. — DOI:10.1007/3-540-36494-3 14.
  • Schnorr C. P. Factoring integers and computing discrete logarithms via diophantine approximation // {{{Заголовок}}}. — 1993. — Т. 13. — С. 171-181. — (AMS DIMACS series in Disc. Math, and Theoretical Comp. Science)
  • Yuanmi Chen, Phong Q. Nguyen. [https ://link.springer.com/chapter/10.1007/978-3-642-25385-0 1 Advances in Cryptology - ASIACRYPT 2011]. — Springer, Berlin, Heidelberg, 2011. — DOI:10.1007/978-3-642-25385-0 1.


Література для подальшого читання[ред. | ред. код]

  • Agrell E., Eriksson T., Vardy A., Zeger K. Closest Point Search in Lattices // IEEE Trans. Inform. Theory. — 2002. — Т. 48, вип. 8. — DOI:10.1109/TIT.2002.800499.
  • Phong Q. Nguyen, Jacques Stern. Lattice Reduction in Cryptology : An Update // Proceedings of the 4th International Symposium on Algorithmic Number Theory. — Springer - Verlag, 2000. — С. 85-112. — ISBN 3-540-67695-3.
  • Ravi Kannan. Improved Algorithms for Integer Programming and Related Lattice Problems // Proceedings of the Fifteenth Annual ACM Symposium on Theory of Computing. — New York, NY, USA : ACM, 1983. — (STOC) — ISBN 0897910990. — DOI:10.1145/800061.808749.
  • Nicolas Gama, Phong Q. Nguyen, Oded Regev. Lattice Enumeration Using Extreme Pruning // [https ://link.springer.com/chapter/10.1007/978-3-642-13190-5 13 Advances in Cryptology - EUROCRYPT 2010]. — Springer, Berlin, Heidelberg, 2010. — DOI:10.1007/978-3-642-13190-5 13.
  • Yoshinori Aono, Phong Q. Nguyen. Random Sampling Revisited : Lattice Enumeration with Discrete Pruning // [https ://link.springer.com/chapter/10.1007/978-3-319-56614-6 3 Advances in Cryptology - EUROCRYPT 2017]. — Springer, Cham, 2017. — DOI:10.1007/978-3-319-56614-6 3.
  • Daniele Micciancio, Panagiotis Voulgaris. Faster Exponential Time Algorithms for the Shortest Vector Problem // [http: //dl.acm.org/citation.cfm? Id = 1873601.1873720 {{{Заголовок}}}]. — (SODA '10)
  • Daniele Micciancio, Panagiotis Voulgaris. A Deterministic Single Exponential Time Algorithm for Most Lattice Problems Based on Voronoi Cell Computations // [http: //doi.acm.org/10.1145/1806689.1806739 {{{Заголовок}}}].
  • Becker A., ​​Ducas L., Gama N., Laarhoven T. [http: //epubs.siam.org/doi/10.1137/1.9781611974331.ch2 {{{Заголовок}}}]. — (Proceedings)