Wat is Hash (cryptografie)?

Een hash is een vaste-lengte vingerafdruk van data, berekend door een hashfunctie. Ongeacht of je invoer 10 tekens of 10 miljoen tekens bevat — het resultaat is altijd even lang. Hashing wordt gebruikt voor wachtwoordopslag, data-integriteitscontrole en digitale handtekeningen.

Hoe werkt hashing?

Een hashfunctie neemt invoer (een tekst, bestand of willekeurige data) en produceert een vaste-lengte uitvoer — de hash of digest. Dezelfde invoer geeft altijd dezelfde hash. Maar zelfs een kleine wijziging in de invoer (één letter veranderen) levert een compleet andere hash op. Dit heet het 'avalanche effect'.

Populaire hashfuncties

MD5 produceert een 128-bit hash (32 hexadecimale tekens). Het is snel maar niet meer veilig voor cryptografische doeleinden — er zijn bekende collision-aanvallen. SHA-1 produceert een 160-bit hash en is eveneens als onveilig beschouwd. SHA-256 (onderdeel van SHA-2) produceert een 256-bit hash en is momenteel de standaard voor beveiliging. Voor nieuwe projecten gebruik je SHA-256 of hoger.

Waarvoor worden hashes gebruikt?

Wachtwoordopslag: websites slaan niet je wachtwoord op, maar de hash ervan. Wanneer je inlogt, wordt de hash van je invoer vergeleken met de opgeslagen hash. Bestandsintegriteit: na het downloaden van software kun je de SHA-256-hash vergelijken met de gepubliceerde hash om te controleren of het bestand niet is gemanipuleerd. Digitale handtekeningen, blockchains (Bitcoin gebruikt SHA-256) en checksums zijn andere veelvoorkomende toepassingen.

Hash vs. encryptie

Hashing is een eenrichtingsproces: je kunt een hash niet terugvertalen naar de oorspronkelijke data. Encryptie is tweezijdig: met de juiste sleutel kun je de versleutelde data weer ontcijferen. Dit fundamentele verschil bepaalt het gebruik: hashing voor verificatie, encryptie voor vertrouwelijkheid.

Gerelateerde tools

Lees ook