Dijital İmza Algoritması dijital imza için bir 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
- Onaylı bir kriptografik özet fonksiyon olan H'yi seç. H olarak SHA-1 kullanılırdı, fakat şu anki DSS’de SHA-1'den daha güçlü olan SHA-2 kullanılmaktadır. Özet fonksiyonun çıktısı anahtar ikilisinin boyutuna kısaltılabilir.
- Anahtar uzunluğu L ve N nin belirlenmesi. Bu, anahtarın kriptografik gücünün belirlenmesinin en önemli ölçütüdür. Orijinal Dijital İmza Standardı L’nin değerini 512 ile 1024’ün arasında 64’ün katı olarak kısıtlamıştır.
- N-bit uzunluğunda asal bir q' değeri seç. Nnin uzunluğu özet fonksiyonun çıktı değerinden kısa ya da eşit olmalıdır.
- p–1, q nun katı olacak şekilde L -bit uzunluğunda asal p modülüsünü seç.
- Çarpımsal mertebesi modulo p de q olan bir g değeri seç. Bu rastgele bir h (1 < h < p−1) değeri için g = h(p–1)/q mod p ile yapılabilir. Eğer sonuç 1 olarak gelirse farklı h değerleri için dene. hnin çoğu değeri g' olarak kullanılabilir; daha çok h=2 kullanılmaktadır.
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:
- Rassal olarak 0 < x < q olacak şekilde birx seç .
- y = gx mod p değerini hesapla.
- Açık anahtar (p, q, g, y). Özel anahtar x.
h(p–1)/q mod p ve gx mod p, modüler üslerini almak için etkili algoritmalar mevcuttur( gibi).
İmzalama
H bir özet fonksiyon ve m mesaj olsun :
- 0 < k < q olacak şekilde her bir mesaj için rassal bir k değeri üret.
- r = (gk mod p) mod q değerini hesapla.
- r = 0, ise farklı rassal bir k değeri ile tekrar baştan başla
- s = (k−1(H(m) + x•r)) mod q değerini hesapla
- Eğer s = 0, ise farklı rassal bir k değeri ile tekrar baştan başla.
- İmza (r, s)
İlk iki adım kullanıcı anahtarı oluşturmaya yarar. İmzalama işleminde hesaplaması en maliyetli kısım modüler üs alma işlemidir. 'k'nın modüler tersinin hesaplanması −1 mod q ikinci en maliyetli kısımdır. ya da Fermat'nın son teoremi kq−2 mod q kullanılarak hesaplanabilir.
Doğrulama
- Eğer 0 < r < q ya da 0 < s < q sağlanmazsa imzayı reddet.
- w = s−1 mod q değerini hesapla.
- u1 = H(m)•w mod q değerini hesapla.
- u2 = r•w mod q değerini hesapla.
- v = ((gu1•yu2) mod p) mod q değerini hesapla
- Eğer v = r ise imza kabul edilir.
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 gq ≡ hp − 1 ≡ 1 (mod p) ‘dir. g > 1 ve q asal olduğundan, g’nin mertebesi q’dur.
İmzalayan kişi
- değerini hesaplar.
Böylece
gnin mertebesi q (mod p) q olduğundan
Sonuç olarak, Dijital İmza Algoritmasının doğruluğu aşağıdaki gibi hesaplanarak çıkar.
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
Dış bağlantılar
- FIPS PUB 186-4: Dijital İmza Standardı (DSS)27 Aralık 2016 tarihinde Wayback Machine sitesinde ., resmi DSA tanımlamasının dördüncü (ve güncel) sürümü.
- , NIST Özel Yayını 800-57, p. 62–63
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Dijital Imza Algoritmasi dijital imza icin bir standardidir Agustos 1991 de National Institute of Standards and Technology NIST tarafindan tasarlanmistir Dijital imza algoritmasi ElGamal Imza Algoritmasi nin bir varyantidir yunanca olarak kullanilan bu parametre fonksiyonlarin secimiyle beraber fonksiyonun ciktisi anahtar ikilisinin boyutuna kisaltilabilir Anahtar olusturmaAnahtar olusturma iki asamadan olusur Ilk asama sistemdeki farkli kullanicilar arasinda paylasilabilen algoritma parametreleri nin secimiyken ikinci asama tek bir kullanici icin acik ve gizli anahtarlarin hesaplanmasidir Parametre olusturma Onayli bir kriptografik ozet fonksiyon olan H yi sec H olarak SHA 1 kullanilirdi fakat su anki DSS de SHA 1 den daha guclu olan SHA 2 kullanilmaktadir Ozet fonksiyonun ciktisi anahtar ikilisinin boyutuna kisaltilabilir Anahtar uzunlugu L ve N nin belirlenmesi Bu anahtarin kriptografik gucunun belirlenmesinin en onemli olcutudur Orijinal Dijital Imza Standardi L nin degerini 512 ile 1024 un arasinda 64 un kati olarak kisitlamistir N bit uzunlugunda asal bir q degeri sec Nnin uzunlugu ozet fonksiyonun cikti degerinden kisa ya da esit olmalidir p 1 q nun kati olacak sekilde L bit uzunlugunda asal p modulusunu sec Carpimsal mertebesi modulo p de q olan bir g degeri sec Bu rastgele bir h 1 lt h lt p 1 degeri icin g h p 1 q mod p ile yapilabilir Eger sonuc 1 olarak gelirse farkli h degerleri icin dene hnin cogu degeri g olarak kullanilabilir daha cokh 2 kullanilmaktadir Algoritma parametreleri olan p q g sistemdeki farkli kullanicilar arasinda paylasilabilir Kullanici anahtarlari Parametre seti verildiginde ikinci asamada tek bir kullanici icin gizli ve acik anahtarlar uretilir Rassal olarak 0 lt x lt q olacak sekilde birx sec y gx mod p degerini hesapla Acik anahtar p q g y Ozel anahtar x h p 1 q mod p ve gx mod p moduler uslerini almak icin etkili algoritmalar mevcuttur gibi ImzalamaH bir ozet fonksiyon ve m mesaj olsun 0 lt k lt q olacak sekilde her bir mesaj icin rassal bir k degeri uret r gk mod p mod q degerini hesapla r 0 ise farkli rassal bir k degeri ile tekrar bastan basla s k 1 H m x r mod q degerini hesapla Eger s 0 ise farkli rassal bir k degeri ile tekrar bastan basla Imza r s Ilk iki adim kullanici anahtari olusturmaya yarar Imzalama isleminde hesaplamasi en maliyetli kisim moduler us alma islemidir k nin moduler tersinin hesaplanmasi 1 mod q ikinci en maliyetli kisimdir ya da Fermat nin son teoremi kq 2 mod q kullanilarak hesaplanabilir DogrulamaEger 0 lt r lt q ya da 0 lt s lt q saglanmazsa imzayi reddet w s 1 mod q degerini hesapla u1 H m w mod q degerini hesapla u2 r w mod q degerini hesapla v gu1 yu2 mod p mod q degerini hesapla Eger v r ise imza kabul edilir Algoritmanin dogruluguEger dogrulayici gercek imzalari her zaman kabul ediyorsa imza semasi dogrudur Algoritmanin dogrulugu su sekilde ispatlanabilir Ilk olarak eger g g h p 1 q mod p ise Fermat nin son teoremi ile gq hp 1 1 mod p dir g gt 1 ve q asal oldugundan g nin mertebesi q dur Imzalayan kisi s k 1 H m xr modq displaystyle s k 1 H m xr mod q degerini hesaplar Boylece k H m s 1 xrs 1 H m w xrw modq displaystyle begin aligned k amp equiv H m s 1 xrs 1 amp equiv H m w xrw pmod q end aligned gnin mertebesi q mod p q oldugundan gk gH m wgxrw gH m wyrw gu1yu2 modp displaystyle begin aligned g k amp equiv g H m w g xrw amp equiv g H m w y rw amp equiv g u1 y u2 pmod p end aligned Sonuc olarak Dijital Imza Algoritmasinin dogrulugu asagidaki gibi hesaplanarak cikar r gkmodp modq gu1yu2modp modq v displaystyle begin aligned r amp g k mod p mod q amp g u1 y u2 mod p mod q amp v end aligned DuyarlilikDijital Imza Algoritmasinda k rassal imza degerinin entropisi gizliligi ve tek olmasi onemlidir Bunlardan birinin olmamasi halinde saldiran gizli anahtari aciga cikartabilir Ayni deger iki kez kullanilirsa kyi gizli tutsa bile tahmin edilebilir bir deger kullanilarak ya da birkac imzadaki k nin bazi bitleri sizdirilarak Dijital Imza Algoritmasi kirilabilir Ayrica bakinizElGamal Imza Algoritmasi Schnorr imzasiDis baglantilarFIPS PUB 186 4 Dijital Imza Standardi DSS 27 Aralik 2016 tarihinde Wayback Machine sitesinde resmi DSA tanimlamasinin dorduncu ve guncel surumu NIST Ozel Yayini 800 57 p 62 63