Вы находитесь на странице: 1из 12

Prelegerea 8

Cecuri electronice

8.1 Sistemul de plata cu cecuri nedivizibile


Sistemele de plata cu monezi electronice pot fi extinse n mod natural la sisteme care utilizeaza
cecuri electronice.
Ideea acestei extensii se bazeaza pe intrpducerea a k noi generatori (f1 , . . . , fk ) Gkg , unde
fi reprezinta o anumita valoare (de exemplu 2i1 unitati). Dupa cum s-a vazut n prelegerea
anterioara, orice suma de cel mult 2k 1 poate fi reprezentata ca un produs de generatori fi ,
conform reprezentarii binare a valorii sumei.
Succesiunea de evenimente n sistemul de cecuri nedivizibile este urmatoarea:
1. Protocolul de extragere a cecului electronic:
Daca utilizatorul U (cunoscut bancii prin identitatea sa I = g1u1 g2u2 mod p)) doreste sa
extraga din banca un cec de valoare maxima 2k 1, genereaza aleator (a1 , . . . , ak ) Zqk
m
Y ai
si calculeaza m = fi (mod p). Banca extrage din contul lui U valoarea 2k 1 si
i=1
stocheaza ntr-o baza de date identitatea lui U mpreuna cu m.

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.

4. Protocolul de recuperare a sumei nefolosite:


Utilizatorul U doreste sa recupereze suma din cec pe care nu a utilizat-o (corespunzatoare
generatorilor f2 , f4 , . . . , fk ). U trimite bancii (A, B, sigK (A, B) si (a2 , a4 , . . . , ak ). Banca
verifica faptul ca m = AB este asociat cu I n baza sa de date si ca (a2 , a4 , . . . , ak ) nu
sunt pe 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.

8.1.1 Initializarea sistemului de cecuri


Numerele p, q, g, x, h, g1 , g2 , functia de dispersie H si subgrupul Gq al lui Zq sunt generate ca
n sistemul de baza. Apoi, banca genereaza urmatoarele numere:

Doua tupluri generatoare de lungime k: (e1 , . . . , ek ) Gkq si (f1 , . . . , fk ) Gkq .

Doi generatori: d1 , d2 Gkq .

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.

8.1.2 Protocolul de extragere a cecurilor


Presupunand ca utilizatorul U cu identitatea I = g1u1 g2u2 (mod p) doreste sa extraga un cec de
valoare maxima 2k 1, U si B urmeaza protocolul urmator:

1. U i demonstreaza lui B cunoasterea reprezentarii (u1 , u2 ) a lui I n raport cu (g1 , g2 ),


prin protocolul din Prelegerea ? (cunoasterea unei reprezentari).

2. U genereaza aleator 2k + 1 numere distincte a1 , a2 , . . . , ak+1 , b1 , b2 , . . . , bk Zq .


k
Y ai b i a
Apoi U calculeaza m1 = ( ei fi )d2k+1 si trimite m1 lui B.
i=1

3. B efectueaza urmatoarele operatii:

(a) extrage din contul lui U valoarea maxima a cecului;


(b) stocheaza m1 si I ntr-o baza de date a cecurilor emise;
(c) calculeaza m2 = Id1 (mod p), m = m1 m2 (mod p);
8.1. SISTEMUL DE PLATA CU CECURI NEDIVIZIBILE 97

(d) genereaza aleator w Zq ;


(e) trimite lui U numerele z = mx (mod p), a = g w (mod p) si b = mw (mod p).
4. U realizeaza urmatoarele operatii:
(a) calculeaza m2 = Id1 (mod p), m = m1 m2 (mod p);
(b) genereaza aleator s Zq , u, v Zq ;
k
Y ai s bi s a s
(c) calculeaza m0 = ms = ms1 ms2 = g1u1 s g2u2 s ds1 ( ei fi )d2k+1 (mod p);
i=1
0 s 0 0
z = z (mod p), w = uw + v (mod q), a0 = au g v = g w ) (mod p), b0 =
0
bus (m0 )v = (m0 )w ) (mod p);
(d) U determina aleator o descompunere a lui m0 n A si B (m0 = AB (mod p)) astfel:
determina aleator fiecare din numerele u1 s, u2 s, s, a1 s, b1 s, . . . , ak s, bk s, ak+1 s ca sume
de cate doua numere:
u1 s = x1 + x2 (mod q) u2 s = y1 + y2 (mod q) s = z1 + z2 (mod q),
a1 s = 1A + 1B (mod q) b1 s = 1A + 1B (mod q) . . .
ak s = kA + kB (mod q) bk s = kA + kB (mod q) ak+1 s = A + B (mod q)
apoi U calculeaza
k
Y k
Y
A = g1x1 g2y1 dz11 ( iA iA
ei fi )d2 A (mod p), B = g1x2 g2y2 dz12 ( iB iB
ei fi )d2 B (mod p) si
i=1 i=1
0 0 0 0 0
c = H(m ||z ||a ||b ||A);
(e) trimite lui B numarul c = c0 u1 (mod q).
5. B raspunde cu r = cx + w (mod q).
6. U accepta protocolul daca si numai daca g r = hc a (mod p), mr = z c b (mod p).
In final, el calculeaza r0 = ru + v (mod q).
(z 0 , a0 , b0 , r0 ) constituie o semnatura valida asupra lui m0 confomr Propozitiei ?.1 (prelegerea
anterioara).
Rezultatele demonstrate pentru sistemul de baza raman valabile si n sistemul cu cecuri.

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

