<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.password.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'es',
  ),
  'this' => 
  array (
    0 => 'password.constants.php',
    1 => 'Constantes predefinidas',
    2 => 'Constantes predefinidas',
  ),
  'up' => 
  array (
    0 => 'book.password.php',
    1 => 'Tabla de hachaje de contrase&ntilde;as',
  ),
  'prev' => 
  array (
    0 => 'password.installation.php',
    1 => 'Instalaci&oacute;n',
  ),
  'next' => 
  array (
    0 => 'ref.password.php',
    1 => 'Funciones de hashing de contrase&ntilde;as',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'es',
    'path' => 'reference/password/constants.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="password.constants" class="appendix">
 <h1 class="title">Constantes predefinidas</h1>

 <p class="simpara">Las constantes listadas aquí están
siempre disponibles en PHP.</p>

 <p class="para">
  <dl>
   
    <dt id="constant.password-bcrypt">
     <strong><code><a href="password.constants.php#constant.password-bcrypt">PASSWORD_BCRYPT</a></code></strong>
     (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
    </dt>
    <dd>
     <p class="para">
      La constante <strong><code><a href="password.constants.php#constant.password-bcrypt">PASSWORD_BCRYPT</a></code></strong> se utiliza para
      crear un nuevo hash de contraseña utilizando el algoritmo
      <strong><code><a href="string.constants.php#constant.crypt-blowfish">CRYPT_BLOWFISH</a></code></strong>.
     </p>
     <p class="para">
      Siempre ha devuelto el resultado del hash utilizando el formato
      crypt &quot;$2y$&quot;, que siempre será un string de 60 caracteres de longitud.
     </p>
     <p class="para">
      Opciones admitidas:
     </p>
     <ul class="itemizedlist">
      <li class="listitem">
       <p class="para">
        <code class="literal">salt</code> (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>) - permite proporcionar manualmente un salt a utilizar
        para el hash de la contraseña. Tenga en cuenta que esto sobrescribirá cualquier salt generado
        automáticamente.
       </p>
       <p class="para">
        Si se omite, un salt aleatorio será generado por la función
        <span class="function"><a href="function.password-hash.php" class="function">password_hash()</a></span> para cada contraseña hasheada.
        Este es el propósito de la operación y a partir de PHP 7.0.0 la opción salt ha sido desaconsejada.
       </p>
      </li>
      <li class="listitem">
       <p class="para">
        <code class="literal">cost</code> (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>) - el costo algorítmico a utilizar.
        Ejemplos de estos valores pueden encontrarse en la página
        de documentación de la función <span class="function"><a href="function.crypt.php" class="function">crypt()</a></span>.
       </p>
       <p class="para">
        Si se omite, se utilizará un valor por defecto de <code class="literal">12</code>.
        Es una buena base pero podría ser necesario aumentarlo según la arquitectura del hardware.
       </p>
      </li>
     </ul>
    </dd>
   
   
    <dt id="constant.password-bcrypt-default-cost">
     <strong><code><a href="password.constants.php#constant.password-bcrypt-default-cost">PASSWORD_BCRYPT_DEFAULT_COST</a></code></strong>
     (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
    </dt>
    <dd>
     <p class="para">
     </p>
     <p class="para">
     </p>
    </dd>
   
   
    <dt id="constant.password-argon2i">
     <strong><code><a href="password.constants.php#constant.password-argon2i">PASSWORD_ARGON2I</a></code></strong>
     (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
    </dt>
    <dd>
     <p class="para">
      <strong><code><a href="password.constants.php#constant.password-argon2i">PASSWORD_ARGON2I</a></code></strong> se utiliza para crear nuevos
      hashes de contraseña utilizando el algoritmo Argon2i.
     </p>
     <p class="para">
      Opciones admitidas:
     </p>
     <ul class="itemizedlist">
      <li class="listitem">
       <p class="para">
        <code class="literal">memory_cost</code> (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>) - Memoria máxima
        (en kibibytes) que puede ser utilizada para calcular el hash Argon2. Por defecto a
        <strong><code><a href="password.constants.php#constant.password-argon2-default-memory-cost">PASSWORD_ARGON2_DEFAULT_MEMORY_COST</a></code></strong>.
       </p>
      </li>
      <li class="listitem">
       <p class="para">
        <code class="literal">time_cost</code> (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>) - Tiempo máximo de
        duración que puede tomar calcular el hash Argon2. Por defecto a
        <strong><code><a href="password.constants.php#constant.password-argon2-default-time-cost">PASSWORD_ARGON2_DEFAULT_TIME_COST</a></code></strong>.
       </p>
      </li>
      <li class="listitem">
       <p class="para">
        <code class="literal">threads</code> (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>) - Número de hilos a
        utilizar para calcular el hash Argon2. Por defecto a
        <strong><code><a href="password.constants.php#constant.password-argon2-default-threads">PASSWORD_ARGON2_DEFAULT_THREADS</a></code></strong>.
        Solo disponible con libargon2, y no con la implementación libsodium.
       </p>
      </li>
     </ul>
     <p class="para">
      Disponible a partir de PHP 7.2.0.
     </p>
    </dd>
   
   
    <dt id="constant.password-argon2id">
     <strong><code><a href="password.constants.php#constant.password-argon2id">PASSWORD_ARGON2ID</a></code></strong>
     (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
    </dt>
    <dd>
     <p class="para">
      <strong><code><a href="password.constants.php#constant.password-argon2id">PASSWORD_ARGON2ID</a></code></strong> se utiliza para crear nuevos
      hashes de contraseña utilizando el algoritmo Argon2id. Admite las mismas opciones que
      <a href="password.constants.php#constant.password-argon2i" class="link"><strong><code><a href="password.constants.php#constant.password-argon2i">PASSWORD_ARGON2I</a></code></strong></a>.
     </p>
     <p class="para">
      Disponible a partir de PHP 7.3.0.
     </p>
    </dd>
   
   
    <dt id="constant.password-argon2-default-memory-cost">
     <strong><code><a href="password.constants.php#constant.password-argon2-default-memory-cost">PASSWORD_ARGON2_DEFAULT_MEMORY_COST</a></code></strong>
     (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
    </dt>
    <dd>
     <p class="para">
      Cantidad de memoria por defecto (en bytes) que será utilizada al
      intentar calcular un hash.
     </p>
     <p class="para">
      Disponible a partir de PHP 7.2.0.
     </p>
    </dd>
   
   
    <dt id="constant.password-argon2-default-time-cost">
     <strong><code><a href="password.constants.php#constant.password-argon2-default-time-cost">PASSWORD_ARGON2_DEFAULT_TIME_COST</a></code></strong>
     (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
    </dt>
    <dd>
     <p class="para">
      Tiempo por defecto que se tomará para intentar calcular
      un hash.
     </p>
     <p class="para">
      Disponible a partir de PHP 7.2.0.
     </p>
    </dd>
   
   
    <dt id="constant.password-argon2-default-threads">
     <strong><code><a href="password.constants.php#constant.password-argon2-default-threads">PASSWORD_ARGON2_DEFAULT_THREADS</a></code></strong>
     (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
    </dt>
    <dd>
     <p class="para">
      Número por defecto de hilos que Argon2lib utilizará.
      No disponible con la implementación libsodium.
     </p>
     <p class="para">
      Disponible a partir de PHP 7.2.0.
     </p>
    </dd>
   
   
    <dt id="constant.password-argon2-provider">
     <strong><code><a href="password.constants.php#constant.password-argon2-provider">PASSWORD_ARGON2_PROVIDER</a></code></strong>
     (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
    </dt>
    <dd>
     <p class="para">
     </p>
     <p class="para">
      Disponible a partir de PHP 7.4.0.
     </p>
    </dd>
   
   
    <dt id="constant.password-default">
     <strong><code><a href="password.constants.php#constant.password-default">PASSWORD_DEFAULT</a></code></strong>
     (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
    </dt>
    <dd>
     <p class="para">
      El algoritmo por defecto a utilizar para el hash si no se proporciona
      ningún algoritmo. Este valor puede cambiar en futuras versiones de PHP donde es probable
      que se admitan mejores algoritmos de hash.
     </p>
     <p class="para">
      Es importante tener en cuenta que con el tiempo, esta constante puede cambiar.
      Por lo tanto, es crucial ser consciente de que la longitud del hash resultante puede variar.
      Por consiguiente, al utilizar <strong><code><a href="password.constants.php#constant.password-default">PASSWORD_DEFAULT</a></code></strong>, el hash resultante
      debe almacenarse de una manera capaz de admitir hashes arbitrarios,
      la anchura recomendada es de <code class="literal">255</code> bytes.
     </p>
     <span class="simpara">
      Actualmente, es un alias de <strong><code><a href="password.constants.php#constant.password-bcrypt">PASSWORD_BCRYPT</a></code></strong>.
     </span>
    </dd>
   
  </dl>
 </p>

 <p class="formalpara">
  <h5 class="title">Historial de cambios</h5>
  <p class="para">
   <table class="doctable informaltable">
    
     <thead>
      <tr>
       <th>Versión</th>
       <th>Descripción</th>
      </tr>

     </thead>

     <tbody class="tbody">
      <tr>
       <td>7.4.0</td>
       <td>
        Los valores para las constantes <strong><code><a href="password.constants.php#constant.password-bcrypt">PASSWORD_BCRYPT</a></code></strong>,
        <strong><code><a href="password.constants.php#constant.password-argon2i">PASSWORD_ARGON2I</a></code></strong>, <strong><code><a href="password.constants.php#constant.password-argon2id">PASSWORD_ARGON2ID</a></code></strong>
        y <strong><code><a href="password.constants.php#constant.password-default">PASSWORD_DEFAULT</a></code></strong> ahora son <span class="type"><a href="language.types.string.php" class="type string">string</a></span>s.
        Anteriormente, eran <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>s.
       </td>
      </tr>

     </tbody>
    
   </table>

  </p>
 </p>
</div>
<?php manual_footer($setup); ?>