Reeks cryptografische hashfuncties
SHA-2 (Secure Hash Algorithm 2) is een reeks cryptografische hashfuncties. Deze algoritmen werden ontwikkeld door de National Security Agency (NSA) en in 2001 gepubliceerd door de National Institute of Standards and Technology (NIST). SHA-2 is de veilige opvolger van de kwetsbare hashfunctie SHA-1.
Verschillende varianten
SHA-2 bestaat uit verschillende varianten met verschillende hashlengtes:
SHA-224 (224 bits)
SHA-256 (256 bits)
SHA-384 (384 bits)
SHA-512 (512 bits)
SHA-512/224 en SHA-512/256 (verkorte varianten van SHA-512)
Merkle-Damgård-structuur
SHA-2 gebruikt de Merkle-Damgård-structuur met een compressiefunctie gebaseerd op bitwise-bewerkingen, rotaties en logische functies. Hierdoor is dit algoritme robuust tegen hashbotsingen (collision attacks). SHA-2 biedt een sterke cryptografische beveiliging door lange hash-lengtes, waardoor zogenaamde ‘brute force-aanvallen’ onpraktisch zijn. Een brute force aanval probeert alle mogelijke invoercombinaties totdat de juiste hash is gevonden. Dit is bij SHA-2 praktisch onmogelijk vanwege de grote sleutelruimte. De SHA-512 variant biedt ook een hoge mate van weerstand tegen lengte-extensieaanvallen. Een lengte-extensieaanval maakt gebruik van de eigenschappen van sommige hashfuncties om een hash te verlengen, zonder de originele invoer te kennen. SHA-2 (en dan met name SHA-512) is hier goed tegen beschermd.
Toepassingen van SHA-2
SHA-2 wordt breed toegepast in moderne beveiligingssystemen, waaronder:
SSL/TLS-certificaten:
Deze certificaten verzekeren veilige verbindingen met het internet.
Digitale handtekeningen:
Deze waarborgen de integriteit van documenten.
Blockchaintechnologie:
Bitcoin gebruikt SHA-256 voor het mining-proces en transactiebeveiliging binnen het blockchainnetwerk.
Veilige hashing
En hoewel SHA-2 zeer veilig is, heeft NIST in 2015 de SHA-3 hashfunctie goedgekeurd als alternatief, dat een geheel andere ‘sponge-constructie‘ gebruikt. Echter, blijft SHA-2 vooralsnog dominant in de meeste toepassingen en een belangrijk cryptografisch algoritme voor digitale beveiliging. Door de brede adoptie blijft deze hashfunctie voorlopig dan ook de belangrijkste standaard voor veilige hashing.
Op de hoogte blijven van de ontwikkelingen op het gebied van blockchaintechnologie? Meld je dan nu aan voor de blogpost!