Generator HMAC-a (HMAC-SHA256 u pregledniku)

Stranica bez mreže za generiranje HMAC SHA256 potpisa i brzi izračun HMAC-a.

Sve se izvodi lokalno u vašem pregledniku. Ključevi i poruke nikada se ne prenose niti spremaju.

Lokalni izračun Bez pohrane Hex i Base64
Bez mrežnog prijenosa

Kako koristiti (izrada HMAC potpisa)

  1. Unesite ključ. Ako specifikacija vašeg API-ja daje binarne bajtove ključa, odaberite Hex ili Base64 ulazni format.
  2. Unesite poruku koju treba potpisati.
  3. Odaberite izlazni format (Hex / Base64 / Base64URL) i kopirajte rezultat.
HMAC radi nad bajtovima, a ne nad vizualnim tekstom. UTF-8 kodiranje, razlike u novim redovima i dodatni razmaci promijenit će rezultat.

Primjeri (testni vektori)

Primjer 1 (kratka provjera)

Ulaz: Ključ = secret (UTF-8), Poruka = message (UTF-8)

HMAC-SHA256 (Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256 (Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

Primjer 2 (uobičajena fraza)

Ulaz: Ključ = key, Poruka = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Uobičajene zamke

  • Razlike između LF i CRLF novih redova proizvode različite potpise.
  • Obrezivanje vodećih/završnih razmaka može pokvariti podudaranje API potpisa.
  • Base64URL često znači + u -, / u _ i izostavljen = padding. Provjerite specifikaciju svojeg API-ja.
  • Ako se ključ distribuira kao Hex/Base64 bajtovi, tretiranje kao običnog teksta uzrokuje nepodudaranja.

Česta pitanja

Sprema li se moj ključ?

Ne. Ovaj alat izračunava u vašem pregledniku i ne šalje unos ključa/poruke ni na jedan poslužitelj.

Base64 ili Hex?

Oba su uobičajena. Možete odabrati Hex / Base64 / Base64URL izlaz kako biste odgovarali specifikaciji svojeg API-ja.

Koje se kodiranje znakova koristi (UTF-8)?

Tekstualni unos kodira se kao UTF-8 prije izračuna HMAC-a. Za binarne vrijednosti koristite Hex/Base64 ulaz.

Koja je razlika između HMAC-a i SHA-256 hasha?

SHA-256 je običan hash. HMAC dodaje tajni ključ za autentikaciju poruke.

Moj izlaz se ne podudara. Što trebam provjeriti?

Provjerite tumačenje ključa (tekst nasuprot bajtovima), rukovanje novim redovima, obrezivanje razmaka i Base64URL pravila.

Dodatak

Što je HMAC?

HMAC je kôd za autentikaciju poruke temeljen na tajnom ključu i hash funkciji.

Razlika u odnosu na SHA-256

Sam SHA-256 nema tajni ključ. HMAC-SHA256 zahtijeva zajednički ključ i koristi se za potpise.

Tipični slučajevi uporabe

Potpisivanje API zahtjeva, provjera webhookova i provjera cjelovitosti tokena.