Generátor HMAC (HMAC-SHA256 v prohlížeči)

Stránka pro generování HMAC SHA256 bez sítě pro rychlý výpočet HMAC a kontrolu podpisů.

Vše běží lokálně ve vašem prohlížeči. Klíče ani zprávy se nikdy nepřenášejí ani neukládají.

Lokální výpočet Bez ukládání Hex a Base64
Bez přenosu po síti

Jak používat (HMAC signature)

  1. Zadejte klíč. Pokud vaše API specifikace poskytuje binární bajty klíče, zvolte vstupní formát Hex nebo Base64.
  2. Zadejte payload zprávy, kterou chcete podepsat.
  3. Vyberte výstupní formát (Hex / Base64 / Base64URL) a výsledek zkopírujte.
HMAC pracuje s bajty, ne s vizuálním textem. Kódování UTF-8, rozdíly v nových řádcích a přebytečné mezery výsledek změní.

Příklady (testovací vektory)

Příklad 1 (krátká kontrola)

Vstup: Klíč = secret (UTF-8), Zpráva = message (UTF-8)

HMAC-SHA256 (Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256 (Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

Příklad 2 (běžná fráze)

Vstup: Klíč = key, Zpráva = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Běžná úskalí

  • Rozdíly mezi novými řádky LF a CRLF vytvářejí odlišné podpisy.
  • Oříznutí počátečních nebo koncových mezer může rozbít shodu podpisu API.
  • Base64URL často znamená převod + na -, / na _ a vynechání paddingu =. Ověřte si specifikaci svého API.
  • Pokud je klíč distribuován jako bajty Hex/Base64, bude jeho chápání jako prostého textu způsobovat neshody.

Časté dotazy

Ukládá se můj klíč?

Ne. Tento nástroj počítá ve vašem prohlížeči a neposílá vstupy klíče ani zprávy na žádný server.

Base64 nebo Hex?

Obojí je běžné. Můžete zvolit výstup Hex / Base64 / Base64URL podle specifikace vašeho API.

Jaké kódování znaků se používá (UTF-8)?

Textový vstup se před výpočtem HMAC zakóduje jako UTF-8. Pro binární hodnoty použijte vstup Hex/Base64.

Jaký je rozdíl mezi HMAC a hashem SHA-256?

SHA-256 je běžný hash. HMAC přidává tajný klíč pro autentizaci zpráv.

Můj výstup nesouhlasí. Co mám zkontrolovat?

Zkontrolujte interpretaci klíče (text vs bajty), zacházení s novými řádky, ořezávání mezer a pravidla Base64URL.

Doplnění

Co je HMAC?

HMAC je kód pro autentizaci zprávy založený na hashovací funkci a tajném klíči.

Rozdíl oproti SHA-256

Samotné SHA-256 neobsahuje tajný klíč. HMAC-SHA256 vyžaduje sdílený klíč a používá se pro podpisy.

Typické případy použití

Podepisování API požadavků, ověřování webhooků a kontrola integrity tokenů.