Adler-32 Hash-codecalculator
Gepubliceerd: 17 februari 2025 om 18:02:47 UTC
Hashcodecalculator die de Adler-32 hashfunctie gebruikt om een hashcode te berekenen op basis van tekstinvoer of geüpload bestand.Adler-32 Hash Code Calculator
De Adler-32 hash-functie is een checksum-algoritme dat eenvoudig, snel en vaak wordt gebruikt voor verificatie van de integriteit van gegevens. Het is ontworpen door Mark Adler en wordt vaak gebruikt in toepassingen zoals zlib voor gegevenscompressie. In tegenstelling tot cryptografische hash-functies (zoals SHA-256) is Adler-32 niet ontworpen voor beveiliging, maar voor snelle foutcontrole. Het berekent een 32-bits (4 bytes) checksum, meestal weergegeven als 8 hexadecimale tekens.
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 Adler-32 Hash-algoritme
Ik ben geen wiskundige, maar ik zal proberen deze hashfunctie uit te leggen met behulp van een alledaagse analogie waarvan ik hoop dat mijn niet-wiskundige collega's het kunnen begrijpen. In tegenstelling tot veel van de cryptografische hashfuncties is Adler32 een vrij eenvoudige checksumfunctie, dus dit zou niet zo slecht moeten zijn ;-)
Stel je voor dat je een zak hebt met kleine genummerde tegels, die elk een letter of een deel van je data representeren. Bijvoorbeeld, het woord "Hi" heeft twee tegels: één voor "H" en één voor "i".
Nu gaan we twee eenvoudige dingen doen met deze tegels:
Stap 1: Tel ze op (Som A)
- Begin met het cijfer 1 (gewoonlijk).
- Tel het getal van elke tegel bij het totaal op.
Stap 2: Houd een lopend totaal bij van alle sommen (Som B)
- Elke keer dat u een nieuw tegelnummer aan Som A toevoegt, voegt u ook de nieuwe waarde van Som A toe aan Som B.
- Het is net als het stapelen van munten: je legt er één munt bovenop (Som A), en vervolgens schrijf je de nieuwe totale stapelhoogte op (Som B).
Uiteindelijk lijm je de twee totalen aan elkaar tot één groot getal. Dat grote getal is de Adler-32 checksum.