Cryptology Academy · Lektion

MD5: Historie, anvendelser og hvorfor den er brudt

Lær MD5's indre funktioner og om kollisionsangrebene, der udfasede den

Lektion 2 af 413 trin

MD5: Historie, anvendelser og hvorfor den er brudt er en gratis Cryptology Academy-lektion på CoddyKit. Dette er lektion 2 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Cryptology Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Cryptology Academy-kurset indeholder 4 lektioner i alt.

Velkommen

MD5 var engang den mest udbredte hashfunktion. I dag er den fuldstændig brudt, når det gælder sikkerhed. Lad os forstå hvorfor, og hvad der gik galt.

Oversigt over MD5

MD5 (Message Digest 5) blev designet af Ron Rivest i 1991. Den producerer en hash på 128 bit (16 bytes). Eksempel på output: MD5('hello') = 5d41402abc4b2a76b9719d911017c592

MD5-algoritmens struktur

MD5 bruger Merkle-Damgård med blokke på 512 bit. Hver blok gennemgår fire runder med hver 16 operationer. Operationerne bruger bitvise AND-, OR-, XOR- og NOT-operationer, addition og venstrerotationer.

MD5 i Python

import hashlib hash = hashlib.md5(b'hello').hexdigest() print(hash) # 5d41402abc4b2a76b9719d911017c592 print(len(hash)) # 32 hex chars = 128 bits

Historiske anvendelser

MD5 blev brugt til: kontrol af filintegritet, lagring af adgangskoder, SSL-certifikater, digitale signaturer og kodesignering. Dens hastighed (hurtig!) gjorde den populær.

De første revner: differentialangreb 1996

I 1996 fandt Hans Dobbertin kollisioner i MD5's komprimeringsfunktion. Det var et advarselstegn, men MD5 forblev udbredt i mange år.

Fuld kollision: Wang m.fl. 2004

I 2004 fandt Xiaoyun Wangs team fulde MD5-kollisioner på få sekunder. To forskellige filer kunne nu få den samme hashværdi. MD5 var officielt uegnet til kollisionsmodstandsdygtighed.

Flame-malware (2012)

Flame-malwaren brugte MD5-kollisioner til at forfalske et Microsoft-kodesigneringscertifikat. Det fik skadelig software til at fremstå som legitimt signeret af Microsoft.

MD5 til ikke-sikkerhedsrelaterede formål

MD5 er stadig acceptabelt til kontrolsummer uden sikkerhedsformål (verificering af filhentninger, hvor kollisionsangreb ikke er en bekymring) og til ikke-kryptografiske hashtabeller. Bare aldrig til sikkerhed.

Fejl i adgangskodelagring

MD5-adgangskoder knækkes uden besvær: Der findes enorme regnbuetabeller til MD5-hashværdier. Usaltet MD5('password') = altid den samme hashværdi. CrackStation kan knække milliarder pr. sekund.

Migrering væk fra MD5

Erstat MD5 med SHA-256 (generel integritet), SHA-3 (nye udformninger), bcrypt/Argon2 (adgangskoder) eller HMAC-SHA256 (meddelelsesautentificering). Ingen undtagelser.

Hurtigt tjek

Hvorfor blev MD5 udfaset til sikkerhedsformål?

Opsummering

MD5 er uegnet til sikkerhed. Dernæst undersøger vi SHA-1 og SHA-2-familien og forstår de forbedringer, der fulgte.
Gratis at komme i gang

Lær Cryptology Academy med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
67
Lektioner
261

Ofte stillede spørgsmål

Er lektionen “MD5: Historie, anvendelser og hvorfor den er brudt” gratis?

Ja — hele teksten til “MD5: Historie, anvendelser og hvorfor den er brudt” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Cryptology Academy-kurset, skal du opgradere til CoddyKit PRO. Cryptology Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “MD5: Historie, anvendelser og hvorfor den er brudt”?

Lær MD5's indre funktioner og om kollisionsangrebene, der udfasede den Du øver dig i Cryptology Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Cryptology Academy?

Der kræves ingen tidligere erfaring. Cryptology Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 4.

Hvor lang tid tager lektionen “MD5: Historie, anvendelser og hvorfor den er brudt”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Cryptology Academy-lektion?

Ja. Alle Cryptology Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Hvad kendetegner en god hashfunktion
  2. MD5: Historie, anvendelser og hvorfor den er brudt
  3. SHA-1- og SHA-2-familien forklaret
  4. Hashanvendelser: Checksums, HMAC og Git
← Tilbage til Cryptology Academy