Δημιουργία HMAC-SHA1
Υπολογίστε μια ετικέτα HMAC-SHA1 από ένα μήνυμα και ένα μυστικό κλειδί. Το εργαλείο κωδικοποιεί και τα δύο ως UTF-8, εφαρμόζει την κατασκευή HMAC του RFC 2104 με SHA-1 και επιστρέφει το αποτέλεσμα 160 bit ως 40 δεκαεξαδικούς χαρακτήρες ή σε Base64. Είναι χρήσιμο για προγραμματιστές που εργάζονται με υπογραφές OAuth 1.0a, εσωτερικές λειτουργίες TOTP, παλαιότερα webhook και παλαιού τύπου API που εξακολουθούν να υπογράφουν με HMAC-SHA1. Το κλειδί σας παραμένει στο αίτημα.
Συχνές ερωτήσεις
Τι είναι το HMAC-SHA1;
Το HMAC-SHA1 είναι ένας κωδικός επαλήθευσης μηνυμάτων που συνδυάζει το SHA-1 με ένα μυστικό κλειδί, σύμφωνα με το RFC 2104. Η ετικέτα έχει μέγεθος 20 byte και εμφανίζεται ως 40 δεκαεξαδικοί χαρακτήρες ή 28 χαρακτήρες Base64.
Είναι το HMAC-SHA1 ακόμα ασφαλές, παρόλο που το SHA-1 έχει παραβιαστεί;
Οι συγκρούσεις του SHA-1 δεν παραβιάζουν το HMAC-SHA1, επειδή η ασφάλεια του HMAC βασίζεται σε άλλες ιδιότητες της συνάρτησης κατακερματισμού. Το HMAC-SHA1 εξακολουθεί να θεωρείται αποδεκτό για υπάρχοντα συστήματα. Για νέα σχέδια, προτιμήστε το HMAC-SHA256.
Ποιο είναι ένα γνωστό διάνυσμα δοκιμής HMAC-SHA1;
Η δοκιμή 2 του RFC 2202 χρησιμοποιεί το κλειδί Jefe και το μήνυμα what do ya want for nothing? και αναμένει το effcdf6ae5eb2fa2d27416d5f184df9c259a7c79. Αυτό το εργαλείο επιστρέφει αυτήν την ετικέτα.
Πώς δημιουργώ μια υπογραφή OAuth 1.0a;
Χρησιμοποιήστε τη βασική συμβολοσειρά υπογραφής ως μήνυμα και ενώστε το μυστικό του καταναλωτή και το μυστικό του token με ένα ampersand για να σχηματίσετε το κλειδί. Επιλέξτε έξοδο Base64 και, στη συνέχεια, κωδικοποιήστε το αποτέλεσμα ως ποσοστό για την κεφαλίδα Authorization.
Χρησιμοποιεί το TOTP HMAC-SHA1;
Ναι. Οι περισσότερες εφαρμογές επαλήθευσης ταυτότητας υπολογίζουν HMAC-SHA1 πάνω σε έναν μετρητή χρόνου 8 byte με ένα μυστικό αποκωδικοποιημένο από Base32. Επειδή αυτό το κλειδί και ο μετρητής είναι δυαδικά, αυτό το εργαλείο που βασίζεται σε κείμενο δεν μπορεί να αναπαράγει απευθείας έναν κωδικό TOTP.
Πώς κωδικοποιούνται το κλειδί και το μήνυμα;
Και τα δύο μετατρέπονται σε byte UTF-8 ακριβώς όπως πληκτρολογήθηκαν. Κρυφά κενά, διαφορετικός τερματισμός γραμμής ή ένα κλειδί που πρέπει να αποκωδικοποιηθεί από hex ή Base64 είναι οι συνήθεις λόγοι που δεν ταιριάζει το αποτέλεσμα.
Επιστρέφεται το κλειδί μου στο αποτέλεσμα;
Όχι. Η απόκριση περιέχει μόνο την ετικέτα και τις επιλογές που δεν είναι μυστικές. Το κλειδί δεν καταγράφεται ούτε αποθηκεύεται.
Ποια μορφή εξόδου να επιλέξω;
Χρησιμοποιήστε hex αν η άλλη πλευρά εμφανίζει μια πεζή συμβολοσειρά 40 χαρακτήρων και Base64 αν εμφανίζει 28 χαρακτήρες που τελειώνουν σε =. Και οι δύο μορφές αντιστοιχούν στα ίδια 20 byte.
Μπορώ να χρησιμοποιήσω κενό κλειδί;
Ναι, το HMAC δέχεται κενό κλειδί και το εργαλείο υπολογίζει το αποτέλεσμα. Το κενό κλειδί δεν παρέχει προστασία, οπότε χρησιμοποιήστε το μόνο για σύγκριση με διανύσματα δοκιμής ή άλλα εργαλεία.
Πόσο μεγάλο μπορεί να είναι το μήνυμα;
Το μήνυμα και το κλειδί μαζί μπορούν να έχουν μέγεθος έως 5 MiB κειμένου ανά αίτημα. Η ετικέτα υπολογίζεται αμέσως και καμία από τις δύο εισόδους δεν αποθηκεύεται.