Thanks to visit codestin.com
Credit goes to www.php.net

update page now
Longhorn PHP 2026 - Call For Papers

openssl_password_hash

(PHP 8 >= 8.4.0)

openssl_password_hashСоздаёт хеш пароля при помощи Argon2 из OpenSSL

Описание

openssl_password_hash(string $algo, string $password, array $options = []): string

Создаёт хеш пароля при помощи реализации Argon2 из OpenSSL. Это альтернатива функции password_hash(), в которой движком выступает OpenSSL, что в некоторых системах позволяет использовать аппаратное ускорение.

Функция доступна только тогда, когда PHP скомпилирован с поддержкой OpenSSL, которая включает Argon2 (HAVE_OPENSSL_ARGON2).

Список параметров

algo

Алгоритм хеширования пароля. Поддерживаемые значения: "argon2id" и "argon2i".

password

Пароль пользователя.

options

Ассоциативный массив (array) опций. Поддерживаемые ключи:

  • memory_cost — максимальный объём памяти (в КиБ), который разрешается использовать для вычисления хеша
  • time_cost — максимальное время, которое разрешается потратить на вычисление хеша
  • threads — количество потоков, которые задействуются при вычислении хеша

Возвращаемые значения

Возвращает хеш пароля в виде строки (string).

Ошибки

Выбрасывает исключение ValueError, если значение параметра algo не входит в список поддерживаемых ("argon2i" или "argon2id").

Выбрасывает исключение Error, если операция хеширования завершается ошибкой по неизвестной причине.

Список изменений

Версия Описание
8.4.0 Функция добавлена.

Примеры

Пример #1 Пример использования функции openssl_password_hash()

<?php
$hash
= openssl_password_hash('argon2id', 'my-secret-password');
echo
$hash;
?>

Вывод приведённого примера будет похож на:

$argon2id$v=19$m=65536,t=4,p=1$c29tZXNhbHR2YWx1ZQ$hashvalue...

Пример #2 Использование функции openssl_password_hash() с пользовательскими опциями

<?php
$hash
= openssl_password_hash('argon2id', 'my-secret-password', [
'memory_cost' => 65536,
'time_cost' => 4,
'threads' => 1,
]);
?>

Смотрите также

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top