Перейти к содержимому

Генератор xxHash

Вычисляйте контрольные суммы xxHash для любого текста с помощью XXH32, XXH64, XXH3-64 и XXH3-128 в одном окне или выберите один вариант. Инструмент кодирует ввод в UTF-8, применяет необязательное 32-битное начальное значение и возвращает дайджест в каноническом шестнадцатеричном формате, используемом xxhsum. Он помогает разработчикам проверять ключи кэша, начальные значения хеш-таблиц и конвейеры обработки данных, использующие эту чрезвычайно быструю некриптографическую хеш-функцию.

Сбросить

Часто задаваемые вопросы

Что такое xxHash?

xxHash — семейство очень быстрых некриптографических хеш-функций, созданное Yann Collet. XXH32 и XXH64 — классические варианты, а XXH3 — более новая разработка с 64-битным и 128-битным выходом. Функция используется в инструментах сжатия, базах данных и игровых движках.

Какие варианты вычисляет инструмент?

Инструмент вычисляет XXH32, XXH64, XXH3-64 и XXH3-128. Если выбраны все варианты, результаты отображаются вместе; в противном случае показывается только выбранный. Каждое значение выводится в шестнадцатеричном формате с порядком байтов от старшего к младшему, как в xxhsum.

Каковы контрольные значения для пустого ввода и abc?

При начальном значении 0 для пустого ввода получаются: 02cc5d05 для XXH32, ef46db3751d8e999 для XXH64, 2d06800538d394c2 для XXH3-64 и 99aa06d3014798d86001c324468d497f для XXH3-128. Для abc значения такие: 32d153ff, 44bc2cf5ad770999, 78af5f94892f3950 и 06b05ab6733a618578af5f94892f3950.

Для чего нужно начальное значение?

Начальное значение меняет исходное состояние, поэтому один и тот же текст дает разные хеши при разных значениях. Используйте его, чтобы получить результат, совпадающий с системой, которая хеширует данные с известным начальным значением. Инструмент принимает целые числа от 0 до 4294967295; по умолчанию используется 0.

Безопасен ли xxHash?

Нет. xxHash создан для высокой скорости и хорошего распределения, а не для защиты от злоумышленников. Любой может создать коллизии, поэтому для защиты целостности от подмены используйте SHA-256 или BLAKE3.

Что выбрать: XXH3 или XXH64?

XXH3 работает быстрее на современных процессорах, особенно с короткими входными данными, и рекомендуется для нового кода. XXH64 по-прежнему широко используется в существующих форматах, например в контрольной сумме кадра Zstandard, для которой берется часть значения XXH64.

Почему моя библиотека выводит байты в другом порядке?

Некоторые библиотеки выводят необработанные байты хеша в порядке от младшего к старшему вместо числа. Этот инструмент использует каноническое представление с порядком от старшего к младшему из спецификации xxHash, совпадающее с выводом xxhsum. Чтобы сравнить его с дампом в порядке от младшего к старшему, поменяйте порядок байтов.

Как кодируется текст?

Ввод хешируется как байты UTF-8 точно в том виде, в каком он был введен. Разные окончания строк и пробелы в конце дают разные хеши.

Можно ли хешировать файлы этим инструментом?

Нет, инструмент хеширует только вставленный текст. Для работы с файлами установите xxhsum и выполните xxhsum -H0, -H1, -H3 или -H2 для XXH32, XXH64, XXH3-64 и XXH3-128 соответственно.

Какой объем текста можно хешировать?

До 5 MiB текста на запрос. Все варианты вычисляются на сервере с помощью WebAssembly, а введенные данные не сохраняются.

О проекте OneClick Pro

OneClick Pro — это бесплатная коллекция из более чем 150 веб-инструментов для повседневных задач: преобразования изображений и единиц измерения, форматирования и проверки кода, проверки доменов и SEO, а также работы с текстом, датами и числами. Все инструменты доступны без регистрации и подписки, а введенные вами данные используются только для расчета результата и никогда не сохраняются. Используйте коллекцию как быстрый набор инструментов для разовых задач или добавьте в закладки те, которыми пользуетесь каждый день.