• Non ci sono risultati.

Lancio di una moneta

N/A
N/A
Protected

Academic year: 2021

Condividi "Lancio di una moneta"

Copied!
9
0
0

Testo completo

(1)

P rotocolli 1

Protocolli Crittografici

‰

Poker Mentale

‰

Condivisione di segreti

‰

Lancio di una moneta

‰

Oblivious Transfer

‰

Blind Signature

‰

Moneta Elettronica

‰

Elezioni

‰

Certified email

P rotocolli 2

Mental Poker

‰

Poker senza carte, con giocatori

“curiosi” ma “onesti”

‰

Tre giocatori: A nnarella, B iagio, C iro

‰

Cifratura e decifratura commutative:

D(E(x,k

1

),k

2

) = E(D(x,k

2

),k

1

) Esempio: RSA con lo stesso modulo

[Shamir, Rivest, Adleman 1978]

P rotocolli 3

Mental Poker:

B ottiene 5 carte

x

5

,…,x

2

Cifro e permuto le 52 carte E(x1,kA),…,E(x52,kA)

E(x4,kA),…,E(x32,kA)

Scelgo 5 carte e le cifro E(E(x5,kA),kB),…,E(E(x2,kA),kB)

Decifro i 5 valori E(x5,kB),…,E(x2,kB)

P rotocolli 4

Mental Poker:

C ottiene 5 carte

E(x4,kA),…,E(x32,kA) Invio le 47 carte cifrate da A

Invio le 47 carte cifrate da A

47 carte 47 carte

P rotocolli 5

Mental Poker:

C ottiene 5 carte

E(x4,kA),…,E(x32,kA) Invio le 47 carte cifrate da A

Invio le 47 carte cifrate da A

Scelgo 5 carte e le cifro Scelgo 5 carte e le cifro

E(E(x31,kA),kC),…,E(E(x50,kA),kC)

5 cart e 5 cart e

P rotocolli 6

Mental Poker:

C ottiene 5 carte

E(x4,kA),…,E(x32,kA) Invio le 47 carte cifrate da A

Invio le 47 carte cifrate da A

Scelgo 5 carte e le cifro Scelgo 5 carte e le cifro

Decifro i 5 valori Decifro i 5 valori

E(E(x31,kA),kC),…,E(E(x50,kA),kC)

D(E(E(x31,kA),kC),kA),…,D(E(E(x50,kA),kC)kA)

5 cart e

5 cart e

(2)

P rotocolli 7

Mental Poker:

C ottiene 5 carte

E(x4,kA),…,E(x32,kA) Invio le 47 carte cifrate da A

Invio le 47 carte cifrate da A

Scelgo 5 carte e le cifro Scelgo 5 carte e le cifro

Decifro i 5 valori Decifro i 5 valori

E(E(x31,kA),kC),…,E(E(x50,kA),kC) E(x31,kC),…,E(x50,kC)

5 cart e 5 cart e

P rotocolli 8

Mental Poker:

C ottiene 5 carte

E(x4,kA),…,E(x32,kA) Invio le 47 carte cifrate da A

Invio le 47 carte cifrate da A

Scelgo 5 carte e le cifro Scelgo 5 carte e le cifro

Decifro i 5 valori Decifro i 5 valori

E(E(x31,kA),kC),…,E(E(x50,kA),kC) E(x31,kC),…,E(x50,kC)

Decifro i 5 valori x31, …, x50

Decifro i 5 valori x31, …, x50

P rotocolli 9

Mental Poker:

A ottiene 5 carte

E(x

11

,k

A

),…,E(x

45

,k

A

) Scelgo ed invio 5 tra le

42 carte cifrate da A Scelgo ed invio 5 tra le

42 carte cifrate da A

Decifro i 5 valori x

11

,…,x

45

Decifro i 5 valori x

11

,…,x

45

5 carte 5 carte

P rotocolli 1 0

Condivisione di segreti

Un dealer vuole condividere un segreto S tra n partecipanti in modo che:

– k o più partecipanti possano ricostruire S – k-1 o meno partecipanti non hanno alcuna

informazione su S

[Adi Shamir, 1979]

P rotocolli 1 1

Scenario

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

Segreto S Segreto

S

P rotocolli 1 2

Distribuzione del segreto

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

Segreto S Segreto

S

Share

1

Share

2

Share

n

(3)

P rotocolli 1 3

Ricostruzione del segreto

P 1 P

1

P 2

P

2

P P

n

n

Il segreto è S Il segreto

è S Share

1

Share

1

Share

2

Share

2

k partecipanti

P rotocolli 1 4

Ricostruzione del segreto

P 1 P

1

P 2

P

2

P P

n

n

Non abbiamo alcuna informazione

