Dijital İmza Algoritması

Dijital İmza Algoritması dijital imza için bir FIPS standardıdır. Ağustos 1991’de National Institute of Standards and Technology (NIST) tarafından tasarlanmıştır. Dijital imza algoritması, ElGamal İmza Algoritması'nın bir varyantıdır.

Anahtar Oluşturma

Anahtar oluşturma iki aşamadan oluşur. İlk aşama sistemdeki farklı kullanıcılar arasında paylaşılabilen “algoritma parametreleri”nin seçimiyken ikinci aşama tek bir kullanıcı için açık ve gizli anahtarların hesaplanmasıdır.

Parametre Oluşturma

Algoritma parametreleri olan (p, q, g) sistemdeki farklı kullanıcılar arasında paylaşılabilir.

Kullanıcı anahtarları

Parametre seti verildiğinde, ikinci aşamada tek bir kullanıcı için gizli ve açık anahtarlar üretilir:

h(p–1)/q mod p ve gx mod p, modüler üslerini almak için etkili algoritmalar mevcuttur( Exponentiation by squaring gibi).

İmzalama

H bir özet fonksiyon ve m mesaj olsun :

İlk iki adım kullanıcı anahtarı oluşturmaya yarar. İmzalama işleminde hesaplaması en pahalı kısım modüler üs alma işlemidir.'k'nın modüler tersinin hesaplanması 1 mod q ikinci en pahalı kısımdır. Genişletilmiş Öklid Algoritması ya da Fermat'nın son teoremi kq−2 mod q kullanılarak hesaplanabilir.

Doğrulama

Algoritmanın Doğruluğu

Eğer doğrulayıcı gerçek imzaları her zaman kabul ediyorsa imza şeması doğrudur. Algoritmanın doğruluğu şu şekilde ispatlanabilir:

İlk olarak, eğer g g = h(p  1)/q mod p ise Fermat'nın son teoremi ile gqhp  1 ≡ 1 (mod p) ‘dir. g > 1 ve q asal olduğundan, g’nin mertebesi  q’dur.

İmzalayan kişi

s=k^{-1}(H(m)+xr) \mod{q} değerini hesaplar.

Böylece


\begin{align}
k & \equiv H(m)s^{-1}+xrs^{-1}\\
  & \equiv H(m)w + xrw \pmod{q}
\end{align}

gnin mertebesi q (mod p) q olduğundan


\begin{align}
g^k & \equiv g^{H(m)w}g^{xrw}\\
    & \equiv g^{H(m)w}y^{rw}\\
    & \equiv g^{u1}y^{u2} \pmod{p}
\end{align}

Sonuç olarak, Dijital İmza Algoritmasının doğruluğu aşağıdaki gibi hesaplanarak çıkar.

\begin{align}
 r &= (g^k \mod p) \mod q\\
   &= (g^{u1}y^{u2} \mod p) \mod q\\
   &= v
\end{align}

Duyarlılık

Dijital İmza Algoritmasında k rassal imza değerinin entropisi, gizliliği ve tek olması önemlidir. Bunlardan birinin olmaması halinde saldıran gizli anahtarı açığa çıkartabilir.Aynı değer iki kez kullanılırsa (kyı gizli tutsa bile), tahmin edilebilir bir değer kullanılarak ya da birkaç imzadaki k nın bazı bitleri sızdırılarak Dijital İmza Algoritması kırılabilir.

Ayrıca bakınız

This article is issued from Vikipedi - version of the 4/5/2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.