Quindi, leggendo questo articolo: link si dice che la memorizzazione del sale va bene in testo semplice perché rende il tabelle di ricerca / arcobaleno inefficaci. Lo capisco, ma perché non generare il sale dalla password inviata e quindi non memorizzarlo mai separatamente?
Qualcosa del genere:
<?php
$pass = '12345';
$salt = '';
// generate the salt somehow... probably not like this
$hash1 = hash('md2',$pass);
$hash2 = hash('md4',$pass);
for($i = 0; $i < strlen($hash1); $i += 2){
$salt .= $hash1{$i} | $hash2{$i};
}
// hash the results
$hashedPass = hash('bcrypt', $salt . $pass);