Il problema della fattorizzazione dei numeri interi è più difficile della fattorizzazione RSA:


39

Questo è un cross-post di math.stackexchange.


Lascia che FACT denoti il ​​problema del factoring intero: dato trova i primi e gli interi tali chep iN , e iN , n = k i = 0 p e i i .nN,piN,eiN,n=i=0kpiei.

Lascia che RSA denoti il ​​caso particolare del problema del factoring in cui e sono numeri primi. Cioè, dato che trova i numeri primi o NONE se non esiste tale fattorizzazione.p , q n p , qn=pqp,qnp,q

Chiaramente, RSA è un'istanza di FACT. FACT è più difficile di RSA? Dato un oracolo che risolve RSA in tempo polinomiale, potrebbe essere usato per risolvere FACT in tempo polinomiale?

(Un puntatore alla letteratura è molto apprezzato.)


Modifica 1: aggiunta la limitazione del potere computazionale al tempo polinomiale.


Modifica 2: Come sottolineato nella risposta di Dan Brumleve, ci sono documenti che sostengono a favore e contro RSA in modo più duro (o più facile di) FATTO. Finora ho trovato i seguenti documenti:

D. Boneh e R. Venkatesan. Rompere RSA può essere più semplice del factoring. EUROCRYPT 1998. http://crypto.stanford.edu/~dabo/papers/no_rsa_red.pdf

D. Brown: la rottura di RSA può essere difficile quanto il factoring. Cryptology ePrint Archive, Report 205/380 (2006) http://eprint.iacr.org/2005/380.pdf

G. Leander e A. Rupp. Sull'equivalenza di RSA e factoring per quanto riguarda gli algoritmi ad anello generici. ASIACRYPT 2006. http://www.iacr.org/archive/asiacrypt2006/42840239/42840239.pdf

D. Aggarwal e U. Maurer. La rottura di RSA è generalmente equivalente al factoring. EUROCRYPT 2009. http://eprint.iacr.org/2008/260.pdf

Devo esaminarli e trovare una conclusione. Qualcuno è a conoscenza di questi risultati in grado di fornire un riepilogo?


1
se ricordo bene, calcolare o scoprire d equivale al factoring ma come tale potrebbe esserci un modo in cui RSA è più debole del factoring. In breve, RSA potrebbe non implicare la risoluzione del problema del factoring. Non ci sono prove formali conosciute per loro equivalenti (per quanto ne so)ϕ(n)
singhsumit

1
Mohammad, perché FACT non è riducibile a RSA?
Dan Brumleve,

1
Forse sto fraintendendo qualcosa di basilare. Come dimostrare che l'esistenza di un algoritmo per fattorizzare un semiprime nel tempo polinomiale non implica l'esistenza di un algoritmo per fattorizzare un numero con tre fattori primi nel tempo polinomiale?
Dan Brumleve,

6
Come fai a sapere che è quello che equivale a?
Dan Brumleve,

7
Se non vi è alcuna riduzione del poli-tempo tra i due problemi dichiarati, sarà difficile dimostrarlo, giusto? Per dimostrare che non può esistere una riduzione dei poli-tempi, è necessario dimostrare . PNP
Fixee,

Risposte:


13

Ho trovato questo documento intitolato Breaking RSA potrebbe essere più facile del factoring . Essi sostengono che l'informatica th radici modulo n = p q potrebbe essere più facile di factoring n = p q .en=pqn=pq

Tuttavia, non rispondono alla domanda che ti sei posto: non considerano se i numeri interi di factoring della forma potrebbero essere più facili del factoring di numeri interi arbitrari. Di conseguenza, questa risposta è praticamente irrilevante per la tua particolare domanda.n=pq


Grazie! Ho trovato molti altri articoli con titoli correlati, riferimenti incrociati. Pubblicherò i link qui sotto. (Modifica: i link qui sotto sono brutti. Non riesco a ottenere una formattazione corretta nei commenti.)

1
D. Boneh e R. Venkatesan. Rompere RSA può essere più semplice del factoring. EUROCRYPT 1998. crypto.stanford.edu/~dabo/papers/no_rsa_red.pdf D. Brown: Rompere RSA può essere difficile quanto il factoring. Cryptology ePrint Archive, Report 205/380 (2006) eprint.iacr.org/2005/380.pdf D. Aggarwal e U. Maurer. La rottura di RSA è generalmente equivalente al factoring. EUROCRYPT 2009. eprint.iacr.org/2008/260.pdf G. Leander e A. Rupp. Sull'equivalenza di RSA e factoring per quanto riguarda gli algoritmi ad anello generici. ASIACRYPT 2006. iacr.org/archive/asiacrypt2006/42840239/42840239.pdf

1
Ho letto gli abstract e il documento di Aggarwal e Maurer sembra riguardare un problema leggermente diverso (fattorizzare un semiprime rispetto al calcolo della funzione phi?) Gli altri affermano esplicitamente che il problema è aperto. Suppongo che lo sia ancora a meno che non ci sia un risultato più recente del 2006?
Dan Brumleve,

