SM2 to algorytm podpisu cyfrowego oparty na krzywych eliptycznych, a wyjaśnienie krzywych eliptycznych można zobaczyć w poprzednim Weibo dotyczącym krzywych eliptycznych, a poniżej znajduje się krótkie wprowadzenie do procesu sygnatury SM2. Aby informacja ee została podpisana, jest to oryginalna informacja uzyskana za pomocą funkcji skrótu po określonym przetwarzaniu, algorytm haszujący wykorzystuje tajny algorytm SM3 z narodowej tajemnicy, ten proces również jest pomijany, wprowadzany jest jedynie proces podpisywania i weryfikacji klucza.
1. Proces podpisywania Niech GG będzie punktem odniesienia na krzywej eliptycznej, dAdA kluczem prywatnym, PAPA kluczem publicznym, PA=dA∗GPA=dA∗G Wynik podpisu (r,s) (r,s) uzyskuje się przez cyfrowe podpisanie EE, a proces obliczeń wygląda następująco: Najpierw wybierz liczbę losową kk, oczywiście wybór tej liczby jest ograniczony i na razie pozostaje bez zmian Oblicz r=e+x1r=e+x1, gdzie (x1,y1)=k∗G(x1,y1)=k∗G Oblicz s=(1+dA)−1∗(k−r∗dA)s=(1+dA)−1∗(k−r∗dA) Widać, że fronty wykonuje się za pomocą klucza prywatnego.
2. Proces weryfikacji podpisu Weryfikacja podpisu polega na użyciu uzyskanego podpisu, klucza publicznego, parametrów krzywej eliptycznej itp. do weryfikacji podpisu, a główne kroki weryfikacji to: Najpierw oblicz t=r+st=r+s; jeśli t=0t=0, oznacza to, że nie przeszedł. Wtedy punkty na krzywej (x1,y1) = s∗G+t∗ PA (x1,y1)=s∗G+t∗ PA są obliczane przez tt i ss Następnie oblicz R=x1+eR=x1+e, a następnie sprawdź, czy RR i rr są równe; jeśli są równe, oznacza to, że weryfikacja została przejęta.
3. Zasada weryfikacji Dlaczego można to zweryfikować, możemy równie dobrze wyprowadzić to: (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 Widać, że ten punkt na krzywej eliptycznej uzyskanej według klucza publicznego jest zgodny z punktem w momencie podpisu. Następnie dodaj ten x1x1 i otrzymane informacje, aby sprawdzić, czy zgadza się z wysłanym podpisem rr, i to przechodzi. --------------------- Autor: leowang666 Źródło: CSDN Oryginał: https://blog.csdn.net/hugewaves/article/details/59205914 Informacja o prawach autorskich: Ten artykuł jest oryginalnym artykułem autorstwa blogera, prosimy o dołączenie linku do posta blogowego do ponownego druku!
|