Чому не існував алгоритм шифрування, заснований на відомих проблемах NP-Hard?


109

Більшість сучасних шифрувань, таких як RSA, покладаються на цілочисельну факторизацію, яка, як вважається, не є важкою проблемою для NP, але вона належить до BQP, що робить її вразливою для квантових комп'ютерів. Цікаво, чому не існував алгоритм шифрування, який базується на відомій важкій проблемі NP. Звучить (принаймні теоретично) так, що це дозволило б зробити кращий алгоритм шифрування, ніж той, який не виявився важким для NP.

Відповіді:


76

Найгірший Жорсткість проблем, повних NP, недостатня для криптографії. Навіть якщо проблеми, повні з NP, у найгіршому випадку важкі ( ), вони все одно можуть бути ефективно вирішеними в середньому випадку. Криптографія передбачає наявність середніх випадкових нерозв'язних проблем у НП. Крім того, доведення існування важких середніх проблем у НП з використанням припущення є головною відкритою проблемою.P N PPNPPNP

Чудово прочитане - класика Рассела Імпальяццо, "Особистий погляд на складність середнього випадку" , 1995 рік.

Відмінне опитування - « Середня складна ситуація» Богданова та Тревісана, «Основи та тенденції теоретичної інформатики» Vol. 2, № 1 (2006) 1–106


1
Чи не потрібна нам твердість і в кращому випадку? В кінці кінців, все наші ключі повинні бути безпечними. Чи можемо ми ефективно (і ефективно) запобігти кращому випадку?
Рафаель

7
крім того, ми повинні мати можливість генерувати важкі екземпляри за розумний час. Коротше кажучи, нам потрібно набагато більше, ніж просто ness. NP-hard
Каве

@Raphael, цього має бути достатньо, якщо ймовірність отримати небажаний "добрий" випадок досить мала. Якщо це менше, ніж ймовірність відгадати правильний ключ бажаного «поганого» випадку, цей ризик слід вважати прийнятним IMHO.
квазгар

49

Було.

Одним із таких прикладів є криптосистема McEliece, яка ґрунтується на твердості декодування лінійного коду.

Другий приклад - NTRUEncrypt, який ґрунтується на найкоротшій векторній проблемі, яка, на мою думку, є NP-Hard.

Інша - криптовалюта рюкзака Меркле-Гелмана .

Примітка: я не маю поняття, якщо перші два зламані / наскільки вони хороші. Все, що я знаю, це те, що вони існують, і я отримав тих, хто робив пошук в Інтернеті.


6
Для цілей криптоаналізу Макіліс, ймовірно, не повинен вважатися лише однією критосистемою; для кожного класу ефективно декодируемих лінійних кодів, які ви підключаєте, вам обов'язково потрібно придумати іншу стратегію, щоб її зламати. Це було порушено для деяких класів кодів, але (як йдеться у статті Вікіпедії) не для кодів Гоппи, які були оригінальною пропозицією МакКілі.
Пітер Шор

З цього списку я б сказав, що NTRU виглядає найбільш перспективною, вона ще не повинна бути широко перевірена способом тестування RSA, виходячи з того, що я читав до цього часу.
Кен Лі

Криптосистема Меркле-Гелмана не є відповідним прикладом. Рюкзаки вертерів Меркле-Гелмана є лише підмножиною всіх векторів рюкзака, тому проблема рюкзака Меркле-Хеллмана може не бути важкою NP. Я не думаю, що це важко для NP, принаймні я не знаю жодної статті, яка це свідчить.
чудо173

25

Я можу придумати чотири основні перешкоди, які не зовсім незалежні:

  • NP-твердість лише дає вам інформацію про складність у ліміті . Для багатьох проблем, повних NP, існують алгоритми, які вирішують усі випадки, що цікавлять (за певним сценарієм) досить швидко. Іншими словами, для будь-якого фіксованого розміру проблеми (наприклад, заданий "ключ") проблема не обов'язково є важкою лише тому, що вона є жорсткою.
  • Твердість NP вважає лише найгірший час. Багато, навіть більшість усіх примірників може бути легко вирішити за допомогою існуючих алгоритмів. Навіть якби ми знали, як охарактеризувати важкі екземпляри (afaik, ми цього не робимо), нам все одно доведеться їх знаходити.
  • 2n(n1)nn
  • Вам потрібна якась оборотність. Наприклад, будь-яке ціле число однозначно описується його основним коефіцієнтом. Image Ми хотіли б використовувати TSP як метод шифрування; з огляду на всі найкоротші тури, чи можете ви (пере) побудувати графік, з якого вони прийшли?

Зауважте, що я не маю досвіду криптографії; це лише алгоритмічна відповідь. складності-теоретичні заперечення.


Відмінна резюме. Але зауважте, що твердість BQP має ті ж застереження, що і перші два моменти.
Мітч

14

Криптографія з відкритим ключем , як ми його знаємо сьогодні побудована на одну боку люк перестановок і люк має важливе значення.

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

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

  1. Аліса дає односторонню перестановку для публіки та тримає пастку для себе.
  2. Боб поклав свій вхід в перестановку і передав вихід Алісі.
  3. Аліса використовує треп-двер, щоб перевернути перестановку з виходом Боба.

PNP

PNPNPINPNPNPINP

NPNPNP


RSA, так, це функція, що займається захопленням. Я не впевнений, що dlog - це TDF (це один спосіб)
111

Якби проблема з проміжним рівнем NP була складною для NP, вони були б повноцінними NP, суперечливістю.
Мірія

0

Просто навести евристичний аргумент, заснований на практичному досвіді.

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

Це трапляється на практиці кілька разів, коли люди намагаються записати генератори випадкових проблем для якогось відомого класу NP-повного, наприклад, програмування обмежень, SAT або мандрівного продавця. В якийсь пізній час хтось знаходить метод вирішення майже всіх випадків, які випадковий генератор трівіально виробляє. Звичайно, якби це стосувалося системи шифрування, ми мали б серйозні проблеми!


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.