(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_hmac — Генерирует хеш-код на основе ключа через метод HMAC
algo
Название алгоритма хеширования (например, "sha256"
).
Список алгоритмов, которые поддерживает функция, приводит описание функции hash_hmac_algos().
Замечание:
Некриптографические хеш-функции не допускаются.
data
Сообщение для хеширования.
key
Общий секретный ключ, используемый для генерации HMAC хеш-кода.
binary
Функция выводит необработанные двоичные данные, если для параметра установили значение true
. При значении false
функция выводит данные в шестнадцатеричной кодировке в нижнем регистре.
Функция возвращает строку, которая содержит вычисленный хеш-код в шестнадцатеричной кодировке
в нижнем регистре. Функция возвращает хеш-код в виде бинарных данных,
если для параметра binary
установили значение true
.
Функция выбрасывает исключение ValueError, если параметр algo
неизвестен или не криптографическая хеш-функция.
Версия | Описание |
---|---|
8.0.0 |
Теперь функция выбрасывает исключение ValueError,
если алгоритм algo неизвестен или не криптографическая хеш-функция;
раньше вместо этого возвращалось значение false .
|
7.2.0 | Запретили некриптографические хеш-функции (adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat). |
Пример #1 Пример использования функции hash_hmac()
<?php
echo hash_hmac('sha256', 'Наглый коричневый лисёнок прыгает вокруг ленивой собаки.', 'secret');
?>
Результат выполнения приведённого примера:
bc83c8fabc807cabbbb087bf90c760888349b223b5ba0a35251f7b37b05bf9c9