Crittosistema di Rabin

Da testwiki.
Vai alla navigazione Vai alla ricerca

Il crittosistema di Rabin è un sistema di cifratura a chiave pubblica sviluppato nel 1979 da Michael Oser Rabin che, come per il sistema RSA, basa la propria sicurezza sul fatto che il problema della fattorizzazione di interi è computazionalmente difficile.

Cifratura

Generazione delle chiavi

Ogni utente deve

  • Generare due numeri primi p e q tali che p3(mod4) e q3(mod4)
  • Calcolare n=pq

A questo punto

  • (p,q) è la chiave privata
  • n è la chiave pubblica

Funzione di cifratura

La funzione di cifratura è:

fA:nn,fA(M)=CM2(modn)

Decifrazione

La procedura per decifrare un dato messaggio cifrato C richiede la conoscenza della chiave privata (p,q) e l'esecuzione dei seguenti passaggi:

  1. Si calcolano
    1. mpCp+14(modp)
    2. mqCq+14(modq)

Allora ±mp(modp) e ±mq(modq) sono le radici quadrate di C in p e q rispettivamente.

  1. Con l'algoritmo di Euclide si calcolano due interi a,b tali che ap+bq=1
  2. Con il Teorema cinese del resto si computano
    1. M1=apmq+bqmp
    2. M2=apmqbqmp
    3. M3=apmq+bqmp
    4. M4=apmqbqmp
  3. Uno tra M1, M2, M3, M4 è M

Dettagli e casi particolari

Per distinguere la m che codifica il messaggio delle altre radici (le altre m), sarà necessario includere informazioni aggiuntive.

È interessante il fatto che nel caso in cui il numero primo P è congruente a 1 modulo 4, nessun algoritmo polinomiale deterministico è noto per trovare le radici quadrate dei residui quadratici di P.

Pertanto, il fatto che P = 3 mod 4, e q = 3 mod 4 è fondamentale per il corretto funzionamento dell'algoritmo descritto, in quanto è la campo di esistenza delle equazioni precedenti.

Un utente malintenzionato non saprebbe quale delle quattro radici è corretta, ma non il destinantario. Ciò viene risolto concordando alcune regole di ridondanza, note fra mittente e destinatario, da includere nel messaggio per essere in grado di distinguere quale delle quattro radici corrisponde a quella del messaggio originale.

Sicurezza del sistema di Rabin

Template:...

Voci correlate

Template:Portale