Γεννήτρια HMAC (Υπολογισμός HMAC-SHA256 στο πρόγραμμα περιήγησης)
Ένα εργαλείο υπολογισμού HMAC για τη δημιουργία HMAC SHA256 εδώ. Τα κλειδιά και οι είσοδοι δεν αποστέλλονται ούτε αποθηκεύονται.
Υποστηρίζει εισόδους Text/Hex/Base64 και εξόδους Hex/Base64. Υπολογίζει με ασφάλεια χρησιμοποιώντας το πρότυπο Crypto API του προγράμματος περιήγησης.
Είσοδος και Έξοδος
Αυτή η σελίδα εκτελεί υπολογισμούς εξ ολοκλήρου εντός του προγράμματος περιήγησης και δεν στέλνει δεδομένα.
* Η 'ακολουθία byte' σύμφωνα με τις προδιαγραφές του API είναι σημαντική. Εάν το κλειδί είναι δυαδικό, εισαγάγετε το σε Hex/Base64.
Επιλογές
Τα αποτελέσματα θα αλλάξουν εάν οι κωδικοί αλλαγής γραμμής διαφέρουν λόγω λειτουργικού συστήματος ή αντιγραφής-επικόλλησης.
Καθώς οι υπογραφές API προϋποθέτουν 'ακριβή ταύτιση', η διατήρηση ως έχει συνιστάται γενικά.
Χρήση
Τα βασικά 3 βήματα για τη δημιουργία μιας υπογραφής HMAC.
- 1 Εισαγάγετε το Κλειδί (Επιλέξτε Hex / Base64 εάν η προδιαγραφή του API είναι δυαδική)
- 2 Εισαγάγετε το Μήνυμα (Συμβολοσειρά προς υπογραφή / payload)
- 3 Επιλέξτε Μορφή Εξόδου (Hex / Base64) και Αντιγράψτε
Το HMAC υπολογίζεται σε 'ακολουθίες byte', όχι σε 'συμβολοσειρές χαρακτήρων'. Ακόμα κι αν φαίνονται ίδιες, τα αποτελέσματα θα διαφέρουν εάν η κωδικοποίηση χαρακτήρων, οι αλλαγές γραμμής ή τα επιπλέον κενά διαφέρουν (προϋποθέτει UTF-8).
Παραδείγματα (Δείγματα ελέγχου για επαλήθευση)
Κάντε κλικ στο 'Φόρτωση παραδείγματος' για να συμπληρώσετε τα πεδία εισόδου.
Συνήθη σφάλματα
Τα αποτελέσματα αλλάζουν εάν ο χειρισμός της αλλαγής γραμμής διαφέρει.
Καθώς οι υπογραφές προϋποθέτουν ακριβή ταύτιση, η αφαίρεση κενών μπορεί να προκαλέσει αναντιστοιχίες.
Το Base64URL συνήθως χρησιμοποιεί +→-, /→_ και παραλείπει το =. Ελέγξτε τις προδιαγραφές.
Παράδειγμα: Εισαγωγή του 'deadbeef' ως 'συμβολοσειρά' έναντι εισαγωγής του ως 'ακολουθία byte 0xDE 0xAD...'.
Συμπληρωματικές πληροφορίες
Ένας μηχανισμός για τη δημιουργία μιας υπογραφής από ένα μυστικό κλειδί και ένα μήνυμα. Ένας τρίτος δεν μπορεί να δημιουργήσει το ίδιο αποτέλεσμα χωρίς το ίδιο κλειδί.
Το SHA-256 είναι 'hash', το HMAC είναι 'keyed hash (υπογραφή)'.
Χρησιμοποιείται για υπογραφές API, επαλήθευση Webhook, ανίχνευση παραποίησης αιτημάτων κ.λπ.
FAQ
Αποθηκεύεται το κλειδί;
Δεν αποθηκεύεται. Αυτό το εργαλείο εκτελεί υπολογισμούς εντός του προγράμματος περιήγησης και δεν στέλνει κλειδιά ή μηνύματα σε διακομιστή. (※Ως προφύλαξη, κάντε επαναφορά μετά την εισαγωγή σε κοινόχρηστο υπολογιστή)
Base64 ή Hex;
Χρησιμοποιούνται και τα δύο. Μπορείτε να επιλέξετε τη μορφή εξόδου (Hex / Base64 / Base64URL). Επιλέξτε σύμφωνα με τις προδιαγραφές του API.
Κωδικοποίηση χαρακτήρων;
Προϋποθέτει UTF-8. Η είσοδος κειμένου μετατρέπεται σε bytes ως UTF-8 για τον υπολογισμό. Χρησιμοποιήστε είσοδο Hex / Base64 για χειρισμό δυαδικών δεδομένων.
Διαφορά μεταξύ HMAC και SHA-256 hash;
Το SHA-256 είναι 'hash', το HMAC είναι 'keyed hash (υπογραφή)'. Το ίδιο αποτέλεσμα δεν μπορεί να παραχθεί εάν τα κλειδιά δεν ταυτίζονται.
Η έξοδος δεν ταυτίζεται
Συνήθεις αιτίες είναι (1) Χειρισμός κλειδιού (Κείμενο έναντι Δυαδικού), (2) Αλλαγές γραμμής, (3) Κενά διαστήματα, (4) Base64URL. Ελέγξτε τα συνήθη σφάλματα παραπάνω με τη σειρά.