Предопределенные константы
Перечисленные ниже константы всегда доступны как часть ядра PHP.
-
PASSWORD_BCRYPT(string) -
PASSWORD_BCRYPTиспользуется для создания новых хешей паролей используя алгоритмCRYPT_BLOWFISH.Результат всегда представляет из себя хеш формата "$2y$" длиной 60 символов.
Поддерживаемые опции:
-
salt(string) - соль для использования при создании хеша пароля. Обратите внимание, что задание этой опции предотвращает автоматическую генерацию соли.Если не задано, то для каждого хешируемого пароля будет создана случайная соль с помощью функции password_hash(). Это является предпочтительным способом, а с PHP 7.0.0 опция salt объявлена устаревшей.
-
cost(int) - алгоритмическая стоимость, которую следует использовать. Примеры использования этого значения смотрите на странице описания функции crypt().Если не задано, то будет использовано значение
10. Это хорошая базовая стоимость, но вы всегда можете ее увеличить в зависимости от имеющихся в вашем распоряжении вычислительных ресурсов.
-
-
PASSWORD_ARGON2I(string) -
PASSWORD_ARGON2Iиспользуется для создания новых хешей паролей с помощью алгоритма Argon2i.Поддерживаемые опции:
-
memory_cost(int) - Максимальный размер памяти (в байтах), которую можно использовать для вычисления хеша Argon2. По умолчаниюPASSWORD_ARGON2_DEFAULT_MEMORY_COST. -
time_cost(int) - Максимально возможное время которое можно потратить для вычисления хеша Argon2. По умолчаниюPASSWORD_ARGON2_DEFAULT_TIME_COST. -
threads(int) - Количество потоков, которые можно использовать для вычисления хеша Argon2. По умолчаниюPASSWORD_ARGON2_DEFAULT_THREADS.
Доступно с PHP 7.2.0.
-
-
PASSWORD_ARGON2ID(string) -
PASSWORD_ARGON2IDиспользуется для создания хешей паролей с помощью алгоритма Argon2id. Поддерживаются те же опции, что и дляPASSWORD_ARGON2I.Доступно с PHP 7.3.0.
-
PASSWORD_ARGON2_DEFAULT_MEMORY_COST(тип int) -
Количество памяти по умолчанию (в байтах), которую может использовать библиотека Argon2lib для вычисления хеша.
Доступно с PHP 7.2.0.
-
PASSWORD_ARGON2_DEFAULT_TIME_COST(int) -
Ограничение времени по умолчанию на генерацию хеша библиотекой Argon2lib.
Доступно с PHP 7.2.0.
-
PASSWORD_ARGON2_DEFAULT_THREADS(int) -
Количество потоков по умолчанию для библиотеки Argon2lib.
Доступно с PHP 7.2.0.
-
PASSWORD_DEFAULT(mixed) -
Алгоритм хеширования по умолчанию, если не задан принудительно. Может быть изменен в более новых версиях PHP на более надежный алгоритм.
Стоит отметить, что со временем эта константа может (и, вероятно, так и будет) измениться. Так что имейте в виду, что длина полученного хеша может измениться. Помните, что если вы используете
PASSWORD_DEFAULT, то предусмотрите для хранения хешей больше чем 60 символов (рекомендуется 255).Значения для этой константы:
-
PHP 5.5.0 -
PASSWORD_BCRYPT
-
PHP 5.5.0 -
Список изменений
| Версия | Описание |
|---|---|
| 7.4.0 |
Значения идентификаторов алгоритма пароля (PASSWORD_BCRYPT, PASSWORD_ARGON2I,
PASSWORD_ARGON2ID и PASSWORD_DEFAULT) теперь являются строками (string).
Ранее они были числами (int).
|