プロジェクトに取り組んでおり、パスワードの保存を最初から安全に保つことに熱心です。構想段階ですが、大体こんな感じで使いたいと思います。
class Crypto {
public function hash1($string, $salt) {
return hash('sha512', $string . $salt);
}
public function hash2($string, $salt) {
return hash('sha512', $salt . $string);
}
public function compareToHash($string, $salt, $hash1, $hash2) {
return($this->hash1($string, $salt) === $hash1 && $this->hash2($string, $salt) === $hash2);
}
}
ご覧のとおり、衝突を回避しようとしています。これは効果的な方法ですか、それは非常に単純に思えますが、何かが欠けているのではないかと思います。
ありがとう。