Ero sivun ”Hajautusalgoritmi” versioiden välillä

[arvioimaton versio][arvioimaton versio]
Poistettu sisältö Lisätty sisältö
täältä tiivisteisiin asiaa
Rivi 68:
Nykyään hajautustauluja tarvitsee tai kannattaa toteuttaa harvoin itse. [[C++]]:n [[STL]] sisältää tietorakenteen <code>map</code> ja monet korkean tason ohjelmointikielet tarjoavat valmiit toteutukset (usein nimellä map, hash tai dictionary). Monesti hajautusfunktio on sisäisesti korvattu
[[puu_(graafiteoria)|tasapainotetulla puurakenteella]], jolloin haku pysyy edelleen nopeana, mutta tietorakennetta voidaan dynaamisesti kasvattaa ilman suurempia kustannuksia.
 
== Käytännön esimerkkejä ==
 
=== Hajautustaulut tiedon siirrossa ===
Nykyään lähes kadonnut ''CRC error'' on korjattu osittain hajautustaulujen avulla. Ennen tiedoston lähettämistä, siittä luodaan tiiviste jollakin algoritmilla. Tämän jälkeen kohteeseen lähetään hajatustaulu ja tiedosto. Kohde tarkistaa tiedon siirron jälkeen tiedoston eheyden luomalla uuden hajautustaulun ja vertaamalla sitä vanhaan. Jos hajautustaulu eivät ole yhtenäiset, joudutaan informaatio siirtämään uudestaan ainakin osittain.
 
=== Hajautustaulut 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 [[krakkeri|krakkereilla]] suuri houkutus jakaa omaa muunneltua palomuuriaan, joka päästää tietynlaiset paketit läpi tarkistamatta niitä. Tämän johdosta valtaosa tunnetuista sovelluksista ja niiden lähdekoodi on tiivistetty [[MD5]] funktiolla ja näitä hajautustauluja on ilmaiseksi jaossa ympäri [[internet]]tiä.
 
=== Vertaisverkot ===
Vertaisverkot käyttävät hyvin usein hajautustaulujen kehittyneimpiä muotoja kuten [[Hajautettu tiiviste]]. 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ää korrputoituneita tiedoston osasia, joiden hajautustaulut ovat yhteneviä alkuperäisen tiedoston hajautustaulun kanssa, vertaisverkkoihin. Nykyään vertaisverkoissa tarkastetaan tiedoston osaset erikseen sekä koko tiedosto tiedonsiirron jälkeen vieläpä usealla eri hajautusalgoritmilla.
 
== Katso myös ==