SHA-256 vs. SHA-512: hvilken hashfunktion skal du vælge?

SHA-256 og SHA-512 tilhører begge SHA-2-familien, designet af NSA og standardiseret af NIST. De producerer et aftryk af fast størrelse ud fra vilkårlige data og betragtes i dag som sikre. Forskellen ligger i aftrykkets størrelse, i ydeevnen afhængigt af arkitekturen og i nogle få sikkerhedsdetaljer. Her er, hvilken du skal vælge og hvorfor.

SHA-2-familien

SHA-2 samler flere varianter (SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256), der deler samme struktur, men adskiller sig i ord- og aftryksstørrelse. Tallet angiver aftrykkets størrelse i bit: SHA-256 producerer 256 bit (64 hexadecimale tegn), SHA-512 producerer 512 (128 tegn).

Du kan beregne disse aftryk med vores hash-generator eller genkende en algoritme ud fra et aftryk med hash-identifikatoren. Må ikke forveksles med MD5, forældet til sikkerhedsbrug (se vores sammenligning MD5 vs. SHA-256).

SHA-256

SHA-256 arbejder på ord på 32 bit og producerer et aftryk på 256 bit. Det er verdens mest udbredte hashfunktion: TLS-certifikater, Bitcoin-signaturer, integritetskontrol af filer, git. Dens kortere aftryk gør den praktisk at gemme, vise og overføre.

  • Aftryk: 256 bit, 64 hexadecimale tegn
  • Ord: 32 bit, optimal på 32-bit-platforme og indlejrede systemer
  • Udbredelse: den bredeste, universel understøttelse

SHA-512

SHA-512 arbejder på ord på 64 bit og producerer et aftryk på 512 bit. Modsat intuitionen er den på en moderne 64-bit-processor ofte hurtigere end SHA-256 for store mængder, fordi den behandler flere data pr. runde. Dens længere aftryk giver også en højere sikkerhedsmargin.

  • Aftryk: 512 bit, 128 hexadecimale tegn
  • Ord: 64 bit, optimal på 64-bit-arkitekturer
  • Indbygget modstandsdygtighed: SHA-512 er ikke sårbar over for længdeudvidelsesangreb, når man bruger dens afkortede varianter (SHA-512/256)

Sammenligningstabel

Kriterium SHA-256 SHA-512
Aftryksstørrelse256 bit (64 hex)512 bit (128 hex)
Ordstørrelse32 bit64 bit
Hastighed på 64-bit-CPUGodOfte højere
Hastighed på 32 bit / indlejretHøjereLangsommere
SikkerhedsmarginMeget højEndnu højere
LængdeudvidelseSårbarSårbar (undtagen afkortede varianter)
UdbredelseUniverselBred

Ydeevne

Ydeevnen afhænger af arkitekturen. På en 64-bit-server eller bærbar kan SHA-512 overgå SHA-256 med 20 til 50 % på store filer, fordi den behandler større blokke pr. iteration. På en 32-bit-mikrocontroller eller i et begrænset miljø får SHA-256 fordelen tilbage.

I praksis er forskellen ubetydelig for små input (en adgangskode, et id). Den bliver først målbar ved betydelige mængder eller høj gennemstrømning.

Hvornår skal du vælge den ene eller den anden

Vælg SHA-256, når

  • Du sigter mod maksimal kompatibilitet og et kompakt format
  • Du målretter indlejrede systemer, IoT eller 32-bit-platforme
  • Du kontrollerer filers integritet eller signerer certifikater
  • Et kort aftryk letter visning og lagring

Vælg SHA-512, når

  • Du hasher store mængder på 64-bit-servere
  • Du vil have den bredest mulige sikkerhedsmargin
  • Du bruger SHA-512/256 for at modstå længdeudvidelse og samtidig beholde 256 bit

Vigtigt: ingen af de to er egnede til hashing af adgangskoder. Brug i stedet bcrypt eller Argon2, designet til at være langsomme og saltede.

Anbefaling

Til generel brug er SHA-256 standardvalget: universelt understøttet, kompakt, rigeligt sikkert. Vælg SHA-512, hvis du hasher store mængder på 64-bit-hardware, eller hvis du vil have en ekstra sikkerhedsmargin. Og til at gemme adgangskoder bør du ty til en dedikeret funktion som Argon2id, aldrig til SHA-2 alene.

Ofte stillede spørgsmål

Er SHA-512 sikrere end SHA-256?

SHA-512 tilbyder en højere teoretisk sikkerhedsmargin takket være sit længere aftryk, men SHA-256 er allerede langt uden for rækkevidde af nuværende angreb. For næsten alle anvendelser betragtes begge som sikre.

Hvorfor kan SHA-512 være hurtigere end SHA-256?

Fordi den håndterer ord på 64 bit og behandler større blokke pr. runde. På en native 64-bit-processor opvejer det merudgiften og gør den ofte hurtigere på store mængder. På 32 bit er det omvendt.

Kan jeg hashe adgangskoder med SHA-256 eller SHA-512?

Nej, det ville være en fejl. Disse funktioner er hurtige og dermed lette at angribe med brute force. Brug bcrypt eller Argon2id, som er bevidst langsomme og indeholder et salt.

Hvad er SHA-512/256?

Det er SHA-512, hvis aftryk er afkortet til 256 bit, med forskellige initialiseringsværdier. Man får et aftryk på 256 bit, SHA-512's hastighed på 64 bit og indbygget modstandsdygtighed over for længdeudvidelsesangreb.