Hashfunksjon

En hashfunksjon eller avtrykksfunksjon er en hvilken som helst funksjon som kan brukes til å lage en signatur med fast størrelse av data i vilkårlig størrelse. Det finnes noen hash-funksjoner som støtter utdata med variabel lengde. Verdiene som returneres av en hashfunksjon kalles hashverdier, eller rett og slett en hash. Verdiene brukes vanligvis til å indeksere en tabell med fast størrelse kalt en hashtabell. Bruk av en hashfunksjon for å indeksere en hashtabell kalles hashing eller scatter-lagring.

Hashfunksjoner og tilhørende hashtabeller brukes i datalagringsapplikasjoner for å raskt kunne slå opp data. De krever lagringsplass som bare er brøkdel større enn den totale plassen som kreves for selve dataene eller postene. Hashing kan brukes som en beregnings- og lagringsplasseffektiv form for dataoppslag som i tillegg også unngår den variable oppslagstiden som mange andre datastrukturer har. Et eksempel er å finne et mønster i DNA-sekvenser.

Hash-funksjoner er relatert til (og ofte forvekslet med) kontrollsummer, kontrollsiffer, digitale fingeravtrykk, komprimering med tap, randomiseringsfunksjoner, feilkorrigerende koder og chiffer. Selv om konseptene til en viss grad overlapper hverandre har hver enkelt sine egne bruksområder og krav, og er utformet og optimalisert forskjellig. Hashfunksjonen skiller seg fra disse konseptene hovedsakelig når det gjelder dataintegritet. Hashtabeller kan bruke ikke-kryptografiske hashfunksjoner, mens kryptografiske hashfunksjoner brukes i cybersikkerhet for å sikre sensitive data som f.eks passord.

 Deterministisk 
En hashfunksjon må være deterministisk - for en gitt inngangsverdi må den alltid generere samme hashverdi. Det må med andre ord være en funksjon av dataene som skal hashes, i matematisk forstand av begrepet. 

 Referanser 

 Eksterne lenker 

 Beregn hash av en gitt verdi  av Timo Denk
 The Goulburn Hashing Function ( PDF ) av Mayur Patel
 Hash Function Construction for Textual and Geometrical Data Retrieval ( PDF ) Latest Trends on Computers, Vol.2, pp. 483–489, CSCC-konferansen, Korfu, 2010

Kategori:Søkealgoritmer