Įvestis
HMAC algoritmas
Raktas
HMAC-SHA256 maiša
Įvesk raktą, kad būtų apskaičiuotas HMAC.
Tikėtina maiša (nebūtina)
Perskaičiuojama rašant. Hex nepriklauso nuo registro — ':' ir tarpai ignoruojami.

Viskas vyksta tavo naršyklėje: įvestis, HMAC raktas ir tikėtina maiša nepalieka įrenginio.

Ką HMAC prideda prie paprasto maišo

HMAC (raiščiu pagrįstas pranešimo autentifikavimo kodas) įmaišo slaptą raktą į maišymo procesą. Jei pranešimo SHA-256 įrodo tik tai, kad baitai nepasikeitė, tai HMAC papildomai įrodo, kad jį sukūręs žinojo bendrą raktą — taip serveris gali pasitikėti, kad gaunamas webhook tikrai ateina iš laukiamo siuntėjo. Su raktu key ir pranešimu The quick brown fox jumps over the lazy dog HMAC-SHA256 grąžina f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8.

Paprasto maišo autentifikavimui neužtenka: SHA-256 gali perskaičiuoti bet kas, tad užpuolikas galėtų suklastoti maišą. HMAC sukurtas tam atsispirti, įskaitant ilgio praplėtimo atakas, kurios laužo naivias hash(slaptis + pranešimas) schemas. Naudokite HMAC-SHA256 API užklausoms pasirašyti, webhook patikrai (Stripe, GitHub, Slack) ir su pranešimu susietiems žetonams išvesti. Raktas turi likti slaptas, ilgas ir atsitiktinis.

Kaip apskaičiuoti HMAC

  1. Pasirinkite HMAC algoritmą: SHA-1, SHA-256 arba SHA-512.
  2. Įveskite slaptą raktą užmaskuotame rakto lauke.
  3. Įveskite arba įklijuokite autentifikuotiną pranešimą.
  4. Palyginkite parašą su tuo, kurį gauna jūsų serveris.

Dažnai užduodami klausimai apie HMAC

Kodėl HMAC reikia rakto?

Raktas paverčia viešą pėdsaką autentifikavimo įrodymu: atitinkantį MAC gali sukurti tik šalys, kurios dalijasi paslaptimi.

HMAC-SHA1 ar HMAC-SHA256?

HMAC-SHA256 yra šiuolaikinis numatytasis pasirinkimas webhook ir užklausų pasirašymui. HMAC-SHA1 vis dar pasitaiko senesniuose protokoluose ir yra priimtinas, kai reikia suderinamumo.

Ar HMAC yra šifravimas?

Ne. Jis neslepia pranešimo — jis tik įrodo vientisumą ir autentiškumą. Jei reikia konfidencialumo, šifruokite atskirai.

Viskas vyksta tavo naršyklėje: įvestis, HMAC raktas ir tikėtina maiša nepalieka įrenginio.