Hashalgoritmit
Hashalgoritmit ovat algoritmeja, jotka muuntavat syötteen mielivaltaisesta pituudesta kiinteän pituiseksi hajuksi (hashiksi). Ne ovat suunniteltu kertamaisiin, yksisuuntaisiin toimintoihin ja ovat deterministisia: sama syöte tuottaa aina saman hashin, mutta alkuperäisen tiedon palauttaminen on käytännössä mahdotonta. Hashin avulla voidaan varmistaa tiedoston eheys, tukea digitaalista allekirjoitusta sekä nopeuttaa vertailua ja hakua suurissa tiedostokokoisissa arkistoissa.
Keskeisiä ominaisuuksia ovat kiinteä pituus ja kyky vastustaa hyökkäyksiä kuten preimage- sekä törmäys- ja second preimage
Yleisimmät kryptografiset hash-algoritmit ovat MD5, SHA-1, SHA-256 ja SHA-3. MD5 ja SHA-1 on todettu haavoittuviksi törmäyksille,
Valinta riippuu käyttökohteesta: kriittinen turvallisuus, suorituskyky, energia- ja muistivaatimukset sekä alusta. On tärkeää valita nykyaikainen, laajasti