Cifrari asimmetrici
Click here to load reader
-
Upload
marco-montanari -
Category
Documents
-
view
132 -
download
2
Transcript of Cifrari asimmetrici
CIFRARI ASIMMETRICI DATI SUI PRINCIPALI CIFRARI ASIMMETRICI
RSA
ALGO RI MO G
1. Scelta di due interi primi grandi e sicuri: ๐, ๐ (eventualmente test di Miller-Rabin)
2. Calcola ๐ = ๐ ร ๐
3. Calcola ฮฆ ๐ = ฮฆ ๐ ร ฮฆ ๐ = ๐ โ 1 ร (๐ โ 1)
4. Sceglie un intero ๐ tale che ๐๐ถ๐ท ฮฆ ๐ , ๐ = 1
5. Calcola ๐ = ๐โ1๐๐๐ ฮฆ(n)
6. Rende pubblica la coppia ๐, ๐
7. Utilizza come privata la coppia ๐, ๐
ALGO RIT MO E ๐ = ๐๐ ๐๐๐ ๐
ALGO RIT MO D
๐ = ๐๐ ๐๐๐ ๐ = ๐๐ ๐ ๐๐๐ ๐ = ๐๐ ๐ ๐๐๐ ๐ = ๐ ๐๐๐ ๐ = ๐
DEBO LEZZE
Cycling attack
Testi unconcealed hanno ๐๐ โก ๐
ELGAMAL
ALGO RI MO G
1. Scelta di un numero primo ๐ di un suo generatore ๐ un numero a caso 1 โค ๐ข โค
๐ โ 2
2. Chiave pubblica : ๐, ๐, ๐๐ข ๐๐๐ ๐
3. Chiave privata: ๐ข
ALGO RIT MO E
1. Scelta di un numero casuale ๐ < ๐
2. Calcolo di ๐ = ๐ ร ๐๐ข ๐ ๐๐๐ ๐
3. Calcolo di ๐ = ๐๐ ๐๐๐ ๐
4. Trasmissione di ๐ โฅ ๐
ALGO RIT MO D
1. Calcolo ๐ = ๐ ๐โ1โ๐ข ๐๐๐ ๐
2. Calcolo ๐ = ๐ ร ๐ ๐๐๐ ๐
DEBO LEZZE
Unico svantaggio: ogni messaggio viene sdoppiato e quindi i dati da passare sono doppi.
CIFRARIO IBRIDO Invece di usare DH si puรฒ effettuare uno scambio di chiavi basandosi su un sistema a chiave
pubblica. Lo scambio di chiavi avviene quindi come segue:
1. Scelta di una chiave one-time ๐
2. Scelta di un algoritmo simmetrico CS
3. Scelta di un algoritmo asimmetrico CA
4. Calcolo di ๐ธ๐๐(๐ โฅ ๐ถ๐) con CA
5. Calcolo di ๐ธ๐ ๐ con CS
6. Invio del messaggio ๐ธ๐๐(๐ โฅ ๐ถ๐) โฅ ๐ธ๐ ๐
Nel contempo il ricevente fa questi passi.
1. Usa CA per calcolare ๐ท๐๐ ๐ธ๐๐ ๐ โฅ ๐ถ๐ e viene a conoscenza di k e CS
2. Usa CS per calcolare ๐ท๐ ๐ธ๐ ๐ = ๐
BLUM-GOLDWASSER
ALGO RIT MO G
1. Scelta di ๐, ๐ โก 3 (๐๐๐ 4)
2. Calcolo ๐ = ๐ ร ๐
3. Calcolo ๐, ๐ tali che ๐๐ + ๐๐ ๐๐๐ ฮฆ ๐ = 1 (Algoritmo esteso di Euclide)
4. Chiave Pubblica: {๐}
5. Chiave Privata: ๐, ๐, ๐, ๐
ALGO RIT MO E
Chi vuole inviare un messaggio sceglie a caso il valore ๐ฅ0, uno dei residui quadratici modulo
n, e genera altri ๐ก residui quadratici, con ๐ก = ln ๐ , iterando la funzione pseudo-
unidirezionale
๐ฅ๐+1 = ๐ฅ๐2 ๐๐๐ ๐
Il messaggio m viene inoltre suddiviso in blocchi di ln ๐ก bit.
Ad ogni iterazione sono trasmessi i bit risultanti dallโEX-OR degli โ bit meno significativvi di
๐ฅ๐ e dei bit del blocco ๐
ALGO RIT MO D
Una volta individuato il seed ricostrisce il flusso di chiave con un generatore identico a
quello usato in trasmissione e impiega h EX-OR per rimettere in chiaro i blocchi di testo
cifrato.