Skip to main content

Wat zijn hashes?

Hashes zijn wiskundige formules die een reeks gegevens van variabele lengte nemen, meestal in de vorm van tekst, en omzetten in kortere, numerieke waarden met vaste lengte.Hashes worden vaak gebruikt in computerdatabases om zoekopdrachten sneller en efficiënter te maken.Ze worden ook gebruikt in codering om ervoor te zorgen dat wachtwoorden niet worden aangetast en om onder andere digitale handtekeningen te verifiëren.Hashes heeft ook de naam van hash -functies en kunnen ook als algoritmen worden beschouwd.

Hashes spelen een grote rol bij het faciliteren van database -zoekopdrachten.In een database bestaande uit namen, bijvoorbeeld als een gebruiker op zoek is naar 'John Doe', zou de computer alle tekens moeten matchen bij de zoekopdracht met die van elke database -invoer.Elk personage in de naam zou 26 verschillende mogelijkheden hebben mdash;De letters van het Engelse alfabet mdash;Hoewel de variabele lengte van de vermeldingen ook de zoekopdracht zou vertragen.

Daarentegen zou het toepassen van een hash -functie het leven van de computer veel gemakkelijker maken.Het omzetten van elke tekstreeks in een reeks getallen zou de zoekopdracht vereenvoudigen, omdat de computer slechts tien mogelijkheden zou hebben om voor elk teken te controleren: cijfers "0" naar "9."De vaste lengte van de nummerreeksen helpt de computer ook zijn werk efficiënter te doen.

In een database met een hash -functie toegepast, hebben alle vermeldingen een overeenkomstig, uniek nummer.Dit wordt een hash -sleutel genoemd.In dit geval, wanneer u een zoekopdracht uitvoert, past de computer eerst de hash -functie toe op de input die u hebt geschreven, zoals 'John Doe'.Dit resulteert in een numerieke waarde, bijvoorbeeld "456789."De computer kan dit resultaat vervolgens snel matchen met de hash -sleutel die overeenkomt met de juiste invoer.

Hashes fungeren ook als digitale handtekeningen.Een afzender, Robert, wil bijvoorbeeld een document naar iemand sturen en de ontvanger, Mary, wil ervoor zorgen dat het document niet onderweg is geknoeid.De afzender, Robert, hoeft het document alleen te uitvoeren via een hash -functie, wat resulteert in een numerieke waarde.Robert versleutelt vervolgens de hash -toets en verzendt het document samen met de gecodeerde sleutel.

Mary ontvangt beide items en decodeers de hash -sleutel.Ze kan nu de numerieke waarde zien die uit het document resulteerde voordat het werd verzonden.Om te controleren of het document in haar handen exact dezelfde is, voert ze het document uit via een hash -functie op haar computer.Ten slotte vergelijkt ze beide sleutels.Als ze hetzelfde zijn, werd het document niet gewijzigd op weg naar de ontvanger.

Er bestaan veel verschillende hash -functies, elk met hun eigen wiskundige formules.Om een hash -functie te laten werken, moet deze elke botsing minimaliseren, die optreedt wanneer twee database -ingangen dezelfde hash -sleutel hebben.Hash-functies moeten ook eenrichtingsverkeer zijn.Dat betekent dat u een sleutel kunt produceren uit een database -invoer of document, maar niet andersom.Met andere woorden, u kunt het originele document niet "reverse" uit zijn hash-sleutel "reverse".