1
Vale probabilmente la pena ricordare che il documento Boneh e Venkatesan parla della durezza del factoring semiprimes contro la durezza della rottura di RSA. Ciò che la domanda chiama "RSA" è in realtà il problema del factoring semiprimes, che potrebbe essere più difficile della violazione di RSA (che è ciò che suggerisce il documento Boneh-Venkatesan)
Sasho Nikolov

4
Questa risposta non è corretta Hai frainteso ciò che quei documenti stanno dimostrando. Per "problema RSA", significano il problema del calcolo modulare esima (mod n ), e relativo che alla difficoltà di fattorizzazione n . In entrambi i casi n è un numero RSA, ovvero n = p q . Quindi i documenti che citi non affrontano effettivamente la domanda che hai posto. La confusione qui viene perché il "problema RSA" della domanda non è lo stesso di quello che quei documenti chiamano "il problema RSA". ennnn=pq
DW,

19

Per quanto posso vedere, un algoritmo efficiente per semiprimes di factoring (RSA) non si traduce automaticamente in un algoritmo efficiente per interi di factoring (FACT). Tuttavia, in pratica, i semiprimi sono gli interi più difficili da considerare. Uno dei motivi è che la dimensione massima del primo più piccolo dipende dal numero di fattori. Per un numero intero con fattori primi f , la dimensione massima del fattore primo più piccolo è N 1Nf, e quindi (tramite ilteorema dei numeri primi) ci sono circafN 1N1f possibilità per questo. Pertanto, aumentandofdiminuisce il numero di possibilità per il fattore primo più piccolo. Qualsiasi algoritmo che funziona riducendo successivamente questo spazio di probabilità funzionerà meglio per grandife peggio perf=2. Ciò è confermato in pratica, poiché molti algoritmi di factoring classici sono molto più veloci quando il numero in factoring ha più di 2 fattori primi.fN1flog(N)fff=2

Inoltre il General Number Field Sieve , l'algoritmo di factoring classico più veloce conosciuto, e l'algoritmo di Shor , l'algoritmo di factoring quantistico a tempo polinomiale, funzionano altrettanto bene per i non semiprimi. In generale, sembra molto più importante che i fattori per coprime siano quelli primi.

Penso che parte della ragione di ciò sia la versione della decisione dei co-primi di factoring che è descritta in modo più naturale come un problema di promessa , e qualsiasi modo di rimuovere la promessa che l'input sia semiprime è di

  1. introdurre un'indicizzazione sui semiprimi (che di per sé sospetto sia difficile quanto considerarli), oppure
  2. generalizzando il problema per includere i non semiprimi.

PNP

Infine, vale la pena sottolineare che RSA (il cryptosystem, non il problema di factoring che hai definito sopra) generalizza banalmente oltre i semi-primi.


3
PPNP

1
PRSA=PFACTPRSA=PFACTPRSAPFACT

1
FACTPRSA?FACTPFACTP

FACTPRSA

2

Non è una risposta abbastanza completa, ma sembra essere un miglioramento:

I lavori di ricerca sopra citati confrontano il problema dell'informatica con le radici di et N mod, ovvero eseguendo l'operazione di chiave privata nel sistema crittografico RSA, con il problema del factoring, ovvero trovando la chiave privata, in entrambi i casi, usando solo la chiave pubblica. In questo caso, il problema del factoring non è il caso generale, ma il caso semiprime. In altre parole, stanno prendendo in considerazione una domanda diversa.

Credo che sia noto, vedi AoCP di Knuth, che la maggior parte dei numeri N ha fattorizzazioni prime le cui lunghezze di bit si confrontano in lunghezza di bit con quella di N, in media qualcosa come 1/2, 1/4, 1/8, ..., o forse anche cadere più bruscamente, come in 2/3, 2/9, 2/27, ... ma forse appiattirsi. Quindi, per una N casuale casuale di dimensioni sufficientemente piccole da consentire di trovare rapidamente i fattori più piccoli dalla divisione di prova o dall'ECM di Lenstra, ciò che rimane può essere un semiprime, sebbene sbilanciato. Questo è un tipo di riduzione, ma dipende fortemente dalla distribuzione dei fattori, ed è una riduzione lenta, in quanto invoca altri algoritmi di fattorizzazione.

Inoltre, non esiste un test noto per determinare se un numero è semiprime o meno. Questo significa solo che se uno ha appena applicato un algoritmo di fattorizzazione semiprime a un numero generale e ha sempre fallito, allora ha risolto un problema sconosciuto.


L'algoritmo di fattorizzazione dovrebbe essere eseguito in tempo polinomiale. Quindi in realtà stai dicendo "se avessi un algoritmo di fattorizzazione poli-tempo avresti risolto un problema sconosciuto". Perché uno può usare l'algoritmo di fattorizzazione ingenuo per scoprire se un numero è un semiprime o meno.
Elliot Gorokhovsky,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.