sul segreto Non abbiamo

alcuna informazione

sul segreto Share

1

Share

1

Share

2

Share

2

k-1 partecipanti

P rotocolli 1 5

Inizializzazione schema (k,n)

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

p ← numero primo a1, a2,…, ak-1←elementi in Zp p ← numero primo a1, a2,…, ak-1←elementi in Zp

P rotocolli 1 6

Calcolo share schema (k,n)

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

Segreto S in Z

p

Segreto

S in Z

p

p ← numero primo a1, a2,…, ak-1←elementi in Zp p ← numero primo a1, a2,…, ak-1←elementi in Zp f(x) ← S+a1x+…+ ak-1xk-1

for i=1 to n do yi←f(i) f(x) ← S+a1x+…+ ak-1xk-1 for i=1 to n do yi←f(i)

P rotocolli 1 7

Distribuzione share

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

Segreto S in Z

p

Segreto

S in Z

p

f(x) ← S+a1x+…+ ak-1xk-1 for i=1 to n do yi←f(i) f(x) ← S+a1x+…+ ak-1xk-1 for i=1 to n do yi←f(i)

p ← numero primo a1, a2,…, ak-1←elementi in Zp p ← numero primo a1, a2,…, ak-1←elementi in Zp

y

1

y

2

y

n

P rotocolli 1 8

Esempio schema (3,5)

Dealer Dealer

P 1 P

1

P 2

P

2

P P

5

5

Segreto S ← 12 Segreto

S ←12

f(x) ← 12+11x+2x2 for i=1 to 5 do yi←f(i) f(x) ← 12+11x+2x2 for i=1 to 5 do yi←f(i)

p ← 19 a1 ←11 a2 ←2 p ← 19 a1 ←11 a2 ←2

6 4

P 4 P

4

P 3

P

3

6

3

12

(4)

P rotocolli 1 9

Ricostruzione del segreto

P 1 P

1

P 2

P

2

P P

n

n

Il segreto è S Il segreto

è S Share

1

Share

1

Share

2

Share

2

k partecipanti

P rotocolli 2 0

Informazioni k partecipanti

‰

k equazioni: y

i

= S+a

1

i+…+ a

k-1

i

k-1

per i=i

1

, i

2

, … i

k

‰

k incognite: S, a

1

,…, a

k-1

‰

Possono ricostruire il segreto!

P rotocolli 2 1

Esempio schema (3,5)

‰

P

1

sa che 6 = S + a

1

•1 + a

2

•1

2

‰

P

2

sa che 4 = S + a

1

•2 + a

2

•2

2

‰

P

4

sa che 12 = S + a

1

•4 + a

2

•4

2

 

 

=

 

 

 

 

12 4 6

a a S

16 4 1

4 2 1

1 1 1

2 1

Il sistema ha un’unica soluzione:

S=19 a

1

= 11 a

2

= 2

det = (1-2)(1-4)(2-4) mod 19

= 13

P rotocolli 2 2

Informazioni k partecipanti

Partecipanti P

i1

, P

i2

,…, P

ik

 

 

 

 

 

 

=

 

 

 

 

 

 

 

 

 

 

 

 

k 3 2 1

i i i i

1 k

2 1

1 kk k2 k

1 3k 32 3

1 2k 22 2

1 1k 12 1

y y y y

a a a S

i i i 1

i i i 1

i i i 1

i i i 1

M M L

M M M M

L L L

Il sistema ha un’unica soluzione

<≤

=

k t r

1

(i

r

i

t

) mod p Matrice di Vandermonde det

P rotocolli 2 3

Calcolo del Segreto

‰

Calcolo polinomio f(x)

‰

Formula di interpolazione di Lagrange – Grado k

– F(i

j

)=y

ij

∑ ∏

≠≤

=

= −

j t tk

1 j t

k t 1

j

y

i

i x i i

f(x)

j

‰

Serve solo f(0)=S

≠≤

=

=

j t tk

1 t j

k t 1

j

y

i

i i i

f(0)

j

P rotocolli 2 4

Ricostruzione del segreto

P 1 P

1

P 2

P

2

P P

n

n

Non abbiamo alcuna informazione

sul segreto Non abbiamo

alcuna informazione

sul segreto Share

1

Share

1

Share

2

Share

2

k-1 partecipanti

(5)

P rotocolli 2 5

Informazioni k-1 partecipanti

‰

k-1 equazioni: y

i

= S+a

1

i+…+ a

k-1

i

k-1

per i=i

1

, i

2

, … i

k-1

‰

k incognite: S, a

1

,…, a

k-1

‰

Non possono ricostruire il segreto

‰

Ogni segreto è equamente possibile

P rotocolli 2 6

Esempio schema (3,5)

