1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-26 00:32:15 +01:00
Files
archived-doc-ru/reference/password/constants.xml

260 lines
9.4 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: c6532951edb85836f2d49a3c81f8f5e1e41d3554 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<appendix xml:id="password.constants" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.constants;
&extension.constants.core;
<para>
<variablelist>
<varlistentry xml:id="constant.password-bcrypt">
<term>
<constant>PASSWORD_BCRYPT</constant>
(<type>string</type>)
</term>
<listitem>
<para>
<constant>PASSWORD_BCRYPT</constant> используется для создания новых
хешей паролей используя алгоритм <constant>CRYPT_BLOWFISH</constant>.
</para>
<para>
Результат всегда представляет из себя хеш формата "$2y$" длиной 60 символов.
</para>
<para>
Поддерживаемые опции:
</para>
<itemizedlist>
<listitem>
<para>
<literal>salt</literal> (<type>string</type>) - соль для использования при создании хеша пароля.
Обратите внимание, что задание этой опции предотвращает автоматическую
генерацию соли.
</para>
<para>
Если не задано, то для каждого хешируемого пароля будет создана случайная соль
с помощью функции <function>password_hash</function>. Это является
предпочтительным способом, а с PHP 7.0.0 опция salt объявлена
устаревшей.
</para>
</listitem>
<listitem>
<para>
<literal>cost</literal> (<type>int</type>) - алгоритмическая стоимость, которую следует использовать.
Примеры использования этого значения смотрите на странице описания
функции <function>crypt</function>.
</para>
<para>
Если не задано, то будет использовано значение <literal>10</literal>.
Это хорошая базовая стоимость, но вы всегда можете её увеличить в зависимости от
имеющихся в вашем распоряжении вычислительных ресурсов.
</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-bcrypt-default-cost">
<term>
<constant>PASSWORD_BCRYPT_DEFAULT_COST</constant>
(<type>int</type>)
</term>
<listitem>
<para>
</para>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-argon2i">
<term>
<constant>PASSWORD_ARGON2I</constant>
(<type>string</type>)
</term>
<listitem>
<para>
<constant>PASSWORD_ARGON2I</constant> используется для создания новых хешей
паролей с помощью алгоритма Argon2i.
</para>
<para>
Поддерживаемые опции:
</para>
<itemizedlist>
<listitem>
<para>
<literal>memory_cost</literal> (<type>int</type>) - Максимальный размер
памяти (в кибибайтах), которую можно использовать для вычисления хеша Argon2.
По умолчанию <constant>PASSWORD_ARGON2_DEFAULT_MEMORY_COST</constant>.
</para>
</listitem>
<listitem>
<para>
<literal>time_cost</literal> (<type>int</type>) - Максимально возможное время
которое можно потратить для вычисления хеша Argon2.
По умолчанию <constant>PASSWORD_ARGON2_DEFAULT_TIME_COST</constant>.
</para>
</listitem>
<listitem>
<para>
<literal>threads</literal> (<type>int</type>) - Количество потоков, которые
можно использовать для вычисления хеша Argon2.
По умолчанию <constant>PASSWORD_ARGON2_DEFAULT_THREADS</constant>.
Доступно только с libargon2, но не с реализацией libsodium.
</para>
</listitem>
</itemizedlist>
<para>
Доступно с PHP 7.2.0.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-argon2id">
<term>
<constant>PASSWORD_ARGON2ID</constant>
(<type>string</type>)
</term>
<listitem>
<para>
<constant>PASSWORD_ARGON2ID</constant> используется для создания хешей паролей
с помощью алгоритма Argon2id. Поддерживаются те же опции, что и для
<link linkend="constant.password-argon2i"><constant>PASSWORD_ARGON2I</constant></link>.
</para>
<para>
Доступно с PHP 7.3.0.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-argon2-default-memory-cost">
<term>
<constant>PASSWORD_ARGON2_DEFAULT_MEMORY_COST</constant>
(тип <type>int</type>)
</term>
<listitem>
<para>
Объем памяти в байтах по умолчанию, который будет использоваться при попытке
вычислить хеш.
</para>
<para>
Доступно с PHP 7.2.0.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-argon2-default-time-cost">
<term>
<constant>PASSWORD_ARGON2_DEFAULT_TIME_COST</constant>
(<type>int</type>)
</term>
<listitem>
<para>
Ограничение времени по умолчанию на вычисление хеша.
</para>
<para>
Доступно с PHP 7.2.0.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-argon2-default-threads">
<term>
<constant>PASSWORD_ARGON2_DEFAULT_THREADS</constant>
(<type>int</type>)
</term>
<listitem>
<para>
Количество потоков по умолчанию для библиотеки Argon2lib.
Недоступно с реализацией libsodium.
</para>
<para>
Доступно с PHP 7.2.0.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-argon2-provider">
<term>
<constant>PASSWORD_ARGON2_PROVIDER</constant>
(<type>string</type>)
</term>
<listitem>
<para>
</para>
<para>
Доступна с PHP 7.4.0.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.password-default">
<term>
<constant>PASSWORD_DEFAULT</constant>
(<type>mixed</type>)
</term>
<listitem>
<para>
Алгоритм хеширования по умолчанию, если не задан принудительно.
Может быть изменён в более новых версиях PHP на более надёжный алгоритм.
</para>
<para>
Стоит отметить, что со временем эта константа может (и, вероятно, так и будет)
измениться. Так что имейте в виду, что длина полученного хеша может измениться.
Помните, что если вы используете <constant>PASSWORD_DEFAULT</constant>,
то предусмотрите для хранения хешей больше чем 60 символов (рекомендуется 255).
</para>
<para>
Значения для этой константы:
</para>
<itemizedlist>
<listitem>
<simpara>
PHP 5.5.0 - <constant>PASSWORD_BCRYPT</constant>
</simpara>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
</variablelist>
</para>
<formalpara>
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>7.4.0</entry>
<entry>
Значения идентификаторов алгоритма пароля (<constant>PASSWORD_BCRYPT</constant>, <constant>PASSWORD_ARGON2I</constant>,
<constant>PASSWORD_ARGON2ID</constant> и <constant>PASSWORD_DEFAULT</constant>) теперь являются строками (&string;).
Ранее они были числами (&integer;).
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</formalpara>
</appendix>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->