私は周りを検索しましたが、Blowfishの実装全体を説明する優れたリソースを見つけることができません。
5.3.8を使用しているので、crypt()関数を使用でき、次の形式のソルトを渡す必要があることがわかります。
$ 2 [x、y、a]$[ラウンド数の基数2の対数]$[いくつかの文字列]
しかし、私はどこかであなたが毎回ユニークに塩を生成する必要があることを読みました。それはあなたがあなたのデータベースにソルトを保存しなければならないことを意味しますか?誰かがあなたのデータベースを盗んだ場合、あなたはshaXを使用したのと同じ立場にありませんか?そのすべてがどの程度正確に機能しますか。
また
Blowfishはパスワードの復号化にも使用されることを読んでいます。2つの文字列を暗号化してから、それらが一致するかどうかを確認するハッシュアルゴリズムであると理解していました。復号化できるアルゴリズムをどのように、そしてなぜ使用しますか?