O javadoc do bCrypt possui este código para saber como criptografar uma senha:
String pw_hash = BCrypt.hashpw(plain_password, BCrypt.gensalt());
Para verificar se uma senha de texto sem formatação corresponde a uma senha que foi hash anteriormente, use o método checkpw:
if (BCrypt.checkpw(candidate_password, stored_hash))
System.out.println("It matches");
else
System.out.println("It does not match");
Esses trechos de código implicam para mim que o sal gerado aleatoriamente é jogado fora. É esse o caso ou é apenas um trecho de código enganoso?