Propozitia 8.2 In protocolul de extragere a monezilor, U nu poate sa obtina o semnatura


asupra unui mesaj m0 pentru care cunoaste o reprezentare n raport cu (g1 , g2 , d1 , e1 , f1 , . . . , ek ,
fk , d2 ), dar care nu este o putere a lui m.

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

8.1.3 Protocolul de plata


Daca U doreste sa foloseasca suma 2j 1 din cecul sau (corespunzatoare generatorilor
(e1 , f1 ), . . . , (ej , fj )) la magazinul S, este este parcurs urmatorul protocol:
1. U i trimite lui S numerele A, B, sigK (A, B) = (z 0 , a0 , b0 , r0 ).
De asemenea, el l informeaza pe S asupra sumei pe care doreste sa o utilizeze (2j 1 n
acest caz).

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}.

3. U verifica daca c 6= 1, apoi calculeaza si trimite lui S raspunsurile:

for i = 1 to j do ri = (ri1 , ri2 , ri3 , ri4 ) (iA , iB , iA , iB )


for i = j + 1 to k do ri = (ri1 , ri2 ) (iA + ciB , iA + ciB )
rk+1 = (r(k+1)1 , r(k+1)2 , r(k+1)3 ) (x1 + cx2 , y1 + cy2 , z1 + cz2 )
rk+2 A + cB .
8.1. SISTEMUL DE PLATA CU CECURI NEDIVIZIBILE 99

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

Teorema urmatoare este o consecinta imediata a Teoremei ?.1:


Teorema 8.1
1. (Completitudinea) Daca U urmeaza protocolul pas cu pas si protocolul de extragere a
cecului electronic a fost executat corect, atunci S accepta n pasul 4.

2. (Consistenta) Daca U nu cunoaste cate o reprezentare a lui A respectiv B n raport


cu (g1 , g2 , d1 , e1 , f1 , . . . , ek , fk , d2 ), atunci nu exista strategie pentru el astfel ncat S sa
accepte cu o probabilitate de succes ne-neglijabila.

3. (Ascunderea informatiei) Chiar daca S dispune de o putere de calcul nelimitata, iar


U si S executa protocolul pas cu pas, S nu va reusi sa afle n final identitatea lui U cu o
probabilitate ne-neglijabila.
Demonstratie:

1. Daca protocolul este executat pas cu pas, la pasul 4 avem:


ri3 + ri4 = iA + iB = bi s, i, 1 i j.
Cum bi 6= 0, s 6= 0 daca U urmeaza protocolul, rezulta ri3 + ri4 6= 0, i, 1 i j.
m0 = ms , s 6= 0 = m0 6= 1 = AB 6= 1.
c
Yj j
Y Yk
r r r r
eiri1 firi3 eiri2 firi4 eri i1 firi2 g1(k+1)1 g2(k+1)2 d1(k+1)3 d2k+2 =
i=1 i=1
ci=j+1

j
Y j
Y Yk
+c +ciB g x1 +cx2 g y1 +cy2 dz1 +cz2 dA +cB =
ei iA fi iA ei iB fi iB ei iA iB fi iA 1 2 1 2
i=1 i=1 i=j+1
k ! k ! !c
Y Y
x1 y1 z1 x y z
g1 g2 d1 ei iA fi iA
d2 A g1 2 g2 d12
2
ei iB fi iB
d2 B = AB c (mod p)
i=1 i=1
deci S accepta n pasul 4.

