Both sides previous revisionPrevious revisionNext revision | Previous revision |
hmac [2023/09/27 08:15] – tekst katarina | hmac [2023/11/22 09:58] (current) – external edit 127.0.0.1 |
---|
====HMAC==== | ====HMAC==== |
**HMAC (Hash-based Message Authentication Code)** je posebni tip [[[mac|MAC-a]] temeljen na kriptografskoj hash funkciji (npr. SHA-2 ili SHA-3) i tajnom kriptografskom ključu. Kao i kod „običnog“ MAC-a, radi se o dodatku poruci koji služi za provjeru autentičnosti i integriteta poruke, odnosno za potvrdu identiteta pošiljatelja i neizmjenjenosti zaprimljene poruke. | **HMAC (Hash-based Message Authentication Code)** je posebni tip [[[mac|MAC-a]] koji prije slanja poruke primjenjuje kriptografsku [[hash|funkciju sažetka]] nad porukom i tajnim ključem. Također ne kriptira poruku, već se samo šalje uz nju. Primatelj primijeni unaprijed dogovorenu funkciju sažetka nad dobivenom porukom i svojim tajnim ključem da dobije očekivani HMAC i uspoređuje ga s dobivenim. |
| |
HMAC ne enkriptira poruku, nego se poruka šalje uz HMAC sažetak. Korisnici koji posjeduju tajni ključ mogu ponovno hashirati poruku i tako potvrditi autentičnost poruke. | HMAC danas koriste mnogi komunikacijski protokoli kao što su HTTPS, SFTP i FTPS. Koristi se i na poveznicama za resetiranje lozinke, verifikaciji email adresa pri stvaranju korisničkog računa i slično. Njegova je prednost što se koristi hash funkcijama koje se brzo računaju. Dakle, može se vrlo brzo s popriličnom sigurnošću provjeriti legitimitet korisničkog zahtjeva, stoga je idealan za internetsku komunikaciju jer ju ne usporava i time ne narušava korisničko iskustvo. Druga prednost je što, isto kao i MAC, funkcija vraća rezultat fiksne duljine. Korisnik može poslati iznimno dugačak zahtjev, ali HMAC ostaje iste veličine pa neće zauzimati puno resursa, što opet doprinosi brzini odgovora. |
| |
Da bi sigurnost HMAC-a bila maksimizirana, bitno je koristiti jake, odnosno dovoljno duge i unikatne, tajne ključeve i sigurne hash funkcije. Ispravno korišten HMAC otporan je na napade riječnikom (dictionary attacks) te idealan za zaštitu osobnih podataka. | Da bi HMAC-a bio siguran, treba koristiti dovoljno dugačke i unikatne tajne ključeve te sigurne funkcije sažetka. Ispravno korišten HMAC otporan je na napade rječnikom (//dictionary attacks//) te idealan za zaštitu osobnih podataka. |
| |
| |
| ===Izvori=== |
| [1] Christof Paar, Jan Pelzl, Understanding Cryptography, Springer-Verlag Berlin Heidelberg, 2009.\\ |
| [2] Henk C. A. Tilborg, Encyclopedia of Cryptography and Security, Springer-Verlag US, 2005. \\ |
| [3] https://www.geeksforgeeks.org/what-is-hmachash-based-message-authentication-code/ |
| |