XXH-128 Hashcode-calculator
Gepubliceerd: 18 februari 2025 om 17:08:41 UTC
Laatst bijgewerkt: 12 januari 2026 om 13:36:14 UTC
XXH-128 Hash Code Calculator
XXH, ook bekend als XXHash, is een snel, niet-cryptografisch hash-algoritme dat is ontworpen voor hoge prestaties en efficiëntie, met name in situaties waar snelheid cruciaal is, zoals bij datacompressie, checksums en database-indexering. De variant die op deze pagina wordt gepresenteerd, produceert een hashcode van 128 bits (16 bytes), die doorgaans wordt weergegeven als een hexadecimaal getal van 32 cijfers.
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 XXH-128 hash-algoritme
Ik ben geen wiskundige, maar ik zal proberen deze hashfunctie uit te leggen met een analogie die mijn niet-wiskundige medemensen kunnen begrijpen. Als je liever een wetenschappelijk correcte, volledig wiskundige uitleg wilt, kun je die vast wel elders vinden ;-)
Stel je XXHash voor als een grote blender. Je wilt een smoothie maken, dus je doet er een heleboel verschillende ingrediënten in. Het bijzondere aan deze blender is dat hij altijd dezelfde smoothie produceert, ongeacht hoeveel ingrediënten je erin doet. Maar als je ook maar een klein beetje aan de ingrediënten verandert, krijg je een smoothie met een compleet andere smaak.
Stap 1: De gegevens combineren
Beschouw je data als een verzameling verschillende soorten fruit: appels, bananen, aardbeien.
- Je gooit ze in een blender.
- Je mengt ze op hoge snelheid.
- Het maakt niet uit hoe groot het fruit is, je krijgt uiteindelijk een kleine, goed gemengde smoothie.
Stap 2: Het geheime ingrediënt - Roeren met "magische" getallen
Om ervoor te zorgen dat de smoothie (hash) onvoorspelbaar is, voegt XXHash een geheim ingrediënt toe: grote "magische" getallen, oftewel priemgetallen. Waarom priemgetallen?
- Ze helpen bij het gelijkmatiger verdelen van de gegevens.
- Ze maken het lastig om de oorspronkelijke ingrediënten (data) uit de smoothie (hash) te achterhalen.
Stap 3: Snelheidsboost: Grote hoeveelheden hakken
XXHash is supersnel omdat het, in plaats van één stuk fruit tegelijk te hakken, het volgende doet:
- Snijdt grote hoeveelheden fruit in één keer.
- Dit is alsof je een gigantische keukenmachine gebruikt in plaats van een klein mes.
- Hierdoor kan XXHash gigabytes aan data per seconde verwerken - perfect voor enorme bestanden!
Stap 4: Laatste afwerking: Het lawine-effect
En hier zit de magie:
- Zelfs als je maar één klein dingetje verandert (zoals een komma in een zin), smaakt de smoothie uiteindelijk compleet anders.
- Dit wordt het lawine-effect genoemd: kleine veranderingen leiden tot enorme verschillen in de hash. Het is alsof je een druppel kleurstof aan water toevoegt en plotseling verandert de kleur van het hele glas.
Verder lezen
Als je dit bericht leuk vond, vind je deze suggesties misschien ook interessant:
