Documente Academic
Documente Profesional
Documente Cultură
Algoritmul este format din trei proceduri: generarea cheii, semnarea, verificarea semnaturii.
Generarea cheii
Se alege q, astfel inct el este prim si are o dimensiune de 160 de biti (2159 < q < 2160)
Se alege p, astfel inct el este prim si p = 2qz+1 (2512< p < 21024)
Ultimele reglementari specifica faptul ca p ar trebui sa fie pe fix 1024 de biti, ceea ce
inseamna ca z trebuie sa fie pe 864 de biti.
Se alege h Zp*, unde h este o radacina primitiva in Zp*.
= hz mod p, unde z = (p-1)/q .
Se alege arbitrar Zp*.
Se calculeaza = a mod p.
Cheia publica este (p, q, , ).
Cheia privata este a.
Semnarea
Se alege arbitrar k Zq*.
Se calculeaza x=SHA-1(mesaj), cu x pe 160 de biti; SHA-1 este functia de hash, care
realizeaza rezumatul mesajului (returneaza un numar in functie de continutul mesajului).
Se calculeaza = ( k mod p).
Se calculeaza = ( k-1(x + a)) mod q.
Daca vreuna dintre cele doua valori ( sau ) este egala cu zero, atunci se reia calculul cu
generarea unui alt k.
Cheia de semnare este (, ).
Verificarea
Se calculeaza w = -1 mod q.
Se calculeaza e1 = (xw) mod q.
Se calculeaza e2 = (w) mod q.
Se calculeaza v = ((e1e2) mod p) mod q.
Semnatura este valida daca si numai daca v = .
Algoritmul Semnaturii Digitale este similar Schemei de semnatura ElGamal.
Corectitudine
Algoritmul este corect in sensul ca destinatarul va accepta intotdeauna doar semnaturi originale.
Acest lucru poate fi demonstrat dupa cum urmeaza:
Din = hz mod p rezulta q hqz hp-1 1 (mod p) din Teorema lui Fermat. Deoarece > 1
si q este prim, are ordinul q.
Expeditorul calculeaza
= (k-1 (x + ))
Deci
k x-1 + a 1k xw + aw
Deoarece are ordinul q
k xwawk xwwk e1e2 (mod p).
in sfrsit, corectitudinea algoritmului vine din
Securitate
Acest algoritm este considerat imposibil de spart, datorita sigurantei mari asigurate de cteva
puncte, cum ar fi generarea aleatoare a lui p, q, a si k. Pentru a se afla k, de exemplu, ar trebui
rezolvata o problema de tipul logaritmilor discreti, care este o problema dificila, in sensul ca
ajungerea la o solutie poate dura cteva luni.