Introduksjon til MD5-algoritme

Før du lærer MD5-algoritmen, er det veldig viktig å forstå hva som er kryptografi og hvordan MD5-algoritmen kom inn i bildet. I lekmannsbetegnelser er kryptografi en praksis og studie av teknikker som brukes til å konvertere en ren tekst til uforståelig tekst som bare kan forstås av mottakeren. Av sikkerhetsgrunner er det veldig viktig å kryptere dataene og sende og lagre dem i et bestemt format slik at de ikke kan lekke og dermed misbrukes. MD5 er en av algoritmene som brukes til å kode dataene. Det er så mange algoritmer utviklet for sikker overføring og lagring av data som har sine fordeler og ulemper. Disse algoritmene beskytter ikke bare dataene fra tyveri, men gir også brukerautentisering.

Nå som lærer i dybden om MD5-algoritme, står MD5 for Message Digest-algoritmen 5, som er en av de mye brukte kryptografiske hasjfunksjonene som aksepterer inngangen av vilkårlig lengde og gir en utgang med fix 128-bit hashverdi. Det brukes i en rekke sikkerhetsapplikasjoner. MD5 er en avansert versjon av MD4 som ble utviklet av professor Ronald Rivest fra MIT. MD5 ble utviklet som en sterk kryptografisk algoritme som skal brukes til autentisering av digitale signaturer (en digital kode som er knyttet til et elektronisk dokument for å bekrefte innholdet og kjønnsidentiteten).

Bruk av MD5-algoritme

MD5 Algoritme ble utviklet med hovedmotivet for sikkerhet, ettersom den tar en inngang i alle størrelser og gir en utgang hvis en 128-bits hashverdi. For å bli vurdert som kryptografisk sikker MD5 bør oppfylle to krav:

  1. Det er umulig å generere to innganger som ikke kan produsere den samme hasjfunksjonen.
  2. Det er umulig å generere en melding med samme hasjverdi.

Opprinnelig ble MD5 utviklet for å lagre en veis hash for et passord, og noen filservere gir også forhåndsberegnet MD5-sjekksum av en fil slik at brukeren kan sammenligne sjekksummen for den nedlastede filen med den. De fleste Unix-baserte operativsystemer inkluderer MD5-kontrollsumverktøy i distribusjonspakkene.

Hvordan fungerer MD5-algoritmen?

Som vi alle vet at MD5 gir en utgang på 128-bits hashverdi. Denne krypteringen av input av en hvilken som helst størrelse i hasjverdier gjennomgår 5 trinn, og hvert trinn har en forhåndsdefinert oppgave.

Trinn 1: Legg polstringbiter på

  • Polstring betyr å legge til ekstra biter til den originale meldingen. Så i MD5 er den opprinnelige meldingen polstret slik at dens lengde i biter er kongruent til 448 modulo 512. Polstring gjøres slik at de totale bitene er 64 mindre, og er en multippel av 512 bits lengde.
  • Polstring gjøres selv om lengden på den opprinnelige meldingen allerede er kongruent til 448 modulo 512. I polstringbiter er den eneste første biten 1 og resten av bitene er 0.

Trinn 2: Legg til lengde

Etter polstring settes 64 biter på slutten som brukes til å registrere lengden på originalinngangen. Modulo 2 64. På dette tidspunktet har den resulterende meldingen et lengdemultipel på 512 biter.

Trinn 3: Initialiser MD-buffer

En fireordsbuffer (A, B, C, D) brukes til å beregne verdiene for meldingsoppdelingen. Her er A, B, C, D 32-biters registre og initialiseres på følgende måte

Ord A01234567
Ord B89AbCdEf
Ord CFeDcBa98
Ord D76543210

Trinn 4: Behandle melding i 16-ordersblokk

MD5 bruker hjelpefunksjonene som tar inngangen som tre 32-bits nummer og produserer en 32-bits utgang. Disse funksjonene bruker logiske operatører som OR, XOR, NOR.

F (X, Y, Z)XY v ikke (X) Z
G (X, Y, Z)XZ v Y not (Z)
H (X, Y, Z)X xor Y xor Z
I (X, Y, Z)Y xor (X v ikke (Z))

Innholdet i fire buffere blandes med inngangen ved bruk av denne hjelpebufferen, og 16 runder utføres ved bruk av 16 grunnleggende operasjoner.

Produksjon-

Tross alt har runder utført bufferen A, B, C, D inneholder MD5-utgangen som starter med lavere bit A og slutter med høyere bit D.

Eksempel:

Input: Dette er en artikkel om kryptografialgoritmen
Utgang: e4d909c290dfb1ca068ffaddd22cbb0

Fordeler og ulemper med MD5-algoritme:

  • MD5-algoritmer er nyttige fordi det er lettere å sammenligne og lagre disse mindre hasjene enn å lagre en stor tekst med variabel lengde. MD5-algoritmen er en mye brukt algoritme for enveis hasjer som brukes til å verifisere uten nødvendigvis å oppgi den opprinnelige verdien. MD5-algoritmen brukes av Unix-systemer for å lagre passordene til brukeren i et 128-bits kryptert format. MD5-algoritmer er mye brukt for å sjekke integriteten til filene.
  • Videre er det veldig enkelt å generere en melding fordøyelse av den opprinnelige meldingen ved bruk av denne algoritmen. MD5-algoritmen kan utføre meldingen fordøyelse av en melding som har et hvilket som helst antall biter, det er ikke begrenset til melding i mangfoldighetene av 8, i motsetning til MD5sum som er begrenset til oktetter.
  • Men fra mange år har MD5 vært utsatt for hasjkollisjonsvakhet, dvs. det er mulig å lage den samme hasjfunksjonen for to forskjellige innganger. MD5 gir ingen sikkerhet for disse kollisjonsangrepene. I stedet for MD5, er SHA (Secure Hash Algorithm, som produserer 160-biters meldingsfordøyelse og designet av NSA for å være en del av digital signaturalgoritme) nå akseptabelt i det kryptografiske feltet for å generere hasjfunksjonen, da det ikke er lett å produsere SHA -Jeg kollisjon og til nå er det ikke produsert noen kollisjon ennå.
  • Videre er MD5-algoritmen ganske treg enn den optimaliserte SHA-algoritmen.SHA er mye sikker enn MD5-algoritmen, og dessuten kan den implementeres i eksisterende teknologi med overhastighet, i motsetning til MD5. I dag kommer nye hashingsalgoritmer i markedet og husker høyere sikkerhet for data som SHA256 (som genererer 256 bits signatur av en tekst).

Konklusjon

I dag med lagring av alle dataene på sky og internett, er det veldig viktig å sikre sikkerheten til disse dataene som ytterste prioritet. Den sikreste algoritmen bør brukes for å kryptere private data. Nyere studier viser at SHA-algoritmen bør tillegges stor betydning i forhold til MD5 ettersom MD5 er mer utsatt for kollisjonsangrep. Selv om forskere foreslår nye algoritmer som er sikre og minst sårbare for angrep som SHA256.

Anbefalte artikler

Dette har vært en guide til MD5-algoritmen. Her diskuterte vi introduksjonen, bruk, arbeid, fordeler og ulemper med MD5-algoritme. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Krypteringsalgoritme
  2. Hva er dekryptering?
  3. Hva er kryptografi?
  4. Kryptografi vs kryptering