SM2, eliptik eğrilere dayalı dijital bir imza algoritmasıdır ve eliptik eğrilerin açıklaması eliptik eğriler hakkında önceki Weibo'da görülebilir; aşağıda SM2 imzası sürecine kısa bir giriş verilmektedir. Bilgi ee'nin imzalanması için, belirli işlemlerden sonra hash fonksiyonu aracılığıyla elde edilen orijinal bilgidir, hash algoritması ulusal gizli SM3 algoritmasını kullanır, bu süreç de atlanır, sadece anahtar imzalama ve doğrulama süreci başlatılır.
1. İmza süreci GG eliptik eğride referans noktası olsun, dAdA özel anahtar, PAPA açık anahtar, PA=dA∗GPA=dA∗G olsun İmza sonucu (r,s) (r,s) EE'nin dijital olarak imzalanmasıyla elde edilir ve hesaplama süreci şöyledir: Öncelikle, rastgele sayı kk'yi seçin, elbette bu sayının seçimi kısıtlıdır ve şimdilik olduğu gibi bırakılır r=e+x1r=e+x1 hesaplayın, burada (x1,y1)=k∗G(x1,y1)=k∗G Hesapla s=(1+dA)−1∗(k−r∗dA)s=(1+dA)−1∗(k−r∗dA) Ön kısmın özel bir anahtarla yapıldığı görülebilir.
2. İmza doğrulama süreci İmzanın doğrulanması, alınan imza, açık anahtar, eliptik eğri parametreleri vb. kullanılarak imzayı doğrulamaktır ve doğrulamanın ana adımları şunlardır: İlk olarak, t=r+st=r+s hesaplayın; eğer t=0t=0 ise, bu geçiş yapılmadığı anlamına gelir. O zaman (x1,y1) = s∗G+t∗ PA (x1,y1)=s∗G+t∗ PA üzerindeki noktalar tt ve ss ile hesaplanır Sonra R=x1+eR=x1+e hesaplayın ve ardından RR ile rr'nin eşit olup olmadığını doğrulayın; eğer eşitlerse doğrulama geçtiği anlamına gelir.
3. Doğrulama ilkesi Bunun neden doğrulanabileceğini şu şekilde türetebiliriz: (x1,y1)=s∗G+t∗PA =s∗G+(r+s)∗PA =s∗G+(r+s)∗dA∗G=(1+dA)∗s∗G+r∗dA∗G=(1+dA)∗(1+dA)−1∗(k−r∗dA)∗G+r∗dA∗G=(k−r∗dA)∗G+r∗dA∗G=k∗G(x1,y1)=s∗G+t∗PA =s∗G+(r+s)∗PA =s∗G+(r+s)∗dA∗G=(1+dA)∗s∗G+r∗dA∗G=(1+dA)∗(1+dA)−1∗(k−r∗dA)∗G+r∗dA∗G=(k−r∗dA)∗G+r∗dA∗G=k∗G Açık anahtara göre elde edilen eliptik eğrideki bu noktanın, imza anındaki noktayla tutarlı olduğu görülebilir. Sonra bu x1x1 ve alınan bilgileri ekleyip gönderilen imza rr'ye uyuyup uyumadığını görmek için geçer. --------------------- Yazar: leowang666 Kaynak: CSDN Orijinal: https://blog.csdn.net/hugewaves/article/details/59205914 Telif Hakkı Bildirimi: Bu makale blog yazarı tarafından orijinal bir makaledir, lütfen yeniden basmak için blog yazısı bağlantısını ekleyin!
|