Sunteți pe pagina 1din 1

Semnatura ElGamal.

Fie p=53
α=5
P=Zp*, A=Zp*xZp-1, K={(p,α ,a , β ¿∨β=αᵅ ¿)}.
Valorile p, α , β sunt publice, iar a este secret.
a = 4.
β = αᵅ ( mod p ) =54 mod 53=42 .

Criptare:
Se ia mesajul x = B –ASCII> 52.
Pentru K = (p,α ,a , β), k = 19 ϵ Zp−1 (secret) se defineste:
sigK(x,k) = (γ , δ), unde
γ =αᵏ mod p
δ =( x−aγ ) k⁻¹(mod p - 1).

𝜸 = 519 mod 53 = 35.

δ = (52-5x35)19−1 ¿)=-123x14 mod 52=-1722 mod 52= 52 - ( 46mod 52)= 6

sigK(52,19)= (35,5)

Descriptare:

Pentru 𝜸,δ ∈ Zpse defineste: dK(𝜸,δ) = δ x (𝜸ᵅ)ˉ¹ mod p

dK(𝜸,δ) = 5x (354)ˉ¹ mod 53 = 52 –ASCII > B

Semnătura:
y=αᵏ mod p = 519 mod 53 =35 .
δ =( x−a γ )k⁻¹(mod p - 1) = (52-4*35)*19-1(mod 53-1) = - 88 * 11 mod 52= 20

Verificarea Semnăturii:

Pentru a verifica semnătura, calculăm:


verK(x,γ , δ) = T <=> βᵞγᵟ=αᵡ mod p

βᵞγᵟ mod p = 42353522 mod 53 = 49 x 25 mod 53 = 1.


αᵡ mod p = 552 mod 53= 1.
Semnătura este deci valabilă.

Concluzie:
Conform algoritmului El Gamal am obținut la decriptare mesajul ales în text clar.
Semnătura creată în baza algoritmului El Gamal utilizând cheile generate la criptare, este validă.

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