Czy istnieją algorytmy kryptograficzne klucza publicznego, które są udowodnione NP-trudne do pokonania? [zamknięte]

Jeśli praktyczne obliczenia kwantowe staną się rzeczywistością, zastanawiam się, czy istnieją jakieś algorytmy kryptograficzne klucza publicznego, które opierają się na problemach np-zupełnych, a nie faktoryzacji całkowitej lub dyskretnych logarytmów.

Edit:

Proszę zapoznać się z sekcją "obliczenia kwantowe w teorii złożoności obliczeniowej" artykuł wiki o komputerach kwantowych. zwraca uwagę, że Klasa problemów, na które mogą odpowiedzieć komputery kwantowe (BQP), jest uważana za ściśle łatwiej niż np-complete.

Edit 2:

'Na podstawie np-complete' to zły sposób wyrażania tego, co mnie interesuje.

Chciałem zapytać o algorytm szyfrowania klucza publicznego z właściwością, że każda metoda złamania szyfrowania może być również użyta do złamania podstawowego problemu NP-complete. Oznacza to złamanie szyfrowania P = NP.

Author: Steve Steiner, 2008-11-22

11 answers

Odpowiadam na ten stary wątek, ponieważ jest to bardzo częste i ważne pytanie, a wszystkie odpowiedzi tutaj są niedokładne.

Krótka odpowiedź na pierwotne pytanie to jednoznaczne "Nie". Nie są znane Schematy szyfrowania (nie mówiąc już o kluczach publicznych), które opierają się na problemie np-zupełnym (i stąd wszystkie, w ramach redukcji czasu wielomianowego). Niektóre są "bliżej" niż inne, więc pozwól mi rozwinąć.

Jest tu wiele do wyjaśnienia, więc zacznij od znaczenia " w oparciu o problem np-kompletny."Ogólnie uzgodniona interpretacja tego jest następująca :" można udowodnić bezpieczeństwo w konkretnym modelu formalnym, zakładając, że nie istnieją algorytmy czasu wielomianowego dla problemów np-zupełnych". Aby być jeszcze bardziej precyzyjnym, Zakładamy, że nie istnieje żaden algorytm, który Zawsze rozwiązuje problem NP-zupełny. Jest to bardzo bezpieczne założenie, ponieważ jest to naprawdę trudna rzecz dla algorytmu do zrobienia - pozornie o wiele łatwiej jest wymyślić algorytm, który rozwiązuje losowe przypadki problemu z dobrym prawdopodobieństwem.

Żadne Schematy szyfrowania nie mają takiego dowodu. Jeśli spojrzysz na literaturę, z nielicznymi wyjątkami (patrz poniżej), twierdzenia o bezpieczeństwie brzmią następująco:

twierdzenie: Ten schemat szyfrowania jest udowodniony, zakładając, że nie algorytm wielomianowy-czasowy istnieje dla rozwiązywanie przypadkowych przypadków jakiegoś problemu X .

Zwróć uwagę na " przypadki losowe" część. Dla konkretnego przykładu możemy założyć, że nie istnieje algorytm czasu wielomianowego do faktorowania iloczynu dwóch losowych N-bitowych liczb pierwszych z pewnym dużym prawdopodobieństwem. Jest to zupełnie inne (mniej bezpieczne) od założenia, że algorytm czasu wielomianowego nie istnieje dla Zawsze faktoringu wszystkich iloczynów dwóch losowych N-bitowych liczb pierwszych.

Problem "przypadkowych instancji" w stosunku do "najgorszych przypadków" jest tym, co zostało przytoczone powyżej. Schematy szyfrowania typu McEliece są oparte na bardzo specjalnej losowej wersji dekodowania kodów liniowych - a nie na rzeczywistej, najgorszej wersji, która jest np-kompletna.

Wychodzenie poza ten problem "przypadkowych instancji" wymagało głębokich i pięknych badań w informatyce teoretycznej. Zaczynając od pracy Miklósa Ajtai, znaleźliśmy algorytmy kryptograficzne, w których założenie bezpieczeństwa jest" najgorszym przypadkiem " (bezpieczniejszym), a nie przypadkowym. Niestety, najgorsze założenia są dla problemy, które nie są znane jako np complete, a niektóre teoretyczne dowody sugerują, że nie możemy dostosować ich do użycia np-Complete problems. Dla zainteresowanych poszukaj "kryptografia oparta na kratkach".

 24
Author: David Cash,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-06 23:44:40

