Я читав у кількох роботах, що існування односторонніх функцій широко вважається. Чи може хтось пролити світло на те, чому це так? Які аргументи ми маємо для підтримки існування односторонніх функцій?
Я читав у кількох роботах, що існування односторонніх функцій широко вважається. Чи може хтось пролити світло на те, чому це так? Які аргументи ми маємо для підтримки існування односторонніх функцій?
Відповіді:
Ось аргумент, що односторонні функції повинні бути важкими для інвертування. Припустимо, існує клас 3-SAT проблем із посадженими рішеннями, які важко вирішити. Розглянемо таку карту:
де - будь-яка рядок бітів, r - рядок бітів (ви можете використовувати їх для виведення генератора випадкових чисел, або ви можете попросити стільки випадкових бітів, скільки вам потрібно), а s - k -SAT проблема, що має x як посаджене рішення, де генератор випадкових чисел визначає, яку саме k -SAT проблему ви обрали. Щоб перетворити цю односторонню функцію, потрібно вирішити проблему k -SAT із посадженим рішенням.
Цей аргумент показує, що інвертування односторонньої функції настільки ж важке, як і рішення -SAT задач із посадженими рішеннями. А оскільки k -SAT є повною проблемою для NP, якщо ви можете зрозуміти, як побудувати важкі екземпляри з посадженими рішеннями для будь-якої проблеми NP, ви можете посадити рішення в k -SAT формулах.
Не було доведено, що можна створити клас проблем, повних NP, з насадженими рішеннями, які такі ж важкі, як і довільні проблеми, повні з NP (і навіть якщо це правда, довести це буде надзвичайно важко) , але люди, безумовно, знають, як розводити рішення в -SAT-проблемах способами, які наразі ніхто не знає, як їх вирішити.
ДОДАТИ: Зараз я розумію, що цей зв'язок вже був наданий (більш докладно) у Абаді, Аллендері, Бродері, Фейгенбаумі та Гемачандрі ; вони вказують, що односторонні функції можуть давати вирішені важкі екземпляри SAT, і навпаки.
Якщо говорити неформальною мовою, відсутність односторонніх функцій свідчить про те, що справді важкі головоломки не можуть існувати. Якщо є тип головоломки, де хтось може скласти як пазл, так і його рішення алгоритмічно, то існує також алгоритм поліноміального часу для пошуку рішення головоломки. Це здається мені дуже протиінтуїтивним. Звичайно, поліноміальний проміжок може існувати; може статися так, що якщо створення головоломки зробило кроків, то розв’язування може зробити O ( n 3 ) кроків. Однак моя інтуїція говорить про те, що повинен бути суперполіноміальний розрив.
Я дам коротку відповідь: Існування, здавалося б, важких проблем, таких як ФАКТОРИНГ або ДИСКРЕТНИЙ ЛОГ, змусило теоретиків вважати, що існують OWF. Зокрема, вони десятиліттями (починаючи з 1970-х років) намагалися знайти ефективні (ймовірнісні поліноміально-часові) алгоритми для таких проблем, але жодна спроба не вдалася. Це міркування дуже схоже на те, чому більшість дослідників вважають, що P ≠ NP.
Аргумент Сашо спирається на вічну проблему P = NP, щодо якої на сьогодні немає консенсусу.
Однак якщо ми слідуємо за криптоаналізом К. Шеннона одноразового майданчика, розсекреченого в 1947 році, тобто: немає жодного математично захищеного алгоритму шифрування, окрім одного часового майданчика. Його аргумент ґрунтується на ідеї, що якщо у нас справді випадкова послідовність чисел і для деякої послідовності для шифрування, s 1 , s 2 , s 3 , … , s n , ми шифруємо так:
Ми могли б імітувати результат Шеннона для односторонніх функцій.
Проблема полягає в тому, що ми не знаємо, чи існують справді випадкові числа, оскільки питання рівнозначне коментарю Ейнштейна щодо "Бог не грає в кубики".
Однак для всіх цілей генератор випадкових чисел, заснований на фізичному процесі, фахівці вважають досить випадковим.
Це було б так просто, як запропонувати, наприклад, функцію Sine?
Оскільки для заданого входу та виходу вхід можна збільшити або зменшити на 360 градусів (або на 2 пі, якщо ви перебуваєте в радіанах), це багато в одному, тож ви ніколи не можете бути впевнені, який саме вхід у вас був?
Скажіть, чи я неправильно зрозумів це питання.