openssl_random_pseudo_bytes
(PHP 5 >= 5.3.0, PHP 7)
openssl_random_pseudo_bytes — Генерирует псевдослучайную последовательность байт
Описание
$length
, bool &$crypto_strong
= ?
) : string|false
Генерирует строку псевдослучайных байт длиной length
.
Также, если задать необязательный параметр crypto_strong
,
который передается по ссылке, то в него запишется true
или false
, в зависимости от
того, был ли использован криптографически сильный алгоритм.
Список параметров
-
length
-
Длина генерируемой строки. Положительное целое число.
-
crypto_strong
-
Если задано, то в переданную переменную будет записано
true
илиfalse
, в зависимости от того, был ли использован криптографически сильный алгоритм.
Возвращаемые значения
Возвращает строку случайных байт или false
в случае возникновения ошибки.
Примеры
Пример #1 Пример использования openssl_random_pseudo_bytes()
<?php
for ($i = 1; $i <= 4; $i++) {
$bytes = openssl_random_pseudo_bytes($i, $cstrong);
$hex = bin2hex($bytes);
echo "Lengths: Bytes: $i and Hex: " . strlen($hex) . PHP_EOL;
var_dump($hex);
var_dump($cstrong);
echo PHP_EOL;
}
?>
Результатом выполнения данного примера будет что-то подобное:
Lengths: Bytes: 1 and Hex: 2 string(2) "42" bool(true) Lengths: Bytes: 2 and Hex: 4 string(4) "dc6e" bool(true) Lengths: Bytes: 3 and Hex: 6 string(6) "288591" bool(true) Lengths: Bytes: 4 and Hex: 8 string(8) "ab86d144" bool(true)
Смотрите также
- random_bytes() - Генерирует криптографически безопасные псевдослучайные байты
- bin2hex() - Преобразует бинарные данные в шестнадцатеричное представление
- crypt() - Необратимое хеширование строки
- mt_rand() - Генерирует случайное значение методом с помощью генератора простых чисел на базе Вихря Мерсенна
- uniqid() - Сгенерировать уникальный ID