Академический Документы
Профессиональный Документы
Культура Документы
Cecuri electronice
2. Protocolul de plata:
Utilizatorul U doreste sa foloseasca la magazinul S o suma de valoare mai mica sau egala
cu 2k 1 (presupunem, pentru claritate, k 3 si U utilizeaza suma de 5 = 1012 unitati).
Atunci, U trebuie sa i releve lui S: valorile A, B, semnatura pe care a obtinut-o de
la banca asupra lui (A, B) si numerele (a1 , a3 ), corespunzatoare reprezentarii n binar a
valorii sumei.
3. Protocolul de depozit:
Magazinul S depoziteaza la banca cecul electronic (A, B, sigK (A, B)) mpreuna cu partea
folosita din cec: (a1 , a3 ). Banca stocheaza perechea (a1 , a3 ) ntr-o lista de recuperare.
95
96 PRELEGEREA 8. CECURI ELECTRONICE
Daca banca accepta, ea sterge din baza de date m si crediteaza contul lui U cu suma
nefolosita din cec: 2k 1 5 = 2k 6.
Deoarece cecul este nedivizibil, un utilizator are dreptul sa foloseasca un cec o singura
data. Daca nu a utilizat valoarea maxima a cecului, U trebuie sa urmeze mpreuna cu banca
protocolul de recuperare.
Vom construi mai tarziu si un sistem de cecuri cu proprietatea de divizibilitate.
Deschiderea unui cont se similar ca n sistemul de baza, utilizatorul U fiind cunoscut prin
pseudonimul sau I = g1u1 g2u2 (mod p), cu u1 , u2 generate aleator n Zq .
Un cec electronic este de forma (m0 , sigK (m0 )) cu restrictia ca exista s Zq cu m0 =
ms (mod p), unde m contine de aceasta data atat identitatea utilizatorului care a extras cecul,
cat si valoarea maxima a cecului:
2
Y k
Y
ui ai bi a
m=( gi )dz11 ( ei fi )d2k+1 (mod p)
i=1 i=1
| {z }| {z }
identitate valoare
Rolul generatorului d1 este acelasi ca n sistemul de baza (sa asigure ca identitatea utiliza-
torului ramane ascunsa daca acesta este onest), iar rolul lui d2 va fi sa mpiedice realizarea de
legaturi de catre banca dupa protocolul de recuperare.
Propozitia 8.1 Daca U urmeaza protocolul anterior, atunci perechile (m0 , sigK (m0 )) nu pot fi
legate de nici o executie specifica a protocolului.
Demonstratia este similara celei de la Propozitia ?.2, aratand ca exista exact q valori posibile
pentru (s, u, v) care produc aceeasi pereche (m0 , sigK (m0 )). 2
Demonstratia este similara celei de la Teorema ?.3, aratand ca obtinerea unei semnaturi
pentru un mesaj m0 , unde m0 nu este multiplu de m, este echivalenta din punct de vedere
al complexitatii cu constructia unui algoritm care rezolva problema determinarii cheii unice
Diffie-Hellman. 2
98 PRELEGEREA 8. CECURI ELECTRONICE
Observatia 8.1 Cheia publica folosita de banca pentru cecuri trebuie sa difere de cheia publica
pentru monezi.
Aceasta deoarece, daca ar fi egale, U ar putea sa trimita la pasul 2 al protocolului de extragere
a cecului electronic, m1 = g1t cu t aleator in Zq si sa obtina o semnatura asupra lui m0 = ms
cu m = g1u1 +t g2u2 d1 (mod p). Apoi, U ar putea sa foloseasca aceasta semnatura ca o moneda si
ar ncalca afirmatiile demonstrate n Teorema ?.2, cu consecinte asupra securitatii sistemului.
Sa demonstram acest lucru.
Propozitia 8.3 Daca utilizatorul U foloseste de doua ori n sistemul de baza o moneda de
forma (m0 , sigK (m0 )) cu m0 = ms (mod p) si m = g1u1 +t g2u2 d1 (mod p), t ales aleator n Zq ,
atunci B nu are suficiente informatii pentru a determina identitatea lui U cu o probabilitate
ne-neglijabila.
Demonstratie:
Similar demonstratiei Teoremei ?.2, B poate calcula
(u1 + t)s = x1 + x2 = (r1 c0 r1 0 c)(c0 c)1 + (r1 r1 0 )(c c0 )1 (mod q),
u2 s = y1 + y2 = (r2 c0 r2 0 c)(c0 c)1 + (r2 r2 0 )(c c0 )1 = y2 (mod q),
s = z1 + z2 = (r3 c0 r3 0 c)(c0 c)1 + (r3 r3 0 )(c c0 )1 = z2 (mod q),
unde r1 , r2 , r3 , respectiv r1 0 , r2 0 , r3 0 sunt raspunsurile date de U n cele doua protocoale de
plata n care acesta a utilizat moneda.
De aici, B deduce u2 si u1 + t. Cum t a fost ales aleator de U n Zq , B are q 1 posibilitati
1
de alegere pentru t, deci cunoaste identitatea lui U cu probabilitatea 2
q1
2. S se asigura ca AB 6= 1.
( 0 0
0 0 g r = hc a0 (mod p)
Apoi el verifica semnatura bancii: verK (m , sigK (m ) = T 0 0
(m0 )r = (z 0 )c b0 (mod p)
cu c0 = H(AB||z 0 ||a0 ||b0 ||A)
si trimite lui U o provocare c Zq \ {1}.
Pentru fiecare generator care apare n expresia sumei, U releva puncte, iar pentru gener-
atorii care nu apar, U releva drepte.
4. S accepta
r13 + r14 6= 0 ... rj3 + rj4 6= 0
AB 6= 1
c
j
Y j
Y k
Y
r r r r
AB c = eri i1 firi3 eri i2 firi4 eri i1 firi2 g1(k+1)1 g2(k+1)2 d1(k+1)3 d2k+2 (mod p)
i=1 i=1 i=j+1
3. B verifica validitatea semnaturii sigK (A, B), stocheaza A, B, sigK (A, B), c, r1 , r2 , . . . , rk+2
ntr-o baza de date si crediteaza contul lui S cu valoarea cecului.
In plus fata de protocolul de depozit pentru monezi electronice, B introduce n lista de
recuperare termenii (ri1 + ri2 )(ri3 + ri4 )1 (mod q), pentru 1 i j.
Propozitia 8.4 Daca moneda (A, B, sigK (A, B)) apare de doua ori n baza de date a bancii,
atunci banca poate determina identitatea utilizatorului necinstit care a utilizat moneda de doua
ori.
Demonstratia acestei propozitii este analoga cu demonstratia Teoremei ?.2 pentru sistemul de
baza. 2
5. U i demonstreaza
lui
1
B prin protocolul din Prelegerea ? cunoasterea unei reprezentari a
k
Y
lui m1 eai i fibi (mod p) n raport cu (e1 , f1 , . . . , ej , fj , d2 ).
i=j+1
6. Daca B accepta proba lui U, el crediteaza contul lui U cu suma corespunzatoare si imtro-
duce ai (bi )1 , i = j + 1, . . . , k n lista de recuperare. Apoi sterge m1 din baza de date a
cecurilor emise
Demonstratie:
In cazul n care U este necinstit, ar fi doua situatii de analizat:
1. U a utilizat anterior cel putin una din perechile (ai , bi ), j < i k.
In acest caz, n protocolul de depozit al cecurilor, banca a stocat n lista de recuperare
valoarea (ri1 + ri2 )(ri3 + ri4 )1 = (iA + iB )(iA + iB )1 = ai s(bi s)1 = ai b1
i . Deci
protocolul de recuperare se opreste la pasul 4 si B nu accepta sa-i returneze lui U valoarea
ceruta de acesta.
Din punct de vedere al securitatii, sistemul de cecuri este echivalent cu sistemul de baza,
toate proprietatile demonstrate pentru sistemul de baza ramanand valabile si la sistemul de
cecuri.
Sistemul de cecuri nu este nsa eficient, deoarece orice cec poate fi utilizat o singura data, iar
dupa protocolul de plata utilizatorul este obligat sa urmeze mpreuna cu banca protocolul de
recuperare. Aceste dezavantaj poate fi eliminat partial folosind un protocol de cecuri divizbile.
2. Un cec electronic este reprezentat sub forma (m0 , sigk (m0 )) cu restrictia ca exista s Zq
astfel ncat m0 = ms (mod p), unde forma lui m este de aceasta data:
k
Y
ai b i ai r ak+1
m = (g1u1 r g2u2 r d1 ) ei fi hi d2 (mod p),
i=1
cu a1 , . . . , ak+1 , b1 , . . . , bk , r alese aleator de U la pasul al doilea al protocolului de ex-
tragere.
Valoarea cecului este data de termenii de forma eai i fibi hai i r (n acest caz ea este 2k 1),
iar generatorii d1 si d2 au acelasi rol ca n sistemul de cecuri nedivizibile.
2. S se asigura ca AB 6= 1.
( 0 0
0 0 g r = hc a0 (mod p)
Apoi S verifica semnatura bancii: verK (m , sigK (m ) = T 0 0
(m0 )r = (z 0 )c b0 (mod p)
104 PRELEGEREA 8. CECURI ELECTRONICE
Pentru fiecare generator (ei , fi , hi ) care apare n expresia sumei, U releva puncte pentru
exponentii lui ei si fi si o dreapta pentru exponentul lui hi , iar pentru generatorii care nu
apar, U nu releva nimic.
ri1 , ri2 6= 0, i = 1, . . . , j
AB 6= 1
4. S accepta j
r(k+1)1 r(k+1)2 r(k+1)3 Y r
c
AB = (g1
g2 d1 ) (eri i1 firi2 hri i3 ) d2k+2 rk+3 (mod p)
i=1
Propozitia 8.5 (Completitudinea) Daca U este onest n protocolul de plata, atunci S ac-
cepta la pasul 4.
Demonstratie:
Daca protocolul este executat pas cu pas, la pasul 4 avem ri1 = ai s, ri2 = bi s, i, (1 i j).
Cum ai 6= 0, bi 6= 0, s 6= 0 rezulta ri1 6= 0, ri2 6= 0, i, (1 i j).
m0 = ms , s 6= 0 = m0 1 = AB 6= 1.
r j
Y
(k+1)1 r(k+1)2 r(k+1)3 r
g1 g2 d1 (eiri1 firi2 hri i3 ) d2k+2 rk+3 =
i=1
j
Y k
Y
= g1x1 +cx2 g2y1 +cy2 dz11 +cz2 eai i s fibi s hi iA +ciB d2 A +cB ai s bi s iA +ciB
ei fi hi =
i=1 i=j+1
k
" k ! #c
Y Y
= (g1x1 g2y1 dz11 ) ai s bi s iA
ei fi hi A
d2 (g1x2 g2y2 dz12 ) iB
hi B
d2 = AB c (mod p)
i=1 i=1
Teorema 8.3
1. Daca U foloseste de doua ori aceeasi parte a unui cec divizibil, B poate afla identitatea
sa.
2. Daca U utilizeaza un cec de doua ori, dar este onest (utilizeaza de fiecare data parti
nefolosite ale cecului), atunci probabilitatea ca B sa afle identitatea lui U este neglijabila.
Demonstratie:
Protocolul de recuperare este identic cu cel pentru sistemul de cecuri nedivizibile, Teorema
8.2 ramanand adevarata si n cazul sistemului de cecuri care accepta divizibilitatea.
Se observa ca n protocolul de plata U trebuie sa releve m0 , deci toate platile efectuate cu
parti ale aceluiasi cec pot fi legate ntre ele. Gasirea unei reprezentari a cecului astfel ncat sa
nu poata fi realizate legaturi ntre platile facute cu acelasi cec ramane o problema deschisa.