As constantes abaixo estão sempre disponíveis como parte do núcleo do PHP.
PASSWORD_BCRYPT
(string)
PASSWORD_BCRYPT
é usada para criar novos password
hashes usando o algoritmo CRYPT_BLOWFISH
.
Sempre terminará com um hash usando o formato "$2y$" de encriptação, com 60 caracteres.
Opções suportadas:
salt
(string) - para fornecer manualmente um salt a ser usado quando estiver sendo feito o hash do password.
Perceba que isso irá sobrepor e evitar que um salt seja gerado automaticamente.
Se omitido, um salt aleatório será gerado pela função password_hash() para cada password sofrendo hash. Esse é o modo de operação desejado e desde o PHP 7.0.0 a opção salt foi descontinuada.
cost
(int) - indica o custo de algoritmo que deve ser usado.
Exemplos desses valores podem ser encontrados na página da função crypt().
Se omitido, um valor padrão 10
será usado. Este é um bom
patamar de custo, mas pode-se considerar aumentar esse valor dependendo do hardware.
PASSWORD_ARGON2I
(string)
PASSWORD_ARGON2I
é utilizado para criar novos hashes
utilizando o algoritmo Argon2i.
Opções:
memory_cost
(int) - Memória máxima (em bytes) que poderá
ser utilizada para calcular o hash Argon2. Padrão: PASSWORD_ARGON2_DEFAULT_MEMORY_COST
.
time_cost
(int) - Tempo máximo que poderá
demorar para calcula o hash Argon2. Padrão: PASSWORD_ARGON2_DEFAULT_TIME_COST
.
threads
(int) - Número de threads utilizada para calcular
o hash Argon2. Padrão: PASSWORD_ARGON2_DEFAULT_THREADS
.
Somente disponível com libargon2, mas não na implementação libsodium.
Disponível desde o PHP 7.2.0.
PASSWORD_ARGON2ID
(string)
PASSWORD_ARGON2ID
é utilizado para criar novos hashes de
senha com o algoritmo Argon2id. Ele suporta as mesmas opções de
PASSWORD_ARGON2I
.
Disponível desde o PHP 7.3.0.
PASSWORD_ARGON2_DEFAULT_MEMORY_COST
(int)
Quantidade de memória padrão, em bytes, que será utilizado ao tentar calcular um hash.
Disponível desde o PHP 7.2.0.
PASSWORD_ARGON2_DEFAULT_TIME_COST
(int)
Quantidade de tempo padrão que será gasto tentando calcular um hash.
Disponível desde o PHP 7.2.0.
PASSWORD_ARGON2_DEFAULT_THREADS
(int)
Número de threads padrão qual a Argon2lib irá utilizar. Não disponível na implementação libsodium.
Disponível desde o PHP 7.2.0.
PASSWORD_DEFAULT
(mixed)
O algoritmo padrão a ser usado para fazer o hash se nenhum algoritmo for fornecido. Ele pode mudar com as novas versões do PHP quando novos e mais fortes algoritmos de hash forem suportados.
É importante notar que ao longo do tempo essa constante pode (e provavelmente vai)
mudar. Assim sendo, você deve estar ciente que o comprimento do hash resultante
pode mudar. Portanto, se usar PASSWORD_DEFAULT
deve-se armazenar o hash resultante de um modo que possa guardar mais do que 60
caracteres (255 é o comprimento recomendado).
Valores para esta constante:
PASSWORD_BCRYPT
Versão | Descrição |
---|---|
7.4.0 |
Os valores informados como IDs de algoritimo (PASSWORD_BCRYPT , PASSWORD_ARGON2I ,
PASSWORD_ARGON2ID e PASSWORD_DEFAULT ) agora são string.
Anteriormente eles eram int.
|