Home

Hashfunktioner

Hashfunktioner är matematiska funktioner som omvandlar data av godtycklig längd till en fast storlek, vanligtvis kallad hashvärde. De är i allmänhet deterministiska och snabba att beräkna, och designade så att samma indata alltid ger samma hash, oavsett hur ofta beräkningen upprepas.

Viktiga egenskaper är att utdata har fast längd, att det är svårt att rekonstruera indata från hashvärdet

Det finns två huvudtyper: kryptografiska hashfunktioner och icke-kryptografiska. Kryptografiska funktioner som SHA-256, SHA-512 och SHA-3 används

Användningsområden inkluderar dataintegritet och checksummor, digitala signaturer och lösenordshantering där hashvärden skyddas med salt. För lösenord

(förstapåväg-resistens),
svårt
att
hitta
två
olika
indata
som
ger
samma
hash
(kollisionresistens)
och
att
små
förändringar
i
indata
ger
betydligt
olika
hashvärden
(avalanche-effekt).
Dessa
egenskaper
skiljer
kryptografiska
hashfunktioner
från
enklare,
icke-cryptografiska
versioner
som
används
till
exempel
i
databaser
eller
filidentifiering.
där
det
krävs
säkerhet
mot
attacker,
medan
äldre
eller
svaga
funktioner
som
MD5
och
SHA-1
inte
längre
anses
säkra
mot
kollisioner.
I
andra
sammanhang
används
icke-cryptografiska
hashfunktioner
som
MurmurHash
eller
CityHash
för
snabba
uppslag
och
datagränssnitt.
används
ofta
långsammare
och
minneshåra
algoritmer
som
bcrypt,
scrypt
och
Argon2
för
att
göra
brute-force-attacker
svårare.
Standardisering
och
uppdatering
av
algoritmer
följer
säkerhetsutmaningar
och
rekommendationer
från
myndigheter
och
standardiseringsorgan.