XXH-128 Hash-kodeberegner
Udgivet: 18. februar 2025 kl. 17.08.25 UTC
Hash-kodeberegner, der bruger XXHash 128 bit (XXH-128) hash-funktionen til at beregne en hashkode baseret på tekstinput eller filupload.XXH-128 Hash Code Calculator
XXH, også kendt som XXHash, er en hurtig, ikke-kryptografisk hash-algoritme designet til høj ydeevne og effektivitet, især i situationer, hvor hastigheden er kritisk, såsom i datakomprimering, kontrolsummer og databaseindeksering. Varianten præsenteret på denne side producerer en 128 bit (16 byte) hash-kode, typisk visualiseret som et 32-cifret hexadecimalt tal.
Fuld åbenhed: Jeg har ikke skrevet den specifikke implementering af den hash-funktion, der bruges på denne side. Det er en standardfunktion, der følger med programmeringssproget PHP. Jeg har kun lavet webgrænsefladen for at gøre den offentligt tilgængelig her for nemheds skyld.
Om XXH-128 Hash-algoritmen
Jeg er ikke matematiker, men jeg vil prøve at forklare denne hash-funktion ved hjælp af en analogi, som mine andre ikke-matematikere kan forstå. Hvis du foretrækker en videnskabeligt korrekt, komplet matematisk forklaring, er jeg sikker på, at du kan finde den andre steder ;-)
Prøv at forestille dig XXHash som en stor blender. Du vil gerne lave en smoothie, så du tilføjer en masse forskellige ingredienser. Det specielle ved denne blender er, at den udsender smoothie i samme størrelse, uanset hvor mange ingredienser du putter den i, men hvis du laver selv små ændringer i ingredienserne, får du en smoothie med en helt anden smag.
Trin 1: Blanding af data
Tænk på dine data som en masse forskellige frugter: æbler, bananer, jordbær.
- Du smider dem i en blender.
- Du blender dem ved høj hastighed.
- Uanset hvor store frugterne var, ender du med en lille, godt blandet smoothie.
Trin 2: Den hemmelige sauce - omrøring med "magiske" tal
For at sikre, at smoothien (hash) er uforudsigelig, tilføjer XXHash en hemmelig ingrediens: store "magiske" tal kaldet primtal. Hvorfor primtal?
- De hjælper med at blande data mere jævnt.
- De gør det svært at omdanne de originale ingredienser (data) fra smoothien (hash).
Trin 3: Hastighedsforøgelse: Skæring i bulk
XXHash er superhurtig, fordi den i stedet for at hakke én frugt ad gangen:
- Hakker store grupper af frugter på én gang.
- Det er som at bruge en kæmpe foodprocessor i stedet for en lille kniv.
- Dette gør det muligt for XXHash at håndtere gigabyte data per sekund - perfekt til enorme filer!
Trin 4: Final Touch: The Avalanche Effect
Her er magien:
- Selvom du bare ændrer en lille ting (som et komma i en sætning), smager den endelige smoothie helt anderledes.
- Dette kaldes lavineeffekten:
- Små ændringer = store forskelle i hashen.
- Det er som at tilføje en dråbe madfarve til vand, og pludselig skifter hele glasset farve.