• Non ci sono risultati.

Diffie-Hellman [1976] Diffie-Hellman [1976] Generatori Z Accordo su una chiave Diffie-Hellman [1976]

N/A
N/A
Protected

Academic year: 2021

Condividi "Diffie-Hellman [1976] Diffie-Hellman [1976] Generatori Z Accordo su una chiave Diffie-Hellman [1976]"

Copied!
5
0
0

Testo completo

(1)

Diffie-Hellman 0

Accordo su una chiave

iagio

K K K K K

K

?? ??

nnarella

Diffie-Hellman 1

Diffie-Hellman [1976]

primo p, generatore g di Zp*

?? ??

iagio

nnarella

Diffie-Hellman 2

Generatori

210= 1024 = 1 mod 11

21 = 2 mod 11

28= 256 = 3 mod 11

22 = 4 mod 11

24= 16 = 5 mod 11 29= 512 = 6 mod 11 27= 128 = 7 mod 11

23 = 8 mod 11

26= 64 = 9 mod 11 25= 32 = 10 mod 11 g è generatore di Zp*se {gi|1≤i≤ p-1} = Zp* g è generatore di Zp*se {gi|1≤i≤ p-1} = Zp*

g = 2 è un generatore diZ11* g = 2 è un generatore diZ11* Esempio:

Diffie-Hellman 3

Potenze in Z

19*

1 18 1 18 1 18 1 18 1 18 1 18 1 18 1 18 1 18

1 9 5 7 6 16 11 4 17 1 9 5 7 6 16 11 4 17

1 6 17 7 4 5 11 9 16 1 6 17 7 4 5 11 9 16

1 14 6 8 17 10 7 3 4 18 5 13 11 2 9 12 16 15

1 15 16 12 9 2 11 13 5 18 4 3 7 10 17 8 6 14

1 3 9 8 5 15 7 2 6 18 16 10 11 14 4 12 17 13

1 8 7 18 11 12 1 8 7 18 11 12 1 8 7 18 11 12

1 7 11 1 7 11 1 7 11 1 7 11 1 7 11 1 7 11

1 2 4 8 16 13 7 14 9 18 17 15 11 3 6 12 5 10

1 17 4 11 16 6 7 5 9 1 17 4 11 16 6 7 5 9

1 12 11 18 7 8 1 12 11 18 7 8 1 12 11 18 7 8

1 11 7 1 11 7 1 11 7 1 11 7 1 11 7 1 11 7

1 16 9 11 5 4 7 17 6 1 16 9 11 5 4 7 17 6

1 4 16 7 9 17 11 6 5 1 4 16 7 9 17 11 6 5

1 5 6 11 17 9 7 16 4 1 5 6 11 17 9 7 16 4

1 13 17 12 4 14 11 10 16 18 6 2 7 15 5 8 9 3

1 10 5 12 6 3 11 15 17 18 9 14 7 13 16 8 4 2

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

a18 a17 a16 a15 a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4 a3 a2 a

Diffie-Hellman [1976]

?? ??

scelgo y scelgo y scelgo y scelgo x

scelgo x scelgo x

iagio nnarella

primo p, generatore g

Diffie-Hellman [1976]

?? ??

g gxxmod pmod p

scelgo y scelgo y scelgo y scelgo x

scelgo x scelgo x

iagio nnarella

primo p, generatore g

(2)

Diffie-Hellman 6

Diffie-Hellman [1976]

?? ??

ggxxmod mod pp g gyymod mod pp

scelgo y scelgo y scelgo y scelgo x

scelgo x scelgo x

iagio nnarella

primo p, generatore g

Diffie-Hellman 7

Diffie-Hellman [1976]

K = gxymod p

= (gy)xmod p K = gK = gxyxymodmodpp

= (

= (ggyy))xxmodmodpp

?? ??

ggxxmod pmod p g gyymod pmod p

scelgo y scelgo y scelgo y scelgo x

scelgo x scelgo x

iagio nnarella

primo p, generatore g

K = gxymod p

= (gx)ymod p K = K = ggxyxymodmodpp

= (

= (ggxx))yymodmodpp

Diffie-Hellman 8

