Δημιουργία & Επαλήθευση HMAC
Δημιουργήστε και επαληθεύστε κωδικούς αυθεντικοποίησης μηνυμάτων HMAC με SHA-256, SHA-384, SHA-512 ή SHA-1 χρησιμοποιώντας ένα μυστικό κλειδί, εξ ολοκλήρου στο πρόγραμμα περιήγησής σας.
🔒 Επεξεργάζεται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας — τίποτα που εισάγετε εδώ δεν μεταφορτώνεται ποτέ.
Αποτέλεσμα
Ένα HMAC (Κωδικός Αυθεντικοποίησης Μηνύματος βασισμένος σε Κατακερματισμό) είναι μια κρυπτογραφική δομή με κλειδί που συνδυάζει ένα μυστικό κλειδί με ένα μήνυμα μέσω μιας συνάρτησης κατακερματισμού όπως η SHA-256. Σε αντίθεση με έναν απλό κατακερματισμό, τον οποίο ο καθένας μπορεί να υπολογίσει εκ νέου μόνο από το μήνυμα, ένα HMAC μπορεί να αναπαραχθεί μόνο από κάποιον που κατέχει το ίδιο μυστικό κλειδί — αυτό το καθιστά κωδικό αυθεντικοποίησης και όχι απλώς άθροισμα ελέγχου.
Αυτή είναι η θεμελιώδης διαφορά από ένα απλό σύνοψη: το δικό μας εργαλείο Hash Generator υπολογίζει κατακερματισμούς χωρίς κλειδί όπως MD5 ή SHA-256, οι οποίοι είναι εξαιρετικοί για τον εντοπισμό τυχαίας φθοράς αλλά δεν αποδεικνύουν τίποτα σχετικά με το ποιος παρήγαγε τα δεδομένα, αφού ο καθένας μπορεί να δημιουργήσει τον ίδιο κατακερματισμό. Ένα HMAC αποδεικνύει τόσο την ακεραιότητα (το μήνυμα δεν αλλοιώθηκε) όσο και την αυθεντικότητα (ο υπογράφων γνώριζε το κοινό μυστικό), γι' αυτό το HMAC είναι το βασικό δομικό στοιχείο πίσω από την υπογραφή αιτημάτων API, τους αλγόριθμους HS256/HS384/HS512 των JWT και την αυθεντικοποίηση εγγραφών TLS.
Η πιο συνηθισμένη περίπτωση χρήσης στον πραγματικό κόσμο είναι η επαλήθευση υπογραφών webhook. Υπηρεσίες όπως το Stripe, το GitHub και το Shopify υπογράφουν κάθε ωφέλιμο φορτίο webhook με HMAC-SHA256 χρησιμοποιώντας ένα μυστικό που ορίζετε εσείς και στέλνουν την προκύπτουσα υπογραφή σε μια κεφαλίδα αιτήματος. Ο διακομιστής σας αναμένεται να υπολογίσει εκ νέου το HMAC στο ακατέργαστο ωφέλιμο φορτίο με το ίδιο μυστικό και να το συγκρίνει με την τιμή της κεφαλίδας — αν συμφωνούν, γνωρίζετε ότι το αίτημα προήλθε πράγματι από αυτή την υπηρεσία και δεν παραποιήθηκε κατά τη μεταφορά. Η λειτουργία επαλήθευσης αυτού του εργαλείου αναπαράγει ακριβώς αυτόν τον έλεγχο: επικολλήστε το ωφέλιμο φορτίο, το κοινό μυστικό και τη ληφθείσα υπογραφή και λάβετε άμεσα συμφωνία ή ασυμφωνία.
Όλα εκτελούνται τοπικά μέσω του εγγενούς Web Crypto API του προγράμματος περιήγησης (crypto.subtle.importKey και crypto.subtle.sign), επομένως το μυστικό κλειδί, το σώμα του μηνύματος και η προκύπτουσα υπογραφή δεν εγκαταλείπουν ποτέ τον υπολογιστή σας — τίποτα δεν μεταφορτώνεται σε κανέναν διακομιστή, κάτι που έχει σημασία καθώς τα μυστικά HMAC είναι ακριβώς ο τύπος τιμής που δεν πρέπει ποτέ να επικολλάτε σε ένα τυχαίο διαδικτυακό εργαλείο που θα μπορούσε να το καταγράψει.