Como criar e armazenar hashes de senha com o Blowfish em PHP

1) Como você cria hashes seguros de senhas do Blowfish com o crypt ()?

$hash = crypt('somePassword', '$2a$07$nGYCCmhrzjrgdcxjH

1a) Qual é o significado de "$ 2a"? Apenas indica que o algoritmo Blowfish deve ser usado?
1b) Qual é o significado de "$ 07"? Um valor mais alto implica um hash mais seguro?
1c) Qual é o significado de "$ nGYCCmhrzjrgdcxjH $3$quot;? É este o sal que será usado? Isso deve ser gerado aleatoriamente? Codificado?

2) Como você armazena hashes Blowfish?

echo $hash;
//Output: $2a$07$nGYCCmhrzjrgdcxjH$$.xLJMTJxaRa12DnhpAJmKQw.NXXZHgyq

2a) Que parte disso deve ser armazenada no banco de dados?
2b) Que tipo de dados deve ser usado para a coluna (MySQL)?

3) Como verificar uma tentativa de login?

);

1a) Qual é o significado de "$ 2a"? Apenas indica que o algoritmo Blowfish deve ser usado?
1b) Qual é o significado de "$ 07"? Um valor mais alto implica um hash mais seguro?
1c) Qual é o significado de "$ nGYCCmhrzjrgdcxjH $3$quot;? É este o sal que será usado? Isso deve ser gerado aleatoriamente? Codificado?

2) Como você armazena hashes Blowfish?

echo $hash;
//Output: $2a$07$nGYCCmhrzjrgdcxjH$$$$.xLJMTJxaRa12DnhpAJmKQw.NXXZHgyq

2a) Que parte disso deve ser armazenada no banco de dados?
2b) Que tipo de dados deve ser usado para a coluna (MySQL)?

3) Como verificar uma tentativa de login?

questionAnswers(2)

yourAnswerToTheQuestion