Johdatus HMAC: iin

HMAC tarkoittaa Hash-pohjaista viestin todennuskoodia. Saatavilla on erilaisia ​​viestihakemistoalgoritmeja. HMAC: n tavoitteena on käyttää uudelleen näitä sanomaleikkausalgoritmeja. Se on kehitetty toteuttamaan Internet-protokollan turvallisuusympäristö. HMAC toimii minkä tahansa viestien sulautusalgoritmin kanssa. Se käyttää viestin tiivistämisalgoritmia alkuperäisessä viestissä, se käyttää myös symmetristä avainta viestin tiivisteen salaamiseen, mikä tuottaa MAC (Message Authentication Code) -viestin. HMAC on samanlainen kuin MAC, ero on HMAC: ssa, se käyttää hash-pohjaista algoritmia. Hash-pohjaista viestin todennuskoodia käytetään myös SSL (Secure Socket Layer) -protokollassa. Lisäksi HMAC on nopeampi laskea. Vaikka taustalla oleva hash-toiminto on rikki, HMAC tarjoaa silti paremman turvallisuuden. Tässä artikkelissa aiomme keskustella Hash-pohjaisen viestin todennuskoodin peruskonseptiin ja se toimii.

Kuinka HMAC toimii?

Katsokaamme nyt Hash-pohjaisen viestin todennuskoodin toimivuutta.

Vaihe 1: Tee symmetrisen avaimen pituus, joka on yhtä suuri kuin useita bittejä kussakin lohkossa.

On olemassa kolme mahdollisuutta, jokaisen perusteella meidän on toimittava yhtälöksesi avaimen pituus bittien lukumäärään. Näppäimen pituus on pienempi kuin bittien lukumäärä kussakin lohkossa. Tässä tapauksessa, jotta avaimen pituus voidaan verrata useampaan bittiin, meidän on laajennettava avaimen pituutta lisäämällä useita 0 bittiä.

Näppäimen pituus on yhtä suuri kuin useita bittejä kussakin lohkossa. Tässä meidän ei tarvitse suorittaa mitään toimintoa, koska avain on yhtä suuri kuin bittien lukumäärä. Näppäimen pituus on suurempi kuin bittien lukumäärä kussakin lohkossa. Tässä tapauksessa, jotta avaimen pituus voidaan verrata numerobitteihin, meidän on leikattava avain soveltamalla viestin tiivistämisalgoritmia, jota käytämme HMAC: n tuottamiseen.

Vaihe 2: XOR symmetrinen padilla.

Tässä vaiheessa XOR-kuvataan symmetrisesti tyynyn kanssa muuttujan nimeltä S1.

Huomaa : pad = Se on merkkijono 00110110, joka toistetaan m / 8 kertaa.

Vaihe 3: Lisää alkuperäinen viesti kohtaan S1.

Tässä vaiheessa liitämme alkuperäisen viestin S1: n loppuun.

Vaihe 4: Käytä sanomaleikkausalgoritmia.

Tässä vaiheessa käytämme valittua sanoma-digest-algoritmia (MD5, SHA-1, SHA-512 jne.) Vaiheen 3 lähtöön. Oletetaan, että tämän vaiheen 4 lähtö on H

Vaihe 5: XOR-symmetrinen näppäin padilla.

Tässä vaiheessa XOR symmetrinen näppäin pad-näppäimellä tuottaa muuttujan nimeltä S2.

Huomaa : pad = Se on merkkijono 01011010, joka toistetaan m / 8 kertaa.

Vaihe 6: Lisää H S2: een.

Tässä vaiheessa otamme viestin tiivistelmän, joka lasketaan vaiheessa 4, ja liitämme se edelliseen vaiheeseen eli vaiheeseen 5 johdettuun S2: een.

Vaihe 6: Viestien tiivistämisalgoritmi.

Tässä vaiheessa sovellamme valittua viestin tiivistämisalgoritmia vaiheen 6 lähtöön. Tämän vaiheen generoima viestin tiivistelmä on lopullinen MAC.

HMAC: n haitat

  • Keskustelemme joistakin ongelmista, joita voi kohdata Hash-pohjaisessa viestin todennuskoodissa.
    Kuten olemme aiemmin puhuneet, Hash-pohjainen sanoman todennuskoodi käyttää symmetristä avainta. Symmetrinen avain tarkoittaa samaa avainta, jota lähettäjä ja vastaanottaja käyttävät. Tässä ilmenee ongelma, kuinka lähettäjä ja vastaanottaja vaihtavat avaimen ?.
  • Jotenkin yllä oleva ongelma, symmetrisen avaimen vaihto on ratkaistu, emme voi käyttää Hash-pohjaista viestin todennuskoodia, jos useampi kuin yksi vastaanotin. tämä johtuu siitä, että HMAC käyttää symmetristä avainta MAC: n luomiseen. Symmetrinen avain on jaettava vain kahdelle osapuolelle eli lähettäjälle ja vastaanottajalle.
  • Toinen ongelma on, jos jaamme symmetrisen usean osapuolen kanssa, kuinka vastaanottaja tietää, että viestin on laatinut ja lähettänyt lähettäjä. Muiden vastaanottajien kanssa avaimet jaetaan myös heidän kanssaan, joten on mahdollista petoksia, että yksi vastaanottimet voivat luoda vääriä viestejä.

johtopäätös

Tässä artikkelissa olemme nähneet Hash-pohjaisen viestin todennuskoodin peruskonseptin ja se toimii.

Suositeltava artikkeli

Tämä on opas HMAC: iin. Tässä keskustellaan johdannosta Hash-pohjaiseen viestin todennuskoodiin ja sen työskentelemiseen haittojen kanssa. Voit myös käydä läpi ehdotetut artikkelimme saadaksesi lisätietoja -

  1. Symmetrinen avaimensalaus edut
  2. Mikä on protokollatestaus | Miksi sitä käytetään?
  3. Johdanto seitsemään suosituimpaan IPS-työkaluun
  4. Johdatus regressiontestausvälineisiin