Viss notiek tavā pārlūkā: ievade, HMAC atslēga un gaidītais jaucējkods neatstāj ierīci.
Ko HMAC pievieno parastam jaucējam
HMAC (ar atslēgu saistīts ziņojuma autentifikācijas kods) iemaisa slepenu atslēgu jaucēšanas procesā. Ja ziņojuma SHA-256 pierāda tikai to, ka baiti nav mainījušies, tad HMAC papildus pierāda, ka tā autors zināja koplietoto atslēgu — tā serveris var uzticēties, ka ienākošais tīmekļa āķis tiešām nāk no gaidītā sūtītāja. Ar atslēgu key un ziņojumu The quick brown fox jumps over the lazy dog HMAC-SHA256 atgriež f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8.
Ar parastu jaucēju autentifikācijai nepietiek: SHA-256 var pārrēķināt ikviens, tāpēc uzbrucējs varētu viltot jaucēju. HMAC ir veidots, lai tam pretotos, tostarp garuma paplašināšanas uzbrukumiem, kas salauž naivas shēmas hash(slepens + ziņojums). Izmanto HMAC-SHA256, lai parakstītu API pieprasījumus, pārbaudītu tīmekļa āķus (Stripe, GitHub, Slack) un atvasinātu ziņojumam piesaistītus marķierus. Atslēgai jāpaliek slepenai un jābūt garai un nejaušai.
Kā aprēķināt HMAC
- Izvēlies HMAC algoritmu: SHA-1, SHA-256 vai SHA-512.
- Ievadi slepeno atslēgu maskētajā atslēgas laukā.
- Ieraksti vai ielīmē autentificējamo ziņojumu.
- Salīdzini parakstu ar to, ko saņem tavs serveris.
Biežāk uzdotie jautājumi par HMAC
Kāpēc HMAC vajag atslēgu?
Atslēga pārvērš publisku nospiedumu autentifikācijas pierādījumā: atbilstošu MAC var radīt tikai puses, kas dala noslēpumu.
HMAC-SHA1 vai HMAC-SHA256?
HMAC-SHA256 ir mūsdienu noklusējums tīmekļa āķiem un pieprasījumu parakstīšanai. HMAC-SHA1 joprojām parādās vecākos protokolos un ir pieņemams, ja nepieciešams saderībai.
Vai HMAC ir šifrēšana?
Nē. Tas neslēpj ziņojumu — tas tikai pierāda integritāti un autentiskumu. Ja vajag konfidencialitāti, šifrē atsevišķi.
Viss notiek tavā pārlūkā: ievade, HMAC atslēga un gaidītais jaucējkods neatstāj ierīci.
