xxHash generatorius
Apskaičiuokite bet kokio teksto xxHash kontrolines sumas: XXH32, XXH64, XXH3-64 ir XXH3-128 viename rodinyje arba pasirinkite vieną variantą. Įrankis užkoduoja įvestį kaip UTF-8, pritaiko pasirenkamą 32 bitų pradinę reikšmę ir pateikia kiekvieną maišos reikšmę kanoniniu šešioliktainiu formatu, kurį spausdina xxhsum. Jis padeda kūrėjams tikrinti spartinančiosios atmintinės raktus, maišos lentelių pradines reikšmes ir duomenų apdorojimo grandines, kuriose naudojama ši itin greita nekriptografinė maišos funkcija.
Dažnai užduodami klausimai
Kas yra xxHash?
xxHash yra Yann Collet sukurta itin greitų nekriptografinių maišos funkcijų šeima. XXH32 ir XXH64 yra klasikiniai variantai, o XXH3 – naujesnė konstrukcija, pateikianti 64 ir 128 bitų išvestis. Ji naudojama glaudinimo įrankiuose, duomenų bazėse ir žaidimų varikliuose.
Kokius variantus apskaičiuoja įrankis?
Įrankis apskaičiuoja XXH32, XXH64, XXH3-64 ir XXH3-128. Pasirinkus „Visi variantai“, rodomi visi keturi rezultatai, o kitu atveju – tik pasirinktas variantas. Kiekviena reikšmė pateikiama didžiųjų baitų tvarkos šešioliktainiu formatu, kaip xxhsum.
Kokios yra tuščios įvesties ir abc etaloninės reikšmės?
Kai pradinė reikšmė yra 0, tuščia įvestis pateikia XXH32 reikšmę 02cc5d05, XXH64 – ef46db3751d8e999, XXH3-64 – 2d06800538d394c2, o XXH3-128 – 99aa06d3014798d86001c324468d497f. Tekstui abc reikšmės yra atitinkamai 32d153ff, 44bc2cf5ad770999, 78af5f94892f3950 ir 06b05ab6733a618578af5f94892f3950.
Ką daro pradinė reikšmė?
Pradinė reikšmė keičia pradinę būseną, todėl tam pačiam tekstui naudojant skirtingas pradines reikšmes gaunama skirtinga maišos reikšmė. Naudokite ją, kad rezultatas atitiktų sistemą, kuri skaičiuoja maišą su žinoma pradine reikšme. Įrankis priima sveikuosius skaičius nuo 0 iki 4294967295, o pagal numatymą naudoja 0.
Ar xxHash yra saugi?
Ne. xxHash sukurta siekiant greičio ir gero reikšmių pasiskirstymo, o ne apsaugos nuo užpuolikų. Kiekvienas gali sukurti kolizijų, todėl duomenų vientisumui ir apsaugai nuo klastojimo naudokite SHA-256 arba BLAKE3.
Ar turėčiau naudoti XXH3, ar XXH64?
XXH3 šiuolaikiniuose procesoriuose veikia greičiau, ypač apdorojant trumpas įvestis, todėl rekomenduojama rinktis jį naujam kodui. XXH64 vis dar dažnai naudojama esamuose formatuose, pavyzdžiui, Zstandard kadro kontrolinėje sumoje, kuriai naudojama dalis XXH64 reikšmės.
Kodėl mano biblioteka pateikia kitokią baitų tvarką?
Kai kurios bibliotekos pateikia ne skaičių, o neapdorotus mažųjų baitų tvarkos maišos baitus. Šis įrankis naudoja specifikacijoje xxHash apibrėžtą kanoninį didžiųjų baitų tvarkos formatą, atitinkantį xxhsum. Norėdami palyginti su mažųjų baitų tvarkos išrašu, sukeiskite baitų tvarką.
Kaip užkoduojamas tekstas?
Įvestis maišoma kaip tiksliai taip, kaip įvesta, užkoduotais UTF-8 baitais. Skirtingos eilučių pabaigos arba tarpai gale pateikia skirtingas maišos reikšmes.
Ar šiuo įrankiu galiu maišyti failus?
Ne, įrankis maišo tik įklijuotą tekstą. Failams įdiekite xxhsum ir paleiskite xxhsum -H0, -H1, -H3 arba -H2, kad gautumėte atitinkamai XXH32, XXH64, XXH3-64 ir XXH3-128 reikšmes.
Kiek teksto galiu apdoroti?
Vienai užklausai galima pateikti iki 5 MiB teksto. Visi variantai apskaičiuojami serveryje naudojant WebAssembly, o įvestis nesaugoma.