MD4 Hash-codecalculator
Gepubliceerd: 16 februari 2025 om 22:53:05 UTC
Laatst bijgewerkt: 12 januari 2026 om 09:07:39 UTC
MD4 Hash Code Calculator
MD4 (Message Digest 4) is een cryptografische hashfunctie, ontworpen door Ronald Rivest in 1990. Het genereert een vaste hashwaarde van 128 bits (16 bytes) uit een invoer van willekeurige lengte. MD4 wordt tegenwoordig als cryptografisch onveilig beschouwd vanwege kwetsbaarheden die botsingsaanvallen mogelijk maken (het vinden van twee verschillende invoeren die dezelfde hash opleveren). Daarom zou het niet gebruikt moeten worden bij het ontwerpen van nieuwe systemen. Het is hier opgenomen voor het geval men een achterwaarts compatibele hashcode moet genereren.
Full disclosure: Ik heb de specifieke implementatie van de hashfunctie die op deze pagina wordt gebruikt niet geschreven. Het is een standaardfunctie die wordt meegeleverd met de programmeertaal PHP. Ik heb alleen de webinterface gemaakt om hem hier voor het gemak publiekelijk beschikbaar te maken.
Over het MD4-hashalgoritme
Ik ben geen wiskundige, dus ik zal proberen deze hashfunctie uit te leggen op een manier die mijn niet-wiskundige medemensen kunnen begrijpen ;-) Als je de voorkeur geeft aan een wiskundig uitgebreide uitleg, kun je die op tal van andere websites vinden.
Oké, zie MD4 als een speciale papiervernietiger. Maar in plaats van papier te versnipperen, "versnippert" het elk bericht (zoals een brief, een wachtwoord of een boek) tot een klein, vast formaat bonnetje. Hoe groot of klein je bericht ook is, deze papiervernietiger geeft je altijd een klein bonnetje van precies 16 bytes (128 bits) lang, oftewel 32 tekens in hexadecimale vorm.
Om het bericht correct te laten vernietigen, moet u vier stappen doorlopen:
Stap 1: Het bericht voorbereiden
- Voordat je gaat versnipperen, moet je het papier zo positioneren dat het perfect in de papierversnipperaar past.
- Als je bericht te kort is, voeg je wat extra lege ruimte toe (zoals krabbels of opvulling) zodat het papier precies past.
- Als het te lang is, verdeel je het in meerdere pagina's van dezelfde grootte.
Stap 2: Een geheime stempel toevoegen
- Nadat je het bericht hebt aangepast, voeg je aan het einde een geheime stempel toe die aangeeft hoe lang het oorspronkelijke bericht was.
- Dit helpt de papiervernietiger om de oorspronkelijke grootte van het bericht te behouden, ongeacht hoeveel opvulmateriaal je hebt toegevoegd.
Stap 3: Het versnipperingsproces (3 rondes magie)
- Nu gaat het bericht in de papierversnipperaar.
- De versnipperaar heeft 4 tandwielen (A, B, C en D) die in een speciaal patroon samen draaien.
- De tandwielen doorlopen 3 draairondes, waarin ze: woorden door elkaar halen, sommige onderdelen ondersteboven draaien, ze ronddraaien als een Rubik's kubus en verschillende onderdelen tegen elkaar botsen.
- Elke ronde zorgt ervoor dat het bericht er steeds meer uitziet als een warrige bende die onherkenbaar wordt.
Stap 4: De definitieve bon
- Na al het draaien, omdraaien en vermalen, spuugt de papiervernietiger een bonnetje uit - een korte reeks cijfers en letters (de hash).
- Deze bon heeft altijd dezelfde lengte, ongeacht of je één woord of een heel boek hebt versnipperd!
Helaas ontdekten mensen na verloop van tijd dat deze magische papiervernietiger niet perfect is. Sommige slimme mensen bedachten een manier om de papiervernietiger te manipuleren, zodat deze hetzelfde ontvangstbewijs voor twee verschillende berichten afgaf (dit wordt een botsing genoemd) en om te voorspellen hoe de tandwielen zouden draaien, waarna ze dit gebruikten om valse ontvangstbewijzen te maken. Hierdoor wordt MD4 niet langer als veilig beschouwd voor belangrijke documenten.
Verder lezen
Als je dit bericht leuk vond, vind je deze suggesties misschien ook interessant:
