Hajautusalgoritmi, joka tunnetaan myös nimellä hajautusfunktio, on matemaattinen menetelmä, jota käytetään tietokoneohjelmoinnissa suuren datan osan muuttamiseksi pienemmäksi esityssymboliksi, joka tunnetaan hajautusavaimena. Hash -algoritmeja käytetään pääasiassa suurissa tietokannoissa. Jokaiselle tietokokoelmalle on määritetty tiivisteavain, joka on lyhyt symboli tai koodi, joka edustaa sitä. Kun käyttäjän on löydettävä kyseinen tieto, hän syöttää symbolin tai koodin ja tietokone näyttää koko datan.
Hajauttamista varten, kuten tätä prosessia kutsutaan, se tarvitsee hajautusfunktion tai tiivistealgoritmin. Tämä kertoo tietokoneelle, miten hajautusavain otetaan ja se yhdistetään sen edustamaan tietojoukkoon. Tietokoneohjelman alueet, joita kutsutaan korttipaikoiksi tai kauhoiksi, tallentavat tietoja ja jokainen avain linkittää tiettyyn paikkaan tai ämpäriin.
Ymmärtääksesi hajautusalgoritmin täysin, on parasta kuvitella tietokoneohjelma toimivan sanakirjan tavoin. Jokainen aakkosten kirjain edustaa tiivisteavainta. Sivut, jotka sisältävät kaikki sanat, jotka alkavat tietyllä kirjaimella, lasketaan paikaksi tai ryhmäksi. Jos henkilö etsii luetteloa sanoista, jotka alkavat kirjaimella A, hän voisi kirjoittaa avaimen edustavan kirjaimen A tietokoneeseen ja hajautusalgoritmi etsisi kyseistä avainta vastaavaa paikkaa.
Se noutaisi sitten kaikki paikkatiedot. Tässä tapauksessa se palauttaisi kaikki A -kirjaimella alkavat sanat. Tämä esimerkki näyttää yksinkertaistetun version siitä, kuinka tiivistealgoritmi toimii. Se voi myös linkittää hajautusavaimen yhteen tiettyyn dataan ja vain se data näkyy useiden osien sijasta.
Koko prosessi sisältyy hajautustaulukkoon tai hajautuskarttaan. Tämä taulukko tallentaa tiedot ja niitä vastaavat avaimet. Sitten se käyttää hajautusalgoritmia yhdistämään avaimen dataan, kun käyttäjä sitä pyytää. Tutkija, joka yrittää verrata samanlaisia tallenteita kokeistaan, voi luoda tiivistealgoritmin, joka määrittää avaimen samankaltaisille tiedoille. Sitten se näyttäisi hänelle kaikki samankaltaiset tiedot kerralla vertailtavaksi.