Generator și verificator HMAC
Generați și verificați codurile de autentificare a mesajelor HMAC cu SHA-256, SHA-384, SHA-512 sau SHA-1 folosind o cheie secretă, în întregime în browser.
Rezultat
Un HMAC (Cod de autentificare a mesajelor bazat pe hash) este o construcție criptografică cu cheie care combină o cheie secretă cu un mesaj printr-o funcție hash, cum ar fi SHA-256. Spre deosebire de un hash simplu, pe care oricine îl poate recalcula doar din mesaj, un HMAC poate fi reprodus doar de cineva care deține aceeași cheie secretă - acesta este ceea ce îl face un cod de autentificare și nu doar o sumă de control.
Aceasta este diferența fundamentală față de un rezumat simplu: propriul nostru instrument Hash Generator calculează hashuri fără cheie precum MD5 sau SHA-256, care sunt excelente pentru detectarea corupției accidentale, dar nu dovedesc nimic despre cine a produs datele, deoarece oricine poate genera același hash. Un HMAC dovedește atât integritatea (mesajul nu a fost modificat) cât și autenticitatea (semnatarul știa secretul partajat), motiv pentru care HMAC este elementul standard din spatele semnării cererilor API, algoritmilor HS256/HS384/HS512 de la JWT și autentificarea înregistrărilor TLS.
Cel mai frecvent caz de utilizare în lumea reală este verificarea semnăturilor webhook. Servicii precum Stripe, GitHub și Shopify semnează fiecare sarcină utilă webhook cu HMAC-SHA256 folosind un secret pe care îl configurați și trimit semnătura rezultată într-un antet de solicitare. Se așteaptă ca serverul dvs. să recalculeze HMAC-ul peste sarcina utilă brută cu același secret și să o compare cu valoarea antetului - dacă se potrivesc, știți că cererea a venit cu adevărat de la acel serviciu și nu a fost modificată în tranzit. Modul de verificare al acestui instrument reproduce exact acea verificare: lipiți sarcina utilă, secretul partajat și semnătura primită și obțineți o potrivire sau nepotrivire instantanee.
Totul rulează local prin API-ul Web Crypto nativ al browserului (crypto.subtle.importKey și crypto.subtle.sign), astfel încât cheia secretă, corpul mesajului și semnătura rezultată nu părăsesc niciodată mașina dvs. - nimic nu este încărcat pe niciun server, ceea ce contează, deoarece secretele HMAC sunt exact genul de valoare pe care nu ar trebui să-l inserați niciodată într-un instrument online aleatoriu care ar putea să le înregistreze.