Generátor HMAC (HMAC-SHA256 v prehliadači)

Stránka bez sieťovej komunikácie na rýchly výpočet HMAC SHA256 a overenie podpisu.

Všetko prebieha lokálne vo vašom prehliadači. Kľúče ani správy sa nikdy neposielajú ani neukladajú.

Lokálny výpočet Bez ukladania Hex a Base64
Bez prenosu po sieti

Ako používať (HMAC signature)

  1. Zadajte kľúč. Ak špecifikácia API poskytuje binárne bajty kľúča, zvoľte formát vstupu Hex alebo Base64.
  2. Zadajte payload správy, ktorú chcete podpísať.
  3. Vyberte výstupný formát (Hex / Base64 / Base64URL) a skopírujte výsledok.
HMAC pracuje s bajtmi, nie s vizuálnym textom. Kódovanie UTF-8, rozdiely v nových riadkoch a nadbytočné medzery zmenia výsledok.

Príklady (testovacie vektory)

Príklad 1 (krátka kontrola)

Vstup: Kľúč = secret (UTF-8), Správa = message (UTF-8)

HMAC-SHA256 (Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256 (Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

Príklad 2 (bežná fráza)

Vstup: Kľúč = key, Správa = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Bežné chyby

  • Rozdiel medzi novými riadkami LF a CRLF vytvára odlišné podpisy.
  • Orezanie úvodných alebo koncových medzier môže narušiť zhodu podpisu API.
  • Base64URL často znamená nahradiť + za -, / za _ a vynechať padding =. Skontrolujte špecifikáciu svojho API.
  • Ak je kľúč distribuovaný ako bajty Hex/Base64, jeho spracovanie ako obyčajného textu spôsobí nesúlad.

Často kladené otázky

Ukladá sa môj kľúč?

Nie. Tento nástroj počíta vo vašom prehliadači a neposiela vstupy kľúča ani správy na žiadny server.

Base64 alebo Hex?

Oba formáty sú bežné. Môžete si zvoliť výstup Hex / Base64 / Base64URL podľa špecifikácie svojho API.

Aké kódovanie znakov sa používa (UTF-8)?

Textový vstup sa pred výpočtom HMAC zakóduje ako UTF-8. Pre binárne hodnoty použite vstup Hex/Base64.

Aký je rozdiel medzi HMAC a hashom SHA-256?

SHA-256 je obyčajný hash. HMAC pridáva tajný kľúč na autentifikáciu správy.

Môj výstup nesedí. Čo mám skontrolovať?

Skontrolujte interpretáciu kľúča (text vs. bajty), prácu s novými riadkami, orezanie medzier a pravidlá Base64URL.

Doplnenie

Čo je HMAC?

HMAC je kód na autentifikáciu správy založený na hašovaní s tajným kľúčom a hashovacou funkciou.

Rozdiel oproti SHA-256

Samotné SHA-256 nemá tajný kľúč. HMAC-SHA256 vyžaduje zdieľaný kľúč a používa sa na podpisy.

Typické použitia

Podpisovanie API požiadaviek, overovanie webhookov a kontrola integrity tokenov.