Miklix

HAVAL-160/4 Hash-kodeberegner

Udgivet: 18. februar 2025 kl. 20.30.55 UTC

Hash-kodeberegner, der bruger hashfunktionen med variabel længde på 160 bit, 4 runder (HAVAL-160/4) til at beregne en hashkode baseret på tekstinput eller filupload.

Denne side er blevet maskinoversat fra engelsk for at gøre den tilgængelig for så mange mennesker som muligt. Desværre er maskinoversættelse endnu ikke en perfekt teknologi, så der kan forekomme fejl. Hvis du foretrækker det, kan du se den originale engelske version her:

HAVAL-160/4 Hash Code Calculator

HAVAL (Hash of Variable Length) er en kryptografisk hashfunktion designet af Yuliang Zheng, Josef Pieprzyk og Jennifer Seberry i 1992. Den er en udvidelse af MD (Message Digest) familien, specifikt inspireret af MD5, men med betydelige forbedringer i fleksibilitet og sikkerhed. Det kan producere hash-koder med variable længder fra 128 til 256 bit, og behandle dataene i 3, 4 eller 5 runder.

Varianten præsenteret på denne side udsender en 160 bit (20 byte) hash-kode beregnet i 4 runder. Resultatet udlæses som et 40-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.


Beregn ny hash-kode

Data, der indsendes, eller filer, der uploades via denne formular, opbevares kun på serveren, så længe det tager at generere den ønskede hashkode. De slettes umiddelbart før resultatet returneres til din browser.

Input-data:



Den indsendte tekst er UTF-8-kodet. Da hashfunktioner opererer med binære data, vil resultatet være anderledes, end hvis teksten var i en anden kodning. Hvis du har brug for at beregne et hash af en tekst i en bestemt kodning, skal du uploade en fil i stedet.



Om HAVAL Hash-algoritmen

Forestil dig HAVAL som en superkraftig blender designet til at blande ingredienser (dine data) så grundigt, at ingen kan finde ud af den originale opskrift bare ved at se på den endelige smoothie (hashen).

Trin 1: Forberedelse af ingredienserne (dine data)

Når du giver HAVAL nogle data - som en besked, adgangskode eller fil - smider den dem ikke bare ind i blenderen, som de er. For det første er det:

  • Renser og hakker dataene i pæne stykker (dette kaldes polstring).
  • Sørger for, at den samlede størrelse passer perfekt til blenderen (som at sørge for, at smoothie-ingredienserne fylder glasset jævnt).

Trin 2: Blanding i runder (blandingspas)

HAVAL trykker ikke bare på "blend" én gang. Den blander dine data gennem 3, 4 eller 5 runder - som at blende din smoothie flere gange for at sikre, at hver del er pulveriseret.

  • 3 gennemløb: En hurtig blanding (hurtig, men ikke særlig sikker).
  • 5 gennemløb: En super grundig blanding (langsommere, men meget mere sikker).

Hver runde blander dataene forskelligt ved at bruge specielle "blade" (matematiske operationer), der hakker, vender, rører og maser dataene på skøre, uforudsigelige måder.

Trin 3: Hemmelig sauce (kompressionsfunktion)

Mellem blandingsrunderne tilføjer HAVAL sin hemmelige sauce - specielle opskrifter, der rører tingene endnu mere op. Dette trin sikrer, at selv en lille ændring i dine data (som at ændre et bogstav i en adgangskode) gør den endelige smoothie helt anderledes.

Trin 4: The Final Smoothie (The Hash)

Efter al blandingen hælder HAVAL din sidste "smoothie" ud.

  • Dette er hashen - et unikt fingeraftryk af dine data.
  • Uanset hvor store eller små dine oprindelige data var, har hashen altid samme størrelse. Det er som at putte frugt af enhver størrelse i en blender, men altid få den samme kop smoothie.

Fra 2025 er det kun HAVAL-256/5, der stadig anses for at være rimeligt sikkert til kryptografiske formål, selvom du ikke bør bruge det, når du designer nye systemer. Hvis du stadig bruger det i et ældre system, er du ikke i nogen umiddelbar risiko, men overvej at migrere til for eksempel SHA3-256 på længere sigt.

Del på BlueskyDel på FacebookDel på LinkedInDel på TumblrDel på XDel på LinkedInFastgør på Pinterest

Mikkel Bang Christensen

Om forfatteren

Mikkel Bang Christensen
Mikkel er skaberen og ejeren af miklix.com. Han har over 20 års erfaring som professionel computerprogrammør/softwareudvikler og er i øjeblikket fuldtidsansat i en stor europæisk IT-virksomhed. Når han ikke blogger, bruger han sin fritid på en lang række interesser, hobbyer og aktiviteter, som i et vist omfang afspejles i de mange forskellige emner, der dækkes på dette websted.