Meine Frage betrifft die Gleichwertigkeit der Sicherheit verschiedener Kandidaten-Einwegfunktionen, die auf der Grundlage der Härte des Factorings konstruiert werden können.
Angenommen, das Problem von
FAKTORIERUNG: [Wenn für zufällige Primzahlen , finde , ]
kann nicht in Polynomzeit mit nicht zu vernachlässigender Wahrscheinlichkeit die Funktion gelöst werden
PRIME-MULT: [Verwenden Sie bei gegebener Bitfolge als Eingabe als Startwert , um zwei zufällige Primzahlen und zu erzeugen (wobei die Längen von , nur polynomiell kleiner als die Länge von ); dann ausgeben .]
kann als einseitig gezeigt werden.
Eine weitere mögliche Einwegfunktion ist
INTEGER-MULT: [Gegebene zufällige ganze Zahlen als Eingabe, Ausgabe .]
INTEGER-MULT hat den Vorteil, dass es im Vergleich zu PRIME-MULT einfacher zu definieren ist. (Beachten Sie insbesondere, dass in PRIME-MULT die Möglichkeit besteht (wenn auch glücklicherweise vernachlässigbar), dass der Keim keine , die Primzahlen sind.)
Zumindest an zwei verschiedenen Stellen (Arora-Barak, Computational Complexity, Seite 177, Fußnote 2) und ( Vadhans Einführung in die Kryptographie-Vorlesungsunterlagen ) wird erwähnt, dass INTEGER-MULT unter der Annahme einer durchschnittlichen Faktorisierungshärte einseitig ist. Keiner dieser beiden gibt jedoch den Grund oder einen Hinweis für diese Tatsache an.
Die Frage ist also:
Wie können wir das Polynom-Time-Factoring von mit nicht vernachlässigbarer Wahrscheinlichkeit auf die Invertierung von INTEGER-MULT mit nicht vernachlässigbarer Wahrscheinlichkeit reduzieren?
Hier ist ein möglicher Ansatz (der, wie wir sehen werden, NICHT funktioniert!): Wenn , multiplizieren Sie mit einer viel (wenn auch polynomiell) längeren zufälligen ganzen Zahl , um . Die Idee ist, dass so groß ist, dass es viele Primfaktoren mit einer Größe hat, die ungefähr gleich , so dass nicht unter den Primfaktoren von "hervorstechen" . Dann hat ungefähr die Verteilung einer gleichmäßig zufälligen ganzen Zahl in einem gegebenen Bereich (sagen wir ). Wählen Sie als nächstes zufällig die ganze Zahl aus demselben Bereich .
Wenn nun ein Wechselrichter für INTEGER-MULT bei gegebener mit einiger Wahrscheinlichkeit so dass , besteht die Hoffnung, dass einer von oder als a enthält Faktor und die andere enthält . Wenn dies der Fall war, können wir oder indem wir gcd von mit .
Das Problem ist, dass der Wechselrichter die Primfaktoren trennen kann, indem er beispielsweise die kleinen Faktoren von in und die großen in , so dass und beide in oder beide in enden. .
Gibt es einen anderen Ansatz, der funktioniert?