Algorytm skrótu, znany również jako funkcja skrótu, to matematyczna procedura używana w programowaniu komputerowym do przekształcania dużej części danych w mniejszy symbol reprezentacyjny, znany jako klucz skrótu. Główne zastosowanie algorytmów mieszających występuje w dużych bazach danych informacji. Każdemu zbiorowi danych przypisywany jest klucz skrótu, który jest krótkim symbolem lub kodem, który go reprezentuje. Kiedy użytkownik musi znaleźć ten fragment danych, wprowadza symbol lub kod, a komputer wyświetla pełny fragment danych.
Do haszowania, jak nazywa się ten proces, potrzebna jest funkcja haszująca lub algorytm haszujący. To mówi komputerowi, jak wziąć klucz mieszający i dopasować go do zestawu danych, które reprezentuje. Obszary w programie komputerowym, znane jako gniazda lub pojemniki, przechowują informacje, a każdy klucz łączy się z określonym miejscem lub pojemnikiem.
Aby w pełni zrozumieć algorytm mieszający, najlepiej wyobrazić sobie program komputerowy działający trochę jak słownik. Każda litera alfabetu reprezentuje klucz mieszający. Strony zawierające wszystkie słowa zaczynające się od określonej litery liczą się jako przedział lub wiadro. Jeśli dana osoba szukała listy słów zaczynających się na literę A, mogłaby wpisać do komputera literę A, która reprezentuje klucz, a algorytm haszujący wyszukałby slot pasujący do tego konkretnego klucza.
Następnie pobierałby wszystkie fragmenty danych w tym gnieździe. W tym przypadku zwróci wszystkie słowa zaczynające się na literę A. Ten przykład pokazuje uproszczoną wersję działania algorytmu mieszającego. Może również łączyć klucz skrótu z jednym konkretnym fragmentem danych i tylko ten fragment danych będzie się pojawiał zamiast wielu fragmentów.
Cały proces jest zawarty w tablicy mieszającej lub mapie mieszającej. Ta tabela rejestruje dane i odpowiadające im klucze. Następnie używa algorytmu mieszającego, aby połączyć klucz z fragmentem danych, gdy użytkownik tego zażąda. Badacz, który próbuje porównać podobne nagrania ze swoich eksperymentów, może stworzyć algorytm mieszający, który przypisuje klucz do wszelkich podobnych danych. Pokazywałby mu wtedy wszystkie podobne dane na raz, aby mógł je porównać.