‰

P

1

sa che 6 = S + a

1

•1 + a

2

•1

2

‰

P

2

sa che 4 = S + a

1

•2 + a

2

•2

2

 

 

= 

 

 

 

 

4 6 a a S 4 2 1

1 1 1

2 1

Il sistema ha 19 soluzioni:

5 2 18

14 13 17

4 5 16

13 16 15

3 8 14

12 0 13

2 11 12

11 3 11

20 14 10

10 6 9

0 17 8

9 9 7

18 1 6

8 12 5

17 4 4

7 15 3

16 7 2

6 18 1

15 10 0

a2 a1 S

P rotocolli 2 7

Ricostruzione del segreto

P 1 P

1

P 2

P

2

P P

n

n

Non abbiamo alcuna informazione

sul segreto Non abbiamo

alcuna informazione

sul segreto Share

1

Share

1

Share

2

Share

2

k-1 partecipanti

P rotocolli 2 8

Informazioni k-1 partecipanti

‰

k-1 equazioni: y

i

= S+a

1

i+…+ a

k-1

i

k-1

per i=i

1

, i

2

, … i

k-1

‰

k incognite: S, a

1

,…, a

k-1

‰

Ipotizzano un valore per il segreto S S = S+a

1

0+…+ a

k-1

0

k-1













=

























k 3 2 1

i i i i

1 k

2 1

1 kk k2 k

1 3k 32 3

1 2k 22 2

1 1k 12 1

y y y y

a a a S

i i i 1

i i i 1

i i i 1

i i i 1

M M L

M M M M

L L L

Il sistema ha un’unica soluzione

<

=

k t r

1 (ir it)modp

det

Matrice di Vandermonde

i

k

= 0

P rotocolli 2 9

Inizializzazione schema (n,n)

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

p ← numero primo a1, a2,…, an-1←elementi in Zp p ← numero primo a1, a2,…, an-1←elementi in Zp

P rotocolli 3 0

Calcolo share schema (n,n)

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

Segreto S in Z

p

Segreto

S in Z

p

p ← numero primo a1, a2,…, an-1←elementi in Zp p ← numero primo a1, a2,…, an-1←elementi in Zp an←S-a1-…-an-1mod p

an←S-a1-…-an-1mod p

(6)

P rotocolli 3 1

Distribuzione share

Dealer Dealer

P 1 P

1

P 2

P

2

P P

n

n

Segreto S in Z

p

Segreto

S in Z

p

p ← numero primo a1, a2,…, an-1←elementi in Zp p ← numero primo a1, a2,…, an-1←elementi in Zp

a

1

a

2

a

n an←S-a1-…-an-1mod p

an←S-a1-…-an-1mod p

P rotocolli 3 2

Esempio schema (5,5)

Dealer Dealer

P 1 P

1

P 2

P

2

P P

5

5

Segreto S ←5 Segreto

S ← 5

p ← 7 a1 ←3 a2 ←2 a3 ←1 a4 ←2 p ← 7 a1 ←3 a2 ←2 a3 ←1 a4 ←2

3 2

P 4 P

4

P 3

P

3

1

4 2

a5←5-3-2-1-2 mod 7

a5←5-3-2-1-2 mod 7

P rotocolli 3 3

Ricostruzione del segreto

P 1 P

1

P 2 P

2

P n P

n

Il segreto è S Il segreto

è S Share

1

Share

1

Share

2

Share

2

n partecipanti Share

n

Share

n

S ← a1+…+an-1+anmod p S ← a1+…+an-1+anmod p

P rotocolli 3 4

Ricostruzione del segreto

P 1 P

1

P i P

i

P n P

n

Non abbiamo alcuna informazione

sul segreto Non abbiamo

alcuna informazione

sul segreto Share

1

Share

1

Share Share

22

n-1 partecipanti

P rotocolli 3 5

Esempio schema (5,5)

‰

P

1

sa che 3 = a

1

‰

P

2

sa che 2 = a

2

‰

P

3

sa che 1 = a

3

‰

P

5

sa che 4 = S-a

1

-a

2

-a

3

–a

4

mod 7

Il sistema ha 7 soluzioni:

3 6

2 5

1 4

0 3

6 2

5 1

4 0

a

4

S

P rotocolli 3 6

Lancio di una moneta

… …

E’ uscito testa/croce

E’ uscito testa/croce E’ uscito testa/croce E’ uscito testa/croce

iagio

nnarella

(7)

P rotocolli 3 7

Lancio di una moneta protocollo naive

E’ uscito testa

E’ uscito testa E’ uscito testa E’ uscito testa

Lancio moneta

testa

iagio nnarella

P rotocolli 3 8

Lancio di una moneta

iagio