Diffie-Hellman:

“piccolo

esempio

primo 11, generatore 2

K=4=23·4mod 11

= 53mod 11 K=4=2

K=4=23·43·4modmod1111

= 5

= 533modmod1111

?? ??

8 = 2

8 = 233mod 11mod 11 5 = 2

5 = 244mod mod 1111

scelgo y=4 scelgo y=4 scelgo y=4 scelgo x=3

scelgo x=3 scelgo x=3

iagio nnarella

K=4=23·4mod 11

= 84mod 11 K=4=2

K=4=23·43·4modmod1111

= 8

= 844modmod1111

Diffie-Hellman 9

Esercizio

Svolgere “piccolo” esempio Diffie-Hellman Utilizzare p = 19

Calcolo di g Calcolo di x ed y

Calcolo messaggi scambiati (ggxxmodmod19, g19, gyymodmod19)19) Calcolo della chiave K

Diffie-Hellman 10

Dati a,n,b calcolare x tale che ax= b mod n Dati a,n,b calcolare x tale che ax= b mod n

Logaritmo discreto

‰ Esempio: 3x= 7 mod 13 soluzione x = 6

‰ Se n è primo, i migliori algoritmi hanno complessità

Ln[a,c] = O(e(c+o(1))(ln n)a(lnln n)1-a)

con c > 0 ed 0 < a < 1

‰ Miglior algoritmo: Number field sieve tempo medio euristico Ln[1/3, 1.923]

Diffie-Hellman 11

Logaritmo discreto

La sicurezza di molte tecniche

crittografiche si basa sulla intrattabilità del logaritmo discreto:

‰Accordo su chiavi di Diffie-Hellman

‰Crittosistema di El-Gamal

‰Firme digitali di El-Gamal e DSS

‰…

(3)

Diffie-Hellman 12

Problema di Diffie-Hellman

Il miglior algoritmo conosciuto calcola prima il logaritmo discreto x ← logg,p(gxmod p)

Input: primo p, generatore g, gxmod p, gymod p Calcolare: gxymod p

Input: primo p, generatore g, gxmod p, gymod p Calcolare: gxymod p

… ma non si sa se sono equivalenti!

Diffie-Hellman 13

Generatori di Z

n*

‰ Zn*ha un generatore n = 2,4,pk,2pk, con p primo e k≥1 In particolare, se p è primo, allora Zp* ha un generatore

‰ Se α è un generatore di Zn*, allora Zn* = {αimod n | 0 ≤ i ≤ φ(n)-1}

b = αimod n è un generatore di Zn* gcd(i,φ(n))=1 il numero di generatori in Zn* è φ(φ(n)).

Teorema di Eulero x∈Zn* xφ(n)=1 mod n

‰ Ordine di α∈Zn*= il più piccolo intero positivo r tale che αr = 1 mod n

‰ α è generatore di Zn*se ha ordine φ(n)

Diffie-Hellman 14

Potenze in Z

19*

1 18 1 18 1 18 1 18 1 18 1 18 1 18 1 18 1 18

1 9 5 7 6 16 11 4 17 1 9 5 7 6 16 11 4 17

1 6 17 7 4 5 11 9 16 1 6 17 7 4 5 11 9 16

1 14 6 8 17 10 7 3 4 18 5 13 11 2 9 12 16 15

1 15 16 12 9 2 11 13 5 18 4 3 7 10 17 8 6 14

1 3 9 8 5 15 7 2 6 18 16 10 11 14 4 12 17 13

1 8 7 18 11 12 1 8 7 18 11 12 1 8 7 18 11 12

1 7 11 1 7 11 1 7 11 1 7 11 1 7 11 1 7 11

1 2 4 8 16 13 7 14 9 18 17 15 11 3 6 12 5 10

1 17 4 11 16 6 7 5 9 1 17 4 11 16 6 7 5 9

1 12 11 18 7 8 1 12 11 18 7 8 1 12 11 18 7 8

1 11 7 1 11 7 1 11 7 1 11 7 1 11 7 1 11 7

1 16 9 11 5 4 7 17 6 1 16 9 11 5 4 7 17 6

