Annonse

I en fersk artikkel om å sjekke om du var det påvirket av Gawkers hackinghendelse Hvordan finne ut om e-postadressen din ble lekket gjennom Gawkers database Les mer , et av trinnene som gikk ut på å konvertere e-postadressen din til en MD5-hash.

Vi hadde noen spørsmål fra leserne som spurte nøyaktig hva som foregikk, og hvorfor denne prosessen var nødvendig. Det er ikke vår stil å overlate dere til å stille spørsmål, så her er en fullstendig nedslipp av MD5, hashing og en liten oversikt over datamaskiner og kryptografi.

Kryptografisk Hashing

MD5 står for Message Digest-algoritmen 5, og ble oppfunnet av den berømte amerikanske kryptografen Professor Ronald Rivest i 1991 for å erstatte den gamle MD4-standarden. MD5 er ganske enkelt navnet på en type kryptografisk hashingfunksjon Ron kom med, langt tilbake i '91.

Tanken bak kryptografisk hashing er å ta en vilkårlig blokkering av data og returnere en fast størrelse ”hasj” -verdi. Det kan være hvilken som helst data, uansett størrelse, men hashverdien vil alltid være fast. Prøv det selv her.

instagram viewer
md5-hasj

Kryptografisk hashing har en rekke bruksområder, og det er et stort antall algoritmer (annet enn MD5) designet for å gjøre en lignende jobb. En av hovedbrukene for kryptografisk hashing er å verifisere innholdet i en melding eller fil etter overføring.

Hvis du noen gang har lastet ned en spesielt stor fil (Linux distribusjoner, den slags) vil du sannsynligvis ha lagt merke til hasjverdien som følger med den. Når denne filen er lastet ned, kan du bruke hasjen for å bekrefte at filen du lastet ned, på ingen måte er forskjellig fra filen som er annonsert.

Den samme metoden fungerer for meldinger, med hasjen som verifiserer at meldingen som mottas samsvarer med den sendte meldingen. På et helt grunnleggende nivå, hvis du og en venn har en stor fil hver og ønsker å bekrefte at de er nøyaktig de samme uten den heftige overføringen, vil hasjkoden gjøre det for deg.

Hashing-algoritmer spiller også en rolle i data- eller filidentifikasjon. Et godt eksempel på dette er peer to peer fildelingsnettverk, for eksempel eDonkey2000. Systemet brukte en variant av MD4-algoritmen (under) som også kombinerte filstørrelsen til en hasj for raskt å peke på filer i nettverket.

hva er md5-hash

Et signatureksempel på dette er i muligheten til raskt å finne data i hasjtabeller, en metode som ofte brukes av søkemotorer.

En annen bruk for hasjer er lagring av passord. Å lagre passord som tydelig tekst er en dårlig idé, av åpenbare grunner, så i stedet blir de konvertert til hasjverdier. Når en bruker legger inn et passord blir det konvertert til en hashverdi, og sjekket mot den kjente lagrede hasjen. Ettersom hashing er en enveis prosess, forutsatt at algoritmen er forsvarlig, er det teoretisk liten sjanse for at det originale passordet blir dechiffrert fra hasj.

Kryptografisk hashing brukes også ofte i generering av passord, og deriverte passord fra en enkelt setning.

Message Digest-algoritme 5

MD5-funksjonen gir et 32-sifret heksadesimal tall. Hvis vi skulle gjøre ‘makeuseof.com’ til en MD5-hashverdi, ville det se slik ut: 64399513b7d734ca90181b27a62134dc. Den ble bygd på en metode som ble kalt Merkle ”“ Damgardstruktur (under), som brukes til å bygge det som kalles “kollisjonssikre” hasjfunksjoner.

hva er md5-hash

Ingen sikkerhet er imidlertid alt-bevis, og i 1996 ble det funnet potensielle feil innen MD5-hashing-algoritmen. På det tidspunktet ble disse ikke sett på som dødelige, og MD5 fortsatte å brukes. I 2004 ble et langt mer alvorlig problem oppdaget etter at en gruppe forskere beskrev hvordan man lager to separate filer som har samme MD5-hashverdi. Dette var den første forekomsten av et kollisjonsangrep som ble brukt mot MD5-hashingalgoritmen. Et kollisjonsangrep prøver å finne to voldgiftsutganger som gir samme hasjverdi - derav en kollisjon (to filer som har samme verdi).

I løpet av de neste årene skjedde forsøk på å finne ytterligere sikkerhetsproblemer innen MD5, og i 2008 klarte en annen forskergruppe å bruke kollisjonsangrepsmetoden for å falske SSL-sertifikat gyldighet. Dette kan gjøre det mulig for brukerne å tro at de surfer sikkert når de ikke er det. Det amerikanske departementet for hjemmesikkerhet annonsert at: “brukere bør unngå å bruke MD5-algoritmen i noen kapasitet. Som tidligere forskning har vist, bør den betraktes som kryptografisk ødelagt og uegnet for videre bruk“.

md5-hasj

Til tross for regjeringens advarsel, er det fortsatt mange tjenester som bruker MD5 og som sådan er teknisk utsatt. Det er imidlertid mulig å "salte" passord for å forhindre at potensielle angripere bruker ordboksangrep (tester kjente ord) mot systemet. Hvis en hacker har en liste med ofte brukte passord og brukerkontodatabasen din, kan de sjekke hasjene i databasen mot de på listen. Salt er en tilfeldig streng, som er koblet til eksisterende passord-hashes og deretter hashet igjen. Saltverdien og den resulterende hasj blir deretter lagret i databasen.

Hvis en hacker ønsket å finne ut passordene til brukerne dine, måtte han først dechifisere salt hasjene, og dette gjør et ordbokangrep ganske ubrukelig. Salt påvirker ikke selve passordet, så du må alltid velge et vanskelig å gjette passord.

Konklusjon

MD5 er en av mange forskjellige metoder for å identifisere, sikre og verifisere data. Kryptografisk hashing er et viktig kapittel i sikkerhetshistorien, og å holde ting skjult. Som med mange ting designet med sikkerhet i tankene, er noen borte og ødelagte det.

Du trenger sannsynligvis ikke å bekymre deg for mye hashing og MD5-sjekksummer i dine daglige surfevaner, men i det minste nå vet du hva de gjør og hvordan de gjør det.

Har du noen gang behov for å hasj noe? Bekrefter du filene du laster ned? Vet du om noen gode MD5-nettapper? Gi oss beskjed i kommentarene!

Introbilde: Shutterstock

Tim er en frilansskribent som bor i Melbourne, Australia. Du kan følge ham på Twitter.