Bittien tiivistäminen Kompressio+palautus kokonaan tai likimain Ei-palautuva eli yksisuuntainen melko lyhyt, yksinkertaisella algoritmilla Tarkistusnumero tai -merkki(jono) ilmiasu Bitti, numero, kirjain, merkkijono käyttö eheystarkistus tahattomia virheitä vastaan Hash-funktio sopivan tasaisesti jakautuva tulos Tietokantojen talletus & erityistarkoitukset "mahdoton" keksiä mistä tuli Kryptografinen hash-funktio [Tämä on keskuskäsite] "ulkonäkö" Heksadesimaaleja, esim. 80 bittiä: 5a:08:c6:21:3c:45:e9:0d:f8:bb käyttö Avaimen kera eheystarkistus myös tahallisia rikkeitä vastaan lisänä symmetrinen avain k HMAC = H(k,H(k,m)) Ketjutetun lohkosalauksen viimeinen lohko CBC-MAC, modifioituna CMAC muita MAC-tyyppejä tai autentikoitu salaus MAC ei tarvitse Törmäyksen sietokyky =2nd preimage resistance Jos on annettu x , y , jolle H(x)=H(y) ja y?x vahven- nus Vahva törmäyksen sietokyky Yleisesti x ja y , joille H(x)=H(y) ja y?x yksi muoto (epäsymm. avain hashin jälkeen) digitaalisen allekirjoituksen esivaihe digitaalisen allekirjoituksen esivaihe eheystarkistus tahattomia virheitä vastaan erityinen: - salasanatietokanta Jos suojattu, myös tahallisia muutoksia vastaan Protokollissa alkaen 2008 Lohkoketju perinteisesti - vastauksena haasteeseen - iteroiden, esim. kertasalasanoiksi ominaisuuksia vakiopituinen bittejä esim. 128, 160, 256 yksisuuntaisuus eli "kryptografisuus" ominaisuuksia funktiolle m --> h = H(m) Yksisuuntaisuus = preimage resistance Jos on annettu h , ei saa olla mahdollista käytännössä löytää: x , jolle H(x) = h vahvennus (käytännössä) Törmäyksen sietokyky =2nd preimage resistance Jos on annettu x , ei saa olla mahdollista käytännössä löytää: y , jolle H(x)=H(y) ja y<>x vahvennus Vahva törmäyksen sietokyky Yleisesti ei saa olla mahdollista käytännössä löytää: x ja y , joille H(x)=H(y) ja y<>x toteutustekniikka (uusi tapa) "sienifunktiot" (ensin bittien imu, sitten puristus) (vanha tapa) iteroitu "kutistusfunktio" tärkeimmät Lähes historiallinen MD5 (message digest) 128 bittiä ei enää toteuta Vahva törmäyksen sietokyky samaa MD4 perhettä (vanha tapa) iteroitu "kutistusfunktio" 1990-luvun puolesta välistä SHA-1, (secure hash algorithm) SHA-256, SHA.512, ... samaa MD4 perhettä (vanha tapa) iteroitu "kutistusfunktio" 1990-luvun puolesta välistä SHA-3 = Keccak (uusi tapa) "sienifunktiot" (ensin bittien imu, sitten puristus)