1 4 16 7 9 17 11 6 5 1 4 16 7 9 17 11 6 5

1 5 6 11 17 9 7 16 4 1 5 6 11 17 9 7 16 4

1 13 17 12 4 14 11 10 16 18 6 2 7 15 5 8 9 3

1 10 5 12 6 3 11 15 17 18 9 14 7 13 16 8 4 2

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

a18 a17 a16 a15 a14 a13 a12 a11 a10 a9 a8 a7 a6 a5 a4 a3 a2 a

Diffie-Hellman 15

Scelta di un generatore

‰ p primo, p -1 = p1e1 p2e1… pkek

α(p-1)/p11 mod p

‰ αè un generatore di Zp* ...

α(p-1)/pk1 mod p

‰ 11 primo, p-1 = 10 = 2·5 Esempio

‰ 2 è un generatore di Z11*perché 2(11-1)/2= 25 = 10 ≠ 1 mod 11 2(11-1)/5= 22= 4 ≠ 1 mod 11

‰ 11 primo, p-1 = 10 = 2·5 EsempioEsempio

‰ 2 è un generatore di Z11*perché 2(11-1)/2= 25 = 10 ≠ 1 mod 11 2(11-1)/5= 22= 4 ≠ 1 mod 11

Scelta di un generatore

‰ p primo, p -1 = p1e1 p2e1… pkek

α(p-1)/p11 mod p

‰ αè un generatore di Zp* ...

α(p-1)/pk1 mod p

‰ 11 primo, p-1 = 10 = 2·5 Esempio

‰ 3 non è un generatore di Z11*perché 3(11-1)/2= 35 = 243 = 1 mod 11 3(11-1)/5= 32= 9 ≠ 1 mod 11

‰ 11 primo, p-1 = 10 = 2·5 EsempioEsempio

‰ 3 non è un generatore di Z11*perché 3(11-1)/2= 35 = 243 = 1 mod 11 3(11-1)/5= 32= 9 ≠ 1 mod 11

Scelta di un generatore

‰ p primo, p -1 = p1e1 p2e1… pkek

α(p-1)/p11 mod p

‰ αè un generatore di Zp* ...

α(p-1)/pk1 mod p

(4)

Diffie-Hellman 18

Scelta di un generatore

‰ p primo, p -1 = p1e1 p2e1… pkek

α(p-1)/p11 mod p

‰ αè un generatore di Zp* ...

α(p-1)/pk1 mod p

Scegli_generatore( p, (p1,e1,p2,e2,…,pk,ek) ) 1. α ← elemento scelto a caso in Zp*

2. if (α(p-1)/p1 1 mod p and andα(p-1)/pk1 mod p) then esci

else go to 1.

Scegli_generatore( p, (p1,e1,p2,e2,…,pk,ek) ) 1. α ← elemento scelto a caso in Zp*

2. if (α(p-1)/p1 1 mod p and andα(p-1)/pk1 mod p) then esci

else go to 1. trovato!trovato!

Diffie-Hellman 19

Probabilità successo singola iterazione

 Numero di generatori modulo un primo p è φ(φ(p)) = φ(p -1)

> (p -1) /(6 ·lnln(p-1))

per ogni intero n≥5, φ(n) > n/(6lnln n) per ogni intero n≥5, φ(n) > n/(6lnln n)

Diffie-Hellman 20

Probabilità successo singola iterazione

Numero di generatori modulo un primo p è φ(φ(p)) = φ(p -1)

> (p -1) /(6 ·lnln(p-1))

Probabilità che un elemento a caso in Zp*sia generatore φ(φ(p)) p -1 1

= > =φ(p) φ(p) 6 ·lnln(p -1) 6 ·lnln(p -1) per ogni intero n≥5,

φ(n) > n/(6lnln n) per ogni intero n≥5, φ(n) > n/(6lnln n)

Diffie-Hellman 21

Analisi di

Scegli_generatore

Numero medio di iterazioni < 6 ·lnln(p -1)

