Sunteți pe pagina 1din 1

Semnaturi incontestabile

Algoritmul Chaum van Antwerpen

Algoritmul:

Fie p = 2q + 1 un numar prim cu proprietatea ca q este prim si α Z*p un element de


ordin q. Pentru 1 <= a <= q - 1, se defineste β ≡ αa mod p.
Fie G subgrupul de ordin q al lui Zp generat de α.
Se definesc P = A = G; K = {(p; α; a; β) | β ≡ αa mod p}.
Valorile p; α; β sunt publice iar a este secreta.
Pentru K = (p; α; a; β); x G se defineste y = sigK(x) = xa mod p.
Pentru x; y G, protocolul de verificare se efectueaza astfel:
1. Alice alege aleator numerele e1; e2 Zq;
2. Alice calculeaza c = ye1 β e2 mod p si-l trimite lui Bob;
3. Bob calculeaza d = ca-1mod q mod p si-l trimite lui Alice;
4. Alice admite autenticitatea lui y daca si numai daca d ≡ xe1 αe2 mod p.

Exemplu:

Fie q = 233; p = 2q+1 = 2 * 233 + 1 = 467.


Luam α = 16.
Sa presupunem a = 7; avem β = αa mod p = 167 mod 467 = 120.
Bob semneaza mesajul x = 19 cu y = xa mod p = 119101 mod 467 = 115.
Alice alege e1 = 38; e2 = 397. Ea calculeaza c = ye1 βe2 mod p = 11538120397 mod 467 = 319, la care

Bob raspunde cu d = ca-1mod q mod p = 3197-1mod 233 mod 467 = 319100 mod 467 = 3.
Alice verifica atunci relatia d ≡ xe1 αe2 mod p.
xe1 α e2 mod p = 193816397 mod 467 = 3

3 ≡ 3  Semnatura este acceptata ca autentica.

S-ar putea să vă placă și