Hash de contraseñas
PHP Manual

Constantes predefinidas

Estas constantes están disponibles siempre ya que forman parte del núcleo de PHP.

PASSWORD_BCRYPT (integer)

PASSWORD_BCRYPT se utiliza para crear nuevos hash de contraseñas empleando el algoritmo CRYPT_BLOWFISH.

Siempre resultará en un hash que utiliza el formato criptgráfico "$2y$", el cual siempre tiene un ancho de 60.

Opciones admitidas:

  • salt - para proporcionar manualmente una sal cuando se realiza el hash de la contraseña. Observe que esto sobrescribirá, previniendo así que se genere una sal automáticamente.

    Si se omite, se generará una sal aleatoria mediante password_hash() para cada contraseña con hash. Este es el modo de operación previsto.

  • cost - el cual denota el coste algorítmico que debería utilizarse. Se pueden encontrar ejemplos de estos valores en la págnia de crypt().

    Si se omite, se usará un valor predeterminado de 10. Este es un buen coste base, aunque se podría considerar aumentarlo dependiendo del hardware utilizado.

PASSWORD_DEFAULT (integer)

El algoritmo que se utilizará por defecto si no se especifica otro distinto. Esto puede cambiar en versiones futuras de PHP, cuando métodos más nuevos y fuertes de hashing estén disponibles.

Cabe señalar que con el tiempo esta constante puede (y probablemente lo hará) cambiar. Por tanto, se debería considerar que la longitud del hash resultante puede cambiar. Así, si se emplea PASSWORD_DEFAULT se debería almacenar el hash resultante de forma que se pueda almacenar más de 60 caracteres (255 es el ancho recomendado).

Valores para esta constante:

  • PHP 5.5.0 - PASSWORD_BCRYPT


Hash de contraseñas
PHP Manual