512 bit 6 ·lnln(2512) ≈ 35,23 1024 bit 6 ·lnln(21024) ≈ 39,38 2048 bit 6 ·lnln(22048) ≈ 43,54 512 bit 6 ·lnln(2512) ≈ 35,23 1024 bit 6 ·lnln(21024) ≈ 39,38 2048 bit 6 ·lnln(22048) ≈ 43,54

Diffie-Hellman 22

Generazione chiavi Diffie-Hellman

1. Scegli a caso 2 numeri primi p1 p2

2. p ← 1 + 2p1p2

3. Se p non è primo, go to 1.

4. g ← Scegli_generatore(p,(2,1,p1,1,p2 ,1)) 1. Scegli a caso 2 numeri primi p1 p2

2. p ← 1 + 2p1p2

3. Se p non è primo, go to 1.

4. g ← Scegli_generatore(p,(2,1,p1,1,p2 ,1))

Diffie-Hellman 23

Esercizio

Svolgere “piccolo” esempio Diffie-Hellman Calcolo di p e g

Calcolo di x ed y

Calcolo messaggi scambiati (ggxxmodmodp, gp, gyymodmodp)p) Calcolo della chiave K

(5)

Diffie-Hellman 24

Puzzle di Merkle

Puzzle la cui soluzione richiede t operazioni Esempio:

Puzzle(x,ID) Scegli una chiave k

Computa y ← CBC-DESk(x,ID) return (y, primi 20 bit di k) Puzzle(x,ID)

Scegli una chiave k

Computa y ← CBC-DESk(x,ID) return (y, primi 20 bit di k)

Richiede 235operazioni in media Soluzione del puzzle: x

Diffie-Hellman 25

Puzzle di Merkle

x

j

x x

jj

x

j

x

x

jj

?? ??

Puzzle

Puzzle11, …, , …, PuzzlePuzzlenn

ID IDjj

Scegli x1, …, xn, ID1, …, IDn Puzzlei←Puzzle(xi,IDi) Scegli x

Scegli x11, …, x, …, xnn, ID, ID11, …, , …, IDIDnn Puzzle

Puzzleii←PuzzlePuzzle((xxii,ID,IDii)) Scegli j Risolvi Puzzlej

Scegli j Scegli j Risolvi Risolvi PuzzlePuzzlejj

iagio nnarella

Diffie-Hellman 26

Puzzle di Merkle

‰Computazioni di :

Costruzione di n puzzle tempo θ(n)

‰Computazioni di :

Risoluzione di un puzzle tempo θ(t)

‰Computazioni di :

Risoluzione di n/2 puzzle in media tempo θ(t·n)

Diffie-Hellman 27

Puzzle di Merkle

‰ Computazioni di :

Costruzione di n puzzle tempo θ(n)

‰Computazioni di :

Risoluzione di un puzzle tempo θ(n)

‰Computazioni di :

Risoluzione di n/2 puzzle in media tempo θ(n2)

Se n = θ(t) Se n = θ(t)

Riferimenti

Documenti correlati

Replay attack and masquerade attack The protocol requires that after receiving an unauthenticated resource request, the Service Provider chooses a Diffie-Hellman base A, a

The number n of particles marginating and adhering onto the substrate of the chamber has been measured over time showing that: (i) the number of quasi-hemispherical silicon

Ozone and drought in combination generally had antagonistic effects on Tot Phen content in 323.. all species

@ABCDEFGHIJKLMNOPQRSROSOTNQUVQRWUXMWLTYQPWWZ[Q\OMS]QWQU^_\`aLSYQ]QQRbTcROWTULTXSRSNWQPQOVSPRMWMRQ[PTdNQe

Che problemi ci sono con questa versione del

Si tratta di sistemi crittografici, proposti in modo solo teorico nel 1976 da Diffie e Hellman, in cui la chiave di cifratura è pubblica (quindi nota a tutti) mentre

Nel caso invece in cui il metodo di Fallback scelto sia DIFFIE HELLMAN, il responder non sarebbe in grado di generare le chiavi non avendo ricevuto il pay- load KE dell’initiator

Summary Trends in incidence and mortality for basal cell carcinomas (BCC), squamous cell carcinomas (SCC) and cutaneous malignant melanoma (CMM) for the period 1976-92 were