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

Генератор HMAC-SHA512

Создавайте тег HMAC-SHA512 на основе сообщения и секретного ключа. Инструмент кодирует их в UTF-8, применяет конструкцию HMAC из RFC 2104 с SHA-512 и возвращает результат длиной 512 бит в формате hex или Base64. Используйте его для проверки схем подписания API, например в некоторых API криптовалютных бирж и токенах HS512, а также для сравнения собственной реализации с надежным эталоном. Ключ не попадает в ответ.

Сбросить

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

Что такое HMAC-SHA512?

HMAC-SHA512 объединяет хеш SHA-512 с секретным ключом, используя конструкцию HMAC из RFC 2104. Он подтверждает, что сообщение отправлено тем, кто знает ключ, и не было изменено. Тег занимает 64 байта, или 128 hex-символа.

Каков известный тестовый вектор HMAC-SHA512?

В тестовом примере 2 из RFC 4231 используется ключ Jefe и сообщение what do ya want for nothing? Ожидаемый тег — 164b7a7bfcf819e2e395fbe73b56e0a387bd64222e831fd610270cd7ea2505549758bf75c05a994a6d034f65f8f0e6fdcaeab1a34d4a6b4b636e070a38bce737. Этот инструмент воспроизводит его.

Когда использовать HMAC-SHA512 вместо HMAC-SHA256?

Используйте его, если этого требует API или формат токена, например алгоритм HS512 в веб-токенах JSON. HMAC-SHA256 уже достаточно надежен, а SHA-512 в основном дает более длинный тег и часто работает быстрее на 64-битных машинах.

Как кодируются входные данные?

Сообщение и ключ обрабатываются как текст в UTF-8. Если провайдер передает секрет в формате Base64 или hex и его нужно сначала декодировать, результат здесь будет отличаться от результата провайдера.

Какой длины должен быть ключ?

Случайный ключ длиной 64 байта соответствует размеру выходных данных SHA-512 и подходит для этой цели. Ключи длиной более 128 байт сначала хешируются, а слишком короткие ключи ослабляют защиту.

Секретный ключ остается конфиденциальным?

Да. Ключ используется только в памяти для этого запроса и не включается в ответ. Он не записывается в журнал и не сохраняется.

Можно ли создать с помощью этого инструмента подпись JWT?

Частично. HS512 подписывает заголовок Base64URL, точку и полезную нагрузку Base64URL. Вставьте эту строку в качестве сообщения, выберите формат вывода Base64, замените + на -, / на _ и удалите символы заполнения =, чтобы получить часть подписи JWT.

Почему результат не совпадает?

Чаще всего причина в лишних пробелах или переносах строк в сообщении, в том, что ключ нужно было декодировать из hex или Base64, либо в сравнении hex с Base64. Проверьте каждый байт входных данных.

Можно ли усечь тег HMAC-SHA512?

Некоторые протоколы используют только начальную часть тега, например варианты HMAC-SHA512/256, предусмотренные некоторыми стандартами. Инструмент всегда возвращает полные 64 байта, поэтому, если этого требует ваш протокол, усеките тег самостоятельно.

Каково ограничение на размер входных данных?

Общий размер сообщения и ключа в одном запросе может достигать 5 MiB текста. Этого достаточно для тел запросов API, строк токенов и больших полезных нагрузок вебхуков.

О проекте OneClick Pro

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