Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 12821|Απάντηση: 0

[Γ] Η αρχή της επαλήθευσης ψηφιακής υπογραφής SM2

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 26/6/2019 10:09:45 π.μ. | | |
Ο SM2 είναι ένας αλγόριθμος ψηφιακής υπογραφής που βασίζεται σε ελλειπτικές καμπύλες και η εξήγηση των ελλειπτικών καμπυλών μπορεί να φανεί στο προηγούμενο Weibo σχετικά με τις ελλειπτικές καμπύλες και ακολουθεί μια σύντομη εισαγωγή στη διαδικασία της υπογραφής SM2.
Για να υπογραφούν οι πληροφορίες ee, αυτές είναι οι αρχικές πληροφορίες που λαμβάνονται μέσω της συνάρτησης κατακερματισμού μετά από συγκεκριμένη επεξεργασία, ο αλγόριθμος κατακερματισμού χρησιμοποιεί τον εθνικό μυστικό αλγόριθμο SM3, αυτή η διαδικασία παραλείπεται επίσης, εισάγεται μόνο η διαδικασία υπογραφής και επαλήθευσης κλειδιού.

1. Η διαδικασία υπογραφής
Έστω GG το σημείο αναφοράς στην ελλειπτική καμπύλη, dAdA είναι το ιδιωτικό κλειδί, PAPA είναι το δημόσιο κλειδί, PA=dA∗GPA=dA∗G
Το αποτέλεσμα υπογραφής (r,s) (r,s) προκύπτει με την ψηφιακή υπογραφή του EE και η διαδικασία υπολογισμού είναι:
Πρώτα απ 'όλα, επιλέξτε τον τυχαίο αριθμό kk, φυσικά, η επιλογή αυτού του αριθμού είναι περιορισμένη και μένει μόνος προς το παρόν
Υπολογίστε r=e+x1r=e+x1, όπου (x1,y1)=k∗G(x1,y1)=k∗G
Υπολογίστε s=(1+dA)−1∗(k−r∗dA)s=(1+dA)−1∗(k−r∗dA)
Μπορεί να φανεί ότι το μπροστινό μέρος πραγματοποιείται με ιδιωτικό κλειδί.

2. Η διαδικασία επαλήθευσης υπογραφής
Η επαλήθευση της υπογραφής είναι η χρήση της ληφθείσας υπογραφής, του δημόσιου κλειδιού, των παραμέτρων ελλειπτικής καμπύλης κ.λπ.
Αρχικά, υπολογίστε t=r+st=r+s, αν t=0t=0 τότε σημαίνει ότι δεν πέρασε.
Στη συνέχεια, τα σημεία της καμπύλης (x1,y1) = s∗G+t∗ PA (x1,y1)=s∗G+t∗ PA υπολογίζονται με tt και ss
Στη συνέχεια, υπολογίστε R=x1+eR=x1+e και, στη συνέχεια, επαληθεύστε εάν το RR και το rr είναι ίσα, εάν είναι ίσα, σημαίνει ότι η επαλήθευση έχει περάσει.

3. Η αρχή της επαληθεύσεως
Γιατί αυτό μπορεί να επαληθευτεί, θα μπορούσαμε κάλλιστα να το εξαγάγουμε:
(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
Μπορεί να φανεί ότι αυτό το σημείο στην ελλειπτική καμπύλη που λαμβάνεται σύμφωνα με το δημόσιο κλειδί είναι συνεπές με το σημείο κατά τη στιγμή της υπογραφής.
Στη συνέχεια, προσθέστε αυτό το x1x1 και τις πληροφορίες που λάβατε για να δείτε αν ταιριάζει με την απεσταλμένη υπογραφή rr και περνάει.
---------------------
Συγγραφέας: leowang666
Πηγή: CSDN
Πρωτότυπο: https://blog.csdn.net/hugewaves/article/details/59205914
Σημείωση πνευματικών δικαιωμάτων: Αυτό το άρθρο είναι ένα πρωτότυπο άρθρο του blogger, επισυνάψτε τον σύνδεσμο της ανάρτησης ιστολογίου για επανεκτύπωση!





Προηγούμενος:【Πρωτότυπο】Οδηγός συλλογής τραπεζικών εμβασμάτων Google AdSense
Επόμενος:Συνδέσεις γωνιακών συμβάντων/χαρακτηριστικών @HostListener, @HostBinding
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com