Функции хэширования используются для вычисления хэш-кодов строки, которые представляют собой уникальные фиксированной длины значения, генерируемые на основе входных данных.
hash.of
Вычисляет хэш строки с использованием указанного алгоритма.
Сигнатура: hash.of(text: string, algo: string = "md5", binary: bool = false) -> string
Аргументы:
text
— строка для хэширования.algo
— название алгоритма хэширования (по умолчанию md5
).binary
— если true
, возвращает результат в виде двоичных данных. Если false
(по умолчанию), результат будет в шестнадцатеричной кодировке.Результат: Возвращает строку с вычисленным хэш-кодом:
binary
установлено в false
.binary
установлено в true
.Допустимые значения алгоритмов:
md2
, md4
, md5
, sha1
, sha224
, sha256
, sha384
, sha512/224
, sha512/256
, sha512
,
sha3-224
, sha3-256
, sha3-384
, sha3-512
, ripemd128
, ripemd160
, ripemd256
, ripemd320
,
whirlpool
, tiger128,3
, tiger160,3
, tiger192,3
, tiger128,4
, tiger160,4
, tiger192,4
,
snefru
, snefru256
, gost
, gost-crypto
, adler32
, crc32
, crc32b
, crc32c
,
fnv132
, fnv1a32
, fnv164
, fnv1a64
, joaat
, murmur3a
, murmur3c
, murmur3f
,
xxh32
, xxh64
, xxh3
, xxh128
, haval128,3
, haval160,3
, haval192,3
, haval224,3
,
haval256,3
, haval128,4
, haval160,4
, haval192,4
, haval224,4
, haval256,4
,
haval128,5
, haval160,5
, haval192,5
, haval224,5
, haval256,5
.
Примечание: Если параметр binary
= true
, то возвращаемое значение не рекомендуется использовать в сообщениях, чтобы избежать сбоев.
Пример использования:
// Хэширование строки с использованием алгоритма по умолчанию (md5)
$hash = hash.of("Наглый коричневый лисёнок прыгает вокруг ленивой собаки.")
// $hash будет содержать "bff8b4bc8b5c1c1d5b3211dfb21d1e76"
// Хэширование строки с использованием алгоритма ripemd160
$hash = hash.of("Наглый коричневый лисёнок прыгает вокруг ленивой собаки.", "ripemd160")
// $hash будет содержать "8817ca339f7f902ad3fb456150a1bb9b4cb5dde9"
// Хэширование строки с выводом бинарного результата
$hash = hash.of("Наглый коричневый лисёнок прыгает вокруг ленивой собаки.", "sha256", true)
// $hash будет содержать бинарную строку (содержащую неотображаемые символы)