E’ uscito b⊕b´

E’ uscito b⊕b´ E’ uscito b⊕b´ E’ uscito b⊕b´

Scegli bit b

Scegli bit b´

x←commitment(b)

x

rivela b

nnarella

P rotocolli 3 9

Commitment

Equivalente digitale di una busta

‰

“Facile” da calcolare

‰

Dato x è “difficile” calcolare b

‰

“Facile” mostrare che x = commitment(b)

‰

“Difficile” mostrare che x = commitment(1-b)

x←commitment(b) x←commitment(b)

P rotocolli 4 0

Commitment

Esempio

p a rità

n,e

(C) = bit meno significativo di M 0 se M < n/2

h a lf

n,e

(C) =

1 se M > n/2

C = M

e

mod n C = M

e

mod n x←commitment(b) x←commitment(b) b = p red ica to_d ifficile (x)

P rotocolli 4 1

Crittografia probabilistica Testo in chiaro M = M 1 M 2 M 3 Testo cifrato C = C 1 C 2 C 3

M i = p red icato_d ifficile (C i )

P rotocolli 4 2

Blind Signature

… …

F è la firma di M da parte di B F è la firma di M

da parte di B

Non so che cosa ho firmato Non so che cosa

ho firmato

iagio nnarella

Voglio avere la firma di M da parte di B Voglio avere la firma

di M da parte di B

(8)

P rotocolli 4 3

Blind Signature

protocollo con busta

iagio nnarella

Voglio avere la firma di M da parte di B Voglio avere la firma

di M da parte di B

M F’

M,F

F’

P rotocolli 4 4

Blind Signature

protocollo con RSA

iagio nnarella

Voglio avere la firma di M da parte di B Voglio avere la firma

di M da parte di B

M F’

M,F

F’

k ←valore casuale t←Mkemod n

t

F’←tdmod n

F’

F ← F’ k-1mod n

P rotocolli 4 5

Blind Signature

protocollo con RSA

iagio nnarella

Voglio avere la firma di M da parte di B Voglio avere la firma

di M da parte di B

M F’

M,F

F’

k ←valore casuale t←Mkemod n

t

F’←tdmod n

F’

F ← F’ k-1mod n

F = F’ k-1mod n

= tdk-1mod n

= (Mke)d k-1mod n

= Md kedk-1mod n

= Mdmod n F = F’ k-1mod n

= tdk-1mod n

= (Mke)d k-1mod n

= Md kedk-1mod n

= Mdmod n P rotocolli 4 6

Moneta Elettronica

nnarella … … anca

Anonimia

Moneta elettronica

egoziante Deposito

P rotocolli 4 7

Moneta Elettronica I

nnarella anca

Anonimia

Assegno $1000

F’ F’

FirmaBanca(Assegno $1000)

Problemi?

P rotocolli 4 8

Moneta Elettronica II

nnarella anca

Assegno $1000

Assegno $1000

F’ F’

FirmaBanca(Assegno $1000)

Apri queste 99 buste

100

Busta non aperta

(9)

P rotocolli 4 9

Moneta Elettronica II

nnarella anca

Assegno $1000

Assegno $1000

F’ F’

FirmaBanca(Assegno $1000)

Apri queste 99 buste

100

Busta non aperta

Problemi?

P rotocolli 50

Moneta Elettronica III

nnarella anca

Assegno $1000, r1

Assegno $1000, r100

F’ F’

FirmaBanca(Assegno $1000, r)

Apri queste 99 buste

100

Busta non aperta

Riferimenti

Documenti correlati

Oltre ad una breve premessa, nel testo sono presentati una descrizione sintetica del calcolo di adeguamento valutario tra differenti periodi temporali, un esempio numerico pratico

[r]

(c) Se l’offerta di moneta rimane costante al livello m t , una variazione del tasso di crescita dell’offerta di moneta fa variare il livello dei prezzi nello stesso verso. (d) Se

Supponiamo di essere interessati a una modalità dell'esperimento evento A (testa, faccia 5..) che valutiamo essere un “successo” mentre la comparsa dell’evento complementare

 Con il bottone Lancia iniziamo le prove: il software simula i lanci e ferma il procedimento quando i primi 9 lanci di una prova sono nelle condizioni (*).. Il numero di

(c) Sapendo che le palline estratte sono entrambe rosse, è più probabile che la moneta abbia dato come esito testa, oppure croce..

Questi si- stemi di pagamento, tecnologicamente innovativi, sono servizi offerti da intermediari specia- lizzati (come possono essere banche, istituti di pagamento, Poste,

Basandosi su un altro campione con le stesse caratteristiche di quello del Literary Digest e intervistando 3.000 individui, predisse l’errore prima che la rivista pubblicasse i