Hašovací funkce: Porovnání verzí
Smazaný obsah Přidaný obsah
m →Jiné aplikace: nahrazení hovorového můžou → mohou dle žádosti za použití AWB |
m robot: přidáno {{Autoritní data}}; kosmetické úpravy |
||
Řádek 14:
Formálně jde o funkci ''h'', která převádí vstupní posloupnost [[bit]]ů (či [[Bajt|bytů]]) na posloupnost pevné délky ''n'' bitů.
Z definice plyne existence ''[[
== Použití ==
Řádek 21:
=== Hašovací tabulka ===
{{Viz též|hašovací tabulka}}
Datová struktura
Při tomto použití je důležitá rychlost výpočtu (tj. [[
Například funkce může vynásobit parametr nějakou hodnotou nesoudělnou s velikostí tabulky a pak spočítat zbytek ([[modulo]]).
Řádek 30:
=== Otisk, signatura ===
Kontrolní otisk souboru (nebo jiných dat) jako metoda detekce chyb při přenosu nebo ukládání. V tomto případě jde o náhodné a
Jiný způsob využití otisků, v tomto kontextu někdy nazývaných signatury, je pro (rychlé) filtrování dat. Pokud chceme nalézt data se stejným klíčem (nebo stejný soubor) k danému klíči ''k'', porovnáme signaturu ''k'' s (předpočítanými) signaturami dat a pokud se neshoduje, můžeme data vyloučit jako určitě nerelevantní. Při shodě máme potenciální kandidáty, které musíme otestovat podrobněji. Výhoda této metody je, že je použitelná na různá data a že signatura může být podstatně menší než data. Příklad tohoto použití jsou seznamy signatur problémových souborů u antivirů a spamových filtrů. Strukturovaná data lze před hašováním [[Serializace|serializovat]].
Použitím delší signatury nebo více signatur standardního
Algoritmus [[Algoritmus Rabin-Karp|Rabin-Karp]] pro [[Algoritmy pro vyhledávání v textu|vyhledávání v textu]] používá postupné počítání otisků postupujícího textového okna pro zvýšení efektivity.
Pojem ''signatura'' se v informatice používá i ve významu [[Datový typ#
=== Kryptografická hašovací funkce ===
Řádek 49:
== Jiné aplikace ==
Hašovací funkce se používá jako součást dalších algoritmů, které přímočaře nespadají do tří hlavních výše zmíněných skupin.
Použití otisků dovoluje testovat přesnou shodu.
Při hledání podobných dat se počítají několikrát otisky z části dat a hledá se shoda otisků a tedy shoda části dat, která se následně rozšiřuje, např. při hledání podobnosti
Jiná možnost je z hodnot otisků sestavit [[histogram]] a porovnávat tyto histogramy. V tomto případě speciálně navržené funkce mohou maskovat určité druhy chyb. Takto lze např. porovnávat dokumenty pomocí hašování trojic sousedících slov. Ignorovanou chybou může být prohození slov a to zajistíme ve funkci tak, že nebude záležet na pořadí vstupních slov a funkce bude vracet v těchto případech stejný otisk.
Řádek 66:
* {{MathWorld|id=HashFunction}}
* [http://www.burtleburtle.net/bob/hash/perfect.html Minimal Perfect Hashing] (anglicky)
{{Autoritní data}}
[[Kategorie:Matematické funkce]]
|