Perché la maggior parte della crittografia dipende da grandi coppie di numeri primi, anziché altri problemi?


9

La maggior parte dei metodi di crittografia attuali dipendono dalla difficoltà dei numeri di factoring che sono il prodotto di due grandi numeri primi. A quanto ho capito, ciò è difficile solo finché il metodo utilizzato per generare i numeri primi grandi non può essere utilizzato come scorciatoia per il factoring del numero composto risultante (e che il factoring di grandi numeri stesso è difficile).

Sembra che i matematici di volta in volta trovino scorciatoie migliori e di conseguenza i sistemi di crittografia devono essere aggiornati periodicamente. (C'è anche la possibilità che il calcolo quantistico alla fine renderà la fattorizzazione un problema molto più semplice, ma questo non colpirà nessuno di sorpresa se la tecnologia raggiungerà la teoria.)

Alcuni altri problemi si sono rivelati difficili. Due esempi che vengono in mente sono le variazioni del problema dello zaino e il problema del venditore ambulante.

So che Merkle-Hellman è stato distrutto, che Nasako-Murakami rimane sicuro e che i problemi con gli zaini possono essere resistenti al calcolo quantistico. (Grazie, Wikipedia.) Non ho trovato nulla sull'uso del problema del commesso viaggiatore per la crittografia.

Quindi, perché coppie di numeri primi grandi sembrano governare la crittografia?

  • È semplicemente perché al momento è facile generare coppie di numeri primi grandi che sono facili da moltiplicare ma difficili da considerare?
  • È perché le coppie di factoring di numeri primi di grandi dimensioni si sono dimostrate difficili a un livello prevedibile abbastanza buono?
  • Le coppie di numeri primi di grandi dimensioni sono utili in un modo diverso dalla difficoltà, come la proprietà di lavorare sia per la crittografia che per la firma crittografica?
  • Il problema di generare serie di problemi per ciascuno degli altri tipi di problemi che sono abbastanza difficili per lo scopo crittografico stesso è troppo difficile per essere pratico?
  • Le proprietà di altri tipi di problemi non sono sufficientemente studiate per essere attendibili?
  • Altro.

8
Innanzitutto, sono abbastanza sicuro che la crittografia a curva ellittica venga utilizzata nella pratica, anche se non ricordo in quale situazione. Eppure hai ragione sul fatto che RSA è usato molto più di altri sistemi crittografici. Penso che il motivo sia principalmente perché la crittografia RSA è una sorta di standard ormai da anni, con un software (buggy, ovviamente!) Che la implementa e con le persone abituate. Altri sistemi di crittografia (basati ad esempio su curve o reticoli ellittici) sono talvolta utilizzabili, ma ha bisogno di persone per acquisirli e questo richiede tempo! Cambiamento di abitudini ...
Bruno,

3
@Bruno Bitcoin ad esempio usa curve ellittiche per firmare le transazioni.
Martin Berger,

Risposte:


9

Boaz Barak ha affrontato questo problema in un post sul blog

Il mio punto di vista dal suo post (approssimativamente parlando) è che sappiamo solo progettare primitive crittografiche usando problemi computazionali che hanno una certa quantità di struttura, che sfruttiamo. Senza struttura, non sappiamo cosa fare. Con troppa struttura, il problema diventa calcolabile in modo efficiente (quindi inutile per scopi crittografici). Sembra che la quantità di struttura debba essere giusta.


Leggendo quell'articolo, ho pensato a un'altra possibile ragione per cui le coppie di factoring di numeri primi di grandi dimensioni rimangono il metodo di scelta per la crittografia a chiave pubblica: è davvero difficile trovare un sostituto. Il numero di matematici che comprende una data alternativa è piccolo, il che (1) limita il numero di persone che possono proporre alternative e (2) limita il numero di persone che possono analizzare credibilmente le proposte per determinare se sono realizzabili. I primi potrebbero non funzionare per sempre, ma funzionano per ora, quindi l'inerzia li mantiene in uso.
Steve,

6

Tutto quello che sto per dire è ben noto (tutti i collegamenti sono su Wikipedia), ma qui va:

  1. (Z/pqZ)×

  2. Esistono altri approcci alla crittografia, in particolare la crittografia basata su reticolo che si basa su alcuni problemi difficili sui reticoli (ad esempio, trovare punti con una piccola norma sul reticolo) per implementare la crittografia a chiave pubblica. È interessante notare che alcuni di questi sistemi sono notevolmente difficili , cioè possono essere rotti se e solo se si può risolvere il corrispondente problema duro nella teoria del reticolo. Questo è in contrasto con, diciamo RSA, che non offre la stessa garanzia . Si noti che l'approccio basato sul reticolo è ipotizzato non NP-difficile (ma per ora sembra più difficile del factoring intero).

  3. Esiste una preoccupazione separata per la condivisione delle chiavi, vale a dire la rivelazione segreta , che ha proprietà di teoria della complessità molto interessanti. Non conosco i dettagli, ma la teoria dei protocolli a conoscenza zero consente ad Alice di rivelare a Bob la sua conoscenza di un segreto che NP è difficile da calcolare (grafico Hamiltoniano) senza rivelare il segreto stesso (il percorso in questo caso).

Infine, potresti voler controllare la pagina sulla crittografia post-quantistica per vedere alcuni approcci alternativi ai sistemi di crittografia a chiave pubblica che si basano su problemi difficili.

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.