Hashing is een proces waarbij een algoritme (zoals MD5, SHA-1 of SHA-2) wordt gebruikt om een unieke identificatie - een 'hash' - voor een bestand te maken op basis van de gegevens. Twee identieke bestanden hebben altijd dezelfde hash. Evenzo zullen twee verschillende bestanden altijd verschillende hashes hebben, zelfs als het verschil tussen de twee bestanden minimaal is. De hashes van bestanden waarvan is vastgesteld dat ze inbreuk maken op auteursrechtelijk beschermd materiaal, kunnen worden toegevoegd aan 'zwarte lijsten', die door cloudopslagdiensten kunnen worden gebruikt om ongeautoriseerde bestanden te detecteren, blokkeren en verwijderen.
Het doel van hashing is om verschillende kopieën van hetzelfde digitale bestand te identificeren. Eerst wordt een algoritme gebruikt om een unieke tekenreeks, een 'hash' genaamd, toe te wijzen aan het digitale bestand en die hash wordt opgeslagen in een hash-database. Een tweede digitaal bestand ondergaat dan hetzelfde hashing proces en de resulterende hash wordt vergeleken met de hash die al is opgeslagen in de hash database om te bepalen of de bestanden exact overeenkomen.
Hashing wordt voornamelijk gebruikt om inhoud te indexeren, wachtwoorden te beveiligen, schadelijke bestanden zoals virussen op te sporen of illegale inhoud te blokkeren, zoals het promoten van terroristische daden of uitbuiting van minderjarigen. Met betrekking tot auteursrechtelijk beschermd materiaal dienen hashes voor het identificeren, vergelijken en voorkomen van het uploaden van digitale inhoud die al is verwijderd vanwege schending van het auteursrecht.
Het is moeilijk om specifieke implementatievereisten voor hashing te geven omdat er verschillende technieken en algoritmen voor hashing gebruikt kunnen worden, die allemaal verschillende hoeveelheden rekenkracht vereisen. De meeste hashing methodes zijn cryptografisch (waarbij twee verschillende bestanden, hoewel ze erg op elkaar lijken, totaal verschillende hashes zullen hebben) maar er bestaan ook perceptuele hashing methodes (waarbij twee bijna identieke bestanden, bijvoorbeeld gelijkaardige afbeeldingen, gelijkaardige hashes zullen hebben). Het voordeel van hashing is dat het toegepast kan worden op reeds bestaande inhoud. Hashes kunnen gedeeld en gebruikt worden door alle verschillende partijen die hetzelfde hashing proces en dezelfde hash database gebruiken. Het nadeel is echter dat hashing alleen hetzelfde identieke bestand herkent, niet de inhoud.
Hashing vereist een beperkte investering omdat er open source oplossingen beschikbaar zijn. Omdat hashing databases alleen een tekenreeks opslaan in plaats van het hele bestand, hebben ze bovendien minder rekenkracht en geheugen nodig.