Miklix

MD4 Hash-codecalculator

Gepubliceerd: 16 februari 2025 om 22:53:05 UTC

Hashcodecalculator die de hashfunctie van Message Digest 4 (MD4) gebruikt om een hashcode te berekenen op basis van tekstinvoer of geüpload bestand.

Deze pagina is machinaal uit het Engels vertaald om hem voor zoveel mogelijk mensen toegankelijk te maken. Helaas is machinevertaling nog geen geperfectioneerde technologie, dus er kunnen fouten optreden. Als je dat liever hebt, kun je hier de originele Engelse versie bekijken:

MD4 Hash Code Calculator

MD4 (Message Digest 4) is een cryptografische hashfunctie die in 1990 door Ronald Rivest is ontworpen. Het produceert een vaste 128-bit (16-byte) hashwaarde van een invoer van willekeurige lengte. MD4 wordt nu als cryptografisch gebroken beschouwd vanwege kwetsbaarheden die botsingsaanvallen (het vinden van twee verschillende invoeren die dezelfde hash produceren) mogelijk maken, dus het zou niet gebruikt moeten worden bij het ontwerpen van nieuwe systemen. Het is hier opgenomen voor het geval dat 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.


Nieuwe Hashcode berekenen

Gegevens die via dit formulier worden verzonden of bestanden die via dit formulier worden geüpload, worden niet langer op de server bewaard dan nodig is om de gevraagde hashcode te genereren. Ze worden onmiddellijk verwijderd voordat het resultaat naar uw browser wordt teruggestuurd.

Invoergegevens:



De ingediende tekst is UTF-8 gecodeerd. Aangezien hashfuncties werken op binaire gegevens, zal het resultaat anders zijn dan wanneer de tekst in een andere codering zou zijn. Als je een hash moet berekenen van een tekst in een specifieke codering, moet je in plaats daarvan een bestand uploaden.



Over het MD4-hashalgoritme

Ik ben geen wiskundige, dus ik zal proberen deze hashfunctie op een manier uit te leggen die ook de niet-wiskundigen kunnen begrijpen ;-) Als je de voorkeur geeft aan een meer wiskundige uitleg, kun je die op tal van andere websites vinden.

Oké, beschouw MD4 als een speciale papierversnipperaar. Maar in plaats van papier te versnipperen, "versnippert" het elk bericht (zoals een brief, een wachtwoord of een boek) in een klein, vaststaand ontvangstbewijs. Hoe groot of klein uw bericht ook is, deze versnipperaar geeft u altijd een klein ontvangstbewijs dat precies 16 bytes (128 bits) lang is, of 32 tekens in hexadecimale vorm.

Om het bericht correct te versnipperen, moet u vier stappen doorlopen:

Stap 1: Het bericht voorbereiden

  • Voordat u het papier gaat versnipperen, moet u ervoor zorgen dat het perfect in de versnipperaar past.
  • Als uw bericht te kort is, voegt u wat extra lege ruimte toe (bijvoorbeeld krabbels of opvulmateriaal) zodat het papier precies past.
  • Als het te lang is, verdeel je het over meerdere pagina's van dezelfde grootte.

Stap 2: Een geheime stempel toevoegen

  • Nadat u het bericht hebt aangepast, voegt u aan het einde een geheime stempel toe waarop staat hoe lang het oorspronkelijke bericht was.
  • Hierdoor kan de papierversnipperaar de oorspronkelijke grootte van het bericht bijhouden, ongeacht hoeveel opvulmateriaal u hebt toegevoegd.

Stap 3: Het versnipperingsproces (3 rondes magie)

  • Nu gaat het bericht de versnipperaar in.
  • De versnipperaar heeft 4 tandwielen (A, B, C en D) die in een speciaal patroon samendraaien.
  • De tandwielen draaien 3 keer rond, waarbij ze:
    • Meng de woorden
    • Draai een aantal onderdelen ondersteboven
    • Draai ze rond als een Rubik's kubus
    • Verschillende stukken op elkaar slaan
  • Met elke ronde lijkt het bericht meer en meer op een rommelige chaos die je niet meer herkent.

Stap 4: De definitieve ontvangst

  • Na al het draaien, omkeren en kapotmaken spuugt de papierversnipperaar een bonnetje uit: een korte reeks cijfers en letters (de hash).
  • Deze bon is altijd even lang, ongeacht of u een enkel woord of een heel boek versnippert!

Helaas ontdekten mensen in de loop van de tijd dat deze magische versnipperaar niet perfect is. Een paar slimmeriken kwamen erachter hoe ze de versnipperaar konden misleiden om dezelfde bon te geven voor twee verschillende berichten (dit wordt een botsing genoemd) en hoe ze konden voorspellen hoe de tandwielen zouden draaien en het vervolgens konden gebruiken om valse bonnen te maken. Hierdoor wordt MD4 niet langer als veilig beschouwd voor belangrijke zaken.

Delen op BlueskyDelen op FacebookDelen op LinkedInDelen op TumblrDelen op XDelen op LinkedInPin op Pinterest

Mikkel Bang Christensen

Over de auteur

Mikkel Bang Christensen
Mikkel is de bedenker en eigenaar van miklix.com. Hij heeft meer dan 20 jaar ervaring als professioneel computerprogrammeur/softwareontwikkelaar en werkt momenteel fulltime voor een groot Europees IT-bedrijf. Als hij niet blogt, besteedt hij zijn vrije tijd aan een breed scala aan interesses, hobby's en activiteiten, die tot op zekere hoogte weerspiegeld kunnen worden in de verscheidenheid aan onderwerpen op deze website.