Δημιουργία HMAC-SHA512
Δημιουργήστε μια ετικέτα HMAC-SHA512 από ένα μήνυμα και ένα μυστικό κλειδί. Το εργαλείο κωδικοποιεί και τα δύο ως UTF-8, εφαρμόζει τη δομή HMAC του RFC 2104 με SHA-512 και επιστρέφει το αποτέλεσμα 512 bit σε hex ή Base64. Χρησιμοποιήστε το για να δοκιμάσετε σχήματα υπογραφής API, όπως ορισμένα API ανταλλακτηρίων κρυπτονομισμάτων και διακριτικά HS512, και να ελέγξετε τη δική σας υλοποίηση με βάση μια αξιόπιστη αναφορά. Το κλειδί δεν εμφανίζεται ποτέ στην απάντηση.
Συχνές ερωτήσεις
Τι είναι το HMAC-SHA512;
Το HMAC-SHA512 συνδυάζει τον κατακερματισμό SHA-512 με ένα μυστικό κλειδί, χρησιμοποιώντας τη δομή HMAC του RFC 2104. Αποδεικνύει ότι ένα μήνυμα προέρχεται από κάποιον που γνωρίζει το κλειδί και ότι δεν έχει αλλοιωθεί. Η ετικέτα έχει μέγεθος 64 bytes ή 128 χαρακτήρες hex.
Ποιο είναι ένα γνωστό διάνυσμα δοκιμής HMAC-SHA512;
Η δοκιμή 2 του RFC 4231 χρησιμοποιεί το κλειδί Jefe και το μήνυμα what do ya want for nothing?. Η αναμενόμενη ετικέτα είναι 164b7a7bfcf819e2e395fbe73b56e0a387bd64222e831fd610270cd7ea2505549758bf75c05a994a6d034f65f8f0e6fdcaeab1a34d4a6b4b636e070a38bce737, την οποία αναπαράγει αυτό το εργαλείο.
Πότε πρέπει να χρησιμοποιώ το HMAC-SHA512 αντί για το HMAC-SHA256;
Χρησιμοποιήστε το όταν το απαιτεί ένα API ή μια μορφή διακριτικού, για παράδειγμα τον αλγόριθμο HS512 στα Web Tokens JSON. Το HMAC-SHA256 είναι ήδη ισχυρό, ενώ το SHA-512 προσφέρει κυρίως μεγαλύτερη ετικέτα και είναι συχνά ταχύτερο σε μηχανήματα 64-bit.
Πώς κωδικοποιούνται οι είσοδοι;
Το μήνυμα και το κλειδί λαμβάνονται και τα δύο ως κείμενο UTF-8. Αν ο πάροχός σας δίνει ένα μυστικό Base64 ή hex που πρέπει πρώτα να αποκωδικοποιηθεί, το αποτέλεσμα εδώ θα διαφέρει από το δικό του.
Πόσο μεγάλο πρέπει να είναι το κλειδί μου;
Ένα τυχαίο κλειδί 64 byte αντιστοιχεί στο μέγεθος εξόδου SHA-512 και αποτελεί καλή επιλογή. Τα κλειδιά που ξεπερνούν τα 128 byte κατακερματίζονται πρώτα, ενώ τα πολύ σύντομα κλειδιά αποδυναμώνουν την ασφάλεια.
Παραμένει ιδιωτικό το μυστικό κλειδί;
Ναι. Το κλειδί χρησιμοποιείται μόνο στη μνήμη για αυτό το αίτημα και δεν συμπεριλαμβάνεται στην απόκριση. Δεν καταγράφεται ούτε αποθηκεύεται ποτέ.
Μπορώ να δημιουργήσω υπογραφή JWT με αυτό το εργαλείο;
Εν μέρει. Το HS512 υπογράφει την κεφαλίδα Base64URL, μια τελεία και το φορτίο Base64URL. Επικολλήστε αυτήν τη συμβολοσειρά ως μήνυμα, επιλέξτε έξοδο Base64 και αντικαταστήστε το + με -, το / με _ και αφαιρέστε το συμπλήρωμα = για να λάβετε το τμήμα υπογραφής JWT.
Γιατί δεν ταιριάζει το αποτέλεσμά μου;
Οι συνηθέστερες αιτίες είναι επιπλέον κενά ή αλλαγές γραμμής στο μήνυμα, ένα κλειδί που θα έπρεπε να έχει αποκωδικοποιηθεί από hex ή Base64, ή η σύγκριση hex με Base64. Ελέγξτε κάθε byte εισόδου ένα προς ένα.
Μπορώ να περικόψω την ετικέτα HMAC-SHA512;
Ορισμένα πρωτόκολλα χρησιμοποιούν μόνο το πρώτο τμήμα της ετικέτας, για παράδειγμα τις παραλλαγές HMAC-SHA512/256 σε ορισμένα πρότυπα. Το εργαλείο επιστρέφει πάντα και τα 64 byte, οπότε περικόψτε τα μόνοι σας αν το ορίζει το πρωτόκολλό σας.
Ποιο είναι το όριο εισόδου;
Το μήνυμα και το κλειδί μαζί μπορούν να έχουν μέγεθος έως 5 MiB κειμένου ανά αίτημα. Αυτό αρκεί για API σώματα αιτημάτων, συμβολοσειρές token και μεγάλα φορτία webhook.