2. U ar trebui sa determine numerele r1 , r2 , . . . , rk+2 Zq astfel ncat


c
j
Y j
Y k
Y
ri1 ri3 ri2 ri4 r r r r
AB c = ei fi ei fi 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

ceea ce este echivalent cu determinarea unei reprezentari a lui AB c n raport cu


(g1 , g2 , d1 , e1 , f1 , . . . , ek , fk , d2 ), care este o problema pe care U nu o poate rezolva n timp
polinomial.
100 PRELEGEREA 8. CECURI ELECTRONICE

Similar demonstratiei Teoremei ?.1, se deduce ca daca U nu cunoaste o reprezentare a


lui m0 n raport cu (g1 , g2 , d1 , e1 , f1 , . . . , ek , fk , d2 ), nu are nici o sansa sa-l faca pe S sa
accepte la pasul 4.

3. La sfarsitul protocolului, S se afla n posesia urmatoarelor informatii:


A, B, z 0 , a0 , b0 , r0 , c, r1 , r2 , . . . , rk+2 .
Analog demonstratiei folosite la Teorema ?.1, se deduce ca problema determinarii lui
(u1 , u2 ) este echivalenta cu problema determinarii numerelor: x1 , x2 , y1 , y2 , z1 , z2 . Deter-
minarea lui (x1 , y1 , z1 ) se poate face doar prin determinarea unei reprezentari a lui A n
raport cu (g1 , g2 , d1 , e1 , f1 , . . . , ek , fk , d2 ), iar determinarea lui (x2 , y2 , z2 ) prin aflarea unei
reprezentari a lui B.
Daca dispune de o putere de calcul nelimitata, S poate sa determine o reprezentare a lui
A si o reprezentare a lui B n raport cu (g1 , g2 , d1 , e1 , f1 , . . . , ek , fk , d2 ). Probabilitatea ca
1
aceste reprezentari sa fie egale cu cele cunoscute de U este (cf. Propozitiei ?.4) 2k+3 . Deci
q
probabilitatea ca S sa afle identitatea lui U dupa executarea protocolului, este neglijabila.
2

8.1.4 Protocolul de depozit


Pentru a depozita un cec electronic, magazinul S urmeaza mpreuna cu B protocolul urmator:

1. S demonstreaza lui B cunoasterea reprezentarii identitatii sale n raport cu (g1 , g2 ), prin


protocolul din Prelegerea ?.

2. S trimite lui B numerele: A, B, sigK (A, B), c, r1 , r2 , . . . rk+2 .

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

8.1.5 Protocolul de recuperare


Daca utilizatorul U doreste sa recupereze valoarea nefolosita din cecul (m0 , sigK (m0 )) (core-
spunzatoare generatorilor (ej+1 , fj+1 ), . . . , (ek , fk )), el urmeaza mpreuna cu banca urmatorul
protocol:
1. U i trimite lui B identitatea sa I mpreuna cu m1 .

2. B verifica daca m1 este asociat lui I n baza de date a cecurilor emise.


8.1. SISTEMUL DE PLATA CU CECURI NEDIVIZIBILE 101

3. U trimite lui B ai , bi , cu j < i k.

4. B verifica daca bi 6= 0, i, j < i k si daca ai (bi )1 (mod q), (i = j + 1, . . . k) nu apartin


listei de recuperare.
Daca B accepta, se trece la pasul 5.

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

Teorema 8.2 Presupunand ca protocoalele de extragere, de plata si de depozit sunt executate


corect, daca U este necinstit n protocolul de recuperare, atunci B nu accepta sa-i returneze
suma ceruta la pasul 6.

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.

2. U ncearca sa genereze perechi (ai 0 , bi 0 ), j < i k care nu au fost generate n protocolul


de extragere a cecurilor. In acest caz U ar trebui sa determine numerele (ai 0 , bi 0 ), j <
1
k
Y 0 0
i k astfel ncat sa cunoasca o reprezentare a lui m1 eai i fibi n raport cu
i=j+1
(e1 , f1 , . . . , ej , fj , d2 ). Acest lucru este echivalent pentru U cu determinarea numerelor
ai 0 , (1 i k + 1) si bi 0 , (1 i k) astfel ncat:
1 k !
k
Y j
Y Y a0 b0
0 0 0 0 a 0 a 0
m1 eai i fibi a i b
= ei fi d2
i k+1
m1 = ei fi
i i
d2k+1 (mod q).
i=j+1 i=1 i=1

