Inleiding tot HMAC

HMAC staat voor de op Hash gebaseerde Message Authentication Code. Er zijn verschillende algoritmen voor berichtenoverzicht beschikbaar. Het doel achter HMAC is om die algoritmen voor het verwerken van berichten opnieuw te gebruiken. Het is ontwikkeld om de beveiligingsomgeving voor internetprotocol te implementeren. HMAC werkt met elk algoritme voor het verwerken van berichten. Het maakt gebruik van het algoritme voor berichtsamenvatting op het oorspronkelijke bericht, het gebruikt ook een symmetrische sleutel om de berichtsamenvatting te coderen, die de MAC (Message Authentication Code) produceert. HMAC is vergelijkbaar met MAC, het verschil zit in HMAC, het gebruikt een op hash gebaseerd algoritme. Op hash gebaseerde berichtverificatiecode wordt ook gebruikt in het SSL-protocol (Secure Socket Layer). Ook is HMAC sneller te berekenen. Zelfs als de onderliggende hashfunctie is verbroken, biedt HMAC nog steeds betere beveiliging. In dit artikel gaan we het basisconcept van de op hash gebaseerde berichtverificatiecode bespreken en deze werkt.

Hoe HMAC werkt?

Laten we nu eens kijken naar de werking van de op hash gebaseerde berichtverificatiecode.

Stap 1: Maak de lengte van de symmetrische sleutel gelijk aan meerdere bits in elk blok.

Er zijn drie mogelijkheden, gebaseerd op elk waarvan we moeten handelen om de lengte van de sleutel gelijk te maken aan het aantal bits. De lengte van een sleutel is minder dan het aantal bits in elk blok. In dit geval moeten we, om de lengte van een sleutel gelijk te maken aan meerdere bits, de lengte van de sleutel uitbreiden door veel 0 bits toe te voegen.

De lengte van een sleutel is gelijk aan meerdere bits in elk blok. Hierin hoeven we geen actie uit te voeren omdat de sleutel gelijk is aan het aantal bits. De lengte van een sleutel is groter dan het aantal bits in elk blok. In dit geval moeten we, om de lengte van de sleutel gelijk te maken aan het aantal bits, de sleutel bijsnijden door het algoritme voor berichtoverzicht toe te passen dat we zullen gebruiken om de HMAC te produceren.

Stap 2: XOR symmetrisch met pad.

In deze stap XOR de symmetrische met de pad om een ​​variabele genaamd S1 te produceren.

Opmerking : pad = Het is een string 00110110 die 8 keer wordt herhaald.

Stap 3: voeg het oorspronkelijke bericht toe aan S1.

In deze stap voegen we het oorspronkelijke bericht toe aan het einde van S1.

Stap 4: Pas het algoritme voor het verwerken van berichten toe.

In deze stap passen we het geselecteerde bericht-digest-algoritme (MD5, SHA-1, SHA-512, enz.) Toe op de uitvoer van stap 3. Laten we aannemen dat de uitvoer van stap 4 H is

Stap 5: XOR symmetrische sleutel met pad.

In deze stap XOR de symmetrische sleutel met pad om de variabele S2 te produceren.

Opmerking : pad = Het is een string 01011010 b / 8 keer herhaald.

Stap 6: Voeg H toe aan S2.

In deze stap nemen we de berichtsamenvatting die wordt berekend in stap 4 en voegen deze toe aan de en van de S2 die is afgeleid in de vorige stap, dat wil zeggen stap 5.

Stap 6: Message digest-algoritme.

In deze stap passen we het geselecteerde bericht-digest-algoritme toe op de uitvoer van stap 6. Het gegenereerde bericht-digest van deze stap is de uiteindelijke MAC.

Nadelen van HMAC

  • Laten we enkele problemen bespreken waarmee we te maken kunnen krijgen in de op hash gebaseerde berichtverificatiecode.
    Zoals we eerder hebben besproken, gebruikt de op hash gebaseerde berichtverificatiecode een symmetrische sleutel. De symmetrische sleutel betekent dezelfde sleutel die wordt gebruikt door de afzender en de ontvanger. Het probleem doet zich hier voor, hoe de zender en ontvanger de sleutel zullen uitwisselen?
  • Op de een of andere manier is het bovenstaande probleem, de uitwisseling van symmetrische sleutels opgelost, we kunnen de Hash-gebaseerde Message Authentication Code niet gebruiken in het geval van meer dan één ontvanger. dit komt omdat HMAC de symmetrische sleutel gebruikt om MAC te genereren. De symmetrische sleutel mag alleen door twee partijen worden gedeeld, namelijk zender en ontvanger.
  • Een ander probleem is, als we de symmetrische delen met meerdere partijen, hoe de ontvanger weet dat het bericht is voorbereid en verzonden door de afzender, niet andere ontvangers de sleutels ook met hen worden gedeeld, dus er is de mogelijkheid van fraude dat een van de ontvangers kunnen valse berichten maken.

Conclusie

In dit artikel hebben we het basisconcept van de op hash gebaseerde Message Authentication Code gezien en deze werkt.

Aanbevolen artikel

Dit is een gids voor HMAC. Hier bespreken we de inleiding tot de op hash gebaseerde berichtverificatiecode en de werking ervan met nadelen. U kunt ook onze voorgestelde artikelen doornemen voor meer informatie -

  1. Symmetrische sleutelversleuteling met voordelen
  2. Wat is protocoltesten | Waarom wordt het gebruikt?
  3. Inleiding tot de Top 7 IPS-tools
  4. Inleiding tot regressietesthulpmiddelen