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

contributors($setup);

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

 <p class="simpara">Estas constantes son definidas por esta
extensión, y solo están disponibles si esta extensión ha sido compilada con
PHP, o bien cargada en tiempo de ejecución.</p>

 <p class="simpara">
  La extensión Xpass proporciona diversos conjuntos de constantes.
  Métodos de hash (<strong><code><a href="xpass.constants.php#constant.crypt-prefix-std-des">CRYPT_PREFIX_<span class="replaceable">*</span></a></code></strong>) para el
  parámetro prefix de <span class="function"><a href="function.crypt-gensalt.php" class="function">crypt_gensalt()</a></span>.
  Códigos de error (<strong><code><a href="xpass.constants.php#constant.crypt-salt-ok">CRYPT_SALT_<span class="replaceable">*</span></a></code></strong>) devueltos por
  <span class="function"><a href="function.crypt-checksalt.php" class="function">crypt_checksalt()</a></span>.
  Algoritmos de contraseña (<strong><code><a href="password.constants.php#constant.password-bcrypt">PASSWORD_<span class="replaceable">*</span></a></code></strong>) para el
  parámetro algo de <span class="function"><a href="function.password-hash.php" class="function">password_hash()</a></span>.
 </p>

 <dl id="xpass.constants.algo">
  <strong class="title">Métodos de hash</strong>
  
   <dt id="constant.crypt-prefix-std-des">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-std-des">CRYPT_PREFIX_STD_DES</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     El método de hash original de Unix V7, basado en el cifrado por bloques DES.
     Dado que DES es poco costoso en el hardware moderno,
     solo hay <code class="literal">4096</code> salts posibles y 2**56 contraseñas distintas,
     que se truncan a 8 caracteres,
     es posible encontrar cualquier contraseña hasheada con este método.
     No debería usarse excepto para soportar sistemas operativos antiguos
     que no soportan ningún otro algoritmo de generación de hash, debido a la debilidad de los hashes DES.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-ext-des">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-ext-des">CRYPT_PREFIX_EXT_DES</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Una extensión del DES tradicional, que elimina el límite de longitud,
     aumenta el tamaño del salt y hace el costo temporal ajustable.
     Proviene de BSDI BSD/OS y también está disponible en al menos NetBSD,
     OpenBSD y FreeBSD debido al uso de la biblioteca FreeSec de David Burren.
     Es mucho mejor que los hashes DES tradicionales y bigcrypt,
     pero aún no debería usarse para nuevos hashes.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-md5">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-md5">CRYPT_PREFIX_MD5</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Un hash basado en el algoritmo MD5, desarrollado originalmente por Poul-Henning Kamp para FreeBSD.
     Soportado en la mayoría de los Unix libres y versiones más recientes de Solaris.
     No tan débil como los hashes basados en DES,
     pero MD5 es tan poco costoso en el hardware moderno que no debería usarse para nuevos hashes.
     El costo de procesamiento no es ajustable.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-blowfish">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-blowfish">CRYPT_PREFIX_BLOWFISH</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Un hash basado en el cifrado por bloques Blowfish, modificado para tener un calendario de claves extra-costoso.
     Desarrollado originalmente por Niels Provos y David Mazieres para OpenBSD y también soportado en versiones recientes
     de FreeBSD y NetBSD, en Solaris 10 y más reciente, y en varias distribuciones GNU/*/Linux.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-sha256">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-sha256">CRYPT_PREFIX_SHA256</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Un hash basado en SHA-2 con una salida de 256 bits, desarrollado originalmente por Ulrich Drepper para GNU libc.
     Soportado en Linux pero no común en otros lugares.
     Aceptable para nuevos hashes.
     El parámetro de costo de procesamiento por defecto es <code class="literal">5000</code>,
     lo cual es demasiado bajo para el hardware moderno.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-sha512">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-sha512">CRYPT_PREFIX_SHA512</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Un hash basado en SHA-2 con una salida de 512 bits, desarrollado originalmente por Ulrich Drepper para GNU libc.
     Soportado en Linux pero no común en otros lugares.
     Aceptable para nuevos hashes.
     El parámetro de costo de procesamiento por defecto es <code class="literal">5000</code>,
     lo cual es demasiado bajo para el hardware moderno.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-scrypt">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-scrypt">CRYPT_PREFIX_SCRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Scrypt es una función de derivación de clave basada en contraseña creada por Colin Percival,
     originalmente para el servicio de respaldo en línea Tarsnap.
     El algoritmo fue diseñado específicamente para hacer costosas las ataques de hardware
     personalizados a gran escala al requerir grandes cantidades de memoria.
     En 2016, el algoritmo scrypt fue publicado por el IETF como RFC 7914.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-gost-yescrypt">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-gost-yescrypt">CRYPT_PREFIX_GOST_YESCRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Gost-yescrypt usa la salida de yescrypt como mensaje de entrada para HMAC con
     la función de hash GOST R 34.11-2012 (Streebog) con un resumen de 256 bits.
     Así, las propiedades criptográficas de yescrypt son suplantadas por las de la función de hash GOST.
     Este método de hash es útil en aplicaciones que requieren un hash de contraseña moderno,
     pero deben basarse en algoritmos GOST.
     La función de hash GOST R 34.11-2012 (Streebog) fue publicada por el IETF como RFC 6986.
     Aceptable para nuevos hashes si es necesario.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-yescrypt">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-yescrypt">CRYPT_PREFIX_YESCRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Yescrypt es un esquema de hash de contraseña escalable diseñado por Solar Designer,
     que se basa en el scrypt de Colin Percival.
     Aunque la fuerza de yescrypt contra los ataques de adivinación de contraseñas proviene de su diseño de algoritmo,
     su seguridad criptográfica está garantizada por su uso de SHA-256 en la capa externa.
     La función de hash SHA-256 fue publicada por el NIST en el FIPS PUB 180-2
     (y sus revisiones posteriores como el FIPS PUB 180-4) y por el IETF como RFC 4634
     (y posteriormente RFC 6234).
     Recomendado para nuevos hashes.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-sm3crypt">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-sm3crypt">CRYPT_PREFIX_SM3CRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Un hash basado en la función de hash ShangMi 3 con una salida de 256 bits,
     que usa el mismo diseño que sha256crypt y/o sha512crypt.
     Soportado en EulerOS, Kylin, openEuler y openKylin, pero no es común
     en otros lugares. Aceptable para nuevos hashes si es necesario. El parámetro
     de costo de procesamiento por defecto es 5000, lo cual es demasiado bajo para el hardware moderno.
    </span>
    <span class="simpara">
     Disponible a partir de 1.2.0 con libcxcrypt &gt;= 4.5.0.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-prefix-sm3-yescrypt">
    <strong><code><a href="xpass.constants.php#constant.crypt-prefix-sm3-yescrypt">CRYPT_PREFIX_SM3_YESCRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Sm3-yescrypt usa la salida de yescrypt como mensaje de entrada para HMAC
     con la función de hash ShangMi 3 con un resumen de 256 bits. Así, las propiedades
     criptográficas de yescrypt son suplantadas por las de la función de hash ShangMi 3.
     Este método de hash es útil en aplicaciones que necesitan un hash de contraseña moderno,
     pero deben basarse en algoritmos aprobados por la Oficina de Administración de
     Criptografía Comercial del Estado de China (OSCCA). La función de hash ShangMi 3
     ha sido publicada en la Parte 3: &quot;Dedicated hash-functions&quot; de la ISO/IEC 10118-3:2018.
     Aceptable para nuevos hashes si es necesario.
    </span>
    <span class="simpara">
     Disponible a partir de 1.2.0 con libcxcrypt &gt;= 4.5.0.
    </span>
   </dd>
  
 </dl>

 <dl id="xpass.constants.error">
  <strong class="title">Códigos de error</strong>
  
   <dt id="constant.crypt-salt-ok">
    <strong><code><a href="xpass.constants.php#constant.crypt-salt-ok">CRYPT_SALT_OK</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     No hay error.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-salt-invalid">
    <strong><code><a href="xpass.constants.php#constant.crypt-salt-invalid">CRYPT_SALT_INVALID</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     Método de hash desconocido o parámetros inválidos.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-salt-method-disabled">
    <strong><code><a href="xpass.constants.php#constant.crypt-salt-method-disabled">CRYPT_SALT_METHOD_DISABLED</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     El método de hash ya no está permitido para ser usado.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-salt-method-legacy">
    <strong><code><a href="xpass.constants.php#constant.crypt-salt-method-legacy">CRYPT_SALT_METHOD_LEGACY</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     El método de hash ya no se considera lo suficientemente fuerte.
    </span>
   </dd>
  
  
   <dt id="constant.crypt-salt-too-cheap">
    <strong><code><a href="xpass.constants.php#constant.crypt-salt-too-cheap">CRYPT_SALT_TOO_CHEAP</a></code></strong>
    (<span class="type"><a href="language.types.integer.php" class="type int">int</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     El costo de los parámetros se considera demasiado bajo.
    </span>
   </dd>
  
 </dl>

 <dl id="xpass.constants.password">
  <strong class="title">Algoritmos de contraseña</strong>
  
   <dt id="constant.password-sha512">
    <strong><code><a href="xpass.constants.php#constant.password-sha512">PASSWORD_SHA512</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     <strong><code><a href="xpass.constants.php#constant.password-sha512">PASSWORD_SHA512</a></code></strong> se usa para crear nuevos hashes
     de contraseña usando el algoritmo <strong><code><a href="xpass.constants.php#constant.crypt-prefix-sha512">CRYPT_PREFIX_SHA512</a></code></strong>.
    </span>
   </dd>
  
  
   <dt id="constant.password-yescrypt">
    <strong><code><a href="xpass.constants.php#constant.password-yescrypt">PASSWORD_YESCRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     <strong><code><a href="xpass.constants.php#constant.password-yescrypt">PASSWORD_YESCRYPT</a></code></strong> se usa para crear nuevos hashes
     de contraseña usando el algoritmo <strong><code><a href="xpass.constants.php#constant.crypt-prefix-yescrypt">CRYPT_PREFIX_YESCRYPT</a></code></strong>.
    </span>
   </dd>
  
  
   <dt id="constant.password-sm3crypt">
    <strong><code><a href="xpass.constants.php#constant.password-sm3crypt">PASSWORD_SM3CRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     <strong><code><a href="xpass.constants.php#constant.password-sm3crypt">PASSWORD_SM3CRYPT</a></code></strong> se usa para crear nuevos hashes
     de contraseña usando el algoritmo <strong><code><a href="xpass.constants.php#constant.crypt-prefix-sm3crypt">CRYPT_PREFIX_SM3CRYPT</a></code></strong>.
    </span>
    <span class="simpara">
     Disponible a partir de 1.2.0 con libcxcrypt &gt;= 4.5.0.
    </span>
   </dd>
  
  
   <dt id="constant.password-sm3-yescrypt">
    <strong><code><a href="xpass.constants.php#constant.password-sm3-yescrypt">PASSWORD_SM3_YESCRYPT</a></code></strong>
    (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)
   </dt>
   <dd>
    <span class="simpara">
     <strong><code><a href="xpass.constants.php#constant.password-sm3-yescrypt">PASSWORD_SM3_YESCRYPT</a></code></strong> se usa para crear nuevos hashes
     de contraseña usando el algoritmo <strong><code><a href="xpass.constants.php#constant.crypt-prefix-sm3-yescrypt">CRYPT_PREFIX_SM3_YESCRYPT</a></code></strong>.
    </span>
    <span class="simpara">
     Disponible a partir de 1.2.0 con libcxcrypt &gt;= 4.5.0.
    </span>
   </dd>
  
 </dl>
</div>
<?php manual_footer($setup); ?>