Co je funkce hash?
A hashovací funkce je metoda kontroly chyb v počítači a organizace dat. Velké množství dat je manipulováno s matematickým algoritmem, dokud nezůstane malé číslo. Toto číslo se používá jako součást katalogu, který umožňuje počítači najít tuto konkrétní informace později. Dobrá hashová funkce by měla poskytnout dostatečně malý výsledek, takže se snadno použije, ale poskytne jedinečný výsledek pro každou sadu dat. Funkce hash také poskytuje minimální kontrolu chyb, protože poškozený a dobrý kus dat by měl přinést různé výsledky při hashování.
V počítačové databázi je obvykle snazší ukládat umístění spíše než písmena. Číslice mají mnohem větší počet metod pro organizaci a třídění než písmena. Výsledkem je, že čísla jsou často přiřazena místům obsahujícím proměnné informace v databázi počítače. Tato čísla mohou být libovolná nebo reprezentativní pro informace.
Libová čísla jsou jednoduše přiřazena na základě pozice v TPaměť počítače nebo pořadí, ve kterém byla data uložena. Ukládání informací tímto způsobem je běžné v menších databázích nebo v místech, kde se data nezmění příliš často. Při použití v jiných oblastech začne znovu indexování databáze trvat stále více času, dokud již není efektivní.
Reprezentativní informace jsou místo, kde přichází funkce hash. Informace, bez ohledu na to, co obsahuje, jsou přeloženy do čísel. Tato čísla jsou přiváděna do matematického konstruktu, který vydává malé číslo, obvykle na celé číslo. Pokud funkce hash funguje správně, bude mít každé umístění v této části databáze svůj vlastní jedinečný výsledek. Pokud mají dvě nebo více míst stejný výsledek, programy by mohly přinést nesprávné informace na základě duplikovaného hash.
Je možné použít funkci hash i pro jiné věci. Velké množství vysoce opakujících se údajů může být BROKen dolů do menších hodnot. To je obzvláště pěkné při hledání opakovaných sekvencí ve velkých souborech dat. Například kyselina deoxyribonukleová (DNA) je tvořena velmi malým počtem různých složek. Při rozbíjení těchto komponent pomocí hodnot hash, místa, kde jsou dva řetězce DNA stejné a odlišné jsou velmi jasné, jednoduše z porovnání dvou malých sloupců čísel.
Poslední oblast, ve které jsou užitečné funkce hash, je kontrola chyb. Pokud jsou informace zpočátku hashovány, je hodnota zaznamenána jako součást indexu polohy. Pokud jsou tyto informace potřebné později, informace jsou získány spolu s touto hodnotou. Pokud program znovu natočí informace a výsledek je odlišný, došlo k korupci v určitém okamžiku. Tato korupce je obvykle u údajů, protože by korupce hash zabránila načtení dat na prvním místě.