Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 12821|Vastaus: 0

[C] SM2-digitaalisen allekirjoituksen tarkistuksen periaate

[Kopioi linkki]
Julkaistu 26.6.2019 10.09.45 | | |
SM2 on digitaalinen allekirjoitusalgoritmi, joka perustuu elliptisiin käyriin, ja elliptisten käyrien selitys löytyy aiemmasta Weibosta elliptisistä käyristä, ja seuraavassa on lyhyt johdatus SM2-allekirjoitusprosessiin.
Jotta informaatio ee:n allekirjoitetaan, tämä on alkuperäinen tieto, joka saadaan hajautusfunktion kautta tietyn käsittelyn jälkeen, hajautusalgoritmi käyttää kansallisen salaisuuden SM3-algoritmia, tämäkin prosessi ohitetaan ja otetaan käyttöön vain avaimen allekirjoitus- ja vahvistusprosessi.

1. Allekirjoitusprosessi
Olkoon GG elliptisen käyrän viitepiste, dAdA yksityinen avain, PAPA julkinen avain, PA=dA∗GPA=dA∗G
Allekirjoitustulos (r,s) (r,s) saadaan allekirjoittamalla EE digitaalisesti, ja laskentaprosessi on:
Ensinnäkin, valitse satunnaisluku kk, tietenkin tämän luvun valinta on rajoitettua, ja se jätetään toistaiseksi koskematta
Laske r=e+x1r=e+x1, missä (x1,y1)=k∗G(x1,y1)=k∗G
Laske s=(1+dA)−1∗(k−r∗dA)s=(1+dA)−1∗(k−r∗dA)
On nähtävissä, että etuosa tehdään yksityisellä avaimella.

2. Allekirjoituksen tarkistusprosessi
Allekirjoituksen varmistaminen tarkoittaa saadun allekirjoituksen, julkisen avaimen, elliptisen käyrän parametreja jne. käyttöä allekirjoituksen varmistamiseen, ja varmennusvaiheet ovat:
Lasketaan ensin t=r+st=r+s, jos t=0t=0, se tarkoittaa, ettei se mennyt läpi.
Tällöin käyrän pisteet (x1,y1) = s∗G+t∗ PA (x1,y1)=s∗G+t∗ PA lasketaan tt ja ss avulla
Lasketaan sitten R=x1+eR=x1+e, ja varmistetaan, ovatko RR ja rr yhtä suuret, jos ne ovat yhtä suuret, se tarkoittaa, että varmennus on hyväksytty.

3. Verifioinnin periaate
Miksi tämä voidaan varmistaa, voimme yhtä hyvin johtaa siitä:
(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
On nähtävissä, että tämä elliptisen käyrän piste, joka saadaan julkisen avaimen mukaan, on yhdenmukainen allekirjoitushetken pisteen kanssa.
Sitten lisää tämä x1x1 ja vastaanotettu tieto nähdäksesi, täsmääkö se lähetettyä allekirjoitusta rr, ja se menee läpi.
---------------------
Kirjoittaja: leowang666
Lähde: CSDN
Alkuperäinen: https://blog.csdn.net/hugewaves/article/details/59205914
Tekijänoikeusilmoitus: Tämä artikkeli on bloggaajan alkuperäinen artikkeli, liitä blogikirjoituksen linkki uudelleenjulkaisua varten!





Edellinen:【Original】Google AdSense pankkisiirto-opastus
Seuraava:Kulmatapahtuma-/attribuuttisidokset @HostListener, @HostBinding
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com