Δεν αποστέλλονται δεδομένα

Γεννήτρια HMAC (Υπολογισμός HMAC-SHA256 στο πρόγραμμα περιήγησης)

Ένα εργαλείο υπολογισμού HMAC για τη δημιουργία HMAC SHA256 εδώ. Τα κλειδιά και οι είσοδοι δεν αποστέλλονται ούτε αποθηκεύονται.

Υποστηρίζει εισόδους Text/Hex/Base64 και εξόδους Hex/Base64. Υπολογίζει με ασφάλεια χρησιμοποιώντας το πρότυπο Crypto API του προγράμματος περιήγησης.

Τοπικός υπολογισμός Καμία αποθήκευση Υποστήριξη Hex/Base64

Είσοδος και Έξοδος

Αυτή η σελίδα εκτελεί υπολογισμούς εξ ολοκλήρου εντός του προγράμματος περιήγησης και δεν στέλνει δεδομένα.

Δεν αποστέλλονται δεδομένα
Μορφή εισόδου

* Η 'ακολουθία byte' σύμφωνα με τις προδιαγραφές του API είναι σημαντική. Εάν το κλειδί είναι δυαδικό, εισαγάγετε το σε Hex/Base64.

Μορφή εισόδου
Μήκος εξόδου: 32 bytes (SHA-256)
Επιλογές

Τα αποτελέσματα θα αλλάξουν εάν οι κωδικοί αλλαγής γραμμής διαφέρουν λόγω λειτουργικού συστήματος ή αντιγραφής-επικόλλησης.

Καθώς οι υπογραφές API προϋποθέτουν 'ακριβή ταύτιση', η διατήρηση ως έχει συνιστάται γενικά.

Χρήση

Τα βασικά 3 βήματα για τη δημιουργία μιας υπογραφής HMAC.

  1. 1 Εισαγάγετε το Κλειδί (Επιλέξτε Hex / Base64 εάν η προδιαγραφή του API είναι δυαδική)
  2. 2 Εισαγάγετε το Μήνυμα (Συμβολοσειρά προς υπογραφή / payload)
  3. 3 Επιλέξτε Μορφή Εξόδου (Hex / Base64) και Αντιγράψτε

Το HMAC υπολογίζεται σε 'ακολουθίες byte', όχι σε 'συμβολοσειρές χαρακτήρων'. Ακόμα κι αν φαίνονται ίδιες, τα αποτελέσματα θα διαφέρουν εάν η κωδικοποίηση χαρακτήρων, οι αλλαγές γραμμής ή τα επιπλέον κενά διαφέρουν (προϋποθέτει UTF-8).

Παραδείγματα (Δείγματα ελέγχου για επαλήθευση)

Κάντε κλικ στο 'Φόρτωση παραδείγματος' για να συμπληρώσετε τα πεδία εισόδου.

Παράδειγμα 1
Κλειδί (Text/UTF-8)
secret
Μήνυμα (Text/UTF-8)
message
HMAC-SHA256 (Hex)
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b
HMAC-SHA256 (Base64)
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=
Παράδειγμα 2
Κλειδί (Text/UTF-8)
key
Μήνυμα (Text/UTF-8)
The quick brown fox jumps over the lazy dog
HMAC-SHA256 (Hex)
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8
HMAC-SHA256 (Base64)
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Συνήθη σφάλματα

Διαφορές κωδικού αλλαγής γραμμής (LF/CRLF)

Τα αποτελέσματα αλλάζουν εάν ο χειρισμός της αλλαγής γραμμής διαφέρει.

Περικοπή (Αφαίρεση κενών διαστημάτων)

Καθώς οι υπογραφές προϋποθέτουν ακριβή ταύτιση, η αφαίρεση κενών μπορεί να προκαλέσει αναντιστοιχίες.

Σημειογραφία Base64URL

Το Base64URL συνήθως χρησιμοποιεί +→-, /→_ και παραλείπει το =. Ελέγξτε τις προδιαγραφές.

Χειρισμός κλειδιού (Κείμενο έναντι Δυαδικού)

Παράδειγμα: Εισαγωγή του 'deadbeef' ως 'συμβολοσειρά' έναντι εισαγωγής του ως 'ακολουθία byte 0xDE 0xAD...'.

Συμπληρωματικές πληροφορίες

Τι είναι το HMAC;

Ένας μηχανισμός για τη δημιουργία μιας υπογραφής από ένα μυστικό κλειδί και ένα μήνυμα. Ένας τρίτος δεν μπορεί να δημιουργήσει το ίδιο αποτέλεσμα χωρίς το ίδιο κλειδί.

Διαφορά από το SHA-256

Το 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. Ελέγξτε τα συνήθη σφάλματα παραπάνω με τη σειρά.