Generátor xxHash
Vypočítejte kontrolní součty xxHash libovolného textu pomocí XXH32, XXH64, XXH3-64 a XXH3-128 v jednom zobrazení, nebo vyberte jednu variantu. Nástroj kóduje vstup do UTF-8, použije volitelné 32bitové počáteční číslo a vrátí každý otisk v kanonickém hexadecimálním tvaru, který vypisuje xxhsum. Vývojářům pomáhá ověřovat klíče mezipaměti, počáteční hodnoty hashovacích tabulek a datové procesy využívající tuto mimořádně rychlou nešifrovací hashovací funkci.
Často kladené otázky
Co je xxHash?
xxHash je rodina velmi rychlých nešifrovacích hashovacích funkcí od Yanna Colleta. XXH32 a XXH64 jsou klasické varianty a XXH3 je novější návrh s 64bitovým a 128bitovým výstupem. Používá se v kompresních nástrojích, databázích a herních enginech.
Které varianty nástroj počítá?
Počítá XXH32, XXH64, XXH3-64 a XXH3-128. Při výběru možnosti Všechny varianty se zobrazí všechny čtyři výsledky najednou, jinak pouze vybraná varianta. Každá hodnota se vypisuje v hexadecimálním tvaru big-endian, stejně jako v xxhsum.
Jaké jsou referenční hodnoty pro prázdný vstup a abc?
Při počáteční hodnotě 0 vrací prázdný vstup pro XXH32 hodnotu 02cc5d05, pro XXH64 ef46db3751d8e999, pro XXH3-64 2d06800538d394c2 a pro XXH3-128 99aa06d3014798d86001c324468d497f. Pro abc jsou hodnoty 32d153ff, 44bc2cf5ad770999, 78af5f94892f3950 a 06b05ab6733a618578af5f94892f3950.
K čemu slouží počáteční hodnota?
Počáteční hodnota mění výchozí stav, takže stejný text vytvoří pro každou hodnotu jiný hash. Použijte ji, pokud potřebujete odpovídat systému, který počítá hash se známou počáteční hodnotou. Nástroj přijímá celá čísla od 0 do 4294967295 a ve výchozím nastavení používá 0.
Je xxHash bezpečný?
Ne. xxHash je navržený pro rychlost a dobré rozložení hodnot, nikoli pro odolnost vůči útočníkům. Kolize může vytvořit kdokoli, proto pro kontrolu integrity a ochranu před pozměněním použijte SHA-256 nebo BLAKE3.
Mám použít XXH3, nebo XXH64?
XXH3 je na moderních procesorech rychlejší, zejména u krátkých vstupů, a pro nový kód se doporučuje. XXH64 se stále běžně používá ve stávajících formátech, například v kontrolním součtu rámce Zstandard, který využívá část hodnoty XXH64.
Proč moje knihovna vypisuje jiné pořadí bajtů?
Některé knihovny vypisují surové bajty hashe v pořadí little-endian místo samotného čísla. Tento nástroj používá kanonické zobrazení big-endian podle specifikace xxHash, které odpovídá výstupu xxhsum. Chcete-li výsledek porovnat s výpisem little-endian, obraťte pořadí bajtů.
Jak se text kóduje?
Váš vstup se zahashuje jako bajty UTF-8 přesně tak, jak jste ho zadali. Odlišné konce řádků nebo koncové mezery vytvoří jiný hash.
Mohu tímto nástrojem hashovat soubory?
Ne, nástroj počítá hash pouze z vloženého textu. U souborů nainstalujte xxhsum a spusťte xxhsum -H0, -H1, -H3 nebo -H2 pro XXH32, XXH64, XXH3-64 a XXH3-128.
Kolik textu mohu hashovat?
Na jeden požadavek lze zadat až 5 MiB textu. Všechny varianty se počítají na serveru ve WebAssembly a vstup se neukládá.