Zaproponowano kilka kryptosystemów bazujących na problemach np-hard (takich jak kryptosystem Merkle-Hellman bazujący na problemie sumy podzbioru oraz kryptosystem Nacache-Stern knapsack bazujący na problemie plecaka), ale wszystkie zostały złamane. Dlaczego? Wykład 16 Scott Aaronson ' S Great Ideas in Theoretical Computer Science mówi coś o tym, co myślę, że powinieneś przyjąć jako ostateczne. To, co mówi, jest następujące:

Idealnie, my chciałby skonstruować [kryptograficzny Generator Pseudorandomu] lub kryptosystem, którego bezpieczeństwo opierało się na problemie np-complete. Niestety, problemy np-complete są zawsze o najgorszym przypadku. W kryptografii przekładałoby się to na stwierdzenie w stylu "istnieje wiadomość, która jest trudna do dekodowania", co nie jest dobrą gwarancją dla systemu kryptograficznego! Wiadomość powinna być trudna do odszyfrowania z przytłaczającym prawdopodobieństwem. Pomimo dziesięcioleci starań, nie ma jeszcze możliwości odkryto, że odnosi się najgorszy przypadek do przeciętnego przypadku problemów NP-kompletnych. I dlatego, jeśli chcemy obliczeniowo bezpiecznych kryptosystemów, musimy przyjąć silniejsze założenia niż P≠NP.
 12
Author: ShreevatsaR,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-12-11 01:13:19

To było pytanie otwarte w 1998 roku:

Na możliwość oparcia kryptografii na założeniu, że P != NP autor: Oded Goldreich, Rehovot Israel, Shafi Goldwasser

Z abstraktu: "nasz wniosek jest taki, że pytanie pozostaje otwarte".

--ciekawe czy to się zmieniło w ostatniej dekadzie?

Edit:

Z tego, co wiem, pytanie jest wciąż otwarte, z niedawnym postępem w kierunku odpowiedzi na żaden taki algorytm nie istnieje.

Adi Akavia, Oded Goldreich, Shafi Goldwasser i Dana Moshkovitz opublikowali ten artykuł w ACM w 2006 roku: na podstawie funkcji jednokierunkowych na twardości NP "nasze główne ustalenia są następujące dwa negatywne wyniki"

Strona stanford Complexity Zoo jest pomocna w rozszyfrowaniu tego, co oznaczają te dwa negatywne wyniki.

 8
Author: Steve Steiner,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-11-22 10:49:32

Podczas gdy wiele formularzy zostało złamanych, sprawdź Merkle-Hellman , bazując na formie np-complete 'problem z plecakiem'.

 4
Author: Purfideas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-11-22 08:28:36

Kryptografia kratowa oferuje (nad)uogólniony komunikat, że rzeczywiście można zaprojektować kryptosystemy, w których złamanie przeciętnego przypadku jest tak trudne ,jak rozwiązanie konkretnego problemu NP-hard (Zwykle najkrótszy Problem wektora lub najbliższy problem wektora).

Mogę polecić przeczytanie sekcji wprowadzającej http://eprint.iacr.org/2008/521 a potem szukanie odniesień do kryptosystemów.

Zobacz też notatki z wykładu na http://www.cs.ucsd.edu / ~ daniele / CSE207C / , i poszukaj linków do książki, jeśli chcesz.

 4
Author: Jonas Kölker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-02-10 20:52:51

Googling for np-complete and Public key encryption finds False positives ... to naprawdę niepewne. Ten rysunkowy pdf wydaje się pokazywać algorytm kodowania klucza publicznego oparty na problemie minimium dominującego zestawu . Czytając dalej przyznaje się następnie do kłamstwa, że algorytm jest bezpieczny ... podstawowym problemem jest np-Complete, ale jego użycie w algorytmie PK nie zachowuje trudności.

Kolejny fałszywie pozytywny wynik Google: Kryptoanaliza kryptosystem Goldreich-Goldwasser-Halevi z Crypto '97. Z abstraktu:

Na Crypto '97, Goldreich, Goldwasser i Halevi zaproponowali kryptosystem klucza publicznego oparty na najbliższym problemie wektorowym w sieci, który jest znany jako np-hard. Pokazujemy, że istnieje poważna wada w projektowaniu schematu, która ma dwie implikacje: każdy szyfertext przecieka informacje na zwykłym tekście, a problem deszyfrowania szyfrów można sprowadzić do specjalnego najbliższego problemu wektorowego co jest o wiele łatwiejsze niż ogólny problem.

 2
Author: Steve Steiner,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-11-22 10:28:59

Istnieje strona internetowa, która może być istotna dla Twoich zainteresowań: Kryptografia Post-kwantowa .

 1
Author: Mikhail Glushenkov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-09-15 14:27:13

Oto moje rozumowanie. Popraw mnie, jeśli się mylę.

(i) "złamanie" kryptosystemu jest koniecznie problemem w NP i co-np. (Złamanie kryptosystem polega na odwróceniu funkcji szyfrowania, która jest jeden do jednego i obliczalna w czasie wielomianowym. Tak więc, biorąc pod uwagę tekst szyfrowy, tekst jawny jest certyfikatem, który można zweryfikować w czasie wielomianowym. Tak więc odpytywanie tekstu jawnego na podstawie tekstu szyfrowego jest w NP i w co-np.)

(ii) jeśli występuje problem np-hard W NP i co-NP, następnie NP = co-np. (Problem ten byłby np-kompletny i w co-np. Ponieważ każdy język NP jest redukowalny do tego języka co-NP, NP jest podzbiorem co-NP. Teraz użyj symetrii: każdy język L w co-np ma-L (jego komplement) w NP, gdzie-L jest w co-np---czyli L = --L jest w NP.)

(iii) i myślę że powszechnie uważa się, że NP != co-np, ponieważ w przeciwnym razie istnieją dowody wielomianowe, że wzory boolowskie nie są spełnione.

Wniosek: złożoność-teoria przypuszczenia sugerują, że kryptosystemy np-hard nie istnieją.

(W Przeciwnym Razie masz problem np-hard W NP i co-np, skąd NP = co-np - - - co jest uważane za fałszywe.)

 1
Author: Thomas S,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-10-13 03:12:06

Podczas gdy RSA i inne powszechnie stosowane algorytmy kryptograficzne są oparte na trudności faktoryzacji całkowitej (która nie jest znana jako np-complete), istnieją pewne algorytmy kryptograficzne klucza publicznego oparte na problemach np-complete. Wyszukiwanie w google "klucz publiczny "i" np-complete " ujawni niektóre z nich.

(błędnie powiedziałem wcześniej, że komputery kwantowe przyspieszą np-kompletne problemy, ale to nieprawda. Przyznaję się do błędu.)

 0
Author: dmazzoni,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2008-11-22 08:46:26

Jak wskazuje wiele innych plakatów, możliwe jest oparcie kryptografii na problemach np-hard lub np-complete.

Jednak popularne metody kryptografii będą oparte na trudnej matematyce (czyli trudnej do złamania). Prawda jest taka, że łatwiej jest serializować liczby jako tradycyjny klucz niż tworzyć znormalizowany ciąg, który rozwiązuje problem np-hard. Dlatego praktyczna krypto opiera się na problemach matematycznych, które nie zostały jeszcze udowodnione jako np-hard lub Np-kompletny (więc można sobie wyobrazić, że niektóre z tych problemów są w P).

W szyfrowaniu ElGamal lub RSA złamanie go wymaga złamania logarytmu dyskretnego, więc spójrz na ten artykuł wikipedia .

Nie jest znany wydajny algorytm obliczania ogólnych dyskretnych logarytmów logbg. Naiwnym algorytmem jest podnoszenie b do wyższych i wyższych potęg k, aż do znalezienia pożądanego g; jest to czasami nazywane mnożeniem próbnym. Algorytm ten wymaga czasu pracy liniowy w wielkości grupy G, a tym samym wykładniczy w liczbie cyfr w wielkości grupy. Istnieje efektywny algorytm kwantowy dzięki Peterowi Shorowi ( http://arxiv.org/abs/quant-ph/9508027).

Obliczanie logarytmów dyskretnych jest najwyraźniej trudne. Nie tylko nie jest znany efektywny algorytm dla najgorszego przypadku, ale średnia złożoność przypadku może być pokazana jako co najmniej tak trudne, jak najgorszy przypadek przy użyciu losowej samo-redukcyjności.

W w tym samym czasie odwrotnym problemem wykładnictwa dyskretnego nie jest (można go obliczyć efektywnie za pomocą wykładnictwa przez kwadrat, na przykład). Asymetria ta jest analogiczna do tej między faktoryzacją całkowitą a mnożeniem całkowitym. Obie asymetrie zostały wykorzystane w budowie systemów kryptograficznych.

Powszechne jest przekonanie, że są one np-kompletne, ale może nie można tego udowodnić. Zauważ, że komputery kwantowe mogą skutecznie łamać krypto!

 -1
Author: Overflown,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-02-04 05:53:42

Ponieważ nikt naprawdę nie odpowiedział na pytanie, muszę dać Ci podpowiedź: "McEliece". Przeszukaj go. To sprawdzony algorytm szyfrowania np-Hard. Potrzebuje O (N^2) szyfrowania i czasu deszyfrowania. Ma też klucz publiczny o rozmiarze O (N^2), co jest złe. Ale są ulepszenia, które obniżają wszystkie te granice.

 -2
Author: Ben,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-19 22:27:49