Deoarece protocolul de extragere


k
a fost executat
!
corect, avem:
Y a b a
m1 = ei i fi i d2k+1 (mod q).
i=1
Cum U nu poate determina n timp polinomial doua reprezentari diferite ale lui m1 n
raport cu (e1 , f1 , . . . , eK , fK , d2 ), rezulta ca ai 0 = ai , i {1, 2, . . . , k + 1} si bi 0 = bi , i
{1, 2, . . . , k}.
Am demonstrat astfel ca U este obligat sa foloseasca n protocolul de recuperare perechi (ai , bi )
care au fost generate n protocolul de extragere. Deci n niciunul din cele doua cazuri, B nu
accepta sa-i returneze lui U suma ceruta, iar alta strategie pentru U nu exista. 2
102 PRELEGEREA 8. CECURI ELECTRONICE

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.

8.2 Sistemul de plata cu cecuri divizibile


Un cec divizibil este caracterizat de o valoare maxima si de proprietatea de divizibilitate:
utilizatorul care a extras cecul din banca poate sa utilizeze parti ale lui n diferite tranzactii, cu
conditia sa nu depaseasca suma maxima. In orice moment, utilizatorul poate sa ceara bancii
sa-i returneze suma neutilizata a cecului, caz n care banca si utilizatorul vor urma protocolul
de recuperare.
Pentru a obtine proprietatea de divizibilitate, modificam sistemul de plata cu cecuri nedi-
vizibile n felul urmator:

1. La initializarea sistemului, banca genereaza toate numerele si tuplurile generatoare folosite


n sistemul de cecuri nedivizibile. In plus, banca genereaza nca un tuplu generator
(h1 , h2 , . . . , hk ) Gkq .

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.

Sa aratam cum se modifica n acest caz protocoalele de extragere a cecurilor, de plata si de


depozit.

8.2.1 Protocolul de extragere a cecurilor electronice divizibile


Presupunand ca utilizatorul U cu identitatea I = g1u1 g2u2 (mod p) doreste sa extraga un cec de
valoare maxima 2k 1, U si B urmeaza protocolul urmator:

1. U i demonstreaza lui B cunoasterea reprezentarii (u1 , u2 ) a lui I n raport cu (g1 , g2 ) prin


protocolul din Prelegerea ?.

2. U genereaza aleator 2k + 2 numere distincte a1 , a2 , . . . , ak+1 , b1 , . . . , bk Zq . Apoi el


k
Y
ai bi ai r ak+1
calculeaza m = (g1u1 r g2u2 r d1 ) ei fi hi d2 (mod p) si trimite m lui B.
i=1

3. B realizeaza urmatoarele operatii:


8.2. SISTEMUL DE PLATA CU CECURI DIVIZIBILE 103

(a) extrage din contul lui U valoarea maxima a cecului;


(b) stocheaza m si I ntr-o baza de date a cecurilor emise;
(c) genereaza aleator w Zq ;
(d) trimite lui U numerele z = mx (mod p), a = g w (mod p) si b = mw (mod p).

4. U realizeaza urmatoarele operatii:

(a) genereaza aleator s Zq , u, v Zq ;


k
Y
ai s bi s ai rs ak+1 s
(b) calculeaza: m0 = ms = (g1u1 rs g2u2 rs ds1 ) ei fi hi d2 (mod p),
i=1
0
z 0 = z s (mod p), w0 = uw + v (mod q), a0 = au g v (= g w ) (mod p),
0
b0 = bus (m0 )v (= (m0 )w ) (mod p),
(c) determina o descompunere aleatoare m0 = AB (mod p) astfel: scrie n mod aleator
fiecare dintre numerele u1 rs, u2 rs, s, a1 rs, . . . , ak rs, ak+1 s ca suma de doua numere
(toate calculele se fac modulo q):
u1 rs = x1 + x2 , u2 rs = y1 + y2 , s = z1 + z2 ,
a1 rs = 1A + 1B . . . , ak rs = kA + kB , ak+1 s = A + B
(d) calculeaza:
k !
Y as bs
A= (g1x1 g2y1 dz11 ) i
ei fi hi
i iA A
d2 (mod p),
i=1
k
!
Y
B = (g1x2 g2y2 dz12 ) iB
hi B
d2 (mod p) si c0 = H(m0 ||z 0 ||a0 ||b0 ||A),
i=1

(e) trimite lui B numarul c = c0 u1 (mod q).

5. B raspunde cu r = cx + w (mod q).

6. U accepta daca si numai daca g r = hc a (mod p), mr = z c b (mod p).


In final, U calculeaza r0 = ru + v (mod q).
(z 0 , a0 , b0 , r0 ) va constitui o semnatura valida asupra lui m0 (dupa cum rezulta din Propozitia
?.1).

8.2.2 Protocolul de plata


Daca U doreste sa foloseasca suma 2j 1 din cecul sau (corespunzatoare generatorilor
(e1 , f1 , h1 ), . . . , (ej , fj , hj )) la magazinul S, este executat urmatorul protocol:
1. U i trimite lui S numerele A, B, sigK (A, B) = (z 0 , a0 , b0 , r0 ).
In plus, U l informeaza pe S asupra sumei pe care doreste sa o cheltuiasca (2j 1 n
acest caz).

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

cu c0 = H(AB||z 0 ||a0 ||b0 ||A)


si trimite o provocare c Zq \ {1}.
3. U verifica daca c 6= 1, apoi calculeaza si trimite lui S raspunsurile:
for i = 1 to j do ri = (ri1 , ri2 , ri3 ) (ai s, bi s, iA + ciB )
rk+1 = (r(k+1)1 , r(k+1)2 , r(k+1)3 ) (x1 + cx2 , y1 + cy2 , z1 + cz2 )
rk+2 A + cB
k
Y
rk+3 eai i s fibi s hi iA +ciB .
i=j+1

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

8.2.3 Protocolul de depozit


Pentru a depozita un cec electronic, magazinul S urmeaza mpreuna cu B protocolul
urmator:
1. S demonstreaza lui B cunoasterea reprezentarii identitatii sale n raport cu (g1 , g2 ) prin
protocolul din Prelegerea ?.
2. S trimite lui B numerele A, B, sigK (A, B), c, r1 , r2 , . . . rj , rk+1 , rk+2 , rk+3 .
3. B verifica validitatea semnaturii sigK (A, B), stocheaza A, B, sigK (A, B), c, r1 , r2 , . . . , rj ,
rk+1 , rk+2 , rk+3 ntr-o baza de date si crediteaza contul lui S cu valoarea cecului.
B introduce n lista de recuperare termenii ri1 (ri2 )1 (mod q), pentru 1 i j.
8.2. SISTEMUL DE PLATA CU CECURI DIVIZIBILE 105

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:

1. Presupunem fara a restrange generalitatea, ca U utilizeaza n doua protocoale de plata


distincte valoarea corespunzatoare generatorului (e1 , f1 , h1 ).
B se va afla n posesia urmatoarelor informatii: A, B, c, r1 , rk+1 , rk+2 , rk+3 , c0 , r1 0 , rk+1 0 ,
rk+2 0 , rk+3 0 , unde c 6= c0 sunt
( cele doua provocari trimise de S n doua protocoale de plata.
r(k+1)1 = x1 + cx2 (mod q)
r(k+1)1 0 = x1 + c0 x2 (mod q)
Acesta este un sistem liniar cu determinantul c0 c 6= 0; el admite solutia unica:
(
x1 = (c1 (c0 )1 )1 (c1 r(k+1)1 (c0 )1 r(k+1)1 0 ) (mod q)
x2 = (c c0 )1 (r(k+1)1 r(k+1)1 0 ) (mod q)
Analog se determina:
(
y1 = (c1 (c0 )1 )1 (c1 r(k+1)2 (c0 )1 r(k+1)2 0 ) (mod q)
y2 = (c c0 )1 (r(k+1)2 r(k+1)2 0 ) (mod q)
(
z1 = (c1 (c0 )1 )1 (c1 r(k+1)3 (c0 )1 r(k+1)3 0 ) (mod q)
z2 = (c c0 )1 (r(k+1)3 r(k+1)3 0 ) (mod q)
(
1A = (c1 (c0 )1 )1 (c1 r13 (c0 )1 r13 0 ) (mod q)
1B = (c c0 )1 (r13 r13 0 ) (mod q)
Apoi se pot calcula:
(
u1 rs = x1 + x2 (mod q) (1) u2 rs = y1 + y2 (mod q) (2)
s = z1 + z2 (mod q) (3) a1 rs = 1A + 1B (4)
1
Din r11 = a1 s si din (4) rezulta r = (a1 rs)(a1 s)1 = (1A + 1B )r11 (mod q) (5).
Din (1), (2) si (3) se pot calcula:
(
u1 r = (u1 sr)(s)1 = (x1 + x2 )(z1 + z2 )1 (mod q)
u2 r = (u2 sr)(s)1 = (y1 + y2 )(z1 + z2 )1 (mod q)
Din (5) va rezulta acum:
1
u1 = (u1 r)r1 = (x1 + x2 )(z1 + z2 )1 [(1A + 1B )r11 ] = (x1 + x2 )(z1 + z2 )1 r11 (1A +
1B )1 (mod q), u2 = (y1 + y2 )(z1 + z2 )1 r11 (1A + 1B )1 (mod q).
Deci B a calculat identitatea lui U: (u1 , u2 ).

2. Valoarea unui cec fiind 2k 1, putem presupune ca U utilizeaza n primul protocol de


plata valoarea 2j 1 (corespunzatoare generatorilor (e1 , f1 , h1 ), . . . , (ej , fj , hj )), iar n al
doilea protocol, valoarea 2k 2j (corespunzatoare generatorilor (ej+1 , fj+1 , hj+1 ), . . . ,
(ek , fk , hk )). Atunci B se va afla n posesia informatiilor:
106 PRELEGEREA 8. CECURI ELECTRONICE

A, B, c, r1 , . . . , rj , rk+1 , rk+2 , rk+3 , c0 , rj+1 0 , . . . , rk 0 , rk+1 0 , rk+2 0 , rk+3 0 .


Valorile x1 , x2 , y1 , y2 , z1 , z2 se determina la fel ca n demonstratia primului punct, iar
pentru A , B avem:
(
A = (c1 (c0 )1 )1 (c1 rk+2 (c0 )1 rk+2 0 ) (mod q)
B = (c c0 )1 (rk+2 rk+2 0 ) (mod q)
ri1 = ai s, ri2 = bi s, (1 i j), ri1 0 = ai s, ri2 0 = bi s, (j + 1 i k).




ai = ri1 (z1 + z2 )1 (mod q)i = 1, . . . , j

0 1
ai = ri1 (z1 + z2 ) (mod q)i = j + 1, . . . , k

Cum s = z1 + z2 (mod q) = ak+1 = ( + )(z + z )1 (mod q)
A B 1 2

1

bi = ri2 (z 1 + z 2 ) (mod q), i = 1, . . . , j


b = r 0 (z + z )1 (mod q), i = j + 1, . . . , k
i i2 1 2

u1 rs, u2 rs, u1 r, u2 r se calculeaza identic cu primul punct.


B mai stie ca m0 = ms (mod p). Din m0 si s = z1 + z2 (mod q), B va determina
1
m = (m0 ) s (mod p).
k
k !1 !r
Y Y a b k
Y
ai bi ai r ak+1 ak+1 ai
Dar m = (g1u1 r g2u2 r d1 ) e i fi hi d2 (mod p) md1 1 i i
ei fi d2 = I hi (mod p)
i=1 i=1 i=1
k !1 k
Y a Y
Notand m1 = md1
1 eai i fibi d2 k+1 si m2 = ai
hi , obtinem m1 = (Im2 )r (mod p)
i=1 i=1
cu m1 , m2 cunoscute.
B trebuie sa determine identitatea lui U din urmatoarea ecuatie cu necunoscutele I si r:
m1 = (Im2 )r (mod p).
Ecuatia are exact q 1 solutii: pentru fiecare valoare a lui r Zq , se determina n mod
1
unic I = m1r m1
2 (mod p).
1
Deci B determina I (identitatea lui U), cu probabilitatea q1
. 2

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.

Вам также может понравиться

  • Securitatea Criptografica
    Securitatea Criptografica
    Документ348 страниц
    Securitatea Criptografica
    bogdan
    Оценок пока нет
  • Criptologie Bazele
    Criptologie Bazele
    Документ13 страниц
    Criptologie Bazele
    antifree
    100% (1)
  • Sample 3OfCmFD3SpueLP3PO4DZmTT PDF
    Sample 3OfCmFD3SpueLP3PO4DZmTT PDF
    Документ7 страниц
    Sample 3OfCmFD3SpueLP3PO4DZmTT PDF
    malachiel
    Оценок пока нет
  • Slides Crypto1 2013 H PDF
    Slides Crypto1 2013 H PDF
    Документ35 страниц
    Slides Crypto1 2013 H PDF
    malachiel
    Оценок пока нет
  • Master Criptografie
    Master Criptografie
    Документ19 страниц
    Master Criptografie
    George Crismaruc
    Оценок пока нет
  • PK PDF
    PK PDF
    Документ59 страниц
    PK PDF
    malachiel
    Оценок пока нет
  • Pubro25 PDF
    Pubro25 PDF
    Документ13 страниц
    Pubro25 PDF
    malachiel
    Оценок пока нет
  • Internet Virusi Spam CriptareII
    Internet Virusi Spam CriptareII
    Документ84 страницы
    Internet Virusi Spam CriptareII
    ramonet
    Оценок пока нет
  • IDD Prezentari Criptografie Si Securitate
    IDD Prezentari Criptografie Si Securitate
    Документ130 страниц
    IDD Prezentari Criptografie Si Securitate
    robert
    Оценок пока нет
  • Lab3 PDF
    Lab3 PDF
    Документ4 страницы
    Lab3 PDF
    malachiel
    Оценок пока нет
  • Lab5 PDF
    Lab5 PDF
    Документ2 страницы
    Lab5 PDF
    malachiel
    Оценок пока нет
  • IDD Prezentari Criptografie Si Securitate
    IDD Prezentari Criptografie Si Securitate
    Документ130 страниц
    IDD Prezentari Criptografie Si Securitate
    robert
    Оценок пока нет
  • Lab4 PDF
    Lab4 PDF
    Документ3 страницы
    Lab4 PDF
    malachiel
    Оценок пока нет
  • Cursul 10
    Cursul 10
    Документ54 страницы
    Cursul 10
    Jan
    Оценок пока нет
  • Securitatea Web
    Securitatea Web
    Документ43 страницы
    Securitatea Web
    Valeria Codrean
    Оценок пока нет
  • Internet Virusi Spam CriptareII
    Internet Virusi Spam CriptareII
    Документ84 страницы
    Internet Virusi Spam CriptareII
    ramonet
    Оценок пока нет
  • Lab2 PDF
    Lab2 PDF
    Документ5 страниц
    Lab2 PDF
    malachiel
    Оценок пока нет
  • Anexa 1: B) Algoritmi Asimetrici C) Algoritmi Rezumat Sau Amprentă (Hash Algorithms)
    Anexa 1: B) Algoritmi Asimetrici C) Algoritmi Rezumat Sau Amprentă (Hash Algorithms)
    Документ12 страниц
    Anexa 1: B) Algoritmi Asimetrici C) Algoritmi Rezumat Sau Amprentă (Hash Algorithms)
    Иван Иванович
    Оценок пока нет
  • Lab 1 Criptografie PDF
    Lab 1 Criptografie PDF
    Документ5 страниц
    Lab 1 Criptografie PDF
    malachiel
    Оценок пока нет
  • F00033000 Securizare
    F00033000 Securizare
    Документ16 страниц
    F00033000 Securizare
    Gabriela Mogos
    Оценок пока нет
  • Cursul20 PDF
    Cursul20 PDF
    Документ40 страниц
    Cursul20 PDF
    malachiel
    Оценок пока нет
  • Cursuri Criptografie
    Cursuri Criptografie
    Документ33 страницы
    Cursuri Criptografie
    Andrada Szabó
    Оценок пока нет
  • Cursul 10
    Cursul 10
    Документ18 страниц
    Cursul 10
    egroegscu
    Оценок пока нет
  • Cursul 2
    Cursul 2
    Документ33 страницы
    Cursul 2
    test
    Оценок пока нет
  • Cursul 1
    Cursul 1
    Документ39 страниц
    Cursul 1
    test
    Оценок пока нет
  • Cursul 4
    Cursul 4
    Документ15 страниц
    Cursul 4
    sonic8659
    Оценок пока нет
  • Cursul 6
    Cursul 6
    Документ16 страниц
    Cursul 6
    sonic8659
    Оценок пока нет
  • Cursul 5
    Cursul 5
    Документ15 страниц
    Cursul 5
    Sandu Andrei
    Оценок пока нет
  • Cursul3 PDF
    Cursul3 PDF
    Документ22 страницы
    Cursul3 PDF
    malachiel
    Оценок пока нет