Der Großteil der heutigen Verschlüsselung, wie der RSA, basiert auf der ganzzahligen Faktorisierung, von der nicht angenommen wird, dass sie ein NP-hartes Problem darstellt. Sie gehört jedoch zu BQP, wodurch sie für Quantencomputer anfällig wird. Ich frage mich, warum es keinen Verschlüsselungsalgorithmus gab, der auf einem bekannten NP-harten Problem basiert. Es klingt (zumindest theoretisch) so, als würde es einen besseren Verschlüsselungsalgorithmus ergeben als einen, der sich nicht als NP-hart herausstellt.
109
Da waren.
Ein solches Beispiel ist das McEliece-Kryptosystem, das auf der Härte der Dekodierung eines linearen Codes basiert.
Ein zweites Beispiel ist NTRUEncrypt, das auf dem kürzesten Vektorproblem basiert, von dem ich glaube, dass es NP-Hard ist.
Ein weiteres ist das kaputte Merkle-Hellman-Kryptosystem .
Hinweis: Ich habe keine Ahnung, ob die ersten beiden kaputt sind / wie gut sie sind. Ich weiß nur, dass sie existieren, und ich habe sie durch eine Websuche erhalten.
quelle
Ich kann mir vier große Hürden vorstellen, die nicht völlig unabhängig sind:
Beachten Sie, dass ich keine Erfahrung mit Kryptografie habe. es handelt sich lediglich um algorithmische bzw. Komplexitätstheoretische Einwände.
quelle
Die Kryptografie mit öffentlichen Schlüsseln, wie wir sie heute kennen, basiert auf Einweg- Trapdoor- Permutationen, und die Trapdoor ist von wesentlicher Bedeutung.
Damit ein Protokoll öffentlich sicher ist, benötigen Sie einen Schlüssel, der jedem zur Verfügung steht, und eine Möglichkeit, eine Nachricht mit diesem Schlüssel zu verschlüsseln. Einmal verschlüsselt, dürfte es natürlich schwierig sein, die ursprüngliche Nachricht wiederherzustellen, wenn man nur die Verschlüsselung und den öffentlichen Schlüssel kennt: Die Verschlüsselung darf nur mit einigen zusätzlichen Informationen, nämlich Ihrem privaten Schlüssel, entschlüsselbar sein.
Vor diesem Hintergrund ist es einfach, ein primitives Kryptosystem zu erstellen , das auf einer Einweg-Falltürpermutation basiert.
quelle
Nur um ein heuristisches Argument zu liefern, das auf praktischen Erfahrungen basiert.
Fast alle Fälle, von fast allen NP-vollständigen Problemen, sind leicht zu lösen. Es gibt Probleme, bei denen dies nicht zutrifft, die jedoch schwer zu finden sind, und es ist schwierig, sich zu vergewissern, dass Sie einen solchen Klang haben.
Dies ist in der Praxis mehrmals vorgekommen, wenn Leute versuchen, zufällige Problemgeneratoren für eine berühmte NP-Complete-Klasse wie Constraint Programming, SAT oder Travelling Salesman zu schreiben. Zu einem späteren Zeitpunkt findet jemand eine Methode, um fast alle Instanzen zu lösen, die der Zufallsgenerator trivial erzeugt. Wäre dies bei einem Verschlüsselungssystem der Fall, wären wir natürlich in ernsthaften Schwierigkeiten!
quelle
Merkle-Hellman-Kryptosysteme basieren auf binären Rucksackproblemen (Teilmengen).
quelle