 |
Tiiviste (tietotekniikka) |
Tiiviste eli hajautusarvo () on tietotekniikassa termi, joka tarkoittaa tiedon tiivistämistä pienempään tilaan sitä varten, että alkuperäistä tietoa voidaan vertailla vertailemalla niiden tiivisteitä. Tiivisteestä ei voi palauttaa alkuperäistä tietoa kuten
pakkaamisessa. Tiivistämistä ei pidä myöskään sekoittaa
salaukseenstasta. Tiivistämiselle on useita erilaisia käyttötarkoituksia: tiiviste- eli
hajautustaulu tiedot voidaan löytää nopeasti ja
digitaalinen allekirjoitus perustuu
kryptograafiseen tiivisteeseen. Tiivisteen avulla voidaan myös todeta onko
virus muuttanut tiedostoa.
Käytännön esimerkkejä
Tarkistustiiviste virheenkorjauskeinona tiedonsiirrossa
Ennen tiedoston lähettämistä
verkon yli siitä luodaan tiiviste tehtävään soveltuvalla algoritmilla. Tämän jälkeen kohteeseen lähetetään tiiviste ja tiedosto. Kohde tarkistaa tiedon siirron jälkeen tiedoston eheyden luomalla uuden tiivisteen ja vertaamalla sitä vanhaan. Jos tiivisteet ovat erilaiset, informaatio joudutaan siirtämään uudestaan ainakin osittain.
Tarkistustiivisteet avoimessa lähdekoodissa
Avoin lähdekoodi on osittain saanut huonoa mainetta muunneltujen ohjelmistojen takia. Koska kuka tahansa voi jakaa ja muokata avointa lähdekoodia, on
krakkereilla suuri houkutus jakaa omaa muunneltua palomuuriaan, joka päästää tietynlaiset paketit läpi tarkistamatta niitä. Tämän johdosta valtaosasta tunnettuja avoimen lähdekoodin ohjelmistoja on muodostettu
MD5-tiiviste, ja näitä tiivisteitä jaetaan kyseisten ohjelmapakettien virallisissa lähteissä Internetissä.
Vertaisverkot
Vertaisverkot käyttävät hyvin usein tiivisteiden kehittyneimpiä muotoja kuten
hajautettua tiivistettä. Vertaisverkkojen usein hakiessa tiedon palasia usealta käyttäjältä ovat vertaisverkkojen tiedonsiirrot olleet hyvin ongelmallisia. Useat tahot ovat kehittäneet tekniikoita, joilla he voivat lähettää korruptoituneita tiedoston osasia, joiden hajautustaulut ovat yhteneviä alkuperäisen tiedoston hajautustaulun kanssa (kts.
syntymäpäiväongelma) vertaisverkkoihin. Nykyään vertaisverkoissa tarkastetaan tiedoston osaset erikseen sekä koko tiedosto tiedonsiirron jälkeen vieläpä usealla eri algoritmilla.
Katso myös