GOST R 34.10-94 elektron raqamli imzo algoritmi
2001 yilgacha Rossiya standarti bo'lgan algoritm. DSA ga juda o'xshash, lekin parametrlar uzunligi va formulalari biroz farq qiladi (q 256 bitli). Keyinchalik elliptik egri chiziqlarga asoslangan GOST R 34.10-2001 va 2012 bilan almashtirilgan.
Parametrlar
- p — L bitli tub son: 509–512 yoki 1020–1024 bit.
- q — 254–256 bitli tub son, p−1 ning bo'luvchisi.
- a: 1 < a < p−1, aq mod p = 1.
- Yopiq kalit 0 < x < q; ochiq kalit y = ax mod p.
- H(M) — xabar xeshi, 1 < H(M) < q.
Imzo qo'yish1 ≤ k ≤ q tasodifiy (darhol yo'q qilinadi)
r = (ak mod p) mod q
s = (x·r + k·H(M)) mod q
r = 0 yoki s = 0 bo'lsa — boshqa k
r = (ak mod p) mod q
s = (x·r + k·H(M)) mod q
r = 0 yoki s = 0 bo'lsa — boshqa k
Tekshirish0 < r, s < q ekanini tekshirish
v = Hq−2 mod q
z₁ = s·v mod q, z₂ = (q−r)·v mod q
u = (az₁·yz₂ mod p) mod q
u = r — haqiqiy
v = Hq−2 mod q
z₁ = s·v mod q, z₂ = (q−r)·v mod q
u = (az₁·yz₂ mod p) mod q
u = r — haqiqiy
💡 DSA dan farqi
DSA da k⁻¹ hisoblanadi (imzo qo'yishda), GOST da esa H⁻¹ (tekshirishda, Hq−2 = H⁻¹ — Ferma teoremasi bo'yicha). Imzo qo'yish formulasida DSA: s = k⁻¹(H + xr), GOST: s = xr + kH.