Hash

Een hash is een functie die de ene waarde omzet in een andere. Het hashen van gegevens is een veelgebruikte praktijk in de computerwetenschap en wordt voor verschillende doeleinden gebruikt. Voorbeelden zijn cryptografie, compressie, het genereren van controlesommen en het indexeren van gegevens.

Hashing is zeer geschikt voor cryptografie, omdat de oorspronkelijke gegevens worden verhuld met een andere waarde. Een hashfunctie kan worden gebruikt om een waarde te genereren die alleen kan worden gedecodeerd door de waarde op te zoeken in een hashtabel. De tabel kan een array, database of andere gegevensstructuur zijn. Een goede cryptografische hashfunctie is niet-inverteerbaar, wat betekent dat deze niet door middel van reverse engineering kan worden teruggedraaid.

Omdat gehashte waarden over het algemeen kleiner zijn dan de oorspronkelijke waarden, kan een hashfunctie dubbele gehashte waarden genereren. Deze staan bekend als "collisions" en ontstaan wanneer identieke waarden worden geproduceerd uit verschillende brongegevens. Collisions kunnen worden opgelost door meerdere hashfuncties te gebruiken of door een overlooptabel te maken wanneer dubbele gehashte waarden worden aangetroffen. Collisions kunnen worden voorkomen door grotere hashwaarden te gebruiken.

Verschillende soorten compressie, zoals lossy beeldcompressie en mediacompressie, kunnen hashfuncties gebruiken om de bestandsgrootte te verkleinen. Door gegevens te hashen naar kleinere waarden, kunnen mediabestanden worden gecomprimeerd tot kleinere delen. Dit type eenrichtingshashing kan niet worden teruggedraaid, maar kan wel een benadering van de oorspronkelijke gegevens opleveren die minder schijfruimte vereist.

Hashes worden ook gebruikt om controlesommen te maken, waarmee de integriteit van bestanden wordt gecontroleerd. Een controlesom is een kleine waarde die wordt gegenereerd op basis van de bits in een bestand of gegevensblok, zoals een schijfkopie. Wanneer de controlesomfunctie wordt uitgevoerd op een kopie van het bestand, zoals een bestand dat van internet is gedownload, moet deze dezelfde gehashte waarde opleveren als het oorspronkelijke bestand. Als het bestand niet dezelfde controlesom oplevert, is er iets in het bestand gewijzigd.

Ten slotte worden hashes gebruikt om gegevens te indexeren. Gehashte waarden kunnen worden gebruikt om gegevens toe te wijzen aan afzonderlijke "buckets" binnen een hashtabel. Elke bucket heeft een unieke ID die als verwijzing naar de oorspronkelijke gegevens dient. Hierdoor ontstaat een index die aanzienlijk kleiner is dan de oorspronkelijke gegevens, zodat de waarden efficiënter kunnen worden doorzocht en geopend.

Bijgewerkt April 21, 2018 door Per C.

quizTest je kennis

Electron allows developers to create apps using what languages?

A
HTML, CSS, and JavaScript
0%
B
PHP, ASP, and JSP
0%
C
C, C++, and C#
0%
D
Python, Perl, and Pascal
0%
Correct! Incorrect!     View the Electron definition.
More Quizzes →

Het Tech Terms computerwoordenboek

De definitie van Hash op deze pagina is een originele definitie geschreven door de auteurs van TechTerms.com. Als je naar deze pagina wilt verwijzen of deze definitie wilt citeren, gebruik dan de groene citatiebalk direct onder de definitie.

Ons doel is om computerterminologie op een begrijpelijke manier uit te leggen. We streven naar nauwkeurigheid en eenvoud bij elke definitie die we publiceren. Als je feedback hebt over deze definitie of een nieuwe technische term wilt voorstellen, neem dan contact met ons op.

De Tech Terms-nieuwsbrief

Verbeter je technische kennis met onze dagelijkse of wekelijkse nieuwsbrief! Abonneer je vandaag nog en ontvang nieuwe termen en quizzen in je inbox.

Schrijf je in voor de gratis TechTerms-nieuwsbrief

Hoe vaak wil je een e-mail ontvangen?

Je kunt je op elk moment uitschrijven of je frequentie wijzigen via de links in elke e-mail. Vragen? Neem contact met ons op.

Let op: de nieuwsbrief wordt